26#include <tqvaluelist.h>
28#include <KoPageLayout.h>
29#include <koffice_export.h>
33class KivioGroupStencil;
36class KivioChangePageNameCommand :
public KNamedCommand
39 KivioChangePageNameCommand(
const TQString &_name,
const TQString & _oldPageName,
const TQString & _newPageName, KivioPage *_page );
40 ~KivioChangePageNameCommand();
42 virtual void execute();
43 virtual void unexecute();
51class KivioHidePageCommand :
public KNamedCommand
54 KivioHidePageCommand(
const TQString &_name, KivioPage *_page );
55 ~KivioHidePageCommand();
57 virtual void execute();
58 virtual void unexecute();
64class KivioShowPageCommand :
public KivioHidePageCommand
67 KivioShowPageCommand(
const TQString &_name, KivioPage *_page );
68 ~KivioShowPageCommand() {}
70 void execute() { KivioHidePageCommand::unexecute(); }
71 void unexecute() { KivioHidePageCommand::execute(); }
74class KivioAddPageCommand :
public KNamedCommand
77 KivioAddPageCommand(
const TQString &_name, KivioPage *_page );
78 ~KivioAddPageCommand();
80 virtual void execute();
81 virtual void unexecute();
87class KivioRemovePageCommand :
public KNamedCommand
90 KivioRemovePageCommand(
const TQString &_name, KivioPage *_page );
91 ~KivioRemovePageCommand();
93 virtual void execute();
94 virtual void unexecute();
100class KivioAddStencilCommand :
public KNamedCommand
103 KivioAddStencilCommand(
const TQString &_name, KivioPage *_page, KivioLayer * _layer, KivioStencil *_stencil );
104 ~KivioAddStencilCommand();
106 virtual void execute();
107 virtual void unexecute();
111 KivioLayer * m_layer;
112 KivioStencil *m_stencil;
116class KivioRemoveStencilCommand :
public KivioAddStencilCommand
119 KivioRemoveStencilCommand(
const TQString &_name, KivioPage *_page, KivioLayer * _layer, KivioStencil *_stencil );
120 ~KivioRemoveStencilCommand() {}
122 void execute() { KivioAddStencilCommand::unexecute(); }
123 void unexecute() { KivioAddStencilCommand::execute(); }
126class KIVIO_EXPORT KivioChangeStencilTextCommand :
public KNamedCommand
129 KivioChangeStencilTextCommand(
const TQString &_name, KivioStencil *_stencil,
const TQString & _oldText,
const TQString & _newText, KivioPage *_page,
const TQString& textBoxName = TQString());
130 ~KivioChangeStencilTextCommand();
131 virtual void execute();
132 virtual void unexecute();
134 KivioStencil *m_stencil;
138 TQString m_textBoxName;
141class KivioAddLayerCommand :
public KNamedCommand
144 KivioAddLayerCommand(
const TQString &_name, KivioPage *_page, KivioLayer * _layer,
int _pos );
145 ~KivioAddLayerCommand();
147 virtual void execute();
148 virtual void unexecute();
156class KivioRemoveLayerCommand :
public KivioAddLayerCommand
159 KivioRemoveLayerCommand(
const TQString &_name, KivioPage *_page, KivioLayer * _layer,
int _pos );
160 ~KivioRemoveLayerCommand() {}
162 void execute() { KivioAddLayerCommand::unexecute(); }
163 void unexecute() { KivioAddLayerCommand::execute(); }
166class KivioRenameLayerCommand :
public KNamedCommand
169 KivioRenameLayerCommand(
const TQString &_name, KivioLayer * _layer,
const TQString & _oldName,
const TQString & _newName);
170 ~KivioRenameLayerCommand();
171 virtual void execute();
172 virtual void unexecute();
181class KIVIO_EXPORT KivioResizeStencilCommand :
public KNamedCommand
184 KivioResizeStencilCommand(
const TQString &_name, KivioStencil *_stencil, KoRect _initSize, KoRect _endSize, KivioPage *_page );
185 ~KivioResizeStencilCommand();
187 virtual void execute();
188 virtual void unexecute();
191 KivioStencil *m_stencil;
197class KIVIO_EXPORT KivioMoveStencilCommand :
public KNamedCommand
200 KivioMoveStencilCommand(
const TQString &_name, KivioStencil *_stencil, KoRect _initSize, KoRect _endSize, KivioPage *_page );
201 ~KivioMoveStencilCommand();
203 virtual void execute();
204 virtual void unexecute();
207 KivioStencil *m_stencil;
213class KivioChangeLayoutCommand :
public KNamedCommand
216 KivioChangeLayoutCommand(
const TQString &_name, KivioPage *_page, KoPageLayout _oldLayout, KoPageLayout _newLayout);
217 ~KivioChangeLayoutCommand();
219 virtual void execute();
220 virtual void unexecute();
224 KoPageLayout oldLayout;
225 KoPageLayout newLayout;
229class KivioChangeStencilHAlignmentCommand :
public KNamedCommand
232 KivioChangeStencilHAlignmentCommand(
const TQString& _name, KivioPage* _page, KivioStencil* _stencil,
233 int _oldAlign,
int _newAlign,
const TQString& textBoxName = TQString());
234 ~KivioChangeStencilHAlignmentCommand();
236 virtual void execute();
237 virtual void unexecute();
241 KivioStencil *m_stencil;
244 TQString m_textBoxName;
247class KivioChangeStencilVAlignmentCommand :
public KNamedCommand
250 KivioChangeStencilVAlignmentCommand(
const TQString& _name, KivioPage* _page, KivioStencil* _stencil,
251 int _oldAlign,
int _newAlign,
const TQString& textBoxName = TQString());
252 ~KivioChangeStencilVAlignmentCommand();
254 virtual void execute();
255 virtual void unexecute();
259 KivioStencil *m_stencil;
262 TQString m_textBoxName;
266class KivioChangeStencilFontCommand :
public KNamedCommand
269 KivioChangeStencilFontCommand(
const TQString& _name, KivioPage* _page, KivioStencil* _stencil,
270 const TQFont& _oldFont,
const TQFont& _newFont,
271 const TQString& textBoxName = TQString());
272 ~KivioChangeStencilFontCommand();
274 virtual void execute();
275 virtual void unexecute();
279 KivioStencil *m_stencil;
282 TQString m_textBoxName;
285class KivioChangeStencilColorCommand :
public KNamedCommand
288 enum ColorType { CT_TEXTCOLOR, CT_FGCOLOR, CT_BGCOLOR };
289 KivioChangeStencilColorCommand(
const TQString& _name, KivioPage* _page, KivioStencil* _stencil,
290 const TQColor& _oldColor,
const TQColor& _newColor, ColorType _type,
291 const TQString& textBoxName = TQString());
292 ~KivioChangeStencilColorCommand();
294 virtual void execute();
295 virtual void unexecute();
299 KivioStencil *m_stencil;
303 TQString m_textBoxName;
306class KivioChangeRotationCommand :
public KNamedCommand
309 KivioChangeRotationCommand(
const TQString &_name, KivioPage *_page, KivioStencil * _stencil,
int _oldValue,
int _newValue);
310 ~KivioChangeRotationCommand();
312 virtual void execute();
313 virtual void unexecute();
317 KivioStencil *m_stencil;
322class KivioChangeLineStyleCommand :
public KNamedCommand
325 KivioChangeLineStyleCommand(
const TQString &_name, KivioPage *_page, KivioStencil * _stencil,
int _oldValue,
int _newValue);
326 ~KivioChangeLineStyleCommand();
328 virtual void execute();
329 virtual void unexecute();
333 KivioStencil *m_stencil;
339class KivioChangeLineWidthCommand :
public KNamedCommand
342 KivioChangeLineWidthCommand(
const TQString &_name, KivioPage *_page, KivioStencil * _stencil,
double _oldValue,
double _newValue);
343 ~KivioChangeLineWidthCommand();
345 virtual void execute();
346 virtual void unexecute();
350 KivioStencil *m_stencil;
355class KivioChangeBeginEndArrowCommand :
public KNamedCommand
358 KivioChangeBeginEndArrowCommand(
const TQString &_name, KivioPage *_page, KivioStencil * _stencil,
int _oldArrow,
int _newArrow,
bool _beginArrow);
360 ~KivioChangeBeginEndArrowCommand();
362 virtual void execute();
363 virtual void unexecute();
367 KivioStencil *m_stencil;
373class KivioChangeBeginEndSizeArrowCommand :
public KNamedCommand
376 KivioChangeBeginEndSizeArrowCommand(
const TQString &_name, KivioPage *_page, KivioStencil * _stencil,
float _oldH,
float _oldW,
float _newH,
float _newW,
bool _beginArrow);
378 ~KivioChangeBeginEndSizeArrowCommand();
380 virtual void execute();
381 virtual void unexecute();
385 KivioStencil *m_stencil;
394class KivioChangeStencilProtectCommand :
public KNamedCommand
397 enum KVP_TYPE {KV_POSX, KV_POSY,KV_WIDTH, KV_HEIGHT, KV_ASPECT, KV_DELETE};
398 KivioChangeStencilProtectCommand(
const TQString &_name, KivioPage *_page, KivioStencil * _stencil,
bool _state, KVP_TYPE _type);
400 ~KivioChangeStencilProtectCommand(){};
402 virtual void execute();
403 virtual void unexecute();
406 void changeValue(
bool b );
408 KivioStencil *m_stencil;
413class KivioAddConnectorTargetCommand :
public KNamedCommand
416 KivioAddConnectorTargetCommand(
const TQString& name, KivioPage* page,
417 KivioStencil* stencil,
const KoPoint& targetPoint);
419 virtual void execute();
420 virtual void unexecute();
424 KivioStencil* m_stencil;
425 KoPoint m_targetPoint;
428class KivioCustomDragCommand :
public KNamedCommand
431 KivioCustomDragCommand(
const TQString& name, KivioPage* page, KivioStencil* stencil,
432 int customID,
const KoPoint& originalPoint,
const KoPoint& newPoint);
434 virtual void execute();
435 virtual void unexecute();
439 KivioStencil* m_stencil;
442 KoPoint m_originalPoint;
446class KivioGroupCommand :
public KNamedCommand
449 KivioGroupCommand(
const TQString& name, KivioPage* page, KivioLayer* layer, KivioGroupStencil* group);
451 virtual void execute();
452 virtual void unexecute();
458 KivioGroupStencil* m_groupStencil;
461class KivioUnGroupCommand :
public KivioGroupCommand
464 KivioUnGroupCommand(
const TQString& name, KivioPage* page, KivioLayer* layer, KivioGroupStencil* group)
465 : KivioGroupCommand(name, page, layer, group)
468 virtual void execute() { KivioGroupCommand::unexecute(); }
469 virtual void unexecute() { KivioGroupCommand::execute(); }