index 0e63ef1c327765f56a4e0bc394a6568fcb49708c..37aa4ccc885dbf53c87fa4094d1e304cb4248ba7 100644 (file)
/**
* \brief Fill and Stroke dialog
+ * based on sp_object_properties_dialog
*
* Authors:
* Bryce W. Harrington <bryce@bryceharrington.org>
+ * Gustav Broberg <broberg@kth.se>
*
- * Copyright (C) 2004, 2005 Authors
+ * Copyright (C) 2004--2007 Authors
*
* Released under GNU GPL. Read the file 'COPYING' for more information.
*/
#ifndef INKSCAPE_UI_DIALOG_FILL_AND_STROKE_H
#define INKSCAPE_UI_DIALOG_FILL_AND_STROKE_H
+#include <gtkmm/adjustment.h>
+#include <gtkmm/alignment.h>
#include <gtkmm/notebook.h>
+#include <gtkmm/scale.h>
+#include <gtkmm/spinbutton.h>
#include <glibmm/i18n.h>
-#include "dialog.h"
+#include "ui/widget/panel.h"
#include "ui/widget/notebook-page.h"
+#include "ui/widget/object-composite-settings.h"
using namespace Inkscape::UI::Widget;
namespace UI {
namespace Dialog {
-class FillAndStroke : public Dialog {
+class FillAndStroke : public UI::Widget::Panel {
public:
FillAndStroke();
virtual ~FillAndStroke();
- static FillAndStroke *create() { return new FillAndStroke(); }
+ static FillAndStroke &getInstance() { return *new FillAndStroke(); }
+
+ 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;
+
+ StyleSubject::Selection _subject;
+ ObjectCompositeSettings _composite_settings;
+
+ Gtk::HBox &_createPageTabLabel(const Glib::ustring &label,
+ const char *label_image);
- NotebookPage _page_fill;
- NotebookPage _page_stroke_paint;
- NotebookPage _page_stroke_style;
+ void _layoutPageFill();
+ void _layoutPageStrokePaint();
+ void _layoutPageStrokeStyle();
private:
FillAndStroke(FillAndStroke const &d);