Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
[fw/altos] / altosui / AltosUIPreferences.java
index da6c39689614c9f8db4f9ae4e424fce1d7546031..010d8e6a8423ac48c0c2a3ae97da782b268dd276 100644 (file)
@@ -15,7 +15,7 @@
  * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
  */
 
-package altosui;
+package AltosUI;
 
 import java.io.*;
 import java.util.*;
@@ -25,10 +25,9 @@ import java.util.concurrent.LinkedBlockingQueue;
 import java.awt.Component;
 import javax.swing.*;
 import javax.swing.filechooser.FileSystemView;
+import org.altusmetrum.AltosLib.*;
 
-/* import org.altusmetrum.AltosLib.*; */
-
-class AltosUIPreferences extends AltosPreferences {
+public class AltosUIPreferences extends AltosPreferences {
 
        /* font size preferences name */
        final static String fontSizePreference = "FONT-SIZE";
@@ -47,6 +46,9 @@ class AltosUIPreferences extends AltosPreferences {
 
        static String look_and_feel = null;
 
+       /* Serial debug */
+       static boolean serial_debug;
+
        public static void init() {
                font_listeners = new LinkedList<AltosFontListener>();
 
@@ -55,6 +57,8 @@ class AltosUIPreferences extends AltosPreferences {
                look_and_feel = preferences.get(lookAndFeelPreference, UIManager.getSystemLookAndFeelClassName());
 
                ui_listeners = new LinkedList<AltosUIListener>();
+               serial_debug = preferences.getBoolean(serialDebugPreference, false);
+               AltosLink.set_debug(serial_debug);
        }
 
        static { init(); }
@@ -156,4 +160,17 @@ class AltosUIPreferences extends AltosPreferences {
                        ui_listeners.remove(l);
                }
        }
+       public static void set_serial_debug(boolean new_serial_debug) {
+               serial_debug = new_serial_debug;
+               AltosLink.set_debug(serial_debug);
+               synchronized (preferences) {
+                       preferences.putBoolean(serialDebugPreference, serial_debug);
+                       flush_preferences();
+               }
+       }
+
+       public static boolean serial_debug() {
+               return serial_debug;
+       }
+
 }
\ No newline at end of file