summaryrefslogtreecommitdiffstats
path: root/src/desktop.cpp
diff options
context:
space:
mode:
authorMartin Owens <doctormo@gmail.com>2014-04-19 04:54:21 +0000
committerMartin Owens <doctormo@gmail.com>2014-04-19 04:54:21 +0000
commitcf5e023e643edc8ac79a125ea61aefe22703aee8 (patch)
tree0fef0ac4ca957ae0405c01a1bc84e8564fb5e857 /src/desktop.cpp
parentLatvian translation update (diff)
parentFix remaining issue with prefs updating (diff)
downloadinkscape-cf5e023e643edc8ac79a125ea61aefe22703aee8.tar.gz
inkscape-cf5e023e643edc8ac79a125ea61aefe22703aee8.zip
Merge in outline bitmap image preference feature
(bzr r13292)
Diffstat (limited to 'src/desktop.cpp')
-rw-r--r--src/desktop.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/desktop.cpp b/src/desktop.cpp
index b61f6867f..3ed6d9ef3 100644
--- a/src/desktop.cpp
+++ b/src/desktop.cpp
@@ -138,6 +138,8 @@ SPDesktop::SPDesktop() :
_w2d(),
_d2w(),
_doc2dt( Geom::Scale(1, -1) ),
+ // This doesn't work I don't know why.
+ _image_render_observer(this, "/options/rendering/imageinoutlinemode"),
grids_visible( false )
{
_d2w.setIdentity();
@@ -499,11 +501,15 @@ SPDesktop::remove_temporary_canvasitem (Inkscape::Display::TemporaryItem * tempi
}
}
+void SPDesktop::redrawDesktop() {
+ sp_canvas_item_affine_absolute (SP_CANVAS_ITEM (main), _d2w); // redraw
+}
+
void SPDesktop::_setDisplayMode(Inkscape::RenderMode mode) {
SP_CANVAS_ARENA (drawing)->drawing.setRenderMode(mode);
canvas->rendermode = mode;
_display_mode = mode;
- sp_canvas_item_affine_absolute (SP_CANVAS_ITEM (main), _d2w); // redraw
+ redrawDesktop();
_widget->setTitle( sp_desktop_document(this)->getName() );
}
void SPDesktop::_setDisplayColorMode(Inkscape::ColorMode mode) {
@@ -524,7 +530,7 @@ void SPDesktop::_setDisplayColorMode(Inkscape::ColorMode mode) {
SP_CANVAS_ARENA (drawing)->drawing.setColorMode(mode);
canvas->colorrendermode = mode;
_display_color_mode = mode;
- sp_canvas_item_affine_absolute (SP_CANVAS_ITEM (main), _d2w); // redraw
+ redrawDesktop();
_widget->setTitle( sp_desktop_document(this)->getName() );
}
@@ -819,7 +825,7 @@ SPDesktop::set_display_area (double x0, double y0, double x1, double y1, double
// zoom changed - set new zoom factors
_d2w = Geom::Scale(newscale, -newscale);
_w2d = Geom::Scale(1/newscale, 1/-newscale);
- sp_canvas_item_affine_absolute(SP_CANVAS_ITEM(main), _d2w);
+ redrawDesktop();
clear = TRUE;
zoomChanged = true;
}