From 3a59d404dd41c193ef73a27cd942874064a27785 Mon Sep 17 00:00:00 2001 From: Hombre Date: Wed, 15 Sep 2010 23:36:30 +0200 Subject: [PATCH] Second attempt to fix bug #59 --- rtdata/options/options.lin | 10 +++++++--- rtdata/options/options.osx | 10 ++++++---- rtdata/options/options.win | 10 +++++++--- rtgui/editorpanel.cc | 19 ++++--------------- rtgui/editorpanel.h | 2 -- rtgui/filepanel.cc | 10 +++------- rtgui/filepanel.h | 2 -- rtgui/options.cc | 4 ++-- rtgui/rtwindow.cc | 19 ++++++++----------- 9 files changed, 37 insertions(+), 49 deletions(-) diff --git a/rtdata/options/options.lin b/rtdata/options/options.lin index 738f60d47..da99dda5d 100644 --- a/rtdata/options/options.lin +++ b/rtdata/options/options.lin @@ -10,7 +10,7 @@ MultiUser=true Language=English (US) Theme=Gray Version=300 -FirstRun=false +FirstRun=true [External Editor] EditorKind=1 @@ -50,7 +50,7 @@ JpegQuality=100 PngCompression=6 PngBps=8 TiffBps=8 -SaveProcParams=false +SaveProcParams=true PathTemplate=%p1/converted/%f PathFolder= UsePathTemplate=true @@ -65,8 +65,12 @@ SaveParamsToCache=true LoadParamsFromLocation=0 [GUI] +WindowWidth=1000 +WindowHeight=900 +WindowMaximized=false FileBrowserHeight=250 -ToolPanelWidth=270 +ToolPanelWidth=750 +BrowserToolPanelWidth=750 HistoryPanelWidth=230 LastPreviewScale=5 LastCropSize=1 diff --git a/rtdata/options/options.osx b/rtdata/options/options.osx index c0307c50e..713b57509 100644 --- a/rtdata/options/options.osx +++ b/rtdata/options/options.osx @@ -50,7 +50,7 @@ JpegQuality=100 PngCompression=6 PngBps=8 TiffBps=8 -SaveProcParams=false +SaveProcParams=true PathTemplate=%p1/converted/%f PathFolder= UsePathTemplate=true @@ -65,10 +65,12 @@ SaveParamsToCache=true LoadParamsFromLocation=0 [GUI] -WindowWidth=1024 -WindowHeight=700 +WindowWidth=1000 +WindowHeight=900 +WindowMaximized=false FileBrowserHeight=250 -ToolPanelWidth=270 +ToolPanelWidth=750 +BrowserToolPanelWidth=750 HistoryPanelWidth=230 LastPreviewScale=5 LastCropSize=1 diff --git a/rtdata/options/options.win b/rtdata/options/options.win index 8fcedce86..ce04942cc 100644 --- a/rtdata/options/options.win +++ b/rtdata/options/options.win @@ -10,7 +10,7 @@ MultiUser=true Language=English (US) Theme=Gray Version=300 -FirstRun=false +FirstRun=true [External Editor] EditorKind=1 @@ -50,7 +50,7 @@ JpegQuality=100 PngCompression=6 PngBps=8 TiffBps=8 -SaveProcParams=false +SaveProcParams=true PathTemplate=%p1/converted/%f PathFolder= UsePathTemplate=true @@ -65,8 +65,12 @@ SaveParamsToCache=true LoadParamsFromLocation=0 [GUI] +WindowWidth=1000 +WindowHeight=900 +WindowMaximized=false FileBrowserHeight=250 -ToolPanelWidth=270 +ToolPanelWidth=750 +BrowserToolPanelWidth=750 HistoryPanelWidth=230 LastPreviewScale=5 LastCropSize=1 diff --git a/rtgui/editorpanel.cc b/rtgui/editorpanel.cc index 84fb23465..affd133cb 100644 --- a/rtgui/editorpanel.cc +++ b/rtgui/editorpanel.cc @@ -190,8 +190,9 @@ EditorPanel::EditorPanel () : beforePreviewHandler(NULL), beforeIarea(NULL), par vbfr->add (*editbox); hpanedl->pack2(*vbfr, true, true); - hpanedr->pack1(*hpanedl, true, true); - hpanedr->pack2(*vboxright, false, true); + hpanedr->pack1(*hpanedl, true, true); + hpanedr->pack2(*vboxright, false, true); + hpanedr->set_position(options.toolPanelWidth); pack_start (*hpanedr); show_all (); @@ -229,12 +230,6 @@ EditorPanel::EditorPanel () : beforePreviewHandler(NULL), beforeIarea(NULL), par } -bool EditorPanel::beforeClosing () { - - options.toolPanelWidth = vboxright->get_width (); - return true; -} - EditorPanel::~EditorPanel () { history->setHistoryBeforeLineListener (NULL); @@ -268,12 +263,6 @@ EditorPanel::~EditorPanel () { delete saveAsDialog; } -void EditorPanel::on_realize () { - - Gtk::VBox::on_realize (); - vboxright->set_size_request (options.toolPanelWidth, -1); -} - void EditorPanel::open (Thumbnail* tmb, rtengine::InitialImage* isrc) { // initialize everything @@ -854,7 +843,7 @@ bool EditorPanel::idle_sentToGimp(ProgressConnector *pc,rtengine::IImage16* void EditorPanel::saveOptions () { options.historyPanelWidth = hpanedl->get_position (); - options.toolPanelWidth = vboxright->get_width (); + options.toolPanelWidth = hpanedr->get_position (); } void EditorPanel::historyBeforeLineChanged (const rtengine::procparams::ProcParams& params) { diff --git a/rtgui/editorpanel.h b/rtgui/editorpanel.h index 47079fa4f..2b9d3394e 100644 --- a/rtgui/editorpanel.h +++ b/rtgui/editorpanel.h @@ -104,8 +104,6 @@ class EditorPanel : public Gtk::VBox, virtual ~EditorPanel (); void open (Thumbnail* tmb, rtengine::InitialImage* isrc); - bool beforeClosing (); - void on_realize (); void setParent (RTWindow* p) { parent = p; } diff --git a/rtgui/filepanel.cc b/rtgui/filepanel.cc index 860175863..ce6124039 100644 --- a/rtgui/filepanel.cc +++ b/rtgui/filepanel.cc @@ -101,6 +101,8 @@ FilePanel::FilePanel () : parent(NULL) { pack1(*dirpaned, true, true); pack2(*rightBox, true, true); + set_position(options.browserToolPanelWidth); + fileCatalog->setFileSelectionChangeListener (tpc); fileCatalog->setFileSelectionListener (this); @@ -109,12 +111,6 @@ FilePanel::FilePanel () : parent(NULL) { show_all (); } -void FilePanel::on_realize () { - - Gtk::HPaned::on_realize (); - rightBox->set_size_request (options.browserToolPanelWidth, -1); -} - void FilePanel::init () { dirBrowser->fillDirTree (); @@ -167,7 +163,7 @@ void FilePanel::saveOptions () { options.dirBrowserWidth = dirpaned->get_position (); options.dirBrowserHeight = placespaned->get_position (); - options.browserToolPanelWidth = rightBox->get_width (); + options.browserToolPanelWidth = get_position(); if (options.startupDir==STARTUPDIR_LAST && fileCatalog->lastSelectedDir ()!="") options.startupPath = fileCatalog->lastSelectedDir (); fileCatalog->closeDir (); diff --git a/rtgui/filepanel.h b/rtgui/filepanel.h index 70bb7f37e..9dff610be 100644 --- a/rtgui/filepanel.h +++ b/rtgui/filepanel.h @@ -56,8 +56,6 @@ class FilePanel : public Gtk::HPaned, public: FilePanel (); - void on_realize (); - void setParent (RTWindow* p) { parent = p; } void init (); // dont call it directly, the constructor calls it as idle source void open (const Glib::ustring& d); // open a file or a directory diff --git a/rtgui/options.cc b/rtgui/options.cc index 5d9506ca0..482cadebb 100644 --- a/rtgui/options.cc +++ b/rtgui/options.cc @@ -61,8 +61,8 @@ void Options::setDefaults () { profilePath = "profiles"; dirBrowserWidth = 200; dirBrowserHeight = 150; - toolPanelWidth = 250; - browserToolPanelWidth = 250; + toolPanelWidth = 700; + browserToolPanelWidth = 700; historyPanelWidth = 150; lastScale = 4; lastCropSize = 1; diff --git a/rtgui/rtwindow.cc b/rtgui/rtwindow.cc index 53685fc49..37e619dcd 100644 --- a/rtgui/rtwindow.cc +++ b/rtgui/rtwindow.cc @@ -144,17 +144,15 @@ void RTWindow::addEditorPanel (EditorPanel* ep, const std::string &name) { void RTWindow::remEditorPanel (EditorPanel* ep) { - if (ep->beforeClosing ()) { - ep->saveOptions (); - epanels.erase (ep->getFileName()); - filesEdited.erase (ep->getFileName ()); - fpanel->refreshEditedState (filesEdited); + ep->saveOptions (); + epanels.erase (ep->getFileName()); + filesEdited.erase (ep->getFileName ()); + fpanel->refreshEditedState (filesEdited); - mainNB->remove_page (*ep); - - if (mainNB->get_current_page () == mainNB->page_num (*bpanel)) - mainNB->set_current_page (mainNB->page_num (*fpanel)); - } + mainNB->remove_page (*ep); + + if (mainNB->get_current_page () == mainNB->page_num (*bpanel)) + mainNB->set_current_page (mainNB->page_num (*fpanel)); // TODO: ask what to do: close & apply, close & apply selection, close & revert, cancel } @@ -232,7 +230,6 @@ bool RTWindow::on_delete_event(GdkEventAny* event) { } else options.windowMaximized = true; - Options::save (); hide();