summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc Jeanmougin <marc@jeanmougin.fr>2017-06-28 16:13:15 +0000
committerMarc Jeanmougin <marc@jeanmougin.fr>2017-06-28 16:13:15 +0000
commit2a37efcab12aedd2d6149f61427aaa0de205d96c (patch)
tree32479a18a2db41d822ed1abc1d3e288623684afb
parentRemove menus-bars.xml since it's a duplicate file (diff)
downloadinkscape-2a37efcab12aedd2d6149f61427aaa0de205d96c.tar.gz
inkscape-2a37efcab12aedd2d6149f61427aaa0de205d96c.zip
First version (non-working)
-rw-r--r--src/ui/CMakeLists.txt2
-rw-r--r--src/ui/dialog/dialog-manager.cpp3
-rw-r--r--src/ui/dialog/filter-editor.cpp110
-rw-r--r--src/ui/dialog/filter-editor.h61
-rw-r--r--src/ui/dialog/filter-effects-dialog.h8
-rw-r--r--src/verbs.cpp2
6 files changed, 177 insertions, 9 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;
};
diff --git a/src/verbs.cpp b/src/verbs.cpp
index 22ded60b3..0085d6549 100644
--- a/src/verbs.cpp
+++ b/src/verbs.cpp
@@ -2234,7 +2234,7 @@ void DialogVerb::perform(SPAction *action, void *data)
dt->_dlg_mgr->showDialog("LivePathEffect");
break;
case SP_VERB_DIALOG_FILTER_EFFECTS:
- dt->_dlg_mgr->showDialog("FilterEffectsDialog");
+ dt->_dlg_mgr->showDialog("FilterEditorDialog");
break;
case SP_VERB_DIALOG_SVG_FONTS:
dt->_dlg_mgr->showDialog("SvgFontsDialog");