⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rmd_reportexplorer.hpp

📁 这是一个功能强大
💻 HPP
字号:
// CodeGear C++Builder
// Copyright (c) 1995, 2007 by CodeGear
// All rights reserved

// (DO NOT EDIT: machine generated header) 'Rmd_reportexplorer.pas' rev: 11.00

#ifndef Rmd_reportexplorerHPP
#define Rmd_reportexplorerHPP

#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 <Classes.hpp>	// Pascal unit
#include <Sysutils.hpp>	// Pascal unit
#include <Forms.hpp>	// Pascal unit
#include <Controls.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <Menus.hpp>	// Pascal unit
#include <Dialogs.hpp>	// Pascal unit
#include <Comctrls.hpp>	// Pascal unit
#include <Db.hpp>	// Pascal unit
#include <Rm_class.hpp>	// Pascal unit
#include <Variants.hpp>	// Pascal unit

//-- user supplied -----------------------------------------------------------

namespace Rmd_reportexplorer
{
//-- type declarations -------------------------------------------------------
typedef void __fastcall (__closure *TRMRenameFolderEvent)(System::TObject* Sender, int aFolderId, const AnsiString aNewName);

class DELPHICLASS TRMFolderFieldNames;
class PASCALIMPLEMENTATION TRMFolderFieldNames : public Classes::TPersistent 
{
	typedef Classes::TPersistent inherited;
	
private:
	AnsiString FName;
	AnsiString FFolderId;
	AnsiString FParentId;
	
public:
	__fastcall TRMFolderFieldNames(void);
	__fastcall virtual ~TRMFolderFieldNames(void);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	
__published:
	__property AnsiString FolderId = {read=FFolderId, write=FFolderId};
	__property AnsiString Name = {read=FName, write=FName};
	__property AnsiString ParentId = {read=FParentId, write=FParentId};
};


class DELPHICLASS TRMItemFieldNames;
class PASCALIMPLEMENTATION TRMItemFieldNames : public Classes::TPersistent 
{
	typedef Classes::TPersistent inherited;
	
private:
	AnsiString FDeleted;
	AnsiString FFolderId;
	AnsiString FItemId;
	AnsiString FModified;
	AnsiString FName;
	AnsiString FSize;
	AnsiString FTemplate;
	AnsiString FItemType;
	
public:
	__fastcall TRMItemFieldNames(void);
	__fastcall virtual ~TRMItemFieldNames(void);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	
__published:
	__property AnsiString Deleted = {read=FDeleted, write=FDeleted};
	__property AnsiString FolderId = {read=FFolderId, write=FFolderId};
	__property AnsiString ItemId = {read=FItemId, write=FItemId};
	__property AnsiString Modified = {read=FModified, write=FModified};
	__property AnsiString Name = {read=FName, write=FName};
	__property AnsiString Size = {read=FSize, write=FSize};
	__property AnsiString Template = {read=FTemplate, write=FTemplate};
	__property AnsiString ItemType = {read=FItemType, write=FItemType};
};


class DELPHICLASS TRMFolderInfo;
class PASCALIMPLEMENTATION TRMFolderInfo : public System::TObject 
{
	typedef System::TObject inherited;
	
private:
	AnsiString FName;
	int FFolderId;
	int FParentId;
	
public:
	__property AnsiString Name = {read=FName, write=FName};
	__property int FolderId = {read=FFolderId, write=FFolderId, nodefault};
	__property int ParentId = {read=FParentId, write=FParentId, nodefault};
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TRMFolderInfo(void) : System::TObject() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TRMFolderInfo(void) { }
	#pragma option pop
	
};


class DELPHICLASS TRMItemInfo;
class PASCALIMPLEMENTATION TRMItemInfo : public System::TObject 
{
	typedef System::TObject inherited;
	
private:
	System::TDateTime FDeleted;
	int FFolderId;
	int FItemId;
	System::TDateTime FModified;
	AnsiString FName;
	int FSize;
	int FItemType;
	
public:
	__property System::TDateTime Deleted = {read=FDeleted, write=FDeleted};
	__property int FolderId = {read=FFolderId, write=FFolderId, nodefault};
	__property int ItemId = {read=FItemId, write=FItemId, nodefault};
	__property System::TDateTime Modified = {read=FModified, write=FModified};
	__property AnsiString Name = {read=FName, write=FName};
	__property int Size = {read=FSize, write=FSize, nodefault};
	__property int ItemType = {read=FItemType, write=FItemType, nodefault};
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TRMItemInfo(void) : System::TObject() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TRMItemInfo(void) { }
	#pragma option pop
	
};


struct TRMListItemData;
typedef TRMListItemData *PRMListItemData;

#pragma pack(push,1)
struct TRMListItemData
{
	
public:
	int ItemId;
	short ItemType;
} ;
#pragma pack(pop)

class DELPHICLASS TRMItemListView;
class DELPHICLASS TRMReportExplorer;
class DELPHICLASS TRMReportItems;
class DELPHICLASS TRMReportItem;
typedef TMetaClass* TRMReportItemClass;

class PASCALIMPLEMENTATION TRMReportItems : public Classes::TCollection 
{
	typedef Classes::TCollection inherited;
	
public:
	TRMReportItem* operator[](int Index) { return Items[Index]; }
	
private:
	TRMReportExplorer* FReportExplorer;
	HIDESBASE TRMReportItem* __fastcall GetItem(int Index);
	HIDESBASE void __fastcall SetItem(int Index, TRMReportItem* Value);
	
protected:
	DYNAMIC Classes::TPersistent* __fastcall GetOwner(void);
	
public:
	__fastcall TRMReportItems(TRMReportExplorer* aReportExplorer, TMetaClass* aReportItemClass);
	HIDESBASE TRMReportItem* __fastcall Add(void);
	__property TRMReportItem* Items[int Index] = {read=GetItem, write=SetItem/*, default*/};
public:
	#pragma option push -w-inl
	/* TCollection.Destroy */ inline __fastcall virtual ~TRMReportItems(void) { }
	#pragma option pop
	
};


class PASCALIMPLEMENTATION TRMReportExplorer : public Classes::TComponent 
{
	typedef Classes::TComponent inherited;
	
private:
	Forms::TForm* FForm;
	int FCurrentFolderId;
	AnsiString FCurrentItemName;
	int FCurrentItemType;
	bool FRecyclingItems;
	bool FYesToAll;
	TRMFolderFieldNames* FFolderFieldNames;
	Db::TDataSet* FFolderDataSet;
	TRMItemFieldNames* FItemFieldNames;
	Db::TDataSet* FItemDataSet;
	AnsiString FRootKey;
	bool FInsertRecordFlag;
	bool FRefreshFlag;
	TRMReportItems* FReports;
	Rm_class::TRMReport* FCurrentReport;
	void __fastcall SetReports(TRMReportItems* Value);
	void __fastcall SetFolderFieldNames(TRMFolderFieldNames* aFolderFieldNames);
	void __fastcall SetItemFieldNames(TRMItemFieldNames* aItemFieldNames);
	void __fastcall DeleteItemsInFolder(int aFolderId);
	bool __fastcall LocateItemRecord(const int aId);
	bool __fastcall IsReport(const int aId);
	bool __fastcall MoveFolderToFolder(int aFolderId, int aNewParentId);
	bool __fastcall MoveItemToFolder(int aItemId, int aNewFolderId);
	AnsiString __fastcall GetNewReportName(int aFolderId);
	bool __fastcall ValidFolderName(int aParentId, AnsiString aFolderName);
	int __fastcall GetCurrentReportIndex(Byte aReportType);
	void __fastcall OnSaveReportEvent(Rm_class::TRMReport* Report, AnsiString &ReportName, bool SaveAs, bool &Saved);
	
public:
	__fastcall virtual TRMReportExplorer(Classes::TComponent* aOwner);
	__fastcall virtual ~TRMReportExplorer(void);
	virtual void __fastcall Notification(Classes::TComponent* aComponent, Classes::TOperation Operation);
	void __fastcall Execute(void);
	void __fastcall New(int aFolderId);
	void __fastcall Open(const int aItemId, const int aFolderId, const int aItemType, AnsiString aReportName);
	void __fastcall Print(const int aItemId, const int aFolderId, const int aItemType, const AnsiString aReportName);
	void __fastcall PrintPreview(const int aItemId, const int aFolderId, const int aItemType, const AnsiString aReportName);
	int __fastcall GetParentId(int aFolderId);
	void __fastcall GetFolders(Classes::TStrings* aList);
	void __fastcall GetItems(int aFolderId, Classes::TStrings* aList);
	AnsiString __fastcall GetNewFolderName(int aParentId);
	bool __fastcall ChangeFolder(int aItemId, int aNewFolderId);
	bool __fastcall ChangeParentFolder(int aFolderId, int aNewParentId);
	void __fastcall AddFolder(int aParentId, AnsiString aFolderName, int &aFolderId);
	void __fastcall RenameFolder(int aFolderId, const AnsiString aNewName);
	void __fastcall Rename(int aItemId, AnsiString aNewName);
	void __fastcall Delete(int aItemId);
	bool __fastcall DeleteFolder(int aFolderId);
	void __fastcall GetChildFolders(int aFolderId, Classes::TStrings* aList);
	AnsiString __fastcall GetFolderName(int aFolderId);
	__property AnsiString CurrentItemName = {read=FCurrentItemName, write=FCurrentItemName};
	__property int CurrentFolderId = {read=FCurrentFolderId, write=FCurrentFolderId, nodefault};
	
__published:
	__property TRMFolderFieldNames* FolderFieldNames = {read=FFolderFieldNames, write=SetFolderFieldNames};
	__property Db::TDataSet* FolderDataSet = {read=FFolderDataSet, write=FFolderDataSet};
	__property TRMItemFieldNames* ItemFieldNames = {read=FItemFieldNames, write=SetItemFieldNames};
	__property Db::TDataSet* ItemDataSet = {read=FItemDataSet, write=FItemDataSet};
	__property AnsiString RootKey = {read=FRootKey, write=FRootKey};
	__property TRMReportItems* Reports = {read=FReports, write=SetReports};
};


class PASCALIMPLEMENTATION TRMItemListView : public Comctrls::TListView 
{
	typedef Comctrls::TListView inherited;
	
private:
	bool FAllFolders;
	int FFolderId;
	Classes::TNotifyEvent FOnDoubleClick;
	Classes::TNotifyEvent FOnFolderChange;
	TRMRenameFolderEvent FOnRenameFolder;
	Classes::TNotifyEvent FOnSelectionChange;
	TRMReportExplorer* FReportExplorer;
	int FSelectionCount;
	int FSelectionSize;
	int FSortMode;
	void __fastcall DoOnFolderChange(void);
	void __fastcall DoOnRenameFolder(int aFolderId, const AnsiString aNewName);
	void __fastcall DoOnSelectionChange(void);
	int __fastcall GetItemId(void);
	AnsiString __fastcall GetItemName();
	int __fastcall GetItemType(void);
	void __fastcall GetItemsForFolder(void);
	void __fastcall GetSelectedItems(Classes::TStrings* aList);
	void __fastcall SetFolderId(int aFolderId);
	void __fastcall SetItemName(AnsiString aName);
	void __fastcall SetReportExplorer(TRMReportExplorer* aExplorer);
	void __fastcall SetSortMode(int aSortMode);
	void __fastcall SetSortModeDescription(void);
	void __fastcall ChangeEvent(System::TObject* Sender, Comctrls::TListItem* Item, Comctrls::TItemChange Change);
	void __fastcall CompareEvent(System::TObject* Sender, Comctrls::TListItem* Item1, Comctrls::TListItem* Item2, int Data, int &Compare);
	void __fastcall ColumnClickEvent(System::TObject* Sender, Comctrls::TListColumn* Column);
	void __fastcall DblClickEvent(System::TObject* Sender);
	void __fastcall DragDropEvent(System::TObject* Sender, System::TObject* Source, int X, int Y);
	void __fastcall DragOverEvent(System::TObject* Sender, System::TObject* Source, int X, int Y, Controls::TDragState State, bool &Accept);
	void __fastcall EditedEvent(System::TObject* Sender, Comctrls::TListItem* Item, AnsiString &S);
	void __fastcall EditingEvent(System::TObject* Sender, Comctrls::TListItem* Item, bool &AllowEdit);
	
protected:
	virtual void __fastcall SetParent(Controls::TWinControl* aParent);
	
public:
	__fastcall virtual TRMItemListView(Classes::TComponent* aOwner);
	__fastcall virtual ~TRMItemListView(void);
	void __fastcall DeleteSelection(void);
	void __fastcall EmptyRecycleBin(void);
	void __fastcall MoveSelectionToFolder(int aFolderId);
	void __fastcall RenameItem(void);
	void __fastcall ClearData(void);
	__property bool AllFolders = {read=FAllFolders, nodefault};
	__property int FolderId = {read=FFolderId, write=SetFolderId, nodefault};
	__property AnsiString ItemName = {read=GetItemName, write=SetItemName};
	__property int ItemId = {read=GetItemId, nodefault};
	__property int ItemType = {read=GetItemType, nodefault};
	__property TRMReportExplorer* ReportExplorer = {read=FReportExplorer, write=SetReportExplorer};
	__property int SelectionCount = {read=FSelectionCount, nodefault};
	__property int SelectionSize = {read=FSelectionSize, nodefault};
	__property int SortMode = {read=FSortMode, write=SetSortMode, nodefault};
	__property Classes::TNotifyEvent OnDoubleClick = {read=FOnDoubleClick, write=FOnDoubleClick};
	__property Classes::TNotifyEvent OnFolderChange = {read=FOnFolderChange, write=FOnFolderChange};
	__property TRMRenameFolderEvent OnRenameFolder = {read=FOnRenameFolder, write=FOnRenameFolder};
	__property Classes::TNotifyEvent OnSelectionChange = {read=FOnSelectionChange, write=FOnSelectionChange};
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TRMItemListView(HWND ParentWindow) : Comctrls::TListView(ParentWindow) { }
	#pragma option pop
	
};


class PASCALIMPLEMENTATION TRMReportItem : public Classes::TCollectionItem 
{
	typedef Classes::TCollectionItem inherited;
	
private:
	Rm_class::TRMReport* FReport;
	
public:
	__fastcall virtual TRMReportItem(Classes::TCollection* Collection);
	virtual void __fastcall Assign(Classes::TPersistent* Source);
	
__published:
	__property Rm_class::TRMReport* Report = {read=FReport, write=FReport};
public:
	#pragma option push -w-inl
	/* TCollectionItem.Destroy */ inline __fastcall virtual ~TRMReportItem(void) { }
	#pragma option pop
	
};


//-- var, const, procedure ---------------------------------------------------
static const Shortint rmitAllFolders = 0x0;
static const Shortint rmitReport = 0x1;
static const Byte rmitFolder = 0xff;
static const Shortint rmitRecycleBin = -2;

}	/* namespace Rmd_reportexplorer */
using namespace Rmd_reportexplorer;
#pragma pack(pop)
#pragma option pop

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// Rmd_reportexplorer

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -