Change setCallback in the Bridge + checkstyle
Vincent Couvert [Thu, 14 Feb 2008 15:49:50 +0000 (15:49 +0000)]
62 files changed:
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/CallScilabBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/ScilabBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/checkbox/SwingScilabCheckBox.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/contextmenu/SwingScilabContextMenu.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/editbox/SwingScilabEditBox.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/frame/SwingScilabFrame.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/label/SwingScilabLabel.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/listbox/SwingScilabListBox.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/menu/SwingScilabMenu.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/menuitem/SwingScilabMenuItem.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/popupmenu/SwingScilabPopupMenu.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/pushbutton/SwingScilabPushButton.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/radiobutton/SwingScilabRadioButton.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/slider/SwingScilabSlider.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/tab/SwingScilabTab.java
scilab/modules/gui/src/java/org/scilab/modules/gui/bridge/textbox/SwingScilabTextBox.java
scilab/modules/gui/src/java/org/scilab/modules/gui/checkbox/ScilabCheckBox.java
scilab/modules/gui/src/java/org/scilab/modules/gui/checkbox/ScilabCheckBoxBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/contextmenu/ScilabContextMenu.java
scilab/modules/gui/src/java/org/scilab/modules/gui/contextmenu/ScilabContextMenuBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/editbox/ScilabEditBox.java
scilab/modules/gui/src/java/org/scilab/modules/gui/editbox/ScilabEditBoxBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/events/GlobalEventFilter.java
scilab/modules/gui/src/java/org/scilab/modules/gui/events/GlobalMouseEventWatcher.java
scilab/modules/gui/src/java/org/scilab/modules/gui/events/Jxclick.java
scilab/modules/gui/src/java/org/scilab/modules/gui/events/Jxgetmouse.java
scilab/modules/gui/src/java/org/scilab/modules/gui/events/callback/CallBack.java
scilab/modules/gui/src/java/org/scilab/modules/gui/events/callback/JavaCallBack.java
scilab/modules/gui/src/java/org/scilab/modules/gui/events/callback/ScilabCallBack.java
scilab/modules/gui/src/java/org/scilab/modules/gui/frame/Frame.java
scilab/modules/gui/src/java/org/scilab/modules/gui/frame/ScilabFrame.java
scilab/modules/gui/src/java/org/scilab/modules/gui/frame/ScilabFrameBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/frame/SimpleFrame.java
scilab/modules/gui/src/java/org/scilab/modules/gui/graphicWindow/ScilabGraphicWindow.java
scilab/modules/gui/src/java/org/scilab/modules/gui/label/ScilabLabel.java
scilab/modules/gui/src/java/org/scilab/modules/gui/label/ScilabLabelBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/listbox/ScilabListBox.java
scilab/modules/gui/src/java/org/scilab/modules/gui/listbox/ScilabListBoxBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/menu/ScilabMenu.java
scilab/modules/gui/src/java/org/scilab/modules/gui/menu/ScilabMenuBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/menuitem/MenuItem.java
scilab/modules/gui/src/java/org/scilab/modules/gui/menuitem/ScilabMenuItem.java
scilab/modules/gui/src/java/org/scilab/modules/gui/menuitem/ScilabMenuItemBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/menuitem/SimpleMenuItem.java
scilab/modules/gui/src/java/org/scilab/modules/gui/popupmenu/ScilabPopupMenu.java
scilab/modules/gui/src/java/org/scilab/modules/gui/popupmenu/ScilabPopupMenuBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/pushbutton/ScilabPushButton.java
scilab/modules/gui/src/java/org/scilab/modules/gui/pushbutton/ScilabPushButtonBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/radiobutton/ScilabRadioButton.java
scilab/modules/gui/src/java/org/scilab/modules/gui/radiobutton/ScilabRadioButtonBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/slider/ScilabSlider.java
scilab/modules/gui/src/java/org/scilab/modules/gui/slider/ScilabSliderBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/tab/ScilabTab.java
scilab/modules/gui/src/java/org/scilab/modules/gui/tab/ScilabTabBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/tab/SimpleTab.java
scilab/modules/gui/src/java/org/scilab/modules/gui/tab/Tab.java
scilab/modules/gui/src/java/org/scilab/modules/gui/textbox/ScilabTextBox.java
scilab/modules/gui/src/java/org/scilab/modules/gui/textbox/ScilabTextBoxBridge.java
scilab/modules/gui/src/java/org/scilab/modules/gui/utils/MenuBarBuilder.java
scilab/modules/gui/src/java/org/scilab/modules/gui/utils/ToolBarBuilder.java
scilab/modules/gui/src/java/org/scilab/modules/gui/widget/Widget.java
scilab/modules/jvm/src/java/org/scilab/modules/jvm/Scilab.java

index 8fdb0e3..8736645 100644 (file)
@@ -13,6 +13,7 @@ import org.scilab.modules.gui.contextmenu.ContextMenu;
 import org.scilab.modules.gui.contextmenu.ScilabContextMenu;
 import org.scilab.modules.gui.editbox.EditBox;
 import org.scilab.modules.gui.editbox.ScilabEditBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.filechooser.FileChooser;
 import org.scilab.modules.gui.filechooser.ScilabFileChooser;
 import org.scilab.modules.gui.frame.Frame;
@@ -699,15 +700,16 @@ public class CallScilabBridge {
         * @param callbackType the type of the callback
         */
        public static void setWidgetCallback(int objID, String callbackString, int callbackType) {
-               ((Widget) UIElementMapper.getCorrespondingUIElement(objID)).setCallback(callbackString, callbackType);
+               ((Widget) UIElementMapper.getCorrespondingUIElement(objID)).setCallback(CallBack.createCallback(callbackString, callbackType));
        }
        
        /**
         * Set a callback for a Frame
         * @param objID the ID of the object in the UIElementMapper
-        * @param callback the text of the callback
+        * @param callbackString the text of the callback
+        * @param callbackType the type of the callback
         */
-       public static void setFrameCallback(int objID, String callback) {
+       public static void setFrameCallback(int objID, String callbackString, int callbackType) {
                System.out.println("setFrameCallback is not implemented");
        }
        
@@ -1667,5 +1669,4 @@ public class CallScilabBridge {
        public static void setFrameRelief(int id, String reliefType) {
                ((Frame) UIElementMapper.getCorrespondingUIElement(id)).setRelief(reliefType);
        }
-
 }
index ab2a5a9..1a399a1 100644 (file)
@@ -23,6 +23,7 @@ import org.scilab.modules.gui.contextmenu.SimpleContextMenu;
 import org.scilab.modules.gui.editbox.EditBox;
 import org.scilab.modules.gui.editbox.ScilabEditBoxBridge;
 import org.scilab.modules.gui.editbox.SimpleEditBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.filechooser.FileChooser;
 import org.scilab.modules.gui.filechooser.ScilabFileChooserBridge;
 import org.scilab.modules.gui.filechooser.SimpleFileChooser;
@@ -428,11 +429,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the Frame
         * @param frame the Frame we want to set the callback of
-        * @param command the Scilab command to execute when the Frame is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set
         */
-       public static void setCallback(Frame frame, String command, int commandType) {
-               ScilabFrameBridge.setCallback(frame, command, commandType);
+       public static void setCallback(Frame frame, CallBack callback) {
+               ScilabFrameBridge.setCallback(frame, callback);
        }
 
        /**
@@ -704,11 +704,10 @@ public class ScilabBridge {
        /**
         * Set the callback of the tab
         * @param tab the tab which we want to set the callback of
-        * @param command the command to be executed when the tab is closed
-        * @param commandType the type of the command
+        * @param callback the CallBack to set
         */
-       public static void setCallback(Tab tab, String command, int commandType) {
-               ScilabTabBridge.setCallback(tab, command, commandType);
+       public static void setCallback(Tab tab, CallBack callback) {
+               ScilabTabBridge.setCallback(tab, callback);
        }
        
        /******************/
@@ -1061,11 +1060,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the menu, this callback is a Scilab command
         * @param menuItem the MenuItem which we want to add the mnemonic to
-        * @param command the Scilab command to execute when the menu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(MenuItem menuItem, String command, int commandType) {
-               ScilabMenuItemBridge.setCallback(menuItem, command, commandType);
+       public static void setCallback(MenuItem menuItem, CallBack callback) {
+               ScilabMenuItemBridge.setCallback(menuItem, callback);
        }
 
        /**
@@ -1373,11 +1371,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the menu, this callback is a Scilab command
         * @param menu the menu we want to set the callback of
-        * @param command the Scilab command to execute when the menu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(Menu menu, String command, int commandType) {
-               ScilabMenuBridge.setCallback(menu, command, commandType);
+       public static void setCallback(Menu menu, CallBack callback) {
+               ScilabMenuBridge.setCallback(menu, callback);
        }
 
        /**
@@ -1540,11 +1537,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the contextMenu, this callback is a Scilab command
         * @param contextMenu the contextMenu we want to set the callback of
-        * @param command the Scilab command to execute when the contextMenu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(ContextMenu contextMenu, String command, int commandType) {
-               ScilabContextMenuBridge.setCallback(contextMenu, command, commandType);
+       public static void setCallback(ContextMenu contextMenu, CallBack callback) {
+               ScilabContextMenuBridge.setCallback(contextMenu, callback);
        }
 
        /**
@@ -1699,11 +1695,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the pushbutton
         * @param pushButton the PushButton we want to set the callback of
-        * @param command the Scilab command to execute when the pushbutton is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(PushButton pushButton, String command, int commandType) {
-               ScilabPushButtonBridge.setCallback(pushButton, command, commandType);
+       public static void setCallback(PushButton pushButton, CallBack callback) {
+               ScilabPushButtonBridge.setCallback(pushButton, callback);
        }
 
        /**
@@ -1960,11 +1955,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the TextBox
         * @param textBox the TextBox we want to set the callback of
-        * @param command the Scilab command to execute when the TextBox is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(TextBox textBox, String command, int commandType) {
-               ScilabTextBoxBridge.setCallback(textBox, command, commandType);
+       public static void setCallback(TextBox textBox, CallBack callback) {
+               ScilabTextBoxBridge.setCallback(textBox, callback);
        }
 
        /**
@@ -2167,11 +2161,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the EditBox
         * @param editBox the EditBox we want to set the callback of
-        * @param command the Scilab command to execute when the EditBox is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the Callback to set.
         */
-       public static void setCallback(EditBox editBox, String command, int commandType) {
-               ScilabEditBoxBridge.setCallback(editBox, command, commandType);
+       public static void setCallback(EditBox editBox, CallBack callback) {
+               ScilabEditBoxBridge.setCallback(editBox, callback);
        }
 
        /**
@@ -2373,11 +2366,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the Label
         * @param label the Label we want to set the callback of
-        * @param command the Scilab command to execute when the Label is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the Callback to set.
         */
-       public static void setCallback(Label label, String command, int commandType) {
-               ScilabLabelBridge.setCallback(label, command, commandType);
+       public static void setCallback(Label label, CallBack callback) {
+               ScilabLabelBridge.setCallback(label, callback);
        }
 
        /**
@@ -2580,11 +2572,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the CheckBox
         * @param checkBox the CheckBox we want to set the callback of
-        * @param command the Scilab command to execute when the CheckBox is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(CheckBox checkBox, String command, int commandType) {
-               ScilabCheckBoxBridge.setCallback(checkBox, command, commandType);
+       public static void setCallback(CheckBox checkBox, CallBack callback) {
+               ScilabCheckBoxBridge.setCallback(checkBox, callback);
        }
 
        /**
@@ -2805,11 +2796,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the RadioButton
         * @param radioButton the RadioButton we want to set the callback of
-        * @param command the Scilab command to execute when the RadioButton is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public static void setCallback(RadioButton radioButton, String command, int commandType) {
-               ScilabRadioButtonBridge.setCallback(radioButton, command, commandType);
+       public static void setCallback(RadioButton radioButton, CallBack callback) {
+               ScilabRadioButtonBridge.setCallback(radioButton, callback);
        }
 
        /**
@@ -3030,11 +3020,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the Slider
         * @param slider the Slider we want to set the callback of
-        * @param command the Scilab command to execute when the Slider is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(Slider slider, String command, int commandType) {
-               ScilabSliderBridge.setCallback(slider, command, commandType);
+       public static void setCallback(Slider slider, CallBack callback) {
+               ScilabSliderBridge.setCallback(slider, callback);
        }
 
        /**
@@ -3307,11 +3296,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the ListBox
         * @param listBox the ListBox we want to set the callback of
-        * @param command the Scilab command to execute when the ListBox is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the Callback to set.
         */
-       public static void setCallback(ListBox listBox, String command, int commandType) {
-               ScilabListBoxBridge.setCallback(listBox, command, commandType);
+       public static void setCallback(ListBox listBox, CallBack callback) {
+               ScilabListBoxBridge.setCallback(listBox, callback);
        }
 
 
@@ -3581,11 +3569,10 @@ public class ScilabBridge {
        /**
         * Add a callback to the PopupMenu
         * @param popupMenu the PopupMenu we want to set the callback of
-        * @param command the Scilab command to execute when the PopupMenu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(PopupMenu popupMenu, String command, int commandType) {
-               ScilabPopupMenuBridge.setCallback(popupMenu, command, commandType);
+       public static void setCallback(PopupMenu popupMenu, CallBack callback) {
+               ScilabPopupMenuBridge.setCallback(popupMenu, callback);
        }
 
        /**
index f97081f..e8d051e 100644 (file)
@@ -6,6 +6,7 @@ package org.scilab.modules.gui.bridge.checkbox;
 import javax.swing.JCheckBox;
 
 import org.scilab.modules.gui.checkbox.SimpleCheckBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.menubar.MenuBar;
 import org.scilab.modules.gui.toolbar.ToolBar;
 import org.scilab.modules.gui.utils.Position;
@@ -79,12 +80,10 @@ public class SwingScilabCheckBox extends JCheckBox implements SimpleCheckBox {
        
        /**
         * Add a callback to the CheckBox
-        * @param command the Scilab command to execute when the CheckBox is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set
         */
-       public void setCallback(String command, int commandType) {
-               System.out.println("setCallback(String command, int commandType) is not yet implemented for SwingScilabCheckBox");
-               //addActionListener(ScilabCallBack.create(command, commandType));
+       public void setCallback(CallBack callback) {
+               System.out.println("setCallback(CallBack callback) is not yet implemented for SwingScilabCheckBox");
        }
 
        /**
index 315ec37..3f7af99 100644 (file)
@@ -154,10 +154,9 @@ public class SwingScilabContextMenu extends JPopupMenu implements SimpleContextM
 
        /**
         * Add a callback to the menu, this callback is a Scilab command
-        * @param command the Scilab command to execute when the menu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
+       public void setCallback(CallBack callback) {
                throw new UnsupportedOperationException();
        }
 
index ae95414..0ebd38c 100644 (file)
@@ -6,6 +6,7 @@ package org.scilab.modules.gui.bridge.editbox;
 import javax.swing.JTextField;
 
 import org.scilab.modules.gui.editbox.SimpleEditBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.menubar.MenuBar;
 import org.scilab.modules.gui.toolbar.ToolBar;
 import org.scilab.modules.gui.utils.Position;
@@ -76,12 +77,10 @@ public class SwingScilabEditBox extends JTextField implements SimpleEditBox {
        
        /**
         * Add a callback to the EditBox
-        * @param command the Scilab command to execute when the EditBox is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               System.out.println("setCallback(String command, int commandType) is not yet implemented for SwingScilabEditBox");
-               //addActionListener(ScilabCallBack.create(command, commandType));
+       public void setCallback(CallBack callback) {
+               System.out.println("setCallback(Callback callback) is not yet implemented for SwingScilabEditBox");
        }
 
        /**
index f4a41b7..611c0cb 100644 (file)
@@ -21,6 +21,7 @@ import org.scilab.modules.gui.checkbox.CheckBox;
 import org.scilab.modules.gui.console.Console;
 import org.scilab.modules.gui.dockable.Dockable;
 import org.scilab.modules.gui.editbox.EditBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.frame.Frame;
 import org.scilab.modules.gui.frame.SimpleFrame;
 import org.scilab.modules.gui.label.Label;
@@ -428,12 +429,10 @@ public class SwingScilabFrame extends JPanel implements SimpleFrame {
        
        /**
         * Add a callback to the Frame
-        * @param command the Scilab command to execute when the Frame is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               System.out.println("setCallback(String command, int commandType) is not yet implemented for SwingScilabFrame");
-               //addActionListener(ScilabCallBack.create(command, commandType));
+       public void setCallback(CallBack callback) {
+               System.out.println("setCallback(CallBack callback) is not yet implemented for SwingScilabFrame");
        }
 
        /**
index 8d93962..dc8246a 100644 (file)
@@ -5,6 +5,7 @@ package org.scilab.modules.gui.bridge.label;
 
 import javax.swing.JLabel;
 
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.label.SimpleLabel;
 import org.scilab.modules.gui.menubar.MenuBar;
 import org.scilab.modules.gui.toolbar.ToolBar;
@@ -77,12 +78,10 @@ public class SwingScilabLabel extends JLabel implements SimpleLabel {
 
        /**
         * Add a callback to the Label
-        * @param command the Scilab command to execute when the Label is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               System.out.println("setCallback(String command, int commandType) is not yet implemented for SwingScilabLabel");
-               //addActionListener(ScilabCallBack.create(command, commandType));
+       public void setCallback(CallBack callback) {
+               System.out.println("setCallback(CallBack callback) is not yet implemented for SwingScilabLabel");
        }
 
        /**
index afd81fb..7c3c1e6 100644 (file)
@@ -12,6 +12,7 @@ import javax.swing.JList;
 import javax.swing.JScrollPane;
 import javax.swing.ListSelectionModel;
 
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.listbox.SimpleListBox;
 import org.scilab.modules.gui.menubar.MenuBar;
 import org.scilab.modules.gui.toolbar.ToolBar;
@@ -147,12 +148,10 @@ public class SwingScilabListBox extends JScrollPane implements SimpleListBox {
        
        /**
         * Add a callback to the CheckBox
-        * @param command the Scilab command to execute when the CheckBox is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               System.out.println("setCallback(String command, int commandType) is not yet implemented for SwingScilabListBox");
-               //addActionListener(ScilabCallBack.create(command, commandType));
+       public void setCallback(CallBack callback) {
+               System.out.println("setCallback(CallBack callback) is not yet implemented for SwingScilabListBox");
        }
 
        /**
index f134fe9..9929e1d 100644 (file)
@@ -10,7 +10,6 @@ import javax.swing.JMenu;
 
 import org.scilab.modules.gui.bridge.menuitem.SwingScilabMenuItem;
 import org.scilab.modules.gui.events.callback.CallBack;
-import org.scilab.modules.gui.events.callback.ScilabCallBack;
 import org.scilab.modules.gui.menu.Menu;
 import org.scilab.modules.gui.menu.SimpleMenu;
 import org.scilab.modules.gui.menubar.MenuBar;
@@ -163,11 +162,10 @@ public class SwingScilabMenu extends JMenu implements SimpleMenu {
 
        /**
         * Add a callback to the menu, this callback is a Scilab command
-        * @param command the Scilab command to execute when the menu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param cb the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               callback = ScilabCallBack.create(command, commandType);
+       public void setCallback(CallBack cb) {
+               this.callback = cb;
                
                /* Remove Java MouseListeners if not already done */
                /* Save them so that they can be put back */
index c7f8644..9815ce6 100644 (file)
@@ -9,7 +9,6 @@ import javax.swing.JMenuItem;
 
 import org.scilab.modules.gui.bridge.menu.SwingScilabMenu;
 import org.scilab.modules.gui.events.callback.CallBack;
-import org.scilab.modules.gui.events.callback.ScilabCallBack;
 import org.scilab.modules.gui.menu.Menu;
 import org.scilab.modules.gui.menu.ScilabMenu;
 import org.scilab.modules.gui.menubar.MenuBar;
@@ -43,12 +42,11 @@ public class SwingScilabMenuItem extends JMenuItem implements SimpleMenuItem {
        
        /**
         * Add a callback to the MenuItem, this callback is a Scilab command
-        * @param command the Scilab command to execute when the MenuItem is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               callback = ScilabCallBack.create(command, commandType); 
-               addActionListener(callback);
+       public void setCallback(CallBack callback) {
+               this.callback = callback; 
+               addActionListener(this.callback);
        }
 
        /**
index 82d2ec8..467bc5e 100644 (file)
@@ -7,6 +7,7 @@ import java.util.StringTokenizer;
 
 import javax.swing.JComboBox;
 
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.menubar.MenuBar;
 import org.scilab.modules.gui.popupmenu.SimplePopupMenu;
 import org.scilab.modules.gui.toolbar.ToolBar;
@@ -77,12 +78,10 @@ public class SwingScilabPopupMenu extends JComboBox implements SimplePopupMenu {
 
        /**
         * Add a callback to the PopupMenu
-        * @param command the Scilab command to execute when the PopupMenu is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               System.out.println("setCallback(String command, int commandType) is not yet implemented for SwingScilabPopupMenu");
-               //addActionListener(ScilabCallBack.create(command, commandType));
+       public void setCallback(CallBack callback) {
+               System.out.println("setCallback(CallBack callback) is not yet implemented for SwingScilabPopupMenu");
        }
 
        /**
index abe2b26..3a9f75e 100644 (file)
@@ -9,7 +9,6 @@ import javax.swing.ImageIcon;
 import javax.swing.JButton;
 
 import org.scilab.modules.gui.events.callback.CallBack;
-import org.scilab.modules.gui.events.callback.ScilabCallBack;
 import org.scilab.modules.gui.menubar.MenuBar;
 import org.scilab.modules.gui.pushbutton.SimplePushButton;
 import org.scilab.modules.gui.toolbar.ToolBar;
@@ -98,12 +97,11 @@ public class SwingScilabPushButton extends JButton implements SimplePushButton {
        
        /**
         * Add a callback to the pushbutton
-        * @param command the Scilab command to execute when the pushbutton is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               callback = ScilabCallBack.create(command, commandType);
-               addActionListener(callback);
+       public void setCallback(CallBack callback) {
+               this.callback = callback;
+               addActionListener(this.callback);
        }
 
        /**
index 8c8b0bc..7fe3019 100644 (file)
@@ -5,6 +5,7 @@ package org.scilab.modules.gui.bridge.radiobutton;
 
 import javax.swing.JRadioButton;
 
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.menubar.MenuBar;
 import org.scilab.modules.gui.radiobutton.SimpleRadioButton;
 import org.scilab.modules.gui.toolbar.ToolBar;
@@ -79,12 +80,10 @@ public class SwingScilabRadioButton extends JRadioButton implements SimpleRadioB
 
        /**
         * Add a callback to the RadioButton
-        * @param command the Scilab command to execute when the RadioButton is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               System.out.println("setCallback(String command, int commandType) is not yet implemented for SwingScilabRadioButton");
-               //addActionListener(ScilabCallBack.create(command, commandType));
+       public void setCallback(CallBack callback) {
+               System.out.println("setCallback(CallBack callback) is not yet implemented for SwingScilabRadioButton");
        }
 
        /**
index a1cde5a..69945c8 100644 (file)
@@ -9,7 +9,6 @@ import java.awt.event.AdjustmentListener;
 import javax.swing.JScrollBar;
 
 import org.scilab.modules.gui.events.callback.CallBack;
-import org.scilab.modules.gui.events.callback.ScilabCallBack;
 import org.scilab.modules.gui.menubar.MenuBar;
 import org.scilab.modules.gui.slider.SimpleSlider;
 import org.scilab.modules.gui.toolbar.ToolBar;
@@ -85,12 +84,11 @@ public class SwingScilabSlider extends JScrollBar implements SimpleSlider {
 
        /**
         * Add a callback to the Slider
-        * @param command the Scilab command to execute when the Slider is validated
-        * @param commandType the type of the command that will be executed.
+        * @param cb the callback to set.
         */
-       public void setCallback(String command, int commandType) {
+       public void setCallback(CallBack cb) {
                /* Create a callback */
-               callback = ScilabCallBack.create(command, commandType);
+               this.callback = cb;
                
                /* Remove previous listener if exists */
                if (adjustmentListener != null) {
index cdc3e93..9d39771 100644 (file)
@@ -23,7 +23,6 @@ import org.scilab.modules.gui.console.Console;
 import org.scilab.modules.gui.dockable.Dockable;
 import org.scilab.modules.gui.editbox.EditBox;
 import org.scilab.modules.gui.events.callback.CallBack;
-import org.scilab.modules.gui.events.callback.ScilabCallBack;
 import org.scilab.modules.gui.frame.Frame;
 import org.scilab.modules.gui.label.Label;
 import org.scilab.modules.gui.listbox.ListBox;
@@ -465,13 +464,11 @@ public class SwingScilabTab extends View implements SimpleTab {
        
        /**
         * Set the callback of the tab
-        * @param command the command to be executed when the tab is closed
-        * @param commandType the type of the command
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               CallBack cb = ScilabCallBack.create(command, commandType);
-               cb.putValue(Action.NAME, DockingConstants.CLOSE_ACTION);
-               this.addAction(cb);
+       public void setCallback(CallBack callback) {
+               callback.putValue(Action.NAME, DockingConstants.CLOSE_ACTION);
+               this.addAction(callback);
        }
 
 }
index 54f2d79..574319d 100644 (file)
@@ -5,6 +5,7 @@ package org.scilab.modules.gui.bridge.textbox;
 
 import javax.swing.JTextArea;
 
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.menubar.MenuBar;
 import org.scilab.modules.gui.textbox.SimpleTextBox;
 import org.scilab.modules.gui.toolbar.ToolBar;
@@ -33,7 +34,6 @@ public class SwingScilabTextBox extends JTextArea implements SimpleTextBox {
         * Sets the text of a Text Widget
         * @param newText the text to set to the Text Widget
         */
-       @Override
        public void setText(String newText) {
                super.setText(newText);
        }
@@ -42,7 +42,6 @@ public class SwingScilabTextBox extends JTextArea implements SimpleTextBox {
         * Gets the text of a Text Widget
         * @return the text of the Text Widget
         */
-       @Override
        public String getText() {
                return super.getText();
        }
@@ -135,10 +134,9 @@ public class SwingScilabTextBox extends JTextArea implements SimpleTextBox {
        
        /**
         * Add a callback to the TextBox
-        * @param command the Scilab command to execute when the contents of the TextBox is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
+       public void setCallback(CallBack callback) {
                throw new UnsupportedOperationException();
        }
 
index 6f7a12b..78550a2 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.ScilabBridge;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 import org.scilab.modules.gui.widget.ScilabWidget;
@@ -168,11 +169,10 @@ public class ScilabCheckBox extends ScilabWidget implements CheckBox {
        
        /**
         * Add a callback to the CheckBox
-        * @param command the Scilab command to execute when the CheckBox is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
        
        /**
index 8dc674b..c466a37 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.checkbox.SwingScilabCheckBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 
@@ -122,11 +123,10 @@ public class ScilabCheckBoxBridge {
        /**
         * Add a callback to the CheckBox
         * @param checkBox the CheckBox we want to set the callback of
-        * @param command the Scilab command to execute when the contents of the checkBox is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(CheckBox checkBox, String command, int commandType) {
-               checkBox.getAsSimpleCheckBox().setCallback(command, commandType);
+       public static void setCallback(CheckBox checkBox, CallBack callback) {
+               checkBox.getAsSimpleCheckBox().setCallback(callback);
        }
        
        /**
index f1b86b1..72b15bd 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.ScilabBridge;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.menuitem.MenuItem;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
@@ -181,11 +182,10 @@ public class ScilabContextMenu extends ScilabWidget implements ContextMenu {
        
        /**
         * Add a callback to the ContextMenu, this callback is a Scilab command
-        * @param command the Scilab command to execute when the ContextMenu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
 
        /**
index 5abc715..e6f87fd 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.contextmenu.SwingScilabContextMenu;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.menuitem.MenuItem;
 
 /**
@@ -146,11 +147,10 @@ public class ScilabContextMenuBridge {
        /**
         * Add a callback to the contextMenu, this callback is a Scilab command
         * @param contextMenu the contextMenu we want to set the callback of
-        * @param command the Scilab command to execute when the contextMenu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the Callback to set.
         */
-       public static void setCallback(ContextMenu contextMenu, String command, int commandType) {
-               contextMenu.getAsSimpleContextMenu().setCallback(command, commandType);
+       public static void setCallback(ContextMenu contextMenu, CallBack callback) {
+               contextMenu.getAsSimpleContextMenu().setCallback(callback);
        }
 
        /**
index 977d038..3c59e44 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.ScilabBridge;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 import org.scilab.modules.gui.widget.ScilabWidget;
@@ -169,11 +170,10 @@ public class ScilabEditBox extends ScilabWidget implements EditBox {
        
        /**
         * Add a callback to the EditBox
-        * @param command the Scilab command to execute when the EditBox is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
        
        /**
index a1ee5c2..1742894 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.editbox.SwingScilabEditBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 
@@ -122,11 +123,10 @@ public class ScilabEditBoxBridge {
        /**
         * Add a callback to the EditBox
         * @param editBox the EditBox we want to set the callback of
-        * @param command the Scilab command to execute when the contents of the editBox is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(EditBox editBox, String command, int commandType) {
-               editBox.getAsSimpleEditBox().setCallback(command, commandType);
+       public static void setCallback(EditBox editBox, CallBack callback) {
+               editBox.getAsSimpleEditBox().setCallback(callback);
        }
        
        /**
index b8a032a..8752332 100644 (file)
@@ -62,9 +62,10 @@ public class GlobalEventFilter {
        /**
         * Update ClickInfos structure when a mouse event occurs on a Canvas.
         * 
-        * @param mouseEvent : the event caught.
-        * @param source : the canvas where the event occurs.
-        * @param buttonCode : the Scilab button code.
+        * @param mouseEvent the event caught.
+        * @param source the canvas where the event occurs.
+        * @param buttonCode the Scilab button code.
+        * @param isControlDown true if the CTRL key has been pressed
         */
        public static void filterMouse(MouseEvent mouseEvent, SwingScilabCanvas source, int buttonCode, boolean isControlDown) {
                synchronized (ClickInfos.getInstance()) {
index c99134f..c6a2154 100644 (file)
@@ -179,6 +179,7 @@ public abstract class GlobalMouseEventWatcher implements AWTEventListener {
         * @param mouseEvent : the mouse event caught (as seen in Scilab) 
         * @param canvas : the canvas where action occurs.
         * @param scilabMouseAction : the integer scilab code for mouse action.
+        * @param isControlDown true if the CTRL key has been pressed
         */
        public abstract void mouseEventFilter(MouseEvent mouseEvent, SwingScilabCanvas canvas, int scilabMouseAction, boolean isControlDown);
 
index 0e67fef..f73e212 100644 (file)
@@ -126,6 +126,7 @@ public final class Jxclick {
         * @param mouseEvent : the Mouse Event caught
         * @param scilabMouseAction : the integer scilab code for mouse action.
         * @param canvas : the canvas where action occurs.
+        * @param isControlDown true if the CTRL key has been pressed
         */
        private static void mouseActionFilter(MouseEvent mouseEvent, SwingScilabCanvas canvas, int scilabMouseAction, boolean isControlDown) {  
                if (scilabMouseAction == GlobalMouseEventWatcher.PRESSED
index 0193094..97fe354 100644 (file)
@@ -147,6 +147,7 @@ public final class Jxgetmouse {
         * @param mouseEvent : the Mouse Event caught
         * @param scilabMouseAction : the integer scilab code for mouse action.
         * @param canvas : the canvas where action occurs.
+        * @param isControlDown true if the CTRL key has been pressed
         */
        private static void mouseActionFilter(MouseEvent mouseEvent, SwingScilabCanvas canvas, int scilabMouseAction, boolean isControlDown) {  
                if (scilabMouseAction != GlobalMouseEventWatcher.MOVED
index 1349894..18fd08f 100644 (file)
@@ -43,10 +43,10 @@ public abstract class CallBack extends AbstractAction implements ActionListener
        
        /**
         * Constructor to be seen by specifics CallBack.
-        * @param command
+        * @param command the command associated to the ccallback
         */
        public CallBack(String command) {
-               this.command=command;
+               this.command = command;
        }
        
        /**
@@ -61,4 +61,18 @@ public abstract class CallBack extends AbstractAction implements ActionListener
         */
        public abstract void callBack();
                
+       /**
+        * Create a Callback from Scilab data
+        * @param command the instruction
+        * @param callbackType the type of the instruction
+        * @return the Callback
+        */
+       public static CallBack createCallback(String command, int callbackType) {
+               if (callbackType == CallBack.JAVA) {
+                       return JavaCallBack.create(command);
+               } else {
+                       return ScilabCallBack.create(command, callbackType);
+               }
+       }
+
 }
index 0594b36..ac3f26a 100644 (file)
@@ -16,7 +16,6 @@ public abstract class JavaCallBack extends CallBack {
 
        /**
         * @param command : the command to execute.
-        * @param type : the type of this command.
         */
        private JavaCallBack(String command) {
                super(command);
@@ -26,7 +25,6 @@ public abstract class JavaCallBack extends CallBack {
         * Callback Factory to easily create a callback
         * just like in scilab.
         * @param command : the command to execute.
-        * @param type : the type of this command.
         * @return a usable Java callback
         */
        public static JavaCallBack create(String command) {
index 2e7c419..c5846af 100644 (file)
@@ -2,6 +2,7 @@ package org.scilab.modules.gui.events.callback;
 
 import java.awt.event.ActionEvent;
 
+import org.scilab.modules.action_binding.InterpreterManagement;
 import org.scilab.modules.gui.console.ScilabConsole;
 import org.scilab.modules.gui.events.GlobalEventFilter;
 import org.scilab.modules.gui.events.GlobalEventWatcher;
index d3992ee..52f6fbc 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.container.Container;
+import org.scilab.modules.gui.events.callback.CallBack;
 
 /**
  * Interface for Scilab frames in GUIs
@@ -76,10 +77,9 @@ public interface Frame extends Container {
 
        /**
         * Set the callback of the Frame
-        * @param command the command to be executed when the Frame is activated
-        * @param commandType the type of the command
+        * @param callback the callback to set
         */
-       void setCallback(String command, int commandType);
+       void setCallback(CallBack callback);
        
        /**
         * Set the Relief of the Frame
index 7ad298f..d27e30d 100644 (file)
@@ -8,6 +8,7 @@ import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.ScilabBridge;
 import org.scilab.modules.gui.container.ScilabContainer;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 
@@ -168,11 +169,10 @@ public class ScilabFrame extends ScilabContainer implements Frame {
        
        /**
         * Add a callback to the Frame
-        * @param command the Scilab command to execute when the Frame is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
        
        /**
index d0f1c5c..7514cd6 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.frame.SwingScilabFrame;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 
@@ -121,11 +122,10 @@ public class ScilabFrameBridge {
        /**
         * Add a callback to the Frame
         * @param frame the Frame we want to set the callback of
-        * @param command the Scilab command to execute when the contents of the frame is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set
         */
-       public static void setCallback(Frame frame, String command, int commandType) {
-               frame.getAsSimpleFrame().setCallback(command, commandType);
+       public static void setCallback(Frame frame, CallBack callback) {
+               frame.getAsSimpleFrame().setCallback(callback);
        }
        
        /**
index 6f92066..b415cb9 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.container.Container;
+import org.scilab.modules.gui.events.callback.CallBack;
 
 /**
  * Interface for SimpleFrame the associated object to Scilab GUIs Frame
@@ -72,10 +73,9 @@ public interface SimpleFrame extends Container {
 
        /**
         * Set the callback of the Frame
-        * @param command the command to be executed when the Frame is activated
-        * @param commandType the type of the command
+        * @param callback the callback to set
         */
-       void setCallback(String command, int commandType);
+       void setCallback(CallBack callback);
        
        /**
         * Set the Relief of the Frame
index ab72a6f..63f4981 100644 (file)
@@ -56,7 +56,7 @@ public final class ScilabGraphicWindow extends ScilabWindow {
                
                Tab graphicTab = ScilabTab.createTab(FIGURE_TITLE + figureIndex);
                /* Destroy the graphic figure when the tab is closed */
-               graphicTab.setCallback(getClosingWindowCommand(figureIndex), CallBack.SCILAB_INSTRUCTION);
+               graphicTab.setCallback(CallBack.createCallback(getClosingWindowCommand(figureIndex), CallBack.SCILAB_INSTRUCTION));
                Canvas graphicCanvas = ScilabCanvas.createCanvas(figureIndex);
                graphicTab.addMenuBar(menuBar);
                graphicTab.addToolBar(toolBar);
index 3194dfb..59303b7 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.ScilabBridge;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 import org.scilab.modules.gui.widget.ScilabWidget;
@@ -168,11 +169,10 @@ public class ScilabLabel extends ScilabWidget implements Label {
        
        /**
         * Add a callback to the Label
-        * @param command the Scilab command to execute when the Label is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
        
        /**
index 5a24eef..857ff15 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.label.SwingScilabLabel;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 
@@ -122,11 +123,10 @@ public class ScilabLabelBridge {
        /**
         * Add a callback to the Label
         * @param label the Label we want to set the callback of
-        * @param command the Scilab command to execute when the contents of the label is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(Label label, String command, int commandType) {
-               label.getAsSimpleLabel().setCallback(command, commandType);
+       public static void setCallback(Label label, CallBack callback) {
+               label.getAsSimpleLabel().setCallback(callback);
        }
        
        /**
index 589d07b..6005ee7 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.ScilabBridge;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 import org.scilab.modules.gui.widget.ScilabWidget;
@@ -168,11 +169,10 @@ public class ScilabListBox extends ScilabWidget implements ListBox {
        
        /**
         * Add a callback to the ListBox
-        * @param command the Scilab command to execute when the ListBox is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
        
        /**
index d572942..188f661 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.listbox.SwingScilabListBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 
@@ -122,11 +123,10 @@ public class ScilabListBoxBridge {
        /**
         * Add a callback to the ListBox
         * @param listBox the ListBox we want to set the callback of
-        * @param command the Scilab command to execute when the contents of the listBox is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public static void setCallback(ListBox listBox, String command, int commandType) {
-               listBox.getAsSimpleListBox().setCallback(command, commandType);
+       public static void setCallback(ListBox listBox, CallBack callback) {
+               listBox.getAsSimpleListBox().setCallback(callback);
        }
        
        /**
index 2ee0a24..4421de4 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.ScilabBridge;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.menuitem.MenuItem;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
@@ -209,11 +210,10 @@ public class ScilabMenu extends ScilabWidget implements Menu {
        
        /**
         * Add a callback to the menu, this callback is a Scilab command
-        * @param command the Scilab command to execute when the menu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
 
        /**
index 89c8c24..8aef6da 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.menu.SwingScilabMenu;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.menuitem.MenuItem;
 
 /**
@@ -197,11 +198,10 @@ public class ScilabMenuBridge {
        /**
         * Add a callback to the menu, this callback is a Scilab command
         * @param menu the menu we want to set the callback of
-        * @param command the Scilab command to execute when the menu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(Menu menu, String command, int commandType) {
-               menu.getAsSimpleMenu().setCallback(command, commandType);
+       public static void setCallback(Menu menu, CallBack callback) {
+               menu.getAsSimpleMenu().setCallback(callback);
        }
 
        /**
index 8058433..38d68c6 100644 (file)
@@ -32,13 +32,6 @@ public interface MenuItem extends Widget {
        void setMnemonic(int mnemonic);
        
        /**
-        * Add a callback to the menu, this callback is a Scilab command
-        * @param command the Scilab command to execute when the menu is activated
-        * @param commandType the type of the command that will be executed.
-        */
-       void setCallback(String command, int commandType);
-       
-       /**
         * Set if the menu item is enabled or not
         * @param status true if the menu item is enabled
         */
index 37c599e..bda0093 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.ScilabBridge;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.menu.Menu;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
@@ -185,11 +186,10 @@ public class ScilabMenuItem extends ScilabWidget implements MenuItem {
        
        /**
         * Add a callback to the menu, this callback is a Scilab command
-        * @param command the Scilab command to execute when the menu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
 
        /**
index 6b72bd4..edaac0f 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.menuitem.SwingScilabMenuItem;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.menu.Menu;
 
 /**
@@ -181,11 +182,10 @@ public class ScilabMenuItemBridge {
        /**
         * Add a callback to the menu, this callback is a Scilab command
         * @param menuItem the menu we want to set the callback of
-        * @param command the Scilab command to execute when the menu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(MenuItem menuItem, String command, int commandType) {
-               menuItem.getAsSimpleMenuItem().setCallback(command, commandType);
+       public static void setCallback(MenuItem menuItem, CallBack callback) {
+               menuItem.getAsSimpleMenuItem().setCallback(callback);
        }
 
        /**
index bac2e51..102dc7d 100644 (file)
@@ -25,13 +25,6 @@ public interface SimpleMenuItem extends Widget {
        void setMnemonic(int mnemonic);
        
        /**
-        * Add a callback to the menu, this callback is a Scilab command
-        * @param command the Scilab command to execute when the menu is activated
-        * @param commandType the type of the command that will be executed.
-        */
-       void setCallback(String command, int commandType);
-
-       /**
         * Set if the menu item is enabled or not
         * @param status true if the menu item is enabled
         */
index 7ab0e36..0fc064a 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.ScilabBridge;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 import org.scilab.modules.gui.widget.ScilabWidget;
@@ -168,11 +169,10 @@ public class ScilabPopupMenu extends ScilabWidget implements PopupMenu {
        
        /**
         * Add a callback to the PopupMenu
-        * @param command the Scilab command to execute when the PopupMenu is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
        
        /**
index b3ed597..0fae098 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.popupmenu.SwingScilabPopupMenu;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 
@@ -122,11 +123,10 @@ public class ScilabPopupMenuBridge {
        /**
         * Add a callback to the PopupMenu
         * @param popupMenu the PopupMenu we want to set the callback of
-        * @param command the Scilab command to execute when the contents of the popupMenu is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(PopupMenu popupMenu, String command, int commandType) {
-               popupMenu.getAsSimplePopupMenu().setCallback(command, commandType);
+       public static void setCallback(PopupMenu popupMenu, CallBack callback) {
+               popupMenu.getAsSimplePopupMenu().setCallback(callback);
        }
        
        /**
index 6013b18..4822c95 100644 (file)
@@ -10,6 +10,7 @@ import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 import org.scilab.modules.gui.widget.ScilabWidget;
 import org.scilab.modules.gui.bridge.ScilabBridge;
+import org.scilab.modules.gui.events.callback.CallBack;
 
 /**
  * Class for Scilab PushButtons in GUIs
@@ -129,11 +130,10 @@ public class ScilabPushButton extends ScilabWidget implements PushButton {
 
        /**
         * Add a callback to the pushbutton, this callback is a Scilab command
-        * @param command the Scilab command to execute when the pushbutton is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
 
        /**
index ae8e347..247cef8 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.pushbutton.SwingScilabPushButton;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 
@@ -123,11 +124,10 @@ public class ScilabPushButtonBridge {
        /**
         * Add a callback to the pushbutton
         * @param pushButton the PushButton we want to set the callback of
-        * @param command the Scilab command to execute when the pushbutton is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public static void setCallback(PushButton pushButton, String command, int commandType) {
-               pushButton.getAsSimplePushButton().setCallback(command, commandType);
+       public static void setCallback(PushButton pushButton, CallBack callback) {
+               pushButton.getAsSimplePushButton().setCallback(callback);
        }
 
        /**
index eaba8bf..5ac49d4 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.ScilabBridge;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 import org.scilab.modules.gui.widget.ScilabWidget;
@@ -168,11 +169,10 @@ public class ScilabRadioButton extends ScilabWidget implements RadioButton {
        
        /**
         * Add a callback to the RadioButton
-        * @param command the Scilab command to execute when the RadioButton is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
        
        /**
index 1af3908..02bc38d 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.radiobutton.SwingScilabRadioButton;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 
@@ -122,11 +123,10 @@ public class ScilabRadioButtonBridge {
        /**
         * Add a callback to the RadioButton
         * @param radioButton the RadioButton we want to set the callback of
-        * @param command the Scilab command to execute when the contents of the RadioButton is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(RadioButton radioButton, String command, int commandType) {
-               radioButton.getAsSimpleRadioButton().setCallback(command, commandType);
+       public static void setCallback(RadioButton radioButton, CallBack callback) {
+               radioButton.getAsSimpleRadioButton().setCallback(callback);
        }
        
        /**
index 2b09d5d..31f8760 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.ScilabBridge;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 import org.scilab.modules.gui.widget.ScilabWidget;
@@ -168,11 +169,10 @@ public class ScilabSlider extends ScilabWidget implements Slider {
        
        /**
         * Add a callback to the Slider
-        * @param command the Scilab command to execute when the Slider is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
        
        /**
index 1653235..cda536d 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.slider.SwingScilabSlider;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 
@@ -122,11 +123,10 @@ public class ScilabSliderBridge {
        /**
         * Add a callback to the Slider
         * @param slider the Slider we want to set the callback of
-        * @param command the Scilab command to execute when the contents of the Slider is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public static void setCallback(Slider slider, String command, int commandType) {
-               slider.getAsSimpleSlider().setCallback(command, commandType);
+       public static void setCallback(Slider slider, CallBack callback) {
+               slider.getAsSimpleSlider().setCallback(callback);
        }
        
        /**
index 5540722..674c0f3 100644 (file)
@@ -10,6 +10,7 @@ import org.scilab.modules.gui.console.Console;
 import org.scilab.modules.gui.container.ScilabContainer;
 import org.scilab.modules.gui.dockable.Dockable;
 import org.scilab.modules.gui.editbox.EditBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.frame.Frame;
 import org.scilab.modules.gui.label.Label;
 import org.scilab.modules.gui.listbox.ListBox;
@@ -355,11 +356,10 @@ public class ScilabTab extends ScilabContainer implements Tab {
 
        /**
         * Set the callback of the tab
-        * @param command the command to be executed when the tab is closed
-        * @param commandType the type of the command
+        * @param callback the CallBack to set
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
        
        /**
index d1f80f1..f3821f3 100644 (file)
@@ -8,6 +8,7 @@ import org.scilab.modules.gui.console.Console;
 import org.scilab.modules.gui.bridge.tab.SwingScilabTab;
 import org.scilab.modules.gui.canvas.Canvas;
 import org.scilab.modules.gui.editbox.EditBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.frame.Frame;
 import org.scilab.modules.gui.label.Label;
 import org.scilab.modules.gui.listbox.ListBox;
@@ -279,11 +280,10 @@ public class ScilabTabBridge {
        /**
         * Set the callback of the tab
         * @param tab the tab which we want to set the callback of
-        * @param command the command to be executed when the tab is closed
-        * @param commandType the type of the command
+        * @param callback the CallBack to set
         */
-       public static void setCallback(Tab tab, String command, int commandType) {
-               tab.getAsSimpleTab().setCallback(command, commandType);
+       public static void setCallback(Tab tab, CallBack callback) {
+               tab.getAsSimpleTab().setCallback(callback);
        }
 
 }
index 59036e9..ee52896 100644 (file)
@@ -8,6 +8,7 @@ import org.scilab.modules.gui.checkbox.CheckBox;
 import org.scilab.modules.gui.console.Console;
 import org.scilab.modules.gui.canvas.Canvas;
 import org.scilab.modules.gui.editbox.EditBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.frame.Frame;
 import org.scilab.modules.gui.label.Label;
 import org.scilab.modules.gui.listbox.ListBox;
@@ -209,9 +210,8 @@ public interface SimpleTab {
        
        /**
         * Set the callback of the tab
-        * @param command the command to be executed when the tab is closed
-        * @param commandType the type of the command
+        * @param callback the CallBack to set
         */
-       void setCallback(String command, int commandType);
+       void setCallback(CallBack callback);
 
 }
index f4005cc..adb8f86 100644 (file)
@@ -8,6 +8,7 @@ import org.scilab.modules.gui.console.Console;
 import org.scilab.modules.gui.canvas.Canvas;
 import org.scilab.modules.gui.container.Container;
 import org.scilab.modules.gui.editbox.EditBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.frame.Frame;
 import org.scilab.modules.gui.label.Label;
 import org.scilab.modules.gui.listbox.ListBox;
@@ -149,10 +150,9 @@ public interface Tab extends Container {
        
        /**
         * Set the callback of the tab
-        * @param command the command to be executed when the tab is closed
-        * @param commandType the type of the command
+        * @param callback the CallBack to set
         */
-       void setCallback(String command, int commandType);
+       void setCallback(CallBack callback);
        
        /**
         * @return parent window of the tab object
index 7257665..d121da5 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.ScilabBridge;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.text.ScilabText;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
@@ -178,11 +179,10 @@ public class ScilabTextBox extends ScilabText implements TextBox {
 
        /**
         * Add a callback to the TextBox
-        * @param command the Scilab command to execute when the TextBox is activated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the callback to set.
         */
-       public void setCallback(String command, int commandType) {
-               ScilabBridge.setCallback(this, command, commandType);
+       public void setCallback(CallBack callback) {
+               ScilabBridge.setCallback(this, callback);
        }
 
        /**
index f0107b3..b8def13 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.bridge.textbox.SwingScilabTextBox;
+import org.scilab.modules.gui.events.callback.CallBack;
 import org.scilab.modules.gui.utils.Position;
 import org.scilab.modules.gui.utils.Size;
 
@@ -176,11 +177,10 @@ public class ScilabTextBoxBridge {
        /**
         * Add a callback to the TextBox
         * @param textBox the TextBox we want to set the callback of
-        * @param command the Scilab command to execute when the contents of the textBox is validated
-        * @param commandType the type of the command that will be executed.
+        * @param callback the CallBack to set.
         */
-       public static void setCallback(TextBox textBox, String command, int commandType) {
-               textBox.getAsSimpleTextBox().setCallback(command, commandType);
+       public static void setCallback(TextBox textBox, CallBack callback) {
+               textBox.getAsSimpleTextBox().setCallback(callback);
        }
        
        /**
index 5f13c5a..a72b4c4 100644 (file)
@@ -243,7 +243,7 @@ public final class MenuBarBuilder {
                                                                }
                                                        }
                                                if (command != null && commandType != CallBack.UNTYPED) {
-                                                       menuItem.setCallback(replaceFigureID(command), commandType);
+                                                       menuItem.setCallback(CallBack.createCallback(replaceFigureID(command), commandType));
                                                        }
                                                }
                                                // Read next child
index b5f4e93..5f134ac 100644 (file)
@@ -227,7 +227,7 @@ public final class ToolBarBuilder {
                                                                }
                                                        }
                                                if (command != null && commandType != CallBack.UNTYPED) {
-                                                       pushButton.setCallback(replaceFigureID(command), commandType);
+                                                       pushButton.setCallback(CallBack.createCallback(replaceFigureID(command), commandType));
                                                        }
                                                }
                                                // Read next child
index b828dd1..9f9ff87 100644 (file)
@@ -7,6 +7,7 @@ import java.awt.Color;
 import java.awt.Font;
 
 import org.scilab.modules.gui.dockable.Dockable;
+import org.scilab.modules.gui.events.callback.CallBack;
 
 /**
  * Interface for widget associated to objects in Scilab GUIs
@@ -71,10 +72,9 @@ public interface Widget extends Dockable {
 
        /**
         * Set the callback of the widget
-        * @param command the command to be executed when the widget is activated
-        * @param commandType the type of the command
+        * @param callback the callback to set
         */
-       void setCallback(String command, int commandType);
+       void setCallback(CallBack callback);
 
        /**
         * Set the horizontal alignment for the widget text
index 46cef43..2c15bae 100644 (file)
@@ -57,8 +57,6 @@ public class Scilab {
 
                        try {
                                mainView = ScilabWindow.createWindow();
-                               mainView.draw();
-                               mainView.setTitle("Scilab-5.0");
                        } catch (NoClassDefFoundError exception) {
                                System.err.println("Cannot create Scilab Window.\n"
                                                + "Check if the thirdparties are available (Flexdock, JOGL...).\n"
@@ -84,10 +82,9 @@ public class Scilab {
                                /* Create a tab to put console into */
                                consoleTab = ScilabTab.createTab("Console");
                                /* Exit Scilab when the console is closed */
-                               consoleTab.setCallback("exit();", CallBack.SCILAB_INSTRUCTION);
+                               consoleTab.setCallback(CallBack.createCallback("exit();", CallBack.SCILAB_INSTRUCTION));
 
                                ScilabConsole.createConsole();
-                               //consoleTab.addMember(sciConsole);
                        } catch (NoClassDefFoundError exception) {
                                System.err.println("Cannot create Scilab Console.\n"
                                                + "Check if the thirdparties are available (JoGL/JRosetta...).\n"
@@ -96,19 +93,12 @@ public class Scilab {
                                System.exit(-1);
                        }
 
-                       try {
-                               mainView.draw();
-                       } catch (UnsatisfiedLinkError exception) {
-                               System.err.println("Problem while loading the native library (link not resolved)");
-                               System.err.println(exception.getLocalizedMessage());
-                               System.exit(-1);
-                       }
-
                        /** Adding content into container */
                        ScilabConsole.getConsole().addToolBar(toolBar);
                        ScilabConsole.getConsole().addMenuBar(menuBar);
                        consoleTab.addMember(ScilabConsole.getConsole());
                        mainView.addTab(consoleTab);
+                       mainView.draw();
                } else {
                        System.out.println("mode -NW");
                }