diff options
| author | Jabier Arraiza Cenoz <jabier.arraiza@marker.es> | 2013-01-18 23:37:04 +0000 |
|---|---|---|
| committer | Jabiertxo Arraiza Cenoz <jtx@jtx.marker.es> | 2013-01-18 23:37:04 +0000 |
| commit | 686ddfefd34634a2d3ccacee4c5d243bbe47629f (patch) | |
| tree | ec9fd88a0acc73cfadb5668becdc2dba7b98e50d /src/desktop.cpp | |
| parent | Delete bspline node whith node tool and fix 1 segment continue shift error (diff) | |
| parent | Some Corrections (diff) | |
| download | inkscape-686ddfefd34634a2d3ccacee4c5d243bbe47629f.tar.gz inkscape-686ddfefd34634a2d3ccacee4c5d243bbe47629f.zip | |
Merge from branch
(bzr r11950.1.18)
Diffstat (limited to 'src/desktop.cpp')
| -rw-r--r-- | src/desktop.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/desktop.cpp b/src/desktop.cpp index a3f607913..ea23ebb9c 100644 --- a/src/desktop.cpp +++ b/src/desktop.cpp @@ -433,6 +433,20 @@ void SPDesktop::_setDisplayMode(Inkscape::RenderMode mode) { _widget->setTitle( sp_desktop_document(this)->getName() ); } void SPDesktop::_setDisplayColorMode(Inkscape::ColorMode mode) { + // reload grayscale matrix from prefs + if (mode == Inkscape::COLORMODE_GRAYSCALE) { + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + gdouble r = prefs->getDoubleLimited("/options/rendering/grayscale/red-factor",0.21,0.,1.); + gdouble g = prefs->getDoubleLimited("/options/rendering/grayscale/green-factor",0.72,0.,1.); + gdouble b = prefs->getDoubleLimited("/options/rendering/grayscale/blue-factor",0.072,0.,1.); + gdouble grayscale_value_matrix[20] = { r, g, b, 0, 0, + r, g, b, 0, 0, + r, g, b, 0, 0, + 0, 0, 0, 1, 0 }; + g_message("%g",grayscale_value_matrix[0]); + SP_CANVAS_ARENA (drawing)->drawing.setGrayscaleMatrix(grayscale_value_matrix); + } + SP_CANVAS_ARENA (drawing)->drawing.setColorMode(mode); canvas->colorrendermode = mode; _display_color_mode = mode; |
