Code

Improve behavior when pasting, DnDing and importing bitmap images
[inkscape.git] / src / ui / dialog / fill-and-stroke.h
1 /** @file
2  * @brief Fill and Stroke dialog
3  */
4 /* Authors:
5  *   Bryce W. Harrington <bryce@bryceharrington.org>
6  *   Gustav Broberg <broberg@kth.se>
7  *
8  * Copyright (C) 2004--2007 Authors
9  *
10  * Released under GNU GPL.  Read the file 'COPYING' for more information.
11  */
13 #ifndef INKSCAPE_UI_DIALOG_FILL_AND_STROKE_H
14 #define INKSCAPE_UI_DIALOG_FILL_AND_STROKE_H
16 #include <gtkmm/adjustment.h>
17 #include <gtkmm/alignment.h>
18 #include <gtkmm/notebook.h>
19 #include <gtkmm/scale.h>
20 #include <gtkmm/spinbutton.h>
21 #include <glibmm/i18n.h>
23 #include "ui/widget/panel.h"
24 #include "ui/widget/notebook-page.h"
25 #include "ui/widget/object-composite-settings.h"
27 using namespace Inkscape::UI::Widget;
29 namespace Inkscape {
30 namespace UI {
31 namespace Dialog {
33 class FillAndStroke : public UI::Widget::Panel {
34 public:
35     FillAndStroke();
36     virtual ~FillAndStroke();
38     static FillAndStroke &getInstance() { return *new FillAndStroke(); }
40     void selectionChanged(Inkscape::Application *inkscape,
41                           Inkscape::Selection *selection);
43     void showPageFill();
44     void showPageStrokePaint();
45     void showPageStrokeStyle();
47 protected:
48     Gtk::Notebook   _notebook;
50     NotebookPage    _page_fill;
51     NotebookPage    _page_stroke_paint;
52     NotebookPage    _page_stroke_style;
54     StyleSubject::Selection _subject;
55     ObjectCompositeSettings _composite_settings;
57     Gtk::HBox &_createPageTabLabel(const Glib::ustring &label, 
58                                    const char *label_image);
60     void _layoutPageFill();
61     void _layoutPageStrokePaint();
62     void _layoutPageStrokeStyle();
64 private:
65     FillAndStroke(FillAndStroke const &d);
66     FillAndStroke& operator=(FillAndStroke const &d);
67 };
69 } // namespace Dialog
70 } // namespace UI
71 } // namespace Inkscape
73 #endif // INKSCAPE_UI_DIALOG_FILL_AND_STROKE_H
75 /*
76   Local Variables:
77   mode:c++
78   c-file-style:"stroustrup"
79   c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
80   indent-tabs-mode:nil
81   fill-column:99
82   End:
83 */
84 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :