Jaxx-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
January 2009
- 2 participants
- 81 discussions
[Buix-commits] r1111 - in lutinjaxx/branches/storm_1/jaxx-example: . Components/src/main/java/examples/Components Components/src/main/resources/i18n Components/src/site/fr/rst
by tchemitï¼ users.labs.libre-entreprise.org 02 Jan '09
by tchemitï¼ users.labs.libre-entreprise.org 02 Jan '09
02 Jan '09
Author: tchemit
Date: 2009-01-02 08:23:35 +0000 (Fri, 02 Jan 2009)
New Revision: 1111
Added:
lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/Calculator.css
lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/CalculatorDemo.jaxx
lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/CalculatorEngine.java
lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/CounterDemo.jaxx
Removed:
lutinjaxx/branches/storm_1/jaxx-example/Calculator/
lutinjaxx/branches/storm_1/jaxx-example/Counter/
Modified:
lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/Components.jaxx
lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/resources/i18n/Components-en_GB.properties
lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/resources/i18n/Components-fr_FR.properties
lutinjaxx/branches/storm_1/jaxx-example/Components/src/site/fr/rst/index.rst
lutinjaxx/branches/storm_1/jaxx-example/pom.xml
Log:
simplification des examples : y'en a plus qu'un :) todo supprimer ce module et n'avoir que jaxx-example
Copied: lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/Calculator.css (from rev 1109, lutinjaxx/branches/storm_1/jaxx-example/Calculator/src/main/java/examples/Calculator/Calculator.css)
===================================================================
--- lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/Calculator.css (rev 0)
+++ lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/Calculator.css 2009-01-02 08:23:35 UTC (rev 1111)
@@ -0,0 +1,49 @@
+
+#table {
+ border: {BorderFactory.createEmptyBorder(4, 4, 4, 4)};
+ font-face: "Trebuchet MS";
+}
+
+#display {
+ background: #BCE5AD;
+ opaque: true;
+ horizontalAlignment: right;
+ border: {BorderFactory.createBevelBorder(BevelBorder.LOWERED)};
+ font-size: 22;
+ font-weight: bold;
+}
+
+#display:{object.getText().startsWith("-")} {
+ foreground: red;
+}
+
+JButton {
+ font-size: 18;
+ width: 80;
+ height: 35;
+}
+
+JButton.digit {
+ foreground: blue;
+}
+
+JButton#dot {
+ font-size: 20;
+}
+
+JButton.operator {
+ font-size: 16;
+ foreground: #009900;
+}
+
+JButton.clear {
+ foreground: red;
+}
+
+JButton:mouseover {
+ font-weight: bold;
+}
+
+JButton.operator:mouseover {
+ font-weight: normal;
+}
\ No newline at end of file
Copied: lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/CalculatorDemo.jaxx (from rev 1109, lutinjaxx/branches/storm_1/jaxx-example/Calculator/src/main/java/examples/Calculator/Calculator.jaxx)
===================================================================
--- lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/CalculatorDemo.jaxx (rev 0)
+++ lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/CalculatorDemo.jaxx 2009-01-02 08:23:35 UTC (rev 1111)
@@ -0,0 +1,49 @@
+<DemoPanel>
+ <style source='Calculator.css'/>
+ <script><![CDATA[
+ plus.setText("+");
+ sign.setText("+/-");
+]]></script>
+ <!-- use fully-qualified name just in case this is compiled into a different package -->
+ <examples.Components.CalculatorEngine id='engine'/>
+
+ <Table id='demoPanel' fill='both'>
+ <row>
+ <cell columns='4'><JLabel id='display' text='{engine.getDisplayText()}'/></cell>
+ </row>
+
+ <row>
+ <cell columns='2'><JButton id='c' text='C' onActionPerformed='engine.clear()' styleClass='clear'/></cell>
+ <cell><JButton id='ce' text='CE' onActionPerformed='engine.clearEntry()' styleClass='clear'/></cell>
+ <cell><JButton id='equals' text='=' onActionPerformed='engine.equal()' styleClass='operator'/></cell>
+ </row>
+
+ <row>
+ <cell><JButton id='d7' text='7' onActionPerformed='engine.digit(7)' styleClass='digit'/></cell>
+ <cell><JButton id='d8' text='8' onActionPerformed='engine.digit(8)' styleClass='digit'/></cell>
+ <cell><JButton id='d9' text='9' onActionPerformed='engine.digit(9)' styleClass='digit'/></cell>
+ <cell><JButton id='plus' onActionPerformed='engine.add()' styleClass='operator'/></cell>
+ </row>
+
+ <row>
+ <cell><JButton id='d4' text='4' onActionPerformed='engine.digit(4)' styleClass='digit'/></cell>
+ <cell><JButton id='d5' text='5' onActionPerformed='engine.digit(5)' styleClass='digit'/></cell>
+ <cell><JButton id='d6' text='6' onActionPerformed='engine.digit(6)' styleClass='digit'/></cell>
+ <cell><JButton id='subtract' text='-' onActionPerformed='engine.subtract()' styleClass='operator'/></cell>
+ </row>
+
+ <row>
+ <cell><JButton id='d1' text='1' onActionPerformed='engine.digit(1)' styleClass='digit'/></cell>
+ <cell><JButton id='d2' text='2' onActionPerformed='engine.digit(2)' styleClass='digit'/></cell>
+ <cell><JButton id='d3' text='3' onActionPerformed='engine.digit(3)' styleClass='digit'/></cell>
+ <cell><JButton id='multiply' text='x' onActionPerformed='engine.multiply()' styleClass='operator'/></cell>
+ </row>
+
+ <row>
+ <cell><JButton id='d0' text='0' onActionPerformed='engine.digit(0)' styleClass='digit'/></cell>
+ <cell><JButton id='sign' onActionPerformed='engine.toggleSign()' styleClass='operator'/></cell>
+ <cell><JButton id='dot' text='.' onActionPerformed='engine.dot()' styleClass='digit'/></cell>
+ <cell><JButton id='divide' text='÷' onActionPerformed='engine.divide()' styleClass='operator'/></cell>
+ </row>
+ </Table>
+</DemoPanel>
\ No newline at end of file
Copied: lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/CalculatorEngine.java (from rev 1109, lutinjaxx/branches/storm_1/jaxx-example/Calculator/src/main/java/examples/Calculator/CalculatorEngine.java)
===================================================================
--- lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/CalculatorEngine.java (rev 0)
+++ lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/CalculatorEngine.java 2009-01-02 08:23:35 UTC (rev 1111)
@@ -0,0 +1,165 @@
+package examples.Components;
+
+import java.beans.*;
+import java.math.*;
+
+public class CalculatorEngine {
+ public static final String DISPLAY_TEXT_PROPERTY = "displayText";
+
+ public static final int ADD = 0;
+ public static final int SUBTRACT = 1;
+ public static final int MULTIPLY =2;
+ public static final int DIVIDE = 3;
+ public static final int RESULT = 4;
+
+ private int operation = -1;
+ private boolean clear = true; // true to clear on next key
+ private String displayText = "0";
+ private BigDecimal value;
+ private PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(this);
+
+
+ public String getDisplayText() {
+ return displayText;
+ }
+
+
+ public void setDisplayText(String displayText) {
+ String oldDisplayText = this.displayText;
+ this.displayText = displayText;
+ firePropertyChange(DISPLAY_TEXT_PROPERTY, oldDisplayText, displayText);
+ }
+
+
+ public void clear() {
+ clearEntry();
+ value = new BigDecimal(0);
+ operation = -1;
+ }
+
+
+ public void clearEntry() {
+ setDisplayText("0");
+ clear = true;
+ }
+
+
+ private void checkClear() {
+ if (clear) {
+ setDisplayText("");
+ clear = false;
+ }
+ }
+
+
+ public void digit(int digit) {
+ checkClear();
+ setDisplayText(getDisplayText() + String.valueOf(digit));
+ }
+
+
+ public void dot() {
+ checkClear();
+ if (getDisplayText().indexOf('.') == -1) {
+ if (getDisplayText().length() == 0)
+ setDisplayText("0.");
+ else
+ setDisplayText(getDisplayText() + '.');
+ }
+ }
+
+
+ public void toggleSign() {
+ String text = getDisplayText();
+ if (text.startsWith("-"))
+ text = text.substring(1);
+ else if (!text.equals("0"))
+ text = '-' + text;
+ setDisplayText(text);
+ }
+
+
+ public void equal() {
+ BigDecimal displayValue = new BigDecimal(getDisplayText());
+ BigDecimal newValue = displayValue;
+ switch (operation) {
+ case ADD: newValue = value.add(displayValue); break;
+ case SUBTRACT: newValue = value.subtract(displayValue); break;
+ case MULTIPLY: newValue = value.multiply(displayValue); break;
+ case DIVIDE: newValue = value.divide(displayValue, 8, BigDecimal.ROUND_HALF_UP); break;
+ }
+ value = newValue;
+ setDisplayText(toString(newValue));
+ clear = true;
+ operation = -1;
+ }
+
+
+ public static String toString(BigDecimal decimal) {
+ // can't use stripTrailingZeros, as it wasn't introduced until 1.5
+ String result = decimal.toString();
+ if (result.indexOf(".") != -1) {
+ while (result.endsWith("0"))
+ result = result.substring(0, result.length() - 1);
+ if (result.endsWith("."))
+ result = result.substring(0, result.length() - 1);
+ }
+ return result;
+ }
+
+
+ public void operation(int operation) {
+ if (this.operation != -1)
+ equal();
+ else {
+ value = new BigDecimal(getDisplayText());
+ clear = true;
+ }
+ this.operation = operation;
+ }
+
+
+ public void add() {
+ operation(ADD);
+ }
+
+
+ public void subtract() {
+ operation(SUBTRACT);
+ }
+
+
+ public void multiply() {
+ operation(MULTIPLY);
+ }
+
+
+ public void divide() {
+ operation(DIVIDE);
+ }
+
+
+ public void addPropertyChangeListener(PropertyChangeListener listener) {
+ propertyChangeSupport.addPropertyChangeListener(listener);
+ }
+
+
+ public void addPropertyChangeListener(String property, PropertyChangeListener listener) {
+ propertyChangeSupport.addPropertyChangeListener(property, listener);
+ }
+
+
+ public void removePropertyChangeListener(PropertyChangeListener listener) {
+ propertyChangeSupport.removePropertyChangeListener(listener);
+ }
+
+
+ public void removePropertyChangeListener(String property, PropertyChangeListener listener) {
+ propertyChangeSupport.removePropertyChangeListener(property, listener);
+ }
+
+
+ protected void firePropertyChange(String property, Object oldValue, Object newValue) {
+ propertyChangeSupport.firePropertyChange(property, oldValue, newValue);
+ }
+}
\ No newline at end of file
Modified: lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/Components.jaxx
===================================================================
--- lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/Components.jaxx 2008-12-30 15:38:45 UTC (rev 1110)
+++ lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/Components.jaxx 2009-01-02 08:23:35 UTC (rev 1111)
@@ -23,44 +23,50 @@
}
}
}'>
- <item value='Buttons'>
- <item value='{buttonDemo}'/>
- <item value='{checkBoxDemo}'/>
- <item value='{radioButtonDemo}'/>
- <item value='{toggleButtonDemo}'/>
- </item>
+ <item value="Components">
+ <item value='Buttons'>
+ <item value='{buttonDemo}'/>
+ <item value='{checkBoxDemo}'/>
+ <item value='{radioButtonDemo}'/>
+ <item value='{toggleButtonDemo}'/>
+ </item>
- <item value='Form elements'>
- <item value='Text'>
- <item value='{passwordFieldDemo}'/>
- <item value='{textFieldDemo}'/>
- <item value='{textAreaDemo}'/>
+ <item value='Form elements'>
+ <item value='Text'>
+ <item value='{passwordFieldDemo}'/>
+ <item value='{textFieldDemo}'/>
+ <item value='{textAreaDemo}'/>
+ </item>
+
+ <item value='{comboBoxDemo}'/>
+ <item value='{listDemo}'/>
+ <item value='{sliderDemo}'/>
+ <item value='{spinnerDemo}'/>
</item>
- <item value='{comboBoxDemo}'/>
- <item value='{listDemo}'/>
- <item value='{sliderDemo}'/>
- <item value='{spinnerDemo}'/>
- </item>
+ <item value='Layout components'>
+ <item value='{splitPaneDemo}'/>
+ </item>
- <item value='Layout components'>
- <item value='{splitPaneDemo}'/>
- </item>
+ <item value='Menus'>
+ <item value='{menuItemDemo}'/>
+ <item value='{checkBoxMenuItemDemo}'/>
+ <item value='{radioButtonMenuItemDemo}'/>
+ </item>
- <item value='Menus'>
- <item value='{menuItemDemo}'/>
- <item value='{checkBoxMenuItemDemo}'/>
- <item value='{radioButtonMenuItemDemo}'/>
- </item>
+ <item value='Windows'>
+ <item value='{dialogDemo}'/>
+ </item>
- <item value='Windows'>
- <item value='{dialogDemo}'/>
+ <item value='{progressBarDemo}'/>
+
</item>
- <item value='{progressBarDemo}'/>
+ <item value='{labelStyleDemo}'/>
- <item value='{labelStyleDemo}'/>
-
+ <item value='{counterDemo}'/>
+ <item value='{calculatorDemo}'/>
+
<item value='New features'>
<item value='Validation'>
<item value='{validationDemo1}'/>
@@ -95,6 +101,8 @@
<ValidationTableDemo id='validationDemo2' constraints='validationDemo2.getLabel()'/>
<BeanDataBindingDemo id='dataBindingDemo' constraints='dataBindingDemo.getLabel()'/>
<LabelStyleDemo id='labelStyleDemo' constraints='labelStyleDemo.getLabel()'/>
+ <CounterDemo id='counterDemo' constraints='counterDemo.getLabel()'/>
+ <CalculatorDemo id='calculatorDemo' constraints='calculatorDemo.getLabel()'/>
</JPanel>
</JSplitPane>
</Application>
\ No newline at end of file
Copied: lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/CounterDemo.jaxx (from rev 1109, lutinjaxx/branches/storm_1/jaxx-example/Counter/src/main/java/examples/Counter/Counter.jaxx)
===================================================================
--- lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/CounterDemo.jaxx (rev 0)
+++ lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/java/examples/Components/CounterDemo.jaxx 2009-01-02 08:23:35 UTC (rev 1111)
@@ -0,0 +1,12 @@
+<DemoPanel>
+ <script>int count;</script>
+ <JPanel id='demoPanel'>
+ <JTextField text='{count}' constraints='BorderLayout.NORTH'/>
+ <HBox constraints='BorderLayout.SOUTH'>
+ <JButton text='Dec (-)' onActionPerformed='count--'/>
+ <JButton text='Reset' onActionPerformed='count = 0'/>
+ <JButton text='Inc (+)' onActionPerformed='count++'/>
+ </HBox>
+ </JPanel>
+
+</DemoPanel>
\ No newline at end of file
Modified: lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/resources/i18n/Components-en_GB.properties
===================================================================
--- lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/resources/i18n/Components-en_GB.properties 2008-12-30 15:38:45 UTC (rev 1110)
+++ lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/resources/i18n/Components-en_GB.properties 2009-01-02 08:23:35 UTC (rev 1111)
@@ -1,3 +1,6 @@
+-=
+.=
+0=
1=
10=
12=
@@ -6,18 +9,27 @@
2=
24=
3=
+4=
+5=
+6=
+7=
+8=
+9=
Age\:=
Animal=
Blue=
Blue\:=
Bold=
Button\ label\:=
+C=
+CE=
Cancel=
Comments\:=
Component\ Demo=
Config\ file\ \:=
Config\ file\:=
Cyan=
+Dec\ (-)=
Demo=
Directory\ file\:=
Editable=
@@ -31,6 +43,7 @@
Green=
Green\:=
Greet=
+Inc\ (+)=
Italic=
JMenu\ demo=
Last\ Name\:=
@@ -45,6 +58,7 @@
Ratio\:=
Red=
Red\:=
+Reset=
Show\ Background=
Show\ password\ dialog=
Sign\ on=
@@ -67,6 +81,7 @@
Working\ directory\:=
Yellow=
Your\ name\:=
+\\u00f7=
adjust\ the\ spacing=
between\ these\ lines=
cancel=
@@ -81,3 +96,4 @@
validator.field=Champ
validator.message=Message
validator.scope=...
+x=
Modified: lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/resources/i18n/Components-fr_FR.properties
===================================================================
--- lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/resources/i18n/Components-fr_FR.properties 2008-12-30 15:38:45 UTC (rev 1110)
+++ lutinjaxx/branches/storm_1/jaxx-example/Components/src/main/resources/i18n/Components-fr_FR.properties 2009-01-02 08:23:35 UTC (rev 1111)
@@ -1,3 +1,6 @@
+-=
+.=
+0=
1=
10=
12=
@@ -6,18 +9,27 @@
2=
24=
3=
+4=
+5=
+6=
+7=
+8=
+9=
Age\:=
Animal=
Blue=
Blue\:=
Bold=
Button\ label\:=
+C=
+CE=
Cancel=
Comments\:=
Component\ Demo=
Config\ file\ \:=
Config\ file\:=
Cyan=
+Dec\ (-)=
Demo=
Directory\ file\:=
Editable=
@@ -31,6 +43,7 @@
Green=
Green\:=
Greet=
+Inc\ (+)=
Italic=
JMenu\ demo=
Last\ Name\:=
@@ -45,6 +58,7 @@
Ratio\:=
Red=
Red\:=
+Reset=
Show\ Background=
Show\ password\ dialog=
Sign\ on=
@@ -67,6 +81,7 @@
Working\ directory\:=
Yellow=
Your\ name\:=
+\\u00f7=
adjust\ the\ spacing=
between\ these\ lines=
cancel=
@@ -81,3 +96,4 @@
validator.field=Champ
validator.message=Message
validator.scope=...
+x=
Modified: lutinjaxx/branches/storm_1/jaxx-example/Components/src/site/fr/rst/index.rst
===================================================================
--- lutinjaxx/branches/storm_1/jaxx-example/Components/src/site/fr/rst/index.rst 2008-12-30 15:38:45 UTC (rev 1110)
+++ lutinjaxx/branches/storm_1/jaxx-example/Components/src/site/fr/rst/index.rst 2009-01-02 08:23:35 UTC (rev 1111)
@@ -6,6 +6,13 @@
of the SwingSet demo. Various pages use advanced features such as data binding, scripting, event handling, and
CSS stylesheets.
+Examples/Calculator
+===================
+
+This is an implementation of Challenge #2 from the `XUL Grand Coding Challenge 2004`_ . Because this example program
+has been implemented in so many different languages, you can easily compare JAXX's
+syntax against the competition and decide for yourself which you prefer.
+
Screen shot
-----------
Modified: lutinjaxx/branches/storm_1/jaxx-example/pom.xml
===================================================================
--- lutinjaxx/branches/storm_1/jaxx-example/pom.xml 2008-12-30 15:38:45 UTC (rev 1110)
+++ lutinjaxx/branches/storm_1/jaxx-example/pom.xml 2009-01-02 08:23:35 UTC (rev 1111)
@@ -25,9 +25,7 @@
</dependencies>
<modules>
- <module>Calculator</module>
<module>Components</module>
- <module>Counter</module>
</modules>
<!-- ************************************************************* -->
1
0