All Downloads are FREE. Search and download functionalities are using the official Maven repository.

jaxx.demo.BoxedDecoratorDemo Maven / Gradle / Ivy

package jaxx.demo;

import jaxx.demo.*;
import java.awt.*;
import java.awt.event.*;
import java.beans.*;
import java.io.*;
import java.lang.*;
import java.util.*;
import javax.swing.*;
import javax.swing.border.*;
import javax.swing.event.*;
import jaxx.runtime.swing.JAXXButtonGroup;
import jaxx.runtime.swing.HBox;
import jaxx.runtime.swing.VBox;
import jaxx.runtime.swing.Table;
import static org.nuiton.i18n.I18n._;
import static jaxx.runtime.Util.createImageIcon;
import jaxx.runtime.SwingUtil;

public class BoxedDecoratorDemo extends jaxx.demo.DemoPanel {
    private static java.lang.String $jaxxObjectDescriptor = "H4sIAAAAAAAAAK1VQU8TQRidVtpSoIqAiBEiSA+eWgWVKIjSEiNNUSOaEHtxujtpF6Y748wsLBdj4tUYTh68qHeP3o3x6Mmr/8EY/4Hf7C7dFtfSWHtoN99+7817X7+3++EHSkiBZraw6+aEYyurQXKllc3Ne9UtYqhVIg1hccUE8j+xOIpX0KDZrEuFZitlDc8H8HyRNTizid2CXiyjAan2KJF1QpRCp3yEIWV+o1ledLkjDtiaYqLY3v36Gd83n7+PI+RyUDUEFqaPQoUO+soobpkKjcBJOzhPsV0DGcKya6Azo2tFiqW8ixvkKXqGUmWU5FgAmULnu7fqcXh4lys0mF0lDXYf24ReVGjSE2tCJVdgLjFXicEEBrRu4tyDJRVKUbxHxKM1OLfNndwFrbkCZcY2XJT9phDWH8Dm4L85GjcXAtPmgUaFJiKQD3GVkrA9qVitRgn8nXpmbtBUKtaJsQ22dNdIKCpb8pgvwdzb2r1qe286Wyo4SjEbHIy2Nftl3TbxZ/e8Lky134wZUUUzopjJljYMwSjVgi4rdLrt4PDWIVsNIiWuEcjB2YiJ6SiVLal0d5bDmo56TbD4uXDxw82MVVBCOFSzDVfCjDyAkp+OoOoReNW3L97svP746fpBFIbhjExbS0tyYTW5YJwIZekjTvj77yiL5tcxX6ygtCQUYu/FeqxFwEZQBhHAf1LDchqWu4NlHaCJ1PfPX8affDuG4rfRAGXYvI11/xpKq7oAl4yaLr95y1MytNuvhWpNCg1hwyBcrRjKYrZCx5dMrPB01bJNGN+yC5bHWiw3dXzdf7k++Wpq4cB2zJd1qC20nniMkpZNLZt42Q9iHZn1QS6JY7IwvlGBjunfDA+ykPe+56P8Dfj+1gx/a6+6jv5Z8CTrq2tdM6WrOrf/gShTDR4ARUaZ6JEs5UiiNUGql/wBT2MFz9Kqo8jyv9Lq8pUOwoa7YrjRM0OhJwZ4OPhxIt6+rUfzjHfB06eIqzpo6YYjCS8F5nRiOdPVTIwOXiZ7ZjjXM8NMzwyzXUwz0WCm/9b6yzAvAMlvrP6NVl0JAAA=";
    protected javax.swing.JButton c;
    protected javax.swing.JButton d;
    protected jaxx.runtime.swing.BlockingLayerUI layerUI;
    protected jaxx.runtime.swing.BlockingLayerUI2 layerUI2;
    protected jaxx.runtime.swing.JAXXList messages;
    protected javax.swing.JCheckBox toggle;
    private jaxx.demo.BoxedDecoratorDemo $DemoPanel0 = this;
    private javax.swing.JButton $JButton2;
    private javax.swing.JButton $JButton3;
    private javax.swing.JPanel $JPanel1;
    private javax.swing.JScrollPane $JScrollPane4;
    private boolean allComponentsCreated;
    private boolean contextInitialized = true;
    java.util.Map $previousValues = new java.util.HashMap();
    private java.beans.PropertyChangeListener $DataSource12 = new jaxx.runtime.DataBindingListener($DemoPanel0, "toggle.text");

    /* begin raw body code */    
    
    void $afterCompleteSetup() {
        for (JComponent boxed : SwingUtil.getLayeredComponents(this)) {
            if (boxed == d) {
                SwingUtil.getLayer(boxed).setUI(layerUI2);
                continue;
            }
    
            jaxx.runtime.swing.BlockingLayerUI ui = layerUI.clone();
            if ( boxed == c) {
                ui.setBlock(true);
            }
            SwingUtil.getLayer(boxed).setUI(ui);
        }
    }
    
    public void setLayer(boolean active) {
        for (JComponent boxed : SwingUtil.getLayeredComponents(this)) {
            if (boxed == d) {
                continue;
            }
            jaxx.runtime.swing.BlockingLayerUI ui = (jaxx.runtime.swing.BlockingLayerUI)SwingUtil.getLayer(boxed).getUI();
            if ( boxed == c) {
                ui.setBlock(active);
            } 
            ui.setUseIcon(active);
        }
    }
    
    protected void accept(ActionEvent e, String suffix) {
        JButton source = (JButton) e.getSource();
        String clickedMessage = (String) source.getClientProperty("clickedText");
        String msg = "'" + source.getText() + "' clicked - " + suffix + " : " + clickedMessage;
        ((DefaultListModel)messages.getModel()).addElement(msg);
    }
    /* end raw body code */
    /*---------------------------------------------------------------------------------*/
    /*-- Statics methods --------------------------------------------------------------*/
    /*---------------------------------------------------------------------------------*/

    public static jaxx.runtime.JAXXObjectDescriptor $getJAXXObjectDescriptor() {
        return jaxx.runtime.Util.decodeCompressedJAXXObjectDescriptor($jaxxObjectDescriptor);
    }

    /*---------------------------------------------------------------------------------*/
    /*-- Constructors -----------------------------------------------------------------*/
    /*---------------------------------------------------------------------------------*/

    public BoxedDecoratorDemo() {
        super();
        $initialize();
    }

    public BoxedDecoratorDemo(jaxx.runtime.JAXXContext parentContext) {
        super(parentContext);
        $initialize();
    }

    /*---------------------------------------------------------------------------------*/
    /*-- JAXXObject implementation ----------------------------------------------------*/
    /*---------------------------------------------------------------------------------*/

    public void applyDataBinding(String $binding) {
        if ("toggle.text".equals($binding)) {
            if (toggle != null) {
                $bindingSources.put("toggle.getModel()", toggle.getModel());
        toggle.getModel().addChangeListener((javax.swing.event.ChangeListener) jaxx.runtime.Util.getEventListener(javax.swing.event.ChangeListener.class, $DemoPanel0, "$pr$u0"));
        toggle.addPropertyChangeListener("model", jaxx.runtime.Util.getDataBindingUpdateListener(this , "toggle.text"));
            }
        } else {
            super.applyDataBinding($binding);
            return;
        }
        processDataBinding($binding);
    }

    public void processDataBinding(String $dest, boolean $force) {
        if (!$force && $activeBindings.contains($dest)) { 
            return;
        }
        $activeBindings.add($dest);
        try {
            if ("toggle.text".equals($dest)) {
            if (toggle != null) {
                toggle.setText(_(String.valueOf((toggle.isSelected() ? "Active layer" : "No layer"))));
            }
            } else {
                super.processDataBinding($dest, true);
            }
        } finally {
            $activeBindings.remove($dest);
        }
    }

    public void removeDataBinding(String $binding) {
        if ("toggle.text".equals($binding)) {
            if (toggle != null) {
                ((javax.swing.ButtonModel) $bindingSources.remove("toggle.getModel()")).removeChangeListener((javax.swing.event.ChangeListener) jaxx.runtime.Util.getEventListener(javax.swing.event.ChangeListener.class, $DemoPanel0, "$pr$u0"));
        toggle.removePropertyChangeListener("model", jaxx.runtime.Util.getDataBindingUpdateListener(this, "toggle.text"));
            }
        } else {
            super.removeDataBinding($binding);
        }
    }

    /*---------------------------------------------------------------------------------*/
    /*-- Event methods ----------------------------------------------------------------*/
    /*---------------------------------------------------------------------------------*/

    public void doActionPerformed__on__$JButton2(java.awt.event.ActionEvent event) {
        accept(event, "from button (no layer)");
    }

    public void doActionPerformed__on__$JButton3(java.awt.event.ActionEvent event) {
        accept(event, "from button (no layer)");
    }

    public void doActionPerformed__on__c(java.awt.event.ActionEvent event) {
        accept(event, "from button (no layer)");
    }

    public void doActionPerformed__on__d(java.awt.event.ActionEvent event) {
        accept(event, "from button (no layer)");
    }

    public void doActionPerformed__on__toggle(java.awt.event.ActionEvent event) {
        setLayer(toggle.isSelected());
    }

    /*---------------------------------------------------------------------------------*/
    /*-- public acessor methods -------------------------------------------------------*/
    /*---------------------------------------------------------------------------------*/

    public javax.swing.JButton getC() {
        return c;
    }

    public javax.swing.JButton getD() {
        return d;
    }

    public jaxx.runtime.swing.BlockingLayerUI getLayerUI() {
        return layerUI;
    }

    public jaxx.runtime.swing.BlockingLayerUI2 getLayerUI2() {
        return layerUI2;
    }

    public jaxx.runtime.swing.JAXXList getMessages() {
        return messages;
    }

    public javax.swing.JCheckBox getToggle() {
        return toggle;
    }

    /*---------------------------------------------------------------------------------*/
    /*-- public mutator methods -------------------------------------------------------*/
    /*---------------------------------------------------------------------------------*/

    public void $pr$u0(javax.swing.event.ChangeEvent event) {
        $DataSource12.propertyChange(null);
    }

    /*---------------------------------------------------------------------------------*/
    /*-- protected acessors methods ---------------------------------------------------*/
    /*---------------------------------------------------------------------------------*/

    protected jaxx.demo.BoxedDecoratorDemo get$DemoPanel0() {
        return $DemoPanel0;
    }

    protected javax.swing.JButton get$JButton2() {
        return $JButton2;
    }

    protected javax.swing.JButton get$JButton3() {
        return $JButton3;
    }

    protected javax.swing.JPanel get$JPanel1() {
        return $JPanel1;
    }

    protected javax.swing.JScrollPane get$JScrollPane4() {
        return $JScrollPane4;
    }

    protected java.lang.String get$jaxxObjectDescriptor() {
        return $jaxxObjectDescriptor;
    }

    protected java.util.Map get$previousValues() {
        return $previousValues;
    }

    protected boolean getAllComponentsCreated() {
        return allComponentsCreated;
    }

    protected boolean getContextInitialized() {
        return contextInitialized;
    }

    /*---------------------------------------------------------------------------------*/
    /*-- ui creation methods ----------------------------------------------------------*/
    /*---------------------------------------------------------------------------------*/

    private void $completeSetup() {
        allComponentsCreated = true;
        
        addChildrenToDemoPanel();
        $JPanel1.add(jaxx.runtime.SwingUtil.boxComponentWithJxLayer($JButton2));
        $JPanel1.add(jaxx.runtime.SwingUtil.boxComponentWithJxLayer($JButton3));
        $JPanel1.add(jaxx.runtime.SwingUtil.boxComponentWithJxLayer(c));
        $JPanel1.add(jaxx.runtime.SwingUtil.boxComponentWithJxLayer(d));
        
        $JButton2.putClientProperty("clickedText", "button A was clicked");
        
        $JButton3.putClientProperty("clickedText", "button B was clicked");
        
        addChildrenToC();
        addChildrenToD();
        $JScrollPane4.getViewport().add(messages);
        
        layerUI.setAcceptAction((new AbstractAction() { private static final long serialVersionUID = 1L;                      @Override                      public void actionPerformed(ActionEvent e) {                         accept(e, "from icon of layer");                      }                      }));
        layerUI.setAcceptIcon((SwingUtil.createImageIcon("action-accept.png")));
        layerUI.setBlockIcon((SwingUtil.createImageIcon("action-block.png")));
        layerUI.setBlockingColor((new Color(50,50,50)));
        layerUI2.setAcceptAction((new AbstractAction() { private static final long serialVersionUID = 1L;                      @Override                      public void actionPerformed(ActionEvent e) {                         accept(e, "from icon of layer");                      }                      }));
        layerUI2.setAcceptIcon((SwingUtil.createImageIcon("action-accept.png")));
        layerUI2.setBlockIcon((SwingUtil.createImageIcon("action-block.png")));
        applyDataBinding("toggle.text");
        messages.setModel((new DefaultListModel()));
        $afterCompleteSetup();
    }

    private void $initialize() {
        if (allComponentsCreated || !contextInitialized) {
            return;
        }
        $objectMap.put("$DemoPanel0", this);
        createLayerUI();
        createLayerUI2();
        createToggle();
        
        $JPanel1 = new javax.swing.JPanel();
        $objectMap.put("$JPanel1", $JPanel1);
        $JPanel1.setName("$JPanel1");
        $JPanel1.setLayout((new GridLayout(1,3,3,3)));
        
        $JButton2 = new javax.swing.JButton();
        $objectMap.put("$JButton2", $JButton2);
        $JButton2.setName("$JButton2");
        $JButton2.setText(_("button A"));
        $JButton2.addActionListener((java.awt.event.ActionListener) jaxx.runtime.Util.getEventListener(java.awt.event.ActionListener.class, "actionPerformed", $DemoPanel0, "doActionPerformed__on__$JButton2"));
        
        $JButton3 = new javax.swing.JButton();
        $objectMap.put("$JButton3", $JButton3);
        $JButton3.setName("$JButton3");
        $JButton3.setText(_("button B"));
        $JButton3.addActionListener((java.awt.event.ActionListener) jaxx.runtime.Util.getEventListener(java.awt.event.ActionListener.class, "actionPerformed", $DemoPanel0, "doActionPerformed__on__$JButton3"));
        
        createC();
        createD();
        
        $JScrollPane4 = new javax.swing.JScrollPane();
        $objectMap.put("$JScrollPane4", $JScrollPane4);
        $JScrollPane4.setName("$JScrollPane4");
        
        createMessages();
        $DemoPanel0.removeDataBinding("top.name");
        
        $DemoPanel0.setName("$DemoPanel0");
        
        
        
        
        
        
        
        
        $completeSetup();
    }

    protected void addChildrenToC() {
        if (!allComponentsCreated) {
            return;
        }
        c.putClientProperty("clickedText", "button C was clicked");
    }

    protected void addChildrenToD() {
        if (!allComponentsCreated) {
            return;
        }
        d.putClientProperty("clickedText", "button D was clicked");
    }

    protected void addChildrenToDemoPanel() {
        if (!allComponentsCreated) {
            return;
        }
        demoPanel.add(toggle, new GridBagConstraints(0, 0, 1, 1, 1.0, 0.0, 10, 1, new Insets(3, 3, 3, 3), 0, 0));
        demoPanel.add($JPanel1, new GridBagConstraints(0, 1, 1, 1, 1.0, 0.5, 10, 1, new Insets(3, 3, 3, 3), 0, 0));
        demoPanel.add($JScrollPane4, new GridBagConstraints(0, 2, 1, 1, 1.0, 0.5, 10, 1, new Insets(3, 3, 3, 3), 0, 0));
    }

    protected void createC() {
        c = new javax.swing.JButton();
        $objectMap.put("c", c);
        c.setName("c");
        c.setText(_("button C (full block)"));
        c.addActionListener((java.awt.event.ActionListener) jaxx.runtime.Util.getEventListener(java.awt.event.ActionListener.class, "actionPerformed", $DemoPanel0, "doActionPerformed__on__c"));
    }

    protected void createD() {
        d = new javax.swing.JButton();
        $objectMap.put("d", d);
        d.setName("d");
        d.setText(_("button D (full block 2)"));
        d.addActionListener((java.awt.event.ActionListener) jaxx.runtime.Util.getEventListener(java.awt.event.ActionListener.class, "actionPerformed", $DemoPanel0, "doActionPerformed__on__d"));
    }

    protected void createDemoPanel() {
        demoPanel = new jaxx.runtime.swing.Table();
        $objectMap.put("demoPanel", demoPanel);
        demoPanel.setName("demoPanel");
    }

    protected void createLayerUI() {
        layerUI = new jaxx.runtime.swing.BlockingLayerUI();
        $objectMap.put("layerUI", layerUI);
        layerUI.setUseIcon(true);
    }

    protected void createLayerUI2() {
        layerUI2 = new jaxx.runtime.swing.BlockingLayerUI2();
        $objectMap.put("layerUI2", layerUI2);
    }

    protected void createMessages() {
        messages = new jaxx.runtime.swing.JAXXList();
        $objectMap.put("messages", messages);
        messages.setName("messages");
    }

    protected void createToggle() {
        toggle = new javax.swing.JCheckBox();
        $objectMap.put("toggle", toggle);
        toggle.setName("toggle");
        toggle.setSelected(true);
        toggle.addActionListener((java.awt.event.ActionListener) jaxx.runtime.Util.getEventListener(java.awt.event.ActionListener.class, "actionPerformed", $DemoPanel0, "doActionPerformed__on__toggle"));
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy