Author: jerome
Date: 2008-08-25 12:32:09 +0200 (Mon, 25 Aug 2008)
New Revision: 1577

Added:
   
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/images/
   
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/images/checkbox-active.png
   
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/images/checkbox-empty.png
Modified:
   
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/GadgetParameterEditorLabelRenderer.java
   
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/GadgetParametersEditorValueRenderer.java
   
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/PropertyValueEditor.java
Log:
* Changed Editors.
* Give focus to table when comboboxes are edited.

Modified: 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/GadgetParameterEditorLabelRenderer.java
===================================================================
--- 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/GadgetParameterEditorLabelRenderer.java
     2008-08-25 06:37:09 UTC (rev 1576)
+++ 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/GadgetParameterEditorLabelRenderer.java
     2008-08-25 10:32:09 UTC (rev 1577)
@@ -45,14 +45,19 @@
        public Component getTableCellRendererComponent(JTable table, Object 
value, boolean isSelected, boolean hasFocus, int row, int column) {
                
                GadgetParameter record = (GadgetParameter) value;
-               label.setText(record.getDescription() +" :    ");
-               label.setToolTipText(record.getName());
+               if(record.getName().contains("traces")){
+                       label.setText("");
+                       label.setSize(0, 0);
+                       label.setPreferredSize(label.getSize());
+                       return label;
+               }
                
                label.setHorizontalAlignment(JLabel.RIGHT);
                label.setFont(new Font("dialog", Font.BOLD, 12));
                label.setOpaque(true);
                label.setBackground(new Color(221,221,221));
-               
+               label.setText(record.getDescription() +" :    ");
+               label.setToolTipText(record.getName());
                return label;
        }
 }
\ No newline at end of file

Modified: 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/GadgetParametersEditorValueRenderer.java
===================================================================
--- 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/GadgetParametersEditorValueRenderer.java
    2008-08-25 06:37:09 UTC (rev 1576)
+++ 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/GadgetParametersEditorValueRenderer.java
    2008-08-25 10:32:09 UTC (rev 1577)
@@ -24,16 +24,23 @@
 
 import java.awt.Component;
 import java.awt.Font;
+import java.awt.event.MouseEvent;
+import java.awt.event.MouseMotionListener;
 
+import javax.swing.ImageIcon;
+import javax.swing.JCheckBox;
 import javax.swing.JLabel;
 import javax.swing.JTable;
 import javax.swing.table.TableCellRenderer;
 
 import com.kysoh.tuxdroid.gadget.framework.container.Gadget;
 import com.kysoh.tuxdroid.gadget.framework.container.GadgetInstanceParameters;
+import com.kysoh.tuxdroid.gadget.framework.container.GadgetParameter;
+import com.kysoh.tuxdroid.gadget.framework.container.GadgetParameterType;
 
-public final class GadgetParametersEditorValueRenderer implements 
TableCellRenderer {
+public final class GadgetParametersEditorValueRenderer implements 
TableCellRenderer{
        private final JLabel label = new JLabel();
+       private final JCheckBox checkbox = new JCheckBox();
        public GadgetInstanceParameters values;
        public Gadget gadget;
 
@@ -43,9 +50,30 @@
        }
 
        @Override
-       public Component getTableCellRendererComponent(JTable table, Object 
value, boolean isSelected, boolean hasFocus, int row, int column) {
-               label.setText(values.get(gadget.getParameters().get(row)));
-               label.setFont(new Font("dialog", Font.PLAIN, 12));
-               return label;
+       public Component getTableCellRendererComponent(JTable table, Object 
value, boolean isSelected, boolean hasFocus, int row, int column)
+       {       
+               
if(gadget.getParameters().get(row).getKind().equals((GadgetParameterType.booleanParameter))){
+                       boolean val = 
Boolean.valueOf(values.get(gadget.getParameters().get(row)));
+                       checkbox.setSelected(val);
+                       if(val) checkbox.setIcon(new 
ImageIcon(getClass().getResource("images/checkbox-active.png")));
+                       else checkbox.setIcon(new 
ImageIcon(getClass().getResource("images/checkbox-empty.png")));
+                       checkbox.addMouseListener(new 
java.awt.event.MouseAdapter(){
+                               public void 
mousePressed(java.awt.event.MouseEvent event){
+                                       checkbox.setIcon(new 
ImageIcon(getClass().getResource("images/checkbox-empty.png")));
+                               }
+                       });
+                       return checkbox;
+               }
+               else{
+                       
if(gadget.getParameters().get(row).getName().contains("traces")){
+                               label.setText("");
+                               label.setSize(0, 0);
+                               label.setPreferredSize(label.getSize());
+                               return label;
+                       }
+                       
label.setText(values.get(gadget.getParameters().get(row)));
+                       label.setFont(new Font("dialog", Font.PLAIN, 12));
+                       return label;
+               }
        }
 }
\ No newline at end of file

Modified: 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/PropertyValueEditor.java
===================================================================
--- 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/PropertyValueEditor.java
    2008-08-25 06:37:09 UTC (rev 1576)
+++ 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/PropertyValueEditor.java
    2008-08-25 10:32:09 UTC (rev 1577)
@@ -23,10 +23,14 @@
 package com.kysoh.tuxdroid.gadget.framework.propertyEditor;
 
 import java.awt.Component;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
 import java.awt.event.FocusEvent;
 import java.awt.event.FocusListener;
 
 import javax.swing.AbstractCellEditor;
+import javax.swing.ImageIcon;
+import javax.swing.JCheckBox;
 import javax.swing.JComboBox;
 import javax.swing.JTable;
 import javax.swing.JTextField;
@@ -39,16 +43,18 @@
 
        private static final long serialVersionUID = 1547906243006445420L;
        private final JTextField stringEditor = new JTextField();
-       private final JComboBox booleanEditor = new JComboBox(new Boolean[] { 
true, false });
+       private final JCheckBox booleanEditor = new JCheckBox();
        private Component currentEditComponent;
-       private Gadget gadget;
+       private Gadget gadget;
        
+       
        public PropertyValueEditor(Gadget gadget){
                this.gadget = gadget;
        }
        
        @Override
-       public Component getTableCellEditorComponent(JTable table, Object 
value, boolean isSelected, int row, int column) {
+       public Component getTableCellEditorComponent(JTable table, Object 
value, boolean isSelected, int row, int column) {
+               final JTable tabl = table;
                GadgetParameter record = gadget.getParameters().get(row);
                currentEditComponent = null;
                String stringValue = (String) value;
@@ -65,25 +71,37 @@
                }
                case booleanParameter: {
                        boolean boolValue = Boolean.valueOf(stringValue);
-                       booleanEditor.setSelectedIndex(boolValue ? 0 : 1);
-                       currentEditComponent = booleanEditor;
+                       booleanEditor.setSelected(boolValue);
+                       currentEditComponent = booleanEditor;
+                       booleanEditor.addActionListener(new ActionListener(){
+                               @Override
+                               public void actionPerformed(ActionEvent arg0) {
+                                       
System.out.println(arg0.getActionCommand());            
+                                       tabl.getParent().requestFocusInWindow();
+                               }
+                               
+                       });
                        break;
                }
-               case enumerationParameter: {
+               case enumerationParameter: {
+                       
                        String[] enums = 
gadget.getParameters().get(row).getEnumValues();
-                       JComboBox comboBox = new JComboBox(enums);
-                       comboBox.addFocusListener(new FocusListener() {
-
-                               @Override
-                               public void focusGained(FocusEvent e) {
-                                       // TODO Auto-generated method stub
-                               }
-
-                               @Override
-                               public void focusLost(FocusEvent e) {
-                                       System.out.println("tagazok");
-                               }
+                       final JComboBox comboBox = new JComboBox(enums);
+                       comboBox.addActionListener(new ActionListener(){
+                               boolean editing = false;
+                               @Override
+                               public void actionPerformed(ActionEvent arg0) {
+                                       editing = !editing;
+                                       
System.out.println(arg0.getActionCommand());
+                                       
if(arg0.getActionCommand().equals("comboBoxChanged")){
+                                               if(!editing)
+                                                       
+                                                       
tabl.getParent().requestFocusInWindow();
+                                       }
+                               }
+                               
                        });
+                       
                        for (int i = 0; i < enums.length; i++) {
                                if (enums[i].equals(stringValue)) {
                                        comboBox.setSelectedIndex(i);
@@ -103,6 +121,9 @@
                        return ((JTextField) currentEditComponent).getText();
                } else if (currentEditComponent instanceof JComboBox) {
                        return String.valueOf(((JComboBox) 
currentEditComponent).getSelectedItem());
+               }
+               else if(currentEditComponent instanceof JCheckBox){
+                       return 
String.valueOf(((JCheckBox)currentEditComponent).isSelected());
                }
                return null;
        }

Added: 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/images/checkbox-active.png
===================================================================
(Binary files differ)


Property changes on: 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/images/checkbox-active.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/images/checkbox-empty.png
===================================================================
(Binary files differ)


Property changes on: 
software_suite_v2/software/tuxdroid-gadget-framework/trunk/tuxdroid-gadget-framework/sources/com/kysoh/tuxdroid/gadget/framework/propertyEditor/images/checkbox-empty.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Tux-droid-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tux-droid-svn

Reply via email to