?? memtableeh.hpp
字號:
// CodeGear C++ Builder
// Copyright (c) 1995, 2007 by CodeGear
// All rights reserved
// (DO NOT EDIT: machine generated header) 'Memtableeh.pas' rev: 11.00
#ifndef MemtableehHPP
#define MemtableehHPP
#pragma delphiheader begin
#pragma option push
#pragma option -w- // All warnings off
#pragma option -Vx // Zero-length empty class member functions
#pragma pack(push,8)
#include <System.hpp> // Pascal unit
#include <Sysinit.hpp> // Pascal unit
#include <Windows.hpp> // Pascal unit
#include <Sysutils.hpp> // Pascal unit
#include <Classes.hpp> // Pascal unit
#include <Controls.hpp> // Pascal unit
#include <Db.hpp> // Pascal unit
#include <Dialogs.hpp> // Pascal unit
#include <Variants.hpp> // Pascal unit
#include <Contnrs.hpp> // Pascal unit
#include <Ehlibvcl.hpp> // Pascal unit
#include <Toolctrlseh.hpp> // Pascal unit
#include <Dbcommon.hpp> // Pascal unit
#include <Memtabledataeh.hpp> // Pascal unit
#include <Datadrivereh.hpp> // Pascal unit
#include <Memtreeeh.hpp> // Pascal unit
//-- user supplied -----------------------------------------------------------
namespace Memtableeh
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TLoadMode { lmCopy, lmAppend };
#pragma option pop
class DELPHICLASS TMasterDataLinkEh;
class PASCALIMPLEMENTATION TMasterDataLinkEh : public Db::TDetailDataLink
{
typedef Db::TDetailDataLink inherited;
private:
Db::TDataSet* FDataSet;
AnsiString FFieldNames;
Contnrs::TObjectList* FFields;
Classes::TNotifyEvent FOnMasterChange;
Classes::TNotifyEvent FOnMasterDisable;
void __fastcall SetFieldNames(const AnsiString Value);
protected:
virtual Db::TDataSet* __fastcall GetDetailDataSet(void);
virtual void __fastcall ActiveChanged(void);
virtual void __fastcall CheckBrowseMode(void);
virtual void __fastcall LayoutChanged(void);
virtual void __fastcall RecordChanged(Db::TField* Field);
public:
__fastcall TMasterDataLinkEh(Db::TDataSet* DataSet);
__fastcall virtual ~TMasterDataLinkEh(void);
__property AnsiString FieldNames = {read=FFieldNames, write=SetFieldNames};
__property Contnrs::TObjectList* Fields = {read=FFields};
__property Classes::TNotifyEvent OnMasterChange = {read=FOnMasterChange, write=FOnMasterChange};
__property Classes::TNotifyEvent OnMasterDisable = {read=FOnMasterDisable, write=FOnMasterDisable};
};
class DELPHICLASS TMemTableTreeListEh;
class DELPHICLASS TCustomMemTableEh;
#pragma option push -b-
enum TMasterDetailSideEh { mdsOnSelfEh, mdsOnProviderEh, mdsOnSelfAfterProviderEh };
#pragma option pop
typedef void __fastcall (__closure *TMTTreeNodeExpandingEventEh)(System::TObject* Sender, int RecNo, bool &AllowExpansion);
typedef void __fastcall (__closure *TRecordsViewTreeNodeExpandingEventEh)(System::TObject* Sender, Memtabledataeh::TMemRecViewEh* Node, bool &AllowExpansion);
typedef void __fastcall (__closure *TRecordsViewTreeNodeExpandedEventEh)(System::TObject* Sender, Memtabledataeh::TMemRecViewEh* Node);
typedef bool __fastcall (__closure *TRecordsViewCheckMoveNodeEventEh)(System::TObject* Sender, Memtabledataeh::TMemRecViewEh* SourceNode, Memtabledataeh::TMemRecViewEh* AppointedParent, int AppointedIndex);
class DELPHICLASS TSortedVarlistEh;
class DELPHICLASS TSortedVarItemEh;
class PASCALIMPLEMENTATION TSortedVarlistEh : public Contnrs::TObjectList
{
typedef Contnrs::TObjectList inherited;
protected:
bool __fastcall VarInList(const Variant &Value);
bool __fastcall FindValueIndex(const Variant &Value, int &Index);
public:
HIDESBASE int __fastcall Add(TSortedVarItemEh* AObject);
HIDESBASE void __fastcall Insert(int Index, TSortedVarItemEh* AObject);
public:
#pragma option push -w-inl
/* TObjectList.Create */ inline __fastcall TSortedVarlistEh(void)/* overload */ : Contnrs::TObjectList() { }
#pragma option pop
public:
#pragma option push -w-inl
/* TList.Destroy */ inline __fastcall virtual ~TSortedVarlistEh(void) { }
#pragma option pop
};
typedef void __fastcall (__closure *TMemTableChangeFieldValueEventEh)(TCustomMemTableEh* MemTable, Db::TField* Field, Variant &Value);
class DELPHICLASS TRecBuf;
class PASCALIMPLEMENTATION TCustomMemTableEh : public Db::TDataSet
{
typedef Db::TDataSet inherited;
private:
Contnrs::TObjectList* FRecordCache;
bool FActive;
int FAutoInc;
DynamicArray<int > FCalcFieldIndexes;
Datadrivereh::TDataDriverEh* FDataDriver;
Db::TDataSet* FDataSetReader;
Contnrs::TObjectList* FDetailFieldList;
AnsiString FDetailFields;
bool FDetailMode;
bool FFetchAllOnOpen;
Memtabledataeh::TDataSetExprParserEh* FFilterExpr;
Contnrs::TObjectList* FInstantBuffers;
int FInstantReadCurRowNum;
TMasterDetailSideEh FMasterDetailSide;
Variant FMasterValues;
TMTTreeNodeExpandingEventEh FOnTreeNodeExpanding;
TRecordsViewTreeNodeExpandingEventEh FOnRecordsViewTreeNodeExpanding;
TRecordsViewTreeNodeExpandedEventEh FOnRecordsViewTreeNodeExpanded;
TRecordsViewCheckMoveNodeEventEh FOnRecordsViewCheckMoveNode;
Db::TParams* FParams;
bool FReadOnly;
int FRecBufSize;
int FRecordPos;
Memtabledataeh::TRecordsViewEh* FRecordsView;
TMemTableTreeListEh* FTreeList;
Db::TIndexDefs* FIndexDefs;
bool FStoreDefs;
Contnrs::TObjectList* FDetailRecList;
bool FDetailRecListActive;
Memtabledataeh::TMemTableDataEh* FInternMemTableData;
TCustomMemTableEh* FExternalMemData;
int FRecordsViewUpdating;
bool FRecordsViewUpdated;
TSortedVarlistEh* FMasterValList;
AnsiString FSortOrder;
TMemTableChangeFieldValueEventEh FOnGetFieldValue;
TMemTableChangeFieldValueEventEh FOnSetFieldValue;
void __fastcall BeginRecordsViewUpdate(void);
void __fastcall EndRecordsViewUpdate(bool AutoResync);
bool __fastcall GetAggregatesActive(void);
Memtabledataeh::TAutoIncrementEh* __fastcall GetAutoIncrement(void);
bool __fastcall GetCachedUpdates(void);
int __fastcall GetDataFieldsCount(void);
int __fastcall GetInstantReadCurRowNum(void);
AnsiString __fastcall GetMasterFields();
Db::TDataSource* __fastcall GetMasterSource(void);
Memtabledataeh::TMemRecViewEh* __fastcall GetTreeNode(void);
int __fastcall GetTreeNodeChildCount(void);
bool __fastcall GetTreeNodeExpanded(void);
bool __fastcall GetTreeNodeHasChildren(void);
Memtabledataeh::TUpdateErrorEh* __fastcall GetUpdateError(void);
HIDESBASE Db::TIndexDefs* __fastcall GetIndexDefs(void);
char * __fastcall GetInstantBuffer(void);
bool __fastcall IsRecordInFilter(Memtabledataeh::TMemoryRecordEh* Rec);
void __fastcall AncestorNotFound(Classes::TReader* Reader, const AnsiString ComponentName, TMetaClass* ComponentClass, Classes::TComponent* &Component);
void __fastcall ClearRecords(void);
void __fastcall CreateComponent(Classes::TReader* Reader, TMetaClass* ComponentClass, Classes::TComponent* &Component);
void __fastcall InitBufferPointers(bool GetProps);
void __fastcall RefreshParams(void);
void __fastcall SetAggregatesActive(const bool Value);
void __fastcall SetAutoIncrement(const Memtabledataeh::TAutoIncrementEh* Value);
void __fastcall SetCachedUpdates(const bool Value);
void __fastcall SetDataDriver(const Datadrivereh::TDataDriverEh* Value);
void __fastcall SetDetailFields(const AnsiString Value);
void __fastcall SetExternalMemData(TCustomMemTableEh* Value);
void __fastcall SetMasterDetailSide(const TMasterDetailSideEh Value);
void __fastcall SetMasterFields(const AnsiString Value);
void __fastcall SetMasterSource(const Db::TDataSource* Value);
void __fastcall SetParams(const Db::TParams* Value);
void __fastcall SetParamsFromCursor(void);
void __fastcall SetTreeNodeExpanded(const bool Value);
void __fastcall SetTreeNodeHasChildren(const bool Value);
void __fastcall SetIndexDefs(Db::TIndexDefs* Value);
void __fastcall SortData(System::TObject* ParamSort);
AnsiString __fastcall GetSortOrder();
void __fastcall SetSortOrder(const AnsiString Value);
Db::TUpdateStatusSet __fastcall GetStatusFilter(void);
void __fastcall SetStatusFilter(const Db::TUpdateStatusSet Value);
void __fastcall SetReadOnly(const bool Value);
protected:
virtual Db::TIndexDefs* __fastcall PSGetIndexDefs(Db::TIndexOptions IndexTypes);
bool FInstantReadMode;
TMasterDataLinkEh* FMasterDataLink;
AnsiString FAutoIncrementFieldName;
virtual bool __fastcall GetActiveRecBuf(TRecBuf* &RecBuf, bool IsForWrite = false);
bool __fastcall GetTreeNodeHasChields(void);
int __fastcall GetTreeNodeLevel(void);
System::TObject* __fastcall GetRecObject(void);
int __fastcall GetPrevVisibleTreeNodeLevel(void);
int __fastcall GetNextVisibleTreeNodeLevel(void);
bool __fastcall MemTableIsTreeList(void);
bool __fastcall ParentHasNextSibling(int ParenLevel);
bool __fastcall IMemTableGetTreeNodeExpanded(int RowNum);
int __fastcall IMemTableSetTreeNodeExpanded(int RowNum, bool Value);
Toolctrlseh::_di_IMemTableDataFieldValueListEh __fastcall GetFieldValueList(AnsiString AFieldName);
void __fastcall RecreateFilterExpr(void);
void __fastcall DestroyFilterExpr(void);
virtual char * __fastcall AllocRecordBuffer(void);
virtual int __fastcall CompareRecords(Memtabledataeh::TMemoryRecordEh* Rec1, Memtabledataeh::TMemoryRecordEh* Rec2, System::TObject* ParamSort);
virtual int __fastcall CompareTreeNodes(Memtreeeh::TBaseTreeNodeEh* Rec1, Memtreeeh::TBaseTreeNodeEh* Rec2, System::TObject* ParamSort);
TCustomMemTableEh* __fastcall CreateDeltaDataSet(void);
int __fastcall DoFetchRecords(int Count);
Variant __fastcall FieldValueToVarValue(void * FieldBuffer, Db::TField* Field);
Variant __fastcall GetBlobData(Db::TField* Field, TRecBuf* Buffer);
int __fastcall BufferToIndex(char * Buf);
TRecBuf* __fastcall BufferToRecBuf(char * Buf);
char * __fastcall IndexToBuffer(int I);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -