Adding RGBLF preview modes support for Before/After views (issue 1234)

This commit is contained in:
Michael Ezra
2012-02-03 21:25:13 -05:00
parent 80bae30d5b
commit e53e4a132a
5 changed files with 19 additions and 0 deletions

View File

@@ -1249,6 +1249,7 @@ void EditorPanel::beforeAfterToggled () {
if (beforeIpc)
beforeIpc->stopProcessing ();
iarea->setBeforeAfterViews (NULL, iarea);
iarea->imageArea->iLinkedImageArea = NULL;
delete beforeIarea;
beforeIarea = NULL;
if (beforeIpc)
@@ -1307,6 +1308,10 @@ void EditorPanel::beforeAfterToggled () {
beforeIarea->imageArea->setPreviewHandler (beforePreviewHandler);
beforeIarea->imageArea->setImProcCoordinator (beforeIpc);
beforeIarea->imageArea->setPreviewModePanel(iarea->imageArea->previewModePanel);
beforeIarea->imageArea->setIndicateClippedPanel(iarea->imageArea->indClippedPanel);
iarea->imageArea->iLinkedImageArea = beforeIarea->imageArea;
iarea->setBeforeAfterViews (beforeIarea, iarea);
beforeIarea->setBeforeAfterViews (beforeIarea, iarea);

View File

@@ -49,6 +49,7 @@ ImageArea::ImageArea (ImageAreaPanel* p) : parent(p) {
dirty = false;
ipc = NULL;
iLinkedImageArea = NULL;
}
ImageArea::~ImageArea () {

View File

@@ -66,11 +66,14 @@ class ImageArea : public Gtk::DrawingArea, public CropWindowListener {
ZoomPanel* zoomPanel;
IndicateClippedPanel* indClippedPanel;
PreviewModePanel* previewModePanel;
ImageArea* iLinkedImageArea; // used to set a reference to the Before image area, which is set when before/after view is enabled
ImageArea (ImageAreaPanel* p);
~ImageArea ();
void setImProcCoordinator (rtengine::StagedImageProcessor* ipc_);
void setPreviewModePanel(PreviewModePanel* previewModePanel_){previewModePanel = previewModePanel_;};
void setIndicateClippedPanel(IndicateClippedPanel* indClippedPanel_){indClippedPanel = indClippedPanel_;};
void getScrollImageSize (int& w, int& h);
void getScrollPosition (int& x, int& y);

View File

@@ -61,4 +61,9 @@ void IndicateClippedPanel::toggleClipped (bool highlights) {
void IndicateClippedPanel::buttonToggled () {
imageArea->queue_draw ();
// this will redraw the linked Before image area
// which is set when before/after view is enabled
if (imageArea->iLinkedImageArea!=NULL)
imageArea->iLinkedImageArea->queue_draw ();
}

View File

@@ -140,4 +140,9 @@ void PreviewModePanel::buttonToggled (Gtk::ToggleButton* tbpreview) {
connFocusMask.block(false);
imageArea->queue_draw ();
// this will redraw the linked Before image area
// which is set when before/after view is enabled
if (imageArea->iLinkedImageArea!=NULL)
imageArea->iLinkedImageArea->queue_draw ();
}