diff options
| author | Marc Jeanmougin <marc@jeanmougin.fr> | 2017-06-28 16:13:15 +0000 |
|---|---|---|
| committer | Marc Jeanmougin <marc@jeanmougin.fr> | 2017-06-28 16:13:15 +0000 |
| commit | 2a37efcab12aedd2d6149f61427aaa0de205d96c (patch) | |
| tree | 32479a18a2db41d822ed1abc1d3e288623684afb /src/ui | |
| parent | Remove menus-bars.xml since it's a duplicate file (diff) | |
| download | inkscape-2a37efcab12aedd2d6149f61427aaa0de205d96c.tar.gz inkscape-2a37efcab12aedd2d6149f61427aaa0de205d96c.zip | |
First version (non-working)
Diffstat (limited to 'src/ui')
| -rw-r--r-- | src/ui/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | src/ui/dialog/dialog-manager.cpp | 3 | ||||
| -rw-r--r-- | src/ui/dialog/filter-editor.cpp | 110 | ||||
| -rw-r--r-- | src/ui/dialog/filter-editor.h | 61 | ||||
| -rw-r--r-- | src/ui/dialog/filter-effects-dialog.h | 8 |
5 files changed, 176 insertions, 8 deletions
diff --git a/src/ui/CMakeLists.txt b/src/ui/CMakeLists.txt index 389e8902a..6eefdb47b 100644 --- a/src/ui/CMakeLists.txt +++ b/src/ui/CMakeLists.txt @@ -71,6 +71,7 @@ set(ui_SRC dialog/filedialog.cpp dialog/filedialogimpl-gtkmm.cpp dialog/fill-and-stroke.cpp + dialog/filter-editor.cpp dialog/filter-effects-dialog.cpp dialog/find.cpp dialog/floating-behavior.cpp @@ -214,6 +215,7 @@ set(ui_SRC dialog/filedialogimpl-gtkmm.h dialog/filedialogimpl-win32.h dialog/fill-and-stroke.h + dialog/filter-editor.h dialog/filter-effects-dialog.h dialog/find.h dialog/floating-behavior.h diff --git a/src/ui/dialog/dialog-manager.cpp b/src/ui/dialog/dialog-manager.cpp index 01cd9dd0f..c5392864d 100644 --- a/src/ui/dialog/dialog-manager.cpp +++ b/src/ui/dialog/dialog-manager.cpp @@ -26,6 +26,7 @@ #include "ui/dialog/extension-editor.h" #include "ui/dialog/fill-and-stroke.h" #include "ui/dialog/filter-effects-dialog.h" +#include "ui/dialog/filter-editor.h" #include "ui/dialog/find.h" #include "ui/dialog/glyphs.h" #include "ui/dialog/inkscape-preferences.h" @@ -113,6 +114,7 @@ DialogManager::DialogManager() { registerFactory("ExtensionEditor", &create<ExtensionEditor, FloatingBehavior>); registerFactory("FillAndStroke", &create<FillAndStroke, FloatingBehavior>); registerFactory("FilterEffectsDialog", &create<FilterEffectsDialog, FloatingBehavior>); + registerFactory("FilterEditorDialog", &create<FilterEditorDialog, FloatingBehavior>); registerFactory("Find", &create<Find, FloatingBehavior>); registerFactory("Glyphs", &create<GlyphsPanel, FloatingBehavior>); registerFactory("IconPreviewPanel", &create<IconPreviewPanel, FloatingBehavior>); @@ -155,6 +157,7 @@ DialogManager::DialogManager() { registerFactory("ExtensionEditor", &create<ExtensionEditor, DockBehavior>); registerFactory("FillAndStroke", &create<FillAndStroke, DockBehavior>); registerFactory("FilterEffectsDialog", &create<FilterEffectsDialog, DockBehavior>); + registerFactory("FilterEditorDialog", &create<FilterEditorDialog, DockBehavior>); registerFactory("Find", &create<Find, DockBehavior>); registerFactory("Glyphs", &create<GlyphsPanel, DockBehavior>); registerFactory("IconPreviewPanel", &create<IconPreviewPanel, DockBehavior>); diff --git a/src/ui/dialog/filter-editor.cpp b/src/ui/dialog/filter-editor.cpp new file mode 100644 index 000000000..bf4fbdf99 --- /dev/null +++ b/src/ui/dialog/filter-editor.cpp @@ -0,0 +1,110 @@ +/** + * @file + * Filter Effects dialog. + */ +/* Authors: + * Marc Jeanmougin + * + * Copyright (C) 2017 Authors + * + * Released under GNU GPL. Read the file 'COPYING' for more information. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include "dialog-manager.h" + +#include <gdkmm/display.h> +#if GTK_CHECK_VERSION(3, 20, 0) +# include <gdkmm/seat.h> +#else +# include <gdkmm/devicemanager.h> +#endif + +#include "ui/widget/spinbutton.h" + +#include <glibmm/i18n.h> +#include <glibmm/stringutils.h> +#include <glibmm/main.h> +#include <glibmm/convert.h> + +#include "desktop.h" + +#include "document.h" +#include "document-undo.h" +#include "filter-chemistry.h" +#include "filter-editor.h" +#include "filter-enums.h" +#include "inkscape.h" +#include "filters/blend.h" +#include "filters/colormatrix.h" +#include "filters/componenttransfer.h" +#include "filters/componenttransfer-funcnode.h" +#include "filters/convolvematrix.h" +#include "filters/distantlight.h" +#include "filters/merge.h" +#include "filters/mergenode.h" +#include "filters/pointlight.h" +#include "filters/spotlight.h" + +#include "style.h" +#include "svg/svg-color.h" +#include "ui/dialog/filedialog.h" +#include "verbs.h" + +#include "io/sys.h" +#include "selection-chemistry.h" + +#include <gtkmm/colorbutton.h> +#include <gdkmm/general.h> +#include <gtkmm/checkbutton.h> + +using namespace Inkscape::Filters; + +namespace Inkscape::UI::Dialog { + +FilterEditorDialog::FilterEditorDialog() { + + builder = Gtk::Builder::create_from_file("/home/mc/Desktop/test.glade"); + builder->get_widget("FilterEditor", FilterEditor); + builder->get_widget("FilterList", FilterList); + builder->get_widget("FilterFERX", FilterFERX); + builder->get_widget("FilterFERY", FilterFERY); + builder->get_widget("FilterFERH", FilterFERH); + builder->get_widget("FilterFERW", FilterFERW); + builder->get_widget("FilterPreview",FilterPreview); + builder->get_widget("FilterStore", FilterStore); + builder->get_widget("FilterPrimitiveDescImage", FilterPrimitiveDescImage); + //builder->get_widget("FilterPrimitiveParameters",FilterPrimitiveParameters); + builder->get_widget("FilterPrimitiveDescText", FilterPrimitiveDescText); + builder->get_widget("FilterPrimitiveList", FilterPrimitiveList); + builder->get_widget("FilterPrimitiveAdd", FilterPrimitiveAdd); + if (!(FilterList && FilterFERX && FilterFERY && FilterFERH && FilterFERW && FilterPreview + && FilterStore && FilterPrimitiveDescImage && FilterPrimitiveDescText && FilterPrimitiveList + && FilterPrimitiveAdd )) { + g_warning("Some widget does not exist!"); + } + _getContents()->add(*FilterEditor); + +} +FilterEditorDialog::~FilterEditorDialog(){} + + + + + + +} // namespace Inkscape::UI::Dialog + +/* + Local Variables: + mode:c++ + c-file-style:"stroustrup" + c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) + indent-tabs-mode:nil + fill-column:99 + End: +*/ +// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/ui/dialog/filter-editor.h b/src/ui/dialog/filter-editor.h new file mode 100644 index 000000000..1ca4e1760 --- /dev/null +++ b/src/ui/dialog/filter-editor.h @@ -0,0 +1,61 @@ +/** @file + * @brief Filter Editor dialog + */ +/* Authors: + * Marc Jeanmougin + * + * Copyright (C) 2017 Authors + * + * Released under GNU GPL. Read the file 'COPYING' for more information. + */ + +#ifndef INKSCAPE_UI_DIALOG_FILTER_EFFECTS_H +#define INKSCAPE_UI_DIALOG_FILTER_EFFECTS_H + +#include "attributes.h" +#include "ui/widget/panel.h" +#include "sp-filter.h" + +#include <gtkmm/notebook.h> +#include <gtkmm/sizegroup.h> +#include <gtkmm/builder.h> +#include <gtkmm/comboboxtext.h> +#include <gtkmm/combobox.h> +#include <gtkmm/drawingarea.h> +#include <gtkmm/liststore.h> + +#include <gtkmm/paned.h> +#include <gtkmm/scrolledwindow.h> +#include <gtkmm/treeview.h> + +namespace Inkscape { +namespace UI { +namespace Dialog { + +class FilterEditorDialog : public UI::Widget::Panel { +public: + + FilterEditorDialog(); + ~FilterEditorDialog(); + + static FilterEditorDialog &getInstance() + { return *new FilterEditorDialog(); } + +// void set_attrs_locked(const bool); +private: + Glib::RefPtr<Gtk::Builder> builder; + Gtk::ComboBoxText *FilterList; + Gtk::SpinButton *FilterFERX, *FilterFERY, *FilterFERW, *FilterFERH; + Gtk::DrawingArea *FilterPreview; + Gtk::Image *FilterPrimitiveDescImage; + Gtk::Box *FilterPrimitiveParameters; + Gtk::Label *FilterPrimitiveDescText; + Gtk::ComboBox *FilterPrimitiveList; + Gtk::Button *FilterPrimitiveAdd; + Gtk::ListStore *FilterStore; + Gtk::Box *FilterEditor; +}; +} +} +} +#endif diff --git a/src/ui/dialog/filter-effects-dialog.h b/src/ui/dialog/filter-effects-dialog.h index 32fabb741..e410a88f9 100644 --- a/src/ui/dialog/filter-effects-dialog.h +++ b/src/ui/dialog/filter-effects-dialog.h @@ -132,11 +132,7 @@ private: Gtk::Button _add; Glib::RefPtr<Gtk::Menu> _menu; sigc::signal<void> _signal_filter_changed; -#if __cplusplus <= 199711L - std::auto_ptr<Inkscape::XML::SignalObserver> _observer; -#else std::unique_ptr<Inkscape::XML::SignalObserver> _observer; -#endif }; class PrimitiveColumns : public Gtk::TreeModel::ColumnRecord @@ -244,11 +240,7 @@ private: sigc::connection _scroll_connection; int _autoscroll_y; int _autoscroll_x; -#if __cplusplus <= 199711L - std::auto_ptr<Inkscape::XML::SignalObserver> _observer; -#else std::unique_ptr<Inkscape::XML::SignalObserver> _observer; -#endif int _input_type_width; int _input_type_height; }; |
