org.nuiton.jaxx.demo.component.swing.JButtonDemo Maven / Gradle / Ivy
package org.nuiton.jaxx.demo.component.swing;
/*-
* #%L
* JAXX :: Demo
* %%
* Copyright (C) 2008 - 2019 Code Lutin, Ultreia.io
* %%
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Lesser Public License for more details.
*
* You should have received a copy of the GNU General Lesser Public
* License along with this program. If not, see
* .
* #L%
*/
import java.awt.Color;
import java.awt.Component;
import java.awt.Font;
import java.awt.LayoutManager;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JOptionPane;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.nuiton.jaxx.demo.DemoHelpBroker;
import org.nuiton.jaxx.demo.DemoPanel;
import org.nuiton.jaxx.runtime.JAXXContext;
import org.nuiton.jaxx.runtime.JAXXObjectDescriptor;
import org.nuiton.jaxx.runtime.JAXXUtil;
import org.nuiton.jaxx.runtime.css.DataBinding;
import org.nuiton.jaxx.runtime.css.Pseudoclasses;
import org.nuiton.jaxx.runtime.swing.VBox;
import org.nuiton.jaxx.runtime.swing.help.JAXXHelpUI;
import static io.ultreia.java4all.i18n.I18n.t;
public class JButtonDemo extends DemoPanel implements JAXXHelpUI {
/*-----------------------------------------------------------------------*/
/*------------------------- Other static fields -------------------------*/
/*-----------------------------------------------------------------------*/
private static final String $jaxxObjectDescriptor = "H4sIAAAAAAAAAJ1VTU9TQRS9LbTIl/IRMe4IoBiFV1hoTCAqHyFCqhiJhsgCh/eGdsh0ZpyZBw+MLFy48w+4cOvG8B+IKxM3bvkPJvwE77yW9gVaKDTpSzPv3nPPvfec6c9/kDEaxqQueCJkVgpvi0SRp0NhWYl6SzOrq8sbW9S389T4mikrNZQ/qTSk16AzqJ4bC95aHpFyZaScQ8pVkHJzsqSkoCIBNJWHDmN3OTVFSq2Few2TfWNyK9XIqUiFulKrLut6tf58mTxK0flvaYBIIf0stv3gEgC1rlvzkGaBhb78FtkmOU5EAclpJgrYULc7m+PEmJekRD/APrTlIauIRjAL41caTwwXQ0XKQpeVap6W5CsiKLcwcbqHAN95/gmcZ3aQmLc0G1qMcHlKxVhZC91FyhFqk4TcLmJDPY675/rxyv3UQrOKCp9huZsuJqqgLpZIgS76UiQCR97OymjCwlCj2ZZTXZRLaa9mdhpWUpwiUSks9CfrVNi7wL5qfMcmEf5uHO5ObsVvLWTiY1zu3UYEUExeTUy1vabWIKNDPLYw3FjHToqvMaoswuHGInRl4sDPB/v6x87x0YnyOpDc4EVZCZOhDJSWimrLHLcbZdmFlvHcC6Km1qDdUI4OjR04ej7zlUokskcWvfHCHZL3nJgiomXajg5/Dbz/2wLpBejgkgQLxMUvQrstapyY5EGknj6LyXXtXMNnD35bLLRv4trGDdvDkaYnH7v9SE0LWoYCpdW6wUN6ErRJfPydmdGM8AiHOHr+EKucD5aPf3//eufwZJApbGGkmczaMDPvIMsEZ4LGJq74s65pO5WhYSBr5qtnR0BDtlXkqaricy8H4+fImVGlMGrdGc/C/Y9DITtj1Y0YzCQtO/QpCh3aWNy0++XBqYtAVSzYRNlHzZb1Eo6sTyHp2UsweNg0g5rH6xNIXAIX1U+fkmSLpkF85GTr9oqXF7OEM/9socSWUcQlGRoqt9GQTS68vyg128Ncwmc4K4hS/GfQN11W4iCxeNti9/TJmcop9+xvYrS9jg7zEwVc6JurA7ZaGp2HMdAMBvPdwK5PB8SSwQ0mAtxzgyZvX4jnjtfPYeQQ/gOdcu3N0AgAAA==";
private static final Logger log = LogManager.getLogger(JButtonDemo.class);
private static final long serialVersionUID = 1L;
/*-----------------------------------------------------------------------*/
/*------------------------ Protected components ------------------------*/
/*-----------------------------------------------------------------------*/
protected JButton fancyButon;
protected ImageIcon pencil;
protected JButton simpleButon;
protected JButtonDemo topDemoPanel;
/*-----------------------------------------------------------------------*/
/*------------------------- Private components -------------------------*/
/*-----------------------------------------------------------------------*/
private VBox $VBox0;
/*-----------------------------------------------------------------------*/
/*---------------------- Raw body code from script ----------------------*/
/*-----------------------------------------------------------------------*/
public void buttonClicked(JButton button) {
JOptionPane.showMessageDialog(this, button.getText() + " clicked!",
"onActionPerformed",
JOptionPane.INFORMATION_MESSAGE);
}
/*-----------------------------------------------------------------------*/
/*---------------------------- Constructors ----------------------------*/
/*-----------------------------------------------------------------------*/
public JButtonDemo(LayoutManager param0, boolean param1) {
super(param0 ,param1);
}
public JButtonDemo(JAXXContext param0, LayoutManager param1, boolean param2) {
super(param0 ,param1 ,param2);
}
public JButtonDemo(LayoutManager param0) {
super(param0);
}
public JButtonDemo(JAXXContext param0, LayoutManager param1) {
super(param0 ,param1);
}
public JButtonDemo() {
}
public JButtonDemo(JAXXContext param0) {
super(param0);
}
public JButtonDemo(boolean param0) {
super(param0);
}
public JButtonDemo(JAXXContext param0, boolean param1) {
super(param0 ,param1);
}
/*-----------------------------------------------------------------------*/
/*--------------------------- Statics methods ---------------------------*/
/*-----------------------------------------------------------------------*/
public static JAXXObjectDescriptor $getJAXXObjectDescriptor() {
return JAXXUtil.decodeCompressedJAXXObjectDescriptor($jaxxObjectDescriptor);
}
/*-----------------------------------------------------------------------*/
/*---------------------------- Event methods ----------------------------*/
/*-----------------------------------------------------------------------*/
public void doActionPerformed__on__fancyButon(ActionEvent event) {
if (log.isDebugEnabled()) {
log.debug(event);
}
buttonClicked((JButton) event.getSource());
}
public void doActionPerformed__on__simpleButon(ActionEvent event) {
if (log.isDebugEnabled()) {
log.debug(event);
}
buttonClicked((JButton) event.getSource());
}
public void doMouseEntered__on__fancyButon(MouseEvent event) {
if (log.isDebugEnabled()) {
log.debug(event);
}
Object value = Pseudoclasses.applyProperty(JButtonDemo.this, fancyButon, "foreground", new Color(255, 0, 0), Pseudoclasses.wrap(fancyButon.getForeground()), 0);
if (!(value instanceof DataBinding)) {
fancyButon.setForeground((Color) value);
}
value = Pseudoclasses.applyProperty(JButtonDemo.this, fancyButon, "font-style", "italic", Pseudoclasses.wrap((fancyButon.getFont().getStyle() & Font.ITALIC) != 0 ? "italic" : "normal"), 0);
if (!(value instanceof DataBinding)) {
if (fancyButon.getFont() != null) {
if (((String) value).equals("italic")) {
fancyButon.setFont(fancyButon.getFont().deriveFont(fancyButon.getFont().getStyle() | Font.ITALIC));
} else {
fancyButon.setFont(fancyButon.getFont().deriveFont(fancyButon.getFont().getStyle() & ~Font.ITALIC));
}
}
}
}
public void doMouseExited__on__fancyButon(MouseEvent event) {
if (log.isDebugEnabled()) {
log.debug(event);
}
Object value = Pseudoclasses.removeProperty(JButtonDemo.this, fancyButon, "foreground", new Color(255, 0, 0), Pseudoclasses.wrap(fancyButon.getForeground()), 0);
if (!(value instanceof DataBinding)) {
fancyButon.setForeground((Color) value);
}
value = Pseudoclasses.removeProperty(JButtonDemo.this, fancyButon, "font-style", "italic", Pseudoclasses.wrap((fancyButon.getFont().getStyle() & Font.ITALIC) != 0 ? "italic" : "normal"), 0);
if (!(value instanceof DataBinding)) {
if (fancyButon.getFont() != null) {
if (((String) value).equals("italic")) {
fancyButon.setFont(fancyButon.getFont().deriveFont(fancyButon.getFont().getStyle() | Font.ITALIC));
} else {
fancyButon.setFont(fancyButon.getFont().deriveFont(fancyButon.getFont().getStyle() & ~Font.ITALIC));
}
}
}
}
/*-----------------------------------------------------------------------*/
/*----------------------- Public acessor methods -----------------------*/
/*-----------------------------------------------------------------------*/
public JButton getFancyButon() {
return fancyButon;
}
public ImageIcon getPencil() {
return pencil;
}
public JButton getSimpleButon() {
return simpleButon;
}
/*-----------------------------------------------------------------------*/
/*---------------------------- Other methods ----------------------------*/
/*-----------------------------------------------------------------------*/
@Override
public void registerHelpId(DemoHelpBroker broker, Component component, String helpId) {
broker.installUI(component, helpId);
}
@Override
public void showHelp(String helpId) {
getBroker().showHelp(this, helpId);
}
/*-----------------------------------------------------------------------*/
/*--------------------- Protected acessors methods ---------------------*/
/*-----------------------------------------------------------------------*/
protected VBox get$VBox0() {
return $VBox0;
}
/*-----------------------------------------------------------------------*/
/*--------------------- Components creation methods ---------------------*/
/*-----------------------------------------------------------------------*/
protected void addChildrenToTopDemoPanel() {
add($VBox0);
}
protected void createFancyButon() {
$objectMap.put("fancyButon", fancyButon = new JButton());
fancyButon.setName("fancyButon");
fancyButon.setText(t("Fancy Button"));
if (fancyButon.getFont() != null) {
fancyButon.setFont(fancyButon.getFont().deriveFont((float) 18));
}
fancyButon.setForeground(new Color(0, 0, 255));
if (fancyButon.getFont() != null) {
fancyButon.setFont(new Font("Arial", fancyButon.getFont().getStyle(), fancyButon.getFont().getSize()));
}
fancyButon.addActionListener(JAXXUtil.getEventListener(ActionListener.class, "actionPerformed", this, "doActionPerformed__on__fancyButon"));
fancyButon.addMouseListener(JAXXUtil.getEventListener(MouseListener.class, "mouseEntered", this, "doMouseEntered__on__fancyButon"));
fancyButon.addMouseListener(JAXXUtil.getEventListener(MouseListener.class, "mouseExited", this, "doMouseExited__on__fancyButon"));
fancyButon.putClientProperty("help", "ui.component.swing.buttons.JButtonDemo.fancyButon");
}
@Override
protected void createHelpDefaultId() {
$objectMap.put("helpDefaultId", helpDefaultId = "ui.component.swing.buttons.JButtonDemo");
}
protected void createPencil() {
$objectMap.put("pencil", pencil = new ImageIcon(getClass().getResource("/org/nuiton/jaxx/demo/images/pencil_black.gif")));
}
protected void createSimpleButon() {
$objectMap.put("simpleButon", simpleButon = new JButton());
simpleButon.setName("simpleButon");
simpleButon.setText(t("Simple Button"));
simpleButon.addActionListener(JAXXUtil.getEventListener(ActionListener.class, "actionPerformed", this, "doActionPerformed__on__simpleButon"));
simpleButon.putClientProperty("help", "ui.component.swing.buttons.JButtonDemo.simpleButon");
}
/*-----------------------------------------------------------------------*/
/*------------------------ Internal jaxx methods ------------------------*/
/*-----------------------------------------------------------------------*/
@Override
protected void $initialize() {
if (log.isDebugEnabled()) {
log.debug(this);
}
topDemoPanel = this;
super.$initialize();
}
@Override
protected void $initialize_01_createComponents() {
if (log.isDebugEnabled()) {
log.debug(this);
}
super.$initialize_01_createComponents();
$objectMap.put("topDemoPanel", topDemoPanel);
createPencil();
// inline creation of $VBox0
$objectMap.put("$VBox0", $VBox0 = new VBox());
$VBox0.setName("$VBox0");
$VBox0.setHorizontalAlignment(0);
$VBox0.setVerticalAlignment(0);
createSimpleButon();
createFancyButon();
// inline creation of topDemoPanel
setName("topDemoPanel");
topDemoPanel.putClientProperty("help", "ui.component.swing.buttons.JButtonDemo");
}
@Override
protected void $initialize_02_registerDataBindings() {
if (log.isDebugEnabled()) {
log.debug(this);
}
super.$initialize_02_registerDataBindings();
// register 0 data bindings
}
@Override
protected void $initialize_03_finalizeCreateComponents() {
if (log.isDebugEnabled()) {
log.debug(this);
}
super.$initialize_03_finalizeCreateComponents();
addChildrenToTopDemoPanel();
// inline complete setup of $VBox0
$VBox0.add(simpleButon);
$VBox0.add(fancyButon);
}
@Override
protected void $initialize_04_applyDataBindings() {
if (log.isDebugEnabled()) {
log.debug(this);
}
super.$initialize_04_applyDataBindings();
}
@Override
protected void $initialize_05_setProperties() {
if (log.isDebugEnabled()) {
log.debug(this);
}
super.$initialize_05_setProperties();
// apply 1 property setters
fancyButon.setIcon(pencil);// late initializer
// help broker setup
DemoHelpBroker _broker = getBroker();
registerHelpId(_broker, topDemoPanel, "ui.component.swing.buttons.JButtonDemo");
registerHelpId(_broker, simpleButon, "ui.component.swing.buttons.JButtonDemo.simpleButon");
registerHelpId(_broker, fancyButon, "ui.component.swing.buttons.JButtonDemo.fancyButon");
_broker.prepareUI(this);
}
@Override
protected void $initialize_06_finalizeInitialize() {
if (log.isDebugEnabled()) {
log.debug(this);
}
super.$initialize_06_finalizeInitialize();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy