diff options
| author | Eduard Braun <eduard.braun2@gmx.de> | 2018-01-07 03:35:34 +0000 |
|---|---|---|
| committer | Eduard Braun <eduard.braun2@gmx.de> | 2018-01-07 16:37:02 +0000 |
| commit | df4cb22cc7e5935293af6bb17e1c26959dc300ba (patch) | |
| tree | ba3758e334fe5e6463b0f5d5c89042e1bc6922f3 /src/sp-namedview.cpp | |
| parent | Namedview: Use proper monitor to derive monitor_geometry (diff) | |
| download | inkscape-df4cb22cc7e5935293af6bb17e1c26959dc300ba.tar.gz inkscape-df4cb22cc7e5935293af6bb17e1c26959dc300ba.zip | |
Make stored geometry and default window size enums
Diffstat (limited to 'src/sp-namedview.cpp')
| -rw-r--r-- | src/sp-namedview.cpp | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 4e5da13c3..8fdb34af0 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -27,6 +27,7 @@ #include "document.h" #include "document-undo.h" #include "desktop-events.h" +#include "enums.h" #include "sp-guide.h" #include "sp-item-group.h" @@ -778,19 +779,19 @@ void sp_namedview_window_from_document(SPDesktop *desktop) { SPNamedView *nv = desktop->namedview; Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - bool geometry_from_file = (1 == prefs->getInt("/options/savewindowgeometry/value", 0)); - bool geometry_from_last = (2 == prefs->getInt("/options/savewindowgeometry/value", 0)); - gint default_geometry = prefs->getInt("/options/defaultwindowsize/value", 1); + int window_geometry = prefs->getInt("/options/savewindowgeometry/value", PREFS_WINDOW_GEOMETRY_NONE); + int default_size = prefs->getInt("/options/defaultwindowsize/value", PREFS_WINDOW_SIZE_LARGE); bool new_document = (nv->window_width <= 0) || (nv->window_height <= 0); bool show_dialogs = true; // restore window size and position stored with the document Gtk::Window *win = desktop->getToplevel(); g_assert(win); - if (geometry_from_last) { + if (window_geometry == PREFS_WINDOW_GEOMETRY_LAST) { // do nothing, as we already have code for that in interface.cpp // TODO: Probably should not do similar things in two places - } else if ((geometry_from_file && nv->window_maximized) || (new_document && (default_geometry == 2))) { + } else if ((window_geometry == PREFS_WINDOW_GEOMETRY_FILE && nv->window_maximized) || + (new_document && (default_size == PREFS_WINDOW_SIZE_MAXIMIZED))) { win->maximize(); } else { Gdk::Rectangle monitor_geometry; @@ -807,14 +808,14 @@ void sp_namedview_window_from_document(SPDesktop *desktop) int h = monitor_geometry.get_height(); bool move_to_screen = false; - if (geometry_from_file and !new_document) { + if (window_geometry == PREFS_WINDOW_GEOMETRY_FILE && !new_document) { w = MIN(w, nv->window_width); - h = MIN(h, nv->window_height); + h = MIN(h, nv->window_height); move_to_screen = true; - } else if (default_geometry == 1) { + } else if (default_size == PREFS_WINDOW_SIZE_LARGE) { w *= NEWDOC_X_SCALE; h *= NEWDOC_Y_SCALE; - } else if (default_geometry == 0) { + } else if (default_size == PREFS_WINDOW_SIZE_SMALL) { w = h = 0; // use the smallest possible window size; could be a factor like NEWDOC_X_SCALE in future } if ((w > 0) && (h > 0)) { @@ -903,7 +904,8 @@ void sp_namedview_update_layers_from_document (SPDesktop *desktop) void sp_namedview_document_from_window(SPDesktop *desktop) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - bool save_geometry_in_file = (1 == prefs->getInt("/options/savewindowgeometry/value", 0)); + int window_geometry = prefs->getInt("/options/savewindowgeometry/value", PREFS_WINDOW_GEOMETRY_NONE); + bool save_geometry_in_file = window_geometry == PREFS_WINDOW_GEOMETRY_FILE; bool save_viewport_in_file = prefs->getBool("/options/savedocviewport/value", true); Inkscape::XML::Node *view = desktop->namedview->getRepr(); Geom::Rect const r = desktop->get_display_area(); |
