Changeset 1286 in josm


Ignore:
Timestamp:
Jan 17, 2009 10:41:20 PM (4 years ago)
Author:
stoecker
Message:

close #1984

Location:
trunk/src/org/openstreetmap/josm
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/Main.java

    r1266 r1286  
    420420 
    421421        Dimension screenDimension = Toolkit.getDefaultToolkit().getScreenSize(); 
     422        String geometry = Main.pref.get("gui.geometry"); 
    422423        if (args.containsKey("geometry")) { 
    423             String geometry = args.get("geometry").iterator().next(); 
     424            geometry = args.get("geometry").iterator().next(); 
     425        } 
     426        if (geometry.length() != 0) { 
    424427            final Matcher m = Pattern.compile("(\\d+)x(\\d+)(([+-])(\\d+)([+-])(\\d+))?").matcher(geometry); 
    425428            if (m.matches()) { 
     
    436439                } 
    437440                bounds = new Rectangle(x,y,w,h); 
     441                if(!Main.pref.get("gui.geometry").equals(geometry)) { 
     442                    // remember this geometry 
     443                    Main.pref.put("gui.geometry", geometry); 
     444                } 
    438445            } else 
    439446                System.out.println("Ignoring malformed geometry: "+geometry); 
     
    548555        return Locale.getDefault().getLanguage() + ":"; 
    549556    } 
     557 
     558    static public void saveGuiGeometry() { 
     559        // if the gui.geometry preference is already set, 
     560        // save the current window geometry 
     561        String curGeometryPref = pref.get("gui.geometry"); 
     562        if(curGeometryPref.length() != 0) { 
     563            Rectangle bounds = parent.getBounds(); 
     564            pref.put("gui.geometry", 
     565                     (int)bounds.getWidth() + 
     566                     "x" + (int)bounds.getHeight() + 
     567                     "+" + (int)bounds.getX() + 
     568                     "+" + (int)bounds.getY()); 
     569        } 
     570    } 
    550571} 
  • trunk/src/org/openstreetmap/josm/actions/ExitAction.java

    r1169 r1286  
    2525 
    2626    public void actionPerformed(ActionEvent e) { 
    27         if (!Main.breakBecauseUnsavedChanges()) 
     27        if (!Main.breakBecauseUnsavedChanges()) { 
     28            Main.saveGuiGeometry(); 
    2829            System.exit(0); 
     30        } 
    2931    } 
    3032} 
  • trunk/src/org/openstreetmap/josm/gui/MainApplication.java

    r1260 r1286  
    5656                if (Main.breakBecauseUnsavedChanges()) 
    5757                    return; 
     58                Main.saveGuiGeometry(); 
    5859                System.exit(0); 
    5960            } 
     
    215216        splash.closeSplash(); 
    216217 
    217         if (!args.containsKey("no-fullscreen") && !args.containsKey("geometry") && Toolkit.getDefaultToolkit().isFrameStateSupported(JFrame.MAXIMIZED_BOTH)) 
     218        if (!args.containsKey("no-fullscreen") && !args.containsKey("geometry") && Main.pref.get("gui.geometry") == null && Toolkit.getDefaultToolkit().isFrameStateSupported(JFrame.MAXIMIZED_BOTH)) 
    218219            mainFrame.setExtendedState(JFrame.MAXIMIZED_BOTH); 
    219220 
Note: See TracChangeset for help on using the changeset viewer.