kexi

kexitabledesignerinterface.h
1/* This file is part of the KDE project
2 Copyright (C) 2006 Jaroslaw Staniek <js@iidea.pl>
3
4 This program 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
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this program; see the file COPYING. If not, write to
16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
18*/
19
20#ifndef KEXITABLEDESIGNERINTERFACE_H
21#define KEXITABLEDESIGNERINTERFACE_H
22
23#include <koproperty/property.h>
24#include <kexiutils/tristate.h>
25
26namespace KoProperty {
27 class Set;
28}
29
31
54class KEXICORE_EXPORT KexiTableDesignerInterface
55{
56 public:
57 KexiTableDesignerInterface();
58
59 virtual ~KexiTableDesignerInterface();
60
63 virtual void clearRow(int row, bool addCommand = false) = 0;
64
69 virtual void insertField(int row, const TQString& caption, bool addCommand = false) = 0;
70
75 virtual void insertField(int row, KoProperty::Set& set, bool addCommand = false) = 0;
76
78 virtual void insertEmptyRow( int row, bool addCommand = false ) = 0;
79
82 virtual void deleteRow( int row, bool addCommand = false ) = 0;
83
87 virtual void changeFieldPropertyForRow( int fieldUID, const TQCString& propertyName,
88 const TQVariant& newValue, KoProperty::Property::ListData* const listData = 0,
89 bool addCommand = false ) = 0;
90
92 virtual TQString debugStringForCurrentTableSchema(tristate& result) = 0;
93
96 virtual tristate simulateAlterTableExecution(TQString *debugTarget) = 0;
97
102};
103
104#endif
virtual void clearRow(int row, bool addCommand=false)=0
virtual TQString debugStringForCurrentTableSchema(tristate &result)=0
virtual tristate executeRealAlterTable()=0
virtual void insertField(int row, const TQString &caption, bool addCommand=false)=0
virtual void insertEmptyRow(int row, bool addCommand=false)=0
virtual void changeFieldPropertyForRow(int fieldUID, const TQCString &propertyName, const TQVariant &newValue, KoProperty::Property::ListData *const listData=0, bool addCommand=false)=0
virtual void insertField(int row, KoProperty::Set &set, bool addCommand=false)=0
virtual void deleteRow(int row, bool addCommand=false)=0
virtual tristate simulateAlterTableExecution(TQString *debugTarget)=0
3-state logical type with three values: true, false and cancelled and convenient operators.
Definition tristate.h:100