1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
// SPDX-License-Identifier: GPL-2.0-or-later
/**
* @file
* Filter Effects dialog.
*/
/* Authors:
* Marc Jeanmougin
*
* Copyright (C) 2017 Authors
*
* Released under GNU GPL v2+, read the file 'COPYING' for more information.
*/
#include <string>
#include <gtkmm.h>
#include <gdkmm/display.h>
#include <gdkmm/seat.h>
#include <glibmm/convert.h>
#include <glibmm/error.h>
#include <glibmm/i18n.h>
#include <glibmm/main.h>
#include <glibmm/stringutils.h>
#include "desktop.h"
#include "dialog-manager.h"
#include "document-undo.h"
#include "document.h"
#include "filter-chemistry.h"
#include "filter-editor.h"
#include "filter-enums.h"
#include "inkscape.h"
#include "selection-chemistry.h"
#include "verbs.h"
#include "io/sys.h"
#include "io/resource.h"
#include "object/filters/blend.h"
#include "object/filters/colormatrix.h"
#include "object/filters/componenttransfer.h"
#include "object/filters/componenttransfer-funcnode.h"
#include "object/filters/convolvematrix.h"
#include "object/filters/distantlight.h"
#include "object/filters/merge.h"
#include "object/filters/mergenode.h"
#include "object/filters/pointlight.h"
#include "object/filters/spotlight.h"
#include "style.h"
#include "svg/svg-color.h"
#include "ui/dialog/filedialog.h"
#include "ui/widget/spinbutton.h"
using namespace Inkscape::Filters;
using namespace Inkscape::IO::Resource;
namespace Inkscape {
namespace UI {
namespace Dialog {
FilterEditorDialog::FilterEditorDialog() : UI::Widget::Panel("/dialogs/filtereffects", SP_VERB_DIALOG_FILTER_EFFECTS)
{
const std::string req_widgets[] = {"FilterEditor", "FilterList", "FilterFERX", "FilterFERY", "FilterFERH", "FilterFERW", "FilterPreview", "FilterPrimitiveDescImage", "FilterPrimitiveList", "FilterPrimitiveDescText", "FilterPrimitiveAdd"};
Glib::ustring gladefile = get_filename(UIS, "dialog-filter-editor.glade");
try {
builder = Gtk::Builder::create_from_file(gladefile);
} catch(const Glib::Error& ex) {
g_warning("Glade file loading failed for filter effect dialog");
return;
}
Gtk::Object* test;
for(std::string w:req_widgets) {
builder->get_widget(w,test);
if(!test){
g_warning("Required widget %s does not exist", w.c_str());
return;
}
}
builder->get_widget("FilterEditor", FilterEditor);
_getContents()->add(*FilterEditor);
//test
Gtk::ComboBox *OptionList;
builder->get_widget("OptionList",OptionList);
FilterStore = builder->get_object("FilterStore");
Glib::RefPtr<Gtk::ListStore> fs = Glib::RefPtr<Gtk::ListStore>::cast_static(FilterStore);
Gtk::TreeModel::Row row = *(fs->append());
}
FilterEditorDialog::~FilterEditorDialog()= default;
} // Never put these namespaces together unless you are using gcc 6+
}
} // P.S. This is for 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 :
|