1
#ifndef __TILEDIALOG_H__
2
#define __TILEDIALOG_H__
4
* A simple dialog for creating grid type arrangements of selected objects
7
* Bob Jamison ( based off trace dialog)
9
* Other dudes from The Inkscape Organization
11
* Copyright (C) 2004 Bob Jamison
12
* Copyright (C) 2004 John Cliff
14
* Released under GNU GPL, read the file 'COPYING' for more information
18
#include <gtkmm/box.h>
19
#include <gtkmm/notebook.h>
20
#include <gtkmm/tooltips.h>
21
#include <gtkmm/button.h>
22
#include <gtkmm/spinbutton.h>
23
#include <gtkmm/checkbutton.h>
24
#include <gtkmm/radiobutton.h>
26
#include "ui/dialog/dialog.h"
34
* A dialog that displays log messages
36
class TileDialog : public Dialog {
49
static TileDialog *create() { return new TileDialog(); }
54
virtual ~TileDialog() {};
62
* Respond to selection change
64
void updateSelection();
70
virtual void _apply();
73
* Callback from spinbuttons
75
void on_row_spinbutton_changed();
76
void on_col_spinbutton_changed();
77
void on_xpad_spinbutton_changed();
78
void on_ypad_spinbutton_changed();
79
void on_RowSize_checkbutton_changed();
80
void on_ColSize_checkbutton_changed();
81
void on_rowSize_spinbutton_changed();
82
void on_colSize_spinbutton_changed();
83
void Spacing_button_changed();
84
void VertAlign_changed();
85
void HorizAlign_changed();
89
TileDialog(TileDialog const &d); // no copy
90
void operator=(TileDialog const &d); // no assign
97
Gtk::Notebook notebook;
101
Gtk::Button *TileOkButton;
102
Gtk::Button *TileCancelButton;
104
// Number selected label
105
Gtk::Label SelectionContentsLabel;
113
Gtk::VBox NoOfColsBox;
114
Gtk::Label NoOfColsLabel;
115
Gtk::SpinButton NoOfColsSpinner;
117
Gtk::CheckButton RowHeightButton;
119
Gtk::VBox XByYLabelVBox;
120
Gtk::Label padXByYLabel;
121
Gtk::Label XByYLabel;
124
Gtk::VBox NoOfRowsBox;
125
Gtk::Label NoOfRowsLabel;
126
Gtk::SpinButton NoOfRowsSpinner;
128
Gtk::CheckButton ColumnWidthButton;
131
Gtk::Label VertAlignLabel;
132
Gtk::HBox VertAlignHBox;
133
Gtk::VBox VertAlignVBox;
134
Gtk::RadioButtonGroup VertAlignGroup;
135
Gtk::RadioButton VertCentreRadioButton;
136
Gtk::RadioButton VertTopRadioButton;
137
Gtk::RadioButton VertBotRadioButton;
141
Gtk::Label HorizAlignLabel;
142
Gtk::VBox HorizAlignVBox;
143
Gtk::HBox HorizAlignHBox;
144
Gtk::RadioButtonGroup HorizAlignGroup;
145
Gtk::RadioButton HorizCentreRadioButton;
146
Gtk::RadioButton HorizLeftRadioButton;
147
Gtk::RadioButton HorizRightRadioButton;
152
Gtk::Label XPadLabel;
153
Gtk::SpinButton XPadSpinner;
157
Gtk::Label YPadLabel;
158
Gtk::SpinButton YPadSpinner;
160
// BBox or manual spacing
161
Gtk::VBox SpacingVBox;
162
Gtk::RadioButtonGroup SpacingGroup;
163
Gtk::RadioButton SpaceByBBoxRadioButton;
164
Gtk::RadioButton SpaceManualRadioButton;
170
Gtk::VBox RowHeightVBox;
171
Gtk::HBox RowHeightBox;
172
Gtk::Label RowHeightLabel;
173
Gtk::SpinButton RowHeightSpinner;
176
Gtk::VBox ColumnWidthVBox;
177
Gtk::HBox ColumnWidthBox;
178
Gtk::Label ColumnWidthLabel;
179
Gtk::SpinButton ColumnWidthSpinner;
186
} //namespace Inkscape
189
#endif /* __TILEDIALOG_H__ */