📄 rm_cross.hpp
字号:
// CodeGear C++Builder
// Copyright (c) 1995, 2007 by CodeGear
// All rights reserved
// (DO NOT EDIT: machine generated header) 'Rm_cross.pas' rev: 11.00
#ifndef Rm_crossHPP
#define Rm_crossHPP
#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 <Messages.hpp> // Pascal unit
#include <Sysutils.hpp> // Pascal unit
#include <Classes.hpp> // Pascal unit
#include <Graphics.hpp> // Pascal unit
#include <Controls.hpp> // Pascal unit
#include <Forms.hpp> // Pascal unit
#include <Dialogs.hpp> // Pascal unit
#include <Stdctrls.hpp> // Pascal unit
#include <Menus.hpp> // Pascal unit
#include <Extctrls.hpp> // Pascal unit
#include <Db.hpp> // Pascal unit
#include <Buttons.hpp> // Pascal unit
#include <Rm_common.hpp> // Pascal unit
#include <Rm_class.hpp> // Pascal unit
#include <Rm_dataset.hpp> // Pascal unit
#include <Variants.hpp> // Pascal unit
//-- user supplied -----------------------------------------------------------
namespace Rm_cross
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TRMCrossObject;
class PASCALIMPLEMENTATION TRMCrossObject : public Classes::TComponent
{
typedef Classes::TComponent inherited;
public:
#pragma option push -w-inl
/* TComponent.Create */ inline __fastcall virtual TRMCrossObject(Classes::TComponent* AOwner) : Classes::TComponent(AOwner) { }
#pragma option pop
#pragma option push -w-inl
/* TComponent.Destroy */ inline __fastcall virtual ~TRMCrossObject(void) { }
#pragma option pop
};
typedef int TIntArrayCell[1];
typedef TIntArrayCell *PIntArrayCell;
class DELPHICLASS TRMQuickIntArray;
class PASCALIMPLEMENTATION TRMQuickIntArray : public System::TObject
{
typedef System::TObject inherited;
public:
int operator[](int Index) { return Cell[Index]; }
private:
TIntArrayCell *arr;
int len;
int __fastcall GetCell(int Index);
void __fastcall SetCell(int Index, const int Value);
public:
__fastcall TRMQuickIntArray(int Length);
__fastcall virtual ~TRMQuickIntArray(void);
__property int Cell[int Index] = {read=GetCell, write=SetCell/*, default*/};
};
class DELPHICLASS TRMArray;
class PASCALIMPLEMENTATION TRMArray : public System::TObject
{
typedef System::TObject inherited;
private:
bool FFlag_Insert;
int FInsertPos;
bool FSortColHeader;
bool FSortRowHeader;
Classes::TStringList* FRows;
Classes::TStringList* FColumns;
int FCellItemsCount;
Rm_class::TRMReport* FReport;
Variant __fastcall GetCell(const AnsiString Row, const AnsiString Col, int Index3);
void __fastcall SetCell(const AnsiString aRow, const AnsiString aCol, int aIndex3, const Variant &aValue);
Variant __fastcall GetCellByIndex(int Row, int Col, int Index3);
Variant __fastcall GetCellArray(int Row, int Col);
void __fastcall SetCellArray(int Row, int Col, const Variant &Value);
void __fastcall SetSortColHeader(bool Value);
void __fastcall SetSortRowHeader(bool Value);
public:
__fastcall TRMArray(int CellItemsCount, Rm_class::TRMReport* aReport);
__fastcall virtual ~TRMArray(void);
void __fastcall Clear(void);
__property Classes::TStringList* Columns = {read=FColumns};
__property Classes::TStringList* Rows = {read=FRows};
__property int CellItemsCount = {read=FCellItemsCount, nodefault};
__property Variant Cell[AnsiString Row][AnsiString Col][int Index3] = {read=GetCell, write=SetCell};
__property Variant CellByIndex[int Row][int Col][int Index3] = {read=GetCellByIndex};
__property Variant CellArray[int Row][int Col] = {read=GetCellArray, write=SetCellArray};
__property bool SortColHeader = {read=FSortColHeader, write=SetSortColHeader, nodefault};
__property bool SortRowHeader = {read=FSortRowHeader, write=SetSortRowHeader, nodefault};
};
typedef Variant RM_Cross__5[32];
class DELPHICLASS TRMCrossArray;
class PASCALIMPLEMENTATION TRMCrossArray : public TRMArray
{
typedef TRMArray inherited;
private:
Db::TDataSet* FDataSet;
Classes::TStringList* FRowFields;
Classes::TStringList* FColFields;
Classes::TStringList* FCellFields;
Variant FRowTypes[32];
Variant FColTypes[32];
#pragma pack(push,1)
tagSIZE FTopLeftSize;
#pragma pack(pop)
AnsiString FHeaderString;
AnsiString FRowTotalString;
AnsiString FRowGrandTotalString;
AnsiString FColumnTotalString;
AnsiString FColumnGrandTotalString;
Classes::TStrings* FAddColumnsHeader;
bool __fastcall GetIsTotalRow(int Index);
bool __fastcall GetIsTotalColumn(int Index);
public:
bool DoDataCol;
bool ShowRowNo;
AnsiString DataStr;
__fastcall TRMCrossArray(Rm_class::TRMReport* aReport, Db::TDataSet* DS, AnsiString RowFields, AnsiString ColFields, AnsiString CellFields);
__fastcall virtual ~TRMCrossArray(void);
void __fastcall Build(void);
__property AnsiString HeaderString = {read=FHeaderString, write=FHeaderString};
__property AnsiString RowTotalString = {read=FRowTotalString, write=FRowTotalString};
__property AnsiString RowGrandTotalString = {read=FRowGrandTotalString, write=FRowGrandTotalString};
__property AnsiString ColumnTotalString = {read=FColumnTotalString, write=FColumnTotalString};
__property AnsiString ColumnGrandTotalString = {read=FColumnGrandTotalString, write=FColumnGrandTotalString};
__property tagSIZE TopLeftSize = {read=FTopLeftSize};
__property bool IsTotalRow[int Index] = {read=GetIsTotalRow};
__property bool IsTotalColumn[int Index] = {read=GetIsTotalColumn};
};
class DELPHICLASS TRMCrossView;
class PASCALIMPLEMENTATION TRMCrossView : public Rm_class::TRMReportView
{
typedef Rm_class::TRMReportView inherited;
private:
int FDataHeight;
int FDataWidth;
AnsiString FHeaderHeight;
AnsiString FHeaderWidth;
TRMCrossArray* FCrossArray;
TRMQuickIntArray* FColumnWidths;
TRMQuickIntArray* FColumnHeights;
TRMQuickIntArray* FLastTotalCol;
bool FFlag;
bool FSkip;
Rm_dataset::TRMUserDataset* FRowDataSet;
Rm_dataset::TRMUserDataset* FColumnDataSet;
bool FRepeatCaptions;
bool FInternalFrame;
bool FShowHeader;
int FDefDY;
int FLastX;
int FMaxGTHeight;
int FMaxCellHeight;
AnsiString FMaxString;
Classes::TStrings* FDictionary;
Classes::TStrings* FAddColumnsHeader;
AnsiString FRowNoHeader;
Rm_class::TRMOnBeforePrintEvent FSavedOnBeforePrint;
Rm_class::TRMPrintColumnEvent FSavedOnPrintColumn;
Rm_class::TRMMemoView* __fastcall OneObject(Rm_class::TRMReportPage* aPage, AnsiString Name1, AnsiString Name2);
HIDESBASE Rm_class::TRMReportPage* __fastcall ParentPage(void);
void __fastcall CreateObjects(void);
void __fastcall CalcWidths(void);
void __fastcall MakeBands(void);
void __fastcall OnReportPrintColumnEvent(int aColNo, int &aWidth);
void __fastcall OnReportBeforePrintEvent(Rm_jclwidestrings::TWStringList* aMemo, Rm_class::TRMReportView* aView);
bool __fastcall GetShowRowTotal(void);
void __fastcall SetShowRowTotal(bool Value);
bool __fastcall GetShowColTotal(void);
void __fastcall SetShowColTotal(bool Value);
bool __fastcall GetShowIndicator(void);
void __fastcall SetShowIndicator(bool Value);
bool __fastcall GetSortColHeader(void);
void __fastcall SetSortColHeader(bool Value);
bool __fastcall GetSortRowHeader(void);
void __fastcall SetSortRowHeader(bool Value);
bool __fastcall GetMergeRowHeader(void);
void __fastcall SetMergeRowHeader(bool Value);
bool __fastcall GetShowRowNo(void);
void __fastcall SetShowRowNo(bool Value);
bool __fastcall GetInternalFrame(void);
void __fastcall SetInternalFrame(bool Value);
bool __fastcall GetRepeatCaptions(void);
void __fastcall SetRepeatCaptions(bool Value);
int __fastcall GetDataWidth(void);
void __fastcall SetDataWidth(int Value);
int __fastcall GetDataHeight(void);
void __fastcall SetDataHeight(int Value);
AnsiString __fastcall GetHeaderWidth();
void __fastcall SetHeaderWidth(AnsiString Value);
AnsiString __fastcall GetHeaderHeight();
void __fastcall SetHeaderHeight(AnsiString Value);
AnsiString __fastcall GetRowNoHeader();
void __fastcall SetRowNoHeader(AnsiString Value);
AnsiString __fastcall GetDictName(AnsiString aStr);
AnsiString __fastcall GetDataCellText();
int __fastcall GetHeaderHeightByIndex(int aIndex);
int __fastcall GetHeaderWidthByIndex(int aIndex);
void __fastcall OnColumnDataSetFirstEvent(System::TObject* Sender);
protected:
virtual void __fastcall Prepare(void);
virtual void __fastcall UnPrepare(void);
virtual bool __fastcall IsCrossView(void);
public:
/* virtual class method */ virtual bool __fastcall CanPlaceOnGridView(TMetaClass* vmt);
__fastcall virtual TRMCrossView(void);
__fastcall virtual ~TRMCrossView(void);
virtual void __fastcall Draw(Graphics::TCanvas* aCanvas);
virtual void __fastcall LoadFromStream(Classes::TStream* aStream);
virtual void __fastcall SaveToStream(Classes::TStream* aStream);
virtual void __fastcall ShowEditor(void);
__property Rm_dataset::TRMUserDataset* RowDataSet = {read=FRowDataSet};
__property Rm_dataset::TRMUserDataset* ColumnDataSet = {read=FColumnDataSet};
__published:
__property bool InternalFrame = {read=GetInternalFrame, write=SetInternalFrame, nodefault};
__property bool RepeatCaptions = {read=GetRepeatCaptions, write=SetRepeatCaptions, nodefault};
__property int DataWidth = {read=GetDataWidth, write=SetDataWidth, nodefault};
__property int DataHeight = {read=GetDataHeight, write=SetDataHeight, nodefault};
__property AnsiString HeaderWidth = {read=GetHeaderWidth, write=SetHeaderWidth};
__property AnsiString HeaderHeight = {read=GetHeaderHeight, write=SetHeaderHeight};
__property AnsiString RowNoHeader = {read=GetRowNoHeader, write=SetRowNoHeader};
__property bool ShowRowTotal = {read=GetShowRowTotal, write=SetShowRowTotal, nodefault};
__property bool ShowColumnTotal = {read=GetShowColTotal, write=SetShowColTotal, nodefault};
__property bool ShowIndicator = {read=GetShowIndicator, write=SetShowIndicator, nodefault};
__property bool SortColHeader = {read=GetSortColHeader, write=SetSortColHeader, nodefault};
__property bool SortRowHeader = {read=GetSortRowHeader, write=SetSortRowHeader, nodefault};
__property bool MergeRowHeader = {read=GetMergeRowHeader, write=SetMergeRowHeader, nodefault};
__property bool ShowRowNo = {read=GetShowRowNo, write=SetShowRowNo, nodefault};
__property Classes::TStrings* Dictionary = {read=FDictionary, write=FDictionary};
__property Classes::TStrings* AddColumnHeader = {read=FAddColumnsHeader, write=FAddColumnsHeader};
};
class DELPHICLASS TRMCrossForm;
class PASCALIMPLEMENTATION TRMCrossForm : public Forms::TForm
{
typedef Forms::TForm inherited;
__published:
Stdctrls::TGroupBox* GroupBox1;
Stdctrls::TListBox* ListBox2;
Stdctrls::TListBox* ListBox3;
Stdctrls::TListBox* ListBox4;
Extctrls::TShape* Shape1;
Extctrls::TShape* Shape2;
Stdctrls::TGroupBox* GroupBox2;
Stdctrls::TComboBox* DatasetsLB;
Stdctrls::TListBox* FieldsLB;
Stdctrls::TButton* btnOK;
Stdctrls::TButton* btnCancel;
Stdctrls::TLabel* Label1;
Stdctrls::TComboBox* ComboBox2;
Stdctrls::TCheckBox* CheckBox1;
Buttons::TSpeedButton* btnExchange;
void __fastcall FormShow(System::TObject* Sender);
void __fastcall DatasetsLBClick(System::TObject* Sender);
void __fastcall FormHide(System::TObject* Sender);
void __fastcall ListBox3Enter(System::TObject* Sender);
void __fastcall CheckBox1Click(System::TObject* Sender);
void __fastcall ListBox3Click(System::TObject* Sender);
void __fastcall ListBox4Click(System::TObject* Sender);
void __fastcall ComboBox2Click(System::TObject* Sender);
void __fastcall ListBox4DrawItem(Controls::TWinControl* Control, int Index, const Types::TRect &ARect, Windows::TOwnerDrawState State);
void __fastcall FieldsLBDragOver(System::TObject* Sender, System::TObject* Source, int X, int Y, Controls::TDragState State, bool &Accept);
void __fastcall FieldsLBDragDrop(System::TObject* Sender, System::TObject* Source, int X, int Y);
void __fastcall ListBox3DblClick(System::TObject* Sender);
void __fastcall FormCreate(System::TObject* Sender);
void __fastcall btnExchangeClick(System::TObject* Sender);
void __fastcall ListBox3KeyDown(System::TObject* Sender, Word &Key, Classes::TShiftState Shift);
private:
Stdctrls::TListBox* FListBox;
bool FBusy;
Extctrls::TPanel* DrawPanel;
void __fastcall FillDatasetsLB(void);
void __fastcall Localize(void);
void __fastcall ClearSelection(System::TObject* Sender);
public:
TRMCrossView* Cross;
public:
#pragma option push -w-inl
/* TCustomForm.Create */ inline __fastcall virtual TRMCrossForm(Classes::TComponent* AOwner) : Forms::TForm(AOwner) { }
#pragma option pop
#pragma option push -w-inl
/* TCustomForm.CreateNew */ inline __fastcall virtual TRMCrossForm(Classes::TComponent* AOwner, int Dummy) : Forms::TForm(AOwner, Dummy) { }
#pragma option pop
#pragma option push -w-inl
/* TCustomForm.Destroy */ inline __fastcall virtual ~TRMCrossForm(void) { }
#pragma option pop
public:
#pragma option push -w-inl
/* TWinControl.CreateParented */ inline __fastcall TRMCrossForm(HWND ParentWindow) : Forms::TForm(ParentWindow) { }
#pragma option pop
};
//-- var, const, procedure ---------------------------------------------------
} /* namespace Rm_cross */
using namespace Rm_cross;
#pragma pack(pop)
#pragma option pop
#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif // Rm_cross
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -