Documents > BPS V2 C++ API
bpstable.h
Go to the documentation of this file.
00001 
00004 #ifndef BPSTABLE_H
00005 #define BPSTABLE_H
00006 
00007 #include "bpsgui_global.h"
00008 #include "bpstablefield.h"
00009 
00010 class BpsDatastore;
00011 
00018 class BPSGUI_EXPORT BpsTable
00019 {
00020     BPS_PRIVATE(BpsTable)
00021 
00022 public:
00026     enum Command {
00027         EndListFields,          
00028         EndRegularFields        
00029     };
00030 
00037     BpsTable(BpsDatastore* aDatastore, const QString& aName, const QString& aOrder = QString(), const QString& aFilter = QString());
00038 
00043     BpsTable(const BpsTable& aOther);
00044 
00046     virtual ~BpsTable();
00048 
00052     BpsDatastore* datastore() const;
00053 
00057     QString name() const;
00058 
00063     QString rawname() const;
00064 
00070     bool canAdd() const;
00071 
00076     void setCanAdd(bool aEnable);
00077 
00083     bool canDelete() const;
00084 
00089     void setCanDelete(bool aEnable);
00090 
00096     bool canEdit() const;
00097 
00102     void setCanEdit(bool aEnable);
00103 
00109     bool canMove() const;
00110 
00115     void setCanMove(bool aEnable);
00116 
00124     bool isCopyEnabled() const;
00125 
00130     void setCopyEnabled(bool aEnable);
00131 
00135     QString order() const;
00136 
00141     void setOrder(const QString& aOrder);
00142 
00146     QString filter() const;
00147 
00152     void setFilter(const QString& aFilter);
00153 
00160     BpsTable& operator<<(BpsTableField* aField);
00161 
00167     BpsTable& operator<<(Command aCommand);
00168 
00172     int count() const;
00173 
00177     int listCount() const;
00178 
00182     int regularCount() const;
00183 
00189     int fieldIndex(const QString& aColumn) const;
00190 
00196     BpsTableField* field(int aIndex) const;
00197 
00203     BpsTableField* field(const QString& aColumn) const;
00204 
00205 }; // BpsTable
00206 
00207 #endif // BPSTABLE_H