13#ifndef INKSCAPE_DIALOG_LAYER_PROPERTIES_H
14#define INKSCAPE_DIALOG_LAYER_PROPERTIES_H
17#include <gtkmm/checkbutton.h>
18#include <gtkmm/entry.h>
19#include <gtkmm/gesture.h>
20#include <gtkmm/grid.h>
21#include <gtkmm/label.h>
22#include <gtkmm/scrolledwindow.h>
23#include <gtkmm/treestore.h>
24#include <gtkmm/treeview.h>
25#include <gtkmm/window.h>
30class EventControllerKey;
70 Gtk::TreeModelColumn<LayerRelativePosition>
position;
71 Gtk::TreeModelColumn<Glib::ustring>
name;
90 Gtk::TreeModelColumn<SPObject *>
object;
91 Gtk::TreeModelColumn<Glib::ustring>
label;
132 unsigned keyval,
unsigned keycode,
133 Gdk::ModifierType state);
static void showMove(SPDesktop *desktop, SPObject *layer)
Gtk::EventSequenceState on_click_pressed(int n_press, double x, double y)
Gtk::Button _close_button
void _doCreate()
Creates a new layer based on the input entered in the dialog window.
SPObject * _selectedLayer()
void _doRename()
Renames a layer based on the user input in the dialog window.
static void showCreate(SPDesktop *desktop, SPObject *layer)
void _setLayer(SPObject *layer)
Gtk::Entry _layer_name_entry
static void showRename(SPDesktop *desktop, SPObject *layer)
static void _showDialog(LayerPropertiesDialogType type, SPDesktop *desktop, SPObject *layer)
Static member function which displays a modal dialog of the given type.
Gtk::Label _layer_position_label
void _setup_layers_controls()
Sets up the tree view of current layers.
Gtk::CellRendererText _label_renderer
bool on_key_pressed(Gtk::EventControllerKey const &controller, unsigned keyval, unsigned keycode, Gdk::ModifierType state)
void _setup_position_controls()
Sets up the combo box for choosing the relative position of the new layer.
void _setup()
Sets up the dialog depending on its type.
PositionDropdownColumns _dropdown_columns
void _setDesktop(SPDesktop *desktop)
~LayerPropertiesDialog() override
Gtk::ScrolledWindow _scroller
Gtk::Button _apply_button
void _doMove()
Moves selection to the chosen layer.
void _apply()
Performs an action depending on the type of the dialog.
void _addLayer(SPObject *layer, Gtk::TreeModel::Row *parentRow, SPObject *target, int level)
Inserts the new layer into the document.
LayerPropertiesDialogType _type
void _prepareLabelRenderer(Gtk::TreeModel::const_iterator const &iter)
Formats the label for a given layer row.
Gtk::CheckButton _layer_position_radio[3]
Glib::RefPtr< Gtk::TreeStore > _store
Gtk::Label _layer_name_label
To do: update description of desktop.
SPObject is an abstract base class of all of the document nodes at the SVG document level.
LayerPropertiesDialogType
Gtk::TreeModelColumn< SPObject * > object
Gtk::TreeModelColumn< bool > visible
Gtk::TreeModelColumn< Glib::ustring > label
Gtk::TreeModelColumn< bool > locked
Gtk::TreeModelColumn< LayerRelativePosition > position
PositionDropdownColumns()
Gtk::TreeModelColumn< Glib::ustring > name