From 5b9c2d2a4d3180e5591a1e9d4989918648d06f15 Mon Sep 17 00:00:00 2001 From: bulia byak Date: Mon, 9 Oct 2006 07:28:34 +0000 Subject: add blur speed/quality options (bzr r1782) --- src/ui/dialog/inkscape-preferences.cpp | 31 +++++++++++++++++++++++++++++++ src/ui/dialog/inkscape-preferences.h | 6 +++++- 2 files changed, 36 insertions(+), 1 deletion(-) (limited to 'src/ui') diff --git a/src/ui/dialog/inkscape-preferences.cpp b/src/ui/dialog/inkscape-preferences.cpp index c8e9448b4..86a0c4b72 100644 --- a/src/ui/dialog/inkscape-preferences.cpp +++ b/src/ui/dialog/inkscape-preferences.cpp @@ -34,6 +34,7 @@ #include "selection-chemistry.h" #include "xml/repr.h" #include "ui/widget/style-swatch.h" +#include "display/nr-filter-gaussian.h" namespace Inkscape { namespace UI { @@ -95,6 +96,7 @@ InkscapePreferences::InkscapePreferences() initPageWindows(); initPageClones(); initPageTransforms(); + initPageFilters(); initPageSelecting(); initPageMisc(); @@ -480,6 +482,35 @@ void InkscapePreferences::initPageTransforms() this->AddPage(_page_transforms, _("Transforms"), PREFS_PAGE_TRANSFORMS); } +void InkscapePreferences::initPageFilters() +{ + _blur_quality_best.init ( _("Best quality (slowest)"), "options.blurquality", "value", + BLUR_QUALITY_BEST, false, 0); + _blur_quality_better.init ( _("Better quality (slower)"), "options.blurquality", "value", + BLUR_QUALITY_BETTER, false, &_blur_quality_best); + _blur_quality_normal.init ( _("Average quality"), "options.blurquality", "value", + BLUR_QUALITY_NORMAL, true, &_blur_quality_best); + _blur_quality_worse.init ( _("Lower quality (faster)"), "options.blurquality", "value", + BLUR_QUALITY_WORSE, false, &_blur_quality_best); + _blur_quality_worst.init ( _("Lowest quality (fastest)"), "options.blurquality", "value", + BLUR_QUALITY_WORST, false, &_blur_quality_best); + + _page_filters.add_group_header( _("Gaussian blur quality for display:")); + _page_filters.add_line( true, "", _blur_quality_best, "", + _("Best quality, but display may be very slow at high zooms (bitmap export always uses best quality)")); + _page_filters.add_line( true, "", _blur_quality_better, "", + _("Better quality, but slower display")); + _page_filters.add_line( true, "", _blur_quality_normal, "", + _("Average quality, acceptable display speed")); + _page_filters.add_line( true, "", _blur_quality_worse, "", + _("Lower quality (some artefacts), but display is faster")); + _page_filters.add_line( true, "", _blur_quality_worst, "", + _("Lowest quality (considerable artefacts), but display is fastest")); + + this->AddPage(_page_filters, _("Filters"), PREFS_PAGE_FILTERS); +} + + void InkscapePreferences::initPageSelecting() { _sel_all.init ( _("Select in all layers"), "options.kbselection", "inlayer", PREFS_SELECTION_ALL, false, 0); diff --git a/src/ui/dialog/inkscape-preferences.h b/src/ui/dialog/inkscape-preferences.h index 00b415b66..e275d3d9c 100644 --- a/src/ui/dialog/inkscape-preferences.h +++ b/src/ui/dialog/inkscape-preferences.h @@ -53,6 +53,7 @@ enum { PREFS_PAGE_TOOLS_DROPPER, PREFS_PAGE_WINDOWS, PREFS_PAGE_CLONES, + PREFS_PAGE_FILTERS, PREFS_PAGE_TRANSFORMS, PREFS_PAGE_SELECTING, PREFS_PAGE_MISC @@ -93,7 +94,7 @@ protected: Gtk::TreeModel::Path _path_shapes; DialogPage _page_mouse, _page_scrolling, _page_steps, _page_tools, _page_windows, - _page_clones, _page_transforms, _page_select, _page_misc; + _page_clones, _page_transforms, _page_filters, _page_select, _page_misc; DialogPage _page_selector, _page_node, _page_zoom, _page_shapes, _page_pencil, _page_pen, _page_calligraphy, _page_text, _page_gradient, _page_connector, _page_dropper; DialogPage _page_rectangle, _page_ellipse, _page_star, _page_spiral; @@ -122,6 +123,8 @@ protected: PrefRadioButton _clone_option_parallel, _clone_option_stay, _clone_option_transform, _clone_option_unlink, _clone_option_delete; + PrefRadioButton _blur_quality_best, _blur_quality_better, _blur_quality_normal, _blur_quality_worse, _blur_quality_worst; + PrefCheckButton _trans_scale_stroke, _trans_scale_corner, _trans_gradient,_trans_pattern; PrefRadioButton _trans_optimized, _trans_preserved; @@ -159,6 +162,7 @@ protected: void initPageWindows(); void initPageClones(); void initPageTransforms(); + void initPageFilters(); void initPageSelecting(); void initPageMisc(); -- cgit v1.2.3