Changeset 1286 in josm for trunk/src/org


Ignore:
Timestamp:
2009-01-17T22:41:20+01:00 (16 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.