kexi

keximacrodesignview.h
1/* This file is part of the KDE project
2 Copyright (C) 2006 Sebastian Sauer <mail@dipe.org>
3
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public
6 License as published by the Free Software Foundation; either
7 version 2 of the License, or (at your option) any later version.
8 This library is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 Library General Public License for more details.
12 You should have received a copy of the GNU Library General Public License
13 along with this library; see the file COPYING.LIB. If not, write to
14 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
15 Boston, MA 02110-1301, USA.
16*/
17
18#ifndef KEXIMACRODESIGNVIEW_H
19#define KEXIMACRODESIGNVIEW_H
20
21#include "keximacroview.h"
22
23// Forward declarations.
24namespace KoMacro {
25 class Action;
26 class Macro;
27 class MacroItem;
28}
29namespace KoProperty {
30 class Property;
31}
32namespace KexiDB {
33 class ResultInfo;
34}
35class KexiTableItem;
36
42{
43 TQ_OBJECT
44
45 public:
46
55 KexiMacroDesignView(KexiMainWindow *mainwin, TQWidget *parent, ::KoMacro::Macro* const macro);
56
60 virtual ~KexiMacroDesignView();
61
66 virtual bool loadData();
67
71 virtual KoProperty::Set* propertySet();
72
73 private slots:
74
79 void beforeCellChanged(KexiTableItem*, int, TQVariant&, KexiDB::ResultInfo*);
80
84 void rowUpdated(KexiTableItem* item);
85
89 void rowDeleted();
90
94 void rowInserted(KexiTableItem* item, uint row, bool repaint);
95
99 void propertyChanged(KoProperty::Set&, KoProperty::Property&);
100
104 void reloadPropertyLater();
105
106 private:
108 class Private;
110 Private* const d;
111
115 void updateData();
116
121 bool updateSet(KoProperty::Set* set, TDESharedPtr<KoMacro::MacroItem> item, const TQString& variablename);
122
127 void updateProperties(int row, KoProperty::Set* set, TDESharedPtr<KoMacro::MacroItem> macroitem);
128};
129
130#endif
virtual ~KexiMacroDesignView()
Destructor.
virtual KoProperty::Set * propertySet()
KexiMacroDesignView(KexiMainWindow *mainwin, TQWidget *parent, ::KoMacro::Macro *const macro)
Constructor.
virtual bool loadData()
Load the data from XML source and fill the internally used KoMacro::Macro instance.
TDESharedPtr< KoMacro::Macro > macro() const
KexiMacroView(KexiMainWindow *mainwin, TQWidget *parent, ::KoMacro::Macro *const macro, const char *name=0)
Constructor.
Kexi's main window interface This interface is implemented by KexiMainWindowImpl class.
The Action class extendes TDEAction to implement some additional functionality TDEAction doesn't prov...
Definition action.h:41
The MacroItem class is an item in a Macro and represents one single execution step.
Definition macroitem.h:47
The Macro class implements all the action-handling.
Definition macro.h:45
High-level database connectivity library with database backend drivers.