Minor UI fixes
Using platform-specific default look and feel on mac & linux instead of metal
Defaulting Chainsaw screen size to maximized by default


Project: http://git-wip-us.apache.org/repos/asf/logging-chainsaw/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-chainsaw/commit/cbfde96a
Tree: http://git-wip-us.apache.org/repos/asf/logging-chainsaw/tree/cbfde96a
Diff: http://git-wip-us.apache.org/repos/asf/logging-chainsaw/diff/cbfde96a

Branch: refs/heads/master
Commit: cbfde96a9bcdf68498ceebc0f904616f78a6cc29
Parents: 8f17d6a
Author: Scott Deboy <[email protected]>
Authored: Sun Nov 14 06:31:46 2010 +0000
Committer: Scott Deboy <[email protected]>
Committed: Sun Nov 14 06:31:46 2010 +0000

----------------------------------------------------------------------
 .../java/org/apache/log4j/chainsaw/LogUI.java   | 26 +++++++++++++++++---
 .../log4j/chainsaw/prefs/default.properties     |  5 ++--
 2 files changed, 26 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-chainsaw/blob/cbfde96a/src/main/java/org/apache/log4j/chainsaw/LogUI.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/log4j/chainsaw/LogUI.java 
b/src/main/java/org/apache/log4j/chainsaw/LogUI.java
index ce6154a..6785335 100644
--- a/src/main/java/org/apache/log4j/chainsaw/LogUI.java
+++ b/src/main/java/org/apache/log4j/chainsaw/LogUI.java
@@ -290,6 +290,19 @@ public class LogUI extends JFrame implements 
ChainsawViewer, SettingsListener {
         public void run()
         {
           String lookAndFeelClassName = model.getLookAndFeelClassName();
+          if (lookAndFeelClassName == null || 
lookAndFeelClassName.trim().equals("")) {
+              String osName = System.getProperty("os.name");
+              if (osName.toLowerCase().startsWith("mac")) {
+                  //no need to assign look and feel
+              } else if (osName.toLowerCase().startsWith("windows")) {
+                  lookAndFeelClassName = 
"com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
+                  model.setLookAndFeelClassName(lookAndFeelClassName);
+              } else if (osName.toLowerCase().startsWith("linux")) {
+                  lookAndFeelClassName = 
"com.sun.java.swing.plaf.gtk.GTKLookAndFeel";
+                  model.setLookAndFeelClassName(lookAndFeelClassName);
+              }
+          }
+
           if (lookAndFeelClassName != null && 
!(lookAndFeelClassName.trim().equals(""))) {
             loadLookAndFeelUsingPluginClassLoader(lookAndFeelClassName);
           }
@@ -709,9 +722,16 @@ public class LogUI extends JFrame implements 
ChainsawViewer, SettingsListener {
   public void loadSettings(LoadSettingsEvent event) {
     setLocation(
       event.asInt(LogUI.MAIN_WINDOW_X), event.asInt(LogUI.MAIN_WINDOW_Y));
-    setSize(
-      event.asInt(LogUI.MAIN_WINDOW_WIDTH),
-      event.asInt(LogUI.MAIN_WINDOW_HEIGHT));
+      int width = event.asInt(LogUI.MAIN_WINDOW_WIDTH);
+      int height = event.asInt(LogUI.MAIN_WINDOW_HEIGHT);
+      if (width == -1 && height == -1) {
+          width = Toolkit.getDefaultToolkit().getScreenSize().width;
+          height = Toolkit.getDefaultToolkit().getScreenSize().height;
+          setSize(width, height);
+          setExtendedState(getExtendedState() | MAXIMIZED_BOTH);
+      } else {
+          setSize(width, height);
+      }
 
     getToolBarAndMenus().stateChange();
     RuleColorizer colorizer = new RuleColorizer();

http://git-wip-us.apache.org/repos/asf/logging-chainsaw/blob/cbfde96a/src/main/resources/org/apache/log4j/chainsaw/prefs/default.properties
----------------------------------------------------------------------
diff --git 
a/src/main/resources/org/apache/log4j/chainsaw/prefs/default.properties 
b/src/main/resources/org/apache/log4j/chainsaw/prefs/default.properties
index 291d78e..8035e50 100644
--- a/src/main/resources/org/apache/log4j/chainsaw/prefs/default.properties
+++ b/src/main/resources/org/apache/log4j/chainsaw/prefs/default.properties
@@ -21,8 +21,9 @@
 # window when it is first realized on startup
 main.window.x=0
 main.window.y=0
-main.window.width=1024
-main.window.height=768
+# default width and height to -1 will display the app at full screen resolution
+main.window.width=-1
+main.window.height=-1
 
 
table.columns.order=ID,TIMESTAMP,MARKER,LEVEL,LOGGER,MESSAGE,THROWABLE,THREAD,NDC,CLASS,METHOD,FILE,LINE,MILLISDELTA
 table.columns.widths=50,80,95,50,100,500,100,100,100,100,100,100,100,100

Reply via email to