From: <hug...@li...> - 2010-10-16 20:38:50
|
branch: details: http://hugin.hg.sourceforge.net/hgweb/hugin/hugin/hgrepo/h/hu/hugin/hugin/rev/16754bf006b1 changeset: 4493:16754bf006b1 user: James Legg <jl...@us...> date: Sat Oct 16 21:37:13 2010 +0100 description: Stitcher tab: Make the processing controls insensitive rather than hidden so the size the processing pane needs does not change. Also, attempt to fix layout not being updated on Windows when wxCollapsiblePanes are collapsed or expanded: I don't have a windows box to hand, so this might not work. diffstat: src/hugin1/hugin/PanoPanel.cpp | 29 ++++++++++++----------------- 1 files changed, 12 insertions(+), 17 deletions(-) diffs (57 lines): diff -r 85f2fa5dfc67 -r 16754bf006b1 src/hugin1/hugin/PanoPanel.cpp --- a/src/hugin1/hugin/PanoPanel.cpp Sat Oct 16 12:02:58 2010 +0100 +++ b/src/hugin1/hugin/PanoPanel.cpp Sat Oct 16 21:37:13 2010 +0100 @@ -468,19 +468,19 @@ opt.outputLDRExposureLayers || opt.outputHDRBlended; - m_BlenderChoice->Show(blenderEnabled); - XRCCTRL(*this, "pano_button_blender_opts", wxButton)->Show(blenderEnabled); - XRCCTRL(*this, "pano_text_blender", wxStaticText)->Show(blenderEnabled); + m_BlenderChoice->Enable(blenderEnabled); + XRCCTRL(*this, "pano_button_blender_opts", wxButton)->Enable(blenderEnabled); + XRCCTRL(*this, "pano_text_blender", wxStaticText)->Enable(blenderEnabled); bool fusionEnabled = (opt.outputLDRExposureBlended || opt.outputLDRExposureLayersFused); - m_FusionChoice->Show(fusionEnabled); - XRCCTRL(*this, "pano_button_fusion_opts", wxButton)->Show(fusionEnabled); - XRCCTRL(*this, "pano_text_fusion", wxStaticText)->Show(fusionEnabled); + m_FusionChoice->Enable(fusionEnabled); + XRCCTRL(*this, "pano_button_fusion_opts", wxButton)->Enable(fusionEnabled); + XRCCTRL(*this, "pano_text_fusion", wxStaticText)->Enable(fusionEnabled); bool hdrMergeEnabled = opt.outputHDRBlended || opt.outputHDRStacks; - m_HDRMergeChoice->Show(hdrMergeEnabled); - XRCCTRL(*this, "pano_button_hdrmerge_opts", wxButton)->Show(hdrMergeEnabled); - XRCCTRL(*this, "pano_text_hdrmerge", wxStaticText)->Show(hdrMergeEnabled); + m_HDRMergeChoice->Enable(hdrMergeEnabled); + XRCCTRL(*this, "pano_button_hdrmerge_opts", wxButton)->Enable(hdrMergeEnabled); + XRCCTRL(*this, "pano_text_hdrmerge", wxStaticText)->Enable(hdrMergeEnabled); // output file mode long i=0; @@ -537,14 +537,6 @@ m_HDRFileFormatChoice->SetSelection(i); m_pano_ctrls->FitInside(); - // When widgets are shown or hidden in the processing pane, its size does not update. - // Workaround: - wxCollapsiblePane * pane = XRCCTRL(*this, "pano_cp_processing", wxCollapsiblePane); - if (pane->IsExpanded()) { - - pane->Collapse(); - pane->Expand(); - } Layout(); #ifdef __WXMSW__ @@ -1304,6 +1296,9 @@ // The amount of space of space a collapsible pane takes has just changed: // recalculate the widget positions. Layout(); +#ifdef __WXMSW__ + this->Refresh(false); +#endif } bool PanoPanel::CheckGoodSize() |