X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Fui%2Fdialog%2Ffill-and-stroke.h;h=8c27d6d0a1d835a917f895e951865b807354e664;hb=e7333a0a54c8d33b7397406dd76938aa430836d5;hp=0e63ef1c327765f56a4e0bc394a6568fcb49708c;hpb=6b15695578f07a3f72c4c9475c1a261a3021472a;p=inkscape.git diff --git a/src/ui/dialog/fill-and-stroke.h b/src/ui/dialog/fill-and-stroke.h index 0e63ef1c3..8c27d6d0a 100644 --- a/src/ui/dialog/fill-and-stroke.h +++ b/src/ui/dialog/fill-and-stroke.h @@ -1,10 +1,12 @@ /** * \brief Fill and Stroke dialog + * based on sp_object_properties_dialog * * Authors: * Bryce W. Harrington + * Gustav Broberg * - * Copyright (C) 2004, 2005 Authors + * Copyright (C) 2004--2007 Authors * * Released under GNU GPL. Read the file 'COPYING' for more information. */ @@ -12,11 +14,16 @@ #ifndef INKSCAPE_UI_DIALOG_FILL_AND_STROKE_H #define INKSCAPE_UI_DIALOG_FILL_AND_STROKE_H +#include +#include #include +#include +#include #include #include "dialog.h" #include "ui/widget/notebook-page.h" +#include "ui/widget/filter-effect-chooser.h" using namespace Inkscape::UI::Widget; @@ -26,17 +33,49 @@ namespace Dialog { class FillAndStroke : public Dialog { public: - FillAndStroke(); + FillAndStroke(Behavior::BehaviorFactory behavior_factory); virtual ~FillAndStroke(); - static FillAndStroke *create() { return new FillAndStroke(); } + static FillAndStroke *create(Behavior::BehaviorFactory behavior_factory) + { return new FillAndStroke(behavior_factory); } + + void selectionChanged(Inkscape::Application *inkscape, + Inkscape::Selection *selection); + + void showPageFill(); + void showPageStrokePaint(); + void showPageStrokeStyle(); protected: - Gtk::Notebook _notebook; + Gtk::Notebook _notebook; + + NotebookPage _page_fill; + NotebookPage _page_stroke_paint; + NotebookPage _page_stroke_style; + + Gtk::VBox _fe_vbox; + Gtk::Alignment _fe_alignment; + + Gtk::VBox _opacity_vbox; + Gtk::HBox _opacity_label_box; + Gtk::HBox _opacity_hbox; + Gtk::Label _opacity_label; + Gtk::Adjustment _opacity_adjustment; + Gtk::HScale _opacity_hscale; + Gtk::SpinButton _opacity_spin_button; + + Gtk::HBox& _createPageTabLabel(const Glib::ustring& label, + const char *label_image); + SimpleFilterModifier _fe_cb; + + void _layoutPageFill(); + void _layoutPageStrokePaint(); + void _layoutPageStrokeStyle(); + + void _blendBlurValueChanged(); + void _opacityValueChanged(); - NotebookPage _page_fill; - NotebookPage _page_stroke_paint; - NotebookPage _page_stroke_style; + bool _blocked; private: FillAndStroke(FillAndStroke const &d);