Author: jflesch
Date: 2007-08-08 21:59:50 +0000 (Wed, 08 Aug 2007)
New Revision: 14545

Added:
   trunk/apps/Thaw/src/thaw/gui/CheckBox.java
Modified:
   trunk/apps/Thaw/src/thaw/i18n/thaw_fr.properties
   trunk/apps/Thaw/src/thaw/plugins/index/UnknownIndexList.java
   trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessageTreeTable.java
Log:
Memorize in the config the check box states

Added: trunk/apps/Thaw/src/thaw/gui/CheckBox.java
===================================================================
--- trunk/apps/Thaw/src/thaw/gui/CheckBox.java                          (rev 0)
+++ trunk/apps/Thaw/src/thaw/gui/CheckBox.java  2007-08-08 21:59:50 UTC (rev 
14545)
@@ -0,0 +1,53 @@
+package thaw.gui;
+
+import javax.swing.JCheckBox;
+import java.awt.event.ActionListener;
+import java.awt.event.ActionEvent;
+
+import thaw.core.Config;
+
+
+public class CheckBox extends JCheckBox implements ActionListener {
+       public final static String PREFIX = "checkbox_";
+
+       private Config config;
+       private String name;
+
+       public CheckBox(Config config, String name,
+                       String txt) {
+               super(txt);
+
+               this.config = config;
+               this.name = name;
+
+               loadState();
+
+               super.addActionListener(this);
+       }
+
+       public CheckBox(Config config, String name,
+                       String txt, boolean selected) {
+               super(txt, selected);
+
+               this.config = config;
+               this.name = name;
+
+               loadState();
+
+               super.addActionListener(this);
+       }
+
+       public void loadState() {
+               if (config.getValue(PREFIX + name) != null)
+                       super.setSelected( (new Boolean(config.getValue(PREFIX 
+ name))).booleanValue() );
+       }
+
+       public void saveState() {
+               config.setValue(PREFIX+name,
+                               Boolean.toString(super.isSelected()));
+       }
+
+       public void actionPerformed(ActionEvent e) {
+               saveState();
+       }
+}

Modified: trunk/apps/Thaw/src/thaw/i18n/thaw_fr.properties
===================================================================
--- trunk/apps/Thaw/src/thaw/i18n/thaw_fr.properties    2007-08-08 21:41:27 UTC 
(rev 14544)
+++ trunk/apps/Thaw/src/thaw/i18n/thaw_fr.properties    2007-08-08 21:59:50 UTC 
(rev 14545)
@@ -406,9 +406,10 @@
 thaw.plugin.index.noCategory=Vous n'avez sp\u00e9cifi\u00e9 aucune 
cat\u00e9gorie pour l'index '?'.\n\u00cates-vous s\u00fbr de vouloir 
l'ins\u00e9rer tel quel ?
 thaw.plugin.index.autoSorting=Essayer de trier automatiquement les indexes
 thaw.plugin.index.automaticallySorted=Automatiquement tri\u00e9s
+thaw.plugin.index.autoSortAction=Ranger cet index d'apr\u00e8s sa 
cat\u00e9gorie
+thaw.plugin.index.autoSortFolderAction=Ranger les indexes d'apr\u00e8s leur 
cat\u00e9gorie


-
 # Peer monitor

 thaw.plugin.peerMonitor.peerMonitor=Connexion

Modified: trunk/apps/Thaw/src/thaw/plugins/index/UnknownIndexList.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/index/UnknownIndexList.java        
2007-08-08 21:41:27 UTC (rev 14544)
+++ trunk/apps/Thaw/src/thaw/plugins/index/UnknownIndexList.java        
2007-08-08 21:59:50 UTC (rev 14545)
@@ -23,6 +23,8 @@

 import javax.swing.JComponent;

+import thaw.gui.CheckBox;
+
 import thaw.core.I18n;
 import thaw.core.Logger;
 import thaw.gui.IconBox;
@@ -44,7 +46,7 @@

        private JScrollPane scrollPane;

-       private JCheckBox autoSorting;
+       private CheckBox autoSorting;

        private JPopupMenu rightClickMenu = null;
        private Vector rightClickActions = null;
@@ -81,7 +83,10 @@
                scrollPane = new JScrollPane(list);
                panel.add(scrollPane, BorderLayout.CENTER);

-               autoSorting = new 
JCheckBox(I18n.getMessage("thaw.plugin.index.autoSorting"));
+               autoSorting = new CheckBox(indexBrowser.getConfig(),
+                                          "autoSorting",
+                                          
I18n.getMessage("thaw.plugin.index.autoSorting"));
+
                autoSorting.addActionListener(this);
                panel.add(autoSorting, BorderLayout.SOUTH);


Modified: trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessageTreeTable.java
===================================================================
--- trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessageTreeTable.java    
2007-08-08 21:41:27 UTC (rev 14544)
+++ trunk/apps/Thaw/src/thaw/plugins/miniFrost/MessageTreeTable.java    
2007-08-08 21:59:50 UTC (rev 14545)
@@ -59,6 +59,7 @@


 import thaw.gui.Table;
+import thaw.gui.CheckBox;
 import thaw.gui.IconBox;
 import thaw.core.I18n;
 import thaw.core.Logger;
@@ -122,7 +123,7 @@
        private JButton searchButton;
        private JButton nextUnread;

-       private JCheckBox seeArchived;
+       private CheckBox seeArchived;

        private JComboBox actions;

@@ -130,8 +131,8 @@
        private int orderBy;
        private boolean desc;

-       private JCheckBox seeTree;
-       private JCheckBox seeUnsigned;
+       private CheckBox seeTree;
+       private CheckBox seeUnsigned;
        private JComboBox minTrustLevel;
        private int minTrustLevelInt;

@@ -215,8 +216,10 @@

                /* archived */

-               seeArchived = new 
JCheckBox(I18n.getMessage("thaw.plugin.miniFrost.seeArchived"));
-               seeArchived.setSelected(false);
+               seeArchived = new CheckBox(mainPanel.getConfig(),
+                                          "miniFrost_seeArchived",
+                                          
I18n.getMessage("thaw.plugin.miniFrost.seeArchived"),
+                                          false);
                seeArchived.addActionListener(this);

                /* trust level */
@@ -235,11 +238,16 @@
                minTrustLevel.addActionListener(this);
                minTrustLevelPanel.add(minTrustLevel, BorderLayout.CENTER);

-               seeUnsigned = new 
JCheckBox(I18n.getMessage("thaw.plugin.miniFrost.seeUnsigned"), true);
+               seeUnsigned = new CheckBox(mainPanel.getConfig(),
+                                          "miniFrost_seeUnsigned",
+                                          
I18n.getMessage("thaw.plugin.miniFrost.seeUnsigned"),
+                                          true);
                seeUnsigned.addActionListener(this);

-               seeTree = new 
JCheckBox(I18n.getMessage("thaw.plugin.miniFrost.seeTree"));
-               seeTree.setSelected(true);
+               seeTree = new CheckBox(mainPanel.getConfig(),
+                                      "miniFrost_seeTree",
+                                      
I18n.getMessage("thaw.plugin.miniFrost.seeTree"),
+                                      true);
                seeTree.addActionListener(this);

                JPanel southWestPanel = new JPanel(new GridLayout(2, 1));


Reply via email to