www.pudn.com > mfcdraw.zip > AdvGrid.hpp


// Borland C++ Builder 
// Copyright (c) 1995, 1998 by Borland International 
// All rights reserved 
 
// (DO NOT EDIT: machine generated header) 'AdvGrid.pas' rev: 3.00 
 
#ifndef AdvGridHPP 
#define AdvGridHPP 
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include "e:\vcl\EditBtn.hpp" 
#include "e:\vcl\Spin.hpp" 
#include  
#include "e:\vcl\match.hpp" 
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include  
#include  
 
//-- user supplied ----------------------------------------------------------- 
 
namespace Advgrid 
{ 
//-- type declarations ------------------------------------------------------- 
typedef bool tboolarray[257]; 
 
typedef tboolarray *pboolarray; 
 
class DELPHICLASS EAdvGridError; 
class PASCALIMPLEMENTATION EAdvGridError : public Sysutils::Exception  
{ 
	typedef Sysutils::Exception inherited; 
	 
public: 
	/* Exception.Create */ __fastcall EAdvGridError(const System::AnsiString Msg) : Sysutils::Exception( 
		Msg) { } 
	/* Exception.CreateFmt */ __fastcall EAdvGridError(const System::AnsiString Msg, const System::TVarRec  
		* Args, const int Args_Size) : Sysutils::Exception(Msg, Args, Args_Size) { } 
	/* Exception.CreateRes */ __fastcall EAdvGridError(int Ident, Extended Dummy) : Sysutils::Exception( 
		Ident, Dummy) { } 
	/* Exception.CreateResFmt */ __fastcall EAdvGridError(int Ident, const System::TVarRec * Args, const  
		int Args_Size) : Sysutils::Exception(Ident, Args, Args_Size) { } 
	/* Exception.CreateHelp */ __fastcall EAdvGridError(const System::AnsiString Msg, int AHelpContext) 
		 : Sysutils::Exception(Msg, AHelpContext) { } 
	/* Exception.CreateFmtHelp */ __fastcall EAdvGridError(const System::AnsiString Msg, const System::TVarRec  
		* Args, const int Args_Size, int AHelpContext) : Sysutils::Exception(Msg, Args, Args_Size, AHelpContext 
		) { } 
	/* Exception.CreateResHelp */ __fastcall EAdvGridError(int Ident, int AHelpContext) : Sysutils::Exception( 
		Ident, AHelpContext) { } 
	/* Exception.CreateResFmtHelp */ __fastcall EAdvGridError(int Ident, const System::TVarRec * Args,  
		const int Args_Size, int AHelpContext) : Sysutils::Exception(Ident, Args, Args_Size, AHelpContext) 
		 { } 
	 
public: 
	/* TObject.Destroy */ __fastcall virtual ~EAdvGridError(void) { } 
	 
}; 
 
enum TEditorType { edNormal, edSpinEdit, edComboEdit, edComboList, edEditBtn, edCheckBox, edDateEdit,  
	edTimeEdit }; 
 
typedef void __fastcall (__closure *TGetEditorTypeEvent)(System::TObject* Sender, int aCol, int aRow 
	, TEditorType &aEditor); 
 
typedef void __fastcall (__closure *TEllipsClickEvent)(System::TObject* Sender, int aCol, int aRow,  
	System::AnsiString &S); 
 
enum TSortStyle { ssAutomatic, ssAlphabetic, ssNumeric, ssDate, ssAlphaNoCase, ssAlphaCase, ssShortDateEU,  
	ssShortDateUS, ssCustom, ssFinancial }; 
 
enum TPrintPosition { ppNone, ppTopLeft, ppTopRight, ppTopCenter, ppBottomLeft, ppBottomRight, ppBottomCenter  
	}; 
 
enum TPrintBorders { pbNoborder, pbSingle, pbDouble }; 
 
enum TSortDirection { sdAscending, sdDescending }; 
 
enum TAdvanceDirection { adLeftRight, adTopBottom }; 
 
enum TIntelliPan { ipVertical, ipHorizontal, ipBoth }; 
 
typedef void __fastcall (__closure *TAutoInsertRowEvent)(System::TObject* Sender, int ARow); 
 
typedef void __fastcall (__closure *TAutoInsertColEvent)(System::TObject* Sender, int ACol); 
 
typedef void __fastcall (__closure *TAutoDeleteRowEvent)(System::TObject* Sender, int aRow); 
 
typedef void __fastcall (__closure *TClickSortEvent)(System::TObject* Sender, int aCol); 
 
typedef void __fastcall (__closure *TCanSortEvent)(System::TObject* Sender, int aCol, bool &dosort); 
	 
 
typedef void __fastcall (__closure *TCustomCompareEvent)(System::TObject* Sender, System::AnsiString  
	str1, System::AnsiString str2, int &res); 
 
typedef void __fastcall (__closure *TGridFormatEvent)(System::TObject* Sender, int ACol, TSortStyle  
	&AStyle); 
 
typedef void __fastcall (__closure *TGridColorEvent)(System::TObject* Sender, int ARow, int ACol, Grids::TGridDrawState  
	AState, Graphics::TBrush* ABrush, Graphics::TFont* AFont); 
 
typedef void __fastcall (__closure *TGridAlignEvent)(System::TObject* Sender, int ARow, int ACol, Classes::TAlignment  
	&AAlignment); 
 
typedef void __fastcall (__closure *TGridHintEvent)(System::TObject* Sender, int Arow, int Acol, System::AnsiString  
	&hintstr); 
 
typedef void __fastcall (__closure *TGridPrintPageEvent)(System::TObject* Sender, Graphics::TCanvas*  
	Canvas, int pagenr, int pagexsize, int pageysize); 
 
typedef void __fastcall (__closure *TOnResizeEvent)(System::TObject* Sender); 
 
typedef void __fastcall (__closure *TClickCellEvent)(System::TObject* Sender, int Arow, int Acol); 
 
typedef void __fastcall (__closure *TDblClickCellEvent)(System::TObject* Sender, int Arow, int Acol) 
	; 
 
typedef void __fastcall (__closure *TCanEditCellEvent)(System::TObject* Sender, int Arow, int Acol,  
	bool &canedit); 
 
typedef void __fastcall (__closure *TCellValidateEvent)(System::TObject* Sender, int Col, int Row, System::AnsiString  
	&Value, bool &Valid); 
 
enum TFindParameters { fnMatchCase, fnMatchFull, fnMatchRegular, fnDirectionLeftRight }; 
 
enum TCellHAlign { haLeft, haRight, haCenter, haBeforeText, haAfterText }; 
 
enum TCellVAlign { vaTop, vaBottom, vaCenter, vaUnderText, vaAboveText }; 
 
enum TCellType { ctBitmap, ctIcon, ctNone, ctImageList, ctCheckBox }; 
 
typedef Set  TFindParams; 
 
class DELPHICLASS TCellGraphic; 
class PASCALIMPLEMENTATION TCellGraphic : public System::TObject  
{ 
	typedef System::TObject inherited; 
	 
public: 
	TCellType CellType; 
	Graphics::TBitmap* CellBitmap; 
	Graphics::TIcon* CellIcon; 
	TCellVAlign CellVAlign; 
	TCellHAlign CellHAlign; 
	int CellIndex; 
	bool CellTransparent; 
	bool CellBoolean; 
	__fastcall TCellGraphic(void); 
	__fastcall virtual ~TCellGraphic(void); 
	void __fastcall SetBitmap(Graphics::TBitmap* abmp, bool transparent, TCellHAlign hal, TCellVAlign val 
		); 
	void __fastcall SetImageIdx(int idx, TCellHAlign hal, TCellVAlign val); 
	void __fastcall SetIcon(Graphics::TIcon* aicon, TCellHAlign hal, TCellVAlign val); 
	void __fastcall SetCheckBox(bool val); 
}; 
 
class DELPHICLASS TSizeWhileTyping; 
class PASCALIMPLEMENTATION TSizeWhileTyping : public Classes::TPersistent  
{ 
	typedef Classes::TPersistent inherited; 
	 
private: 
	bool FHeight; 
	bool FWidth; 
	 
public: 
	__fastcall TSizeWhileTyping(void); 
	__fastcall virtual ~TSizeWhileTyping(void); 
	 
__published: 
	__property bool Height = {read=FHeight, write=FHeight, nodefault}; 
	__property bool Width = {read=FWidth, write=FWidth, nodefault}; 
}; 
 
class DELPHICLASS TMouseActions; 
class PASCALIMPLEMENTATION TMouseActions : public Classes::TPersistent  
{ 
	typedef Classes::TPersistent inherited; 
	 
private: 
	bool FColSelect; 
	bool FRowSelect; 
	bool FAllSelect; 
	bool FCaretPositioning; 
	 
public: 
	__fastcall TMouseActions(void); 
	__fastcall virtual ~TMouseActions(void); 
	 
__published: 
	__property bool AllSelect = {read=FAllSelect, write=FAllSelect, nodefault}; 
	__property bool ColSelect = {read=FColSelect, write=FColSelect, nodefault}; 
	__property bool RowSelect = {read=FRowSelect, write=FRowSelect, nodefault}; 
	__property bool CaretPositioning = {read=FCaretPositioning, write=FCaretPositioning, nodefault}; 
}; 
 
class DELPHICLASS TColumnSize; 
class PASCALIMPLEMENTATION TColumnSize : public Classes::TPersistent  
{ 
	typedef Classes::TPersistent inherited; 
	 
private: 
	bool FSave; 
	System::AnsiString FKey; 
	System::AnsiString FSection; 
	bool FStretch; 
	Classes::TComponent* Owner; 
	void __fastcall SetStretch(bool value); 
	 
public: 
	__fastcall TColumnSize(Classes::TComponent* aOwner); 
	__fastcall virtual ~TColumnSize(void); 
	 
__published: 
	__property bool Save = {read=FSave, write=FSave, nodefault}; 
	__property System::AnsiString Key = {read=FKey, write=FKey}; 
	__property System::AnsiString Section = {read=FSection, write=FSection}; 
	__property bool Stretch = {read=FStretch, write=SetStretch, nodefault}; 
}; 
 
class DELPHICLASS TNavigation; 
class PASCALIMPLEMENTATION TNavigation : public Classes::TPersistent  
{ 
	typedef Classes::TPersistent inherited; 
	 
private: 
	bool FAllowInsertRow; 
	bool FAllowDeleteRow; 
	bool FAdvanceOnEnter; 
	bool FAdvanceInsert; 
	bool FAutoGotoWhenSorted; 
	bool FAllowClipboardShortcuts; 
	TAdvanceDirection FAdvanceDirection; 
	bool FAdvanceAuto; 
	void __fastcall SetAutoGoto(bool avalue); 
	 
public: 
	__fastcall TNavigation(void); 
	__fastcall virtual ~TNavigation(void); 
	 
__published: 
	__property bool AllowInsertRow = {read=FAllowInsertRow, write=FAllowInsertRow, nodefault}; 
	__property bool AllowDeleteRow = {read=FAllowDeleteRow, write=FAllowDeleteRow, nodefault}; 
	__property bool AdvanceOnEnter = {read=FAdvanceOnEnter, write=FAdvanceOnEnter, nodefault}; 
	__property bool AdvanceInsert = {read=FAdvanceInsert, write=FAdvanceInsert, nodefault}; 
	__property bool AutoGotoWhenSorted = {read=FAutoGotoWhenSorted, write=SetAutoGoto, nodefault}; 
	__property TAdvanceDirection AdvanceDirection = {read=FAdvanceDirection, write=FAdvanceDirection, nodefault 
		}; 
	__property bool AllowClipboardShortCuts = {read=FAllowClipboardShortcuts, write=FAllowClipboardShortcuts 
		, nodefault}; 
	__property bool AdvanceAuto = {read=FAdvanceAuto, write=FAdvanceAuto, nodefault}; 
}; 
 
class DELPHICLASS TPrintsettings; 
class PASCALIMPLEMENTATION TPrintsettings : public Classes::TPersistent  
{ 
	typedef Classes::TPersistent inherited; 
	 
private: 
	TPrintPosition FTime; 
	TPrintPosition FDate; 
	TPrintPosition FPageNr; 
	TPrintPosition FTitle; 
	Graphics::TFont* FFont; 
	Graphics::TFont* FHeaderFont; 
	Graphics::TFont* FFooterFont; 
	TPrintBorders FBorders; 
	System::AnsiString FTitleText; 
	bool FCentered; 
	bool FRepeatFixedRows; 
	bool FRepeatFixedCols; 
	int FFooterSize; 
	int FHeaderSize; 
	int FLeftSize; 
	int FRightSize; 
	int FColumnSpacing; 
	TPrinterOrientation FOrientation; 
	System::AnsiString FPagePrefix; 
	int FFixedHeight; 
	bool FUseFixedHeight; 
	int FFixedWidth; 
	bool FUseFixedWidth; 
	void __fastcall SetPrintFont(Graphics::TFont* value); 
	void __fastcall SetPrintHeaderFont(Graphics::TFont* value); 
	void __fastcall SetPrintFooterFont(Graphics::TFont* value); 
	 
public: 
	__fastcall TPrintsettings(void); 
	__fastcall virtual ~TPrintsettings(void); 
	 
__published: 
	__property int FooterSize = {read=FFooterSize, write=FFooterSize, nodefault}; 
	__property int HeaderSize = {read=FHeaderSize, write=FHeaderSize, nodefault}; 
	__property TPrintPosition Time = {read=FTime, write=FTime, nodefault}; 
	__property TPrintPosition Date = {read=FDate, write=FDate, nodefault}; 
	__property TPrintPosition PageNr = {read=FPageNr, write=FPageNr, nodefault}; 
	__property TPrintPosition Title = {read=FTitle, write=FTitle, nodefault}; 
	__property System::AnsiString TitleText = {read=FTitleText, write=FTitleText}; 
	__property Graphics::TFont* Font = {read=FFont, write=SetPrintFont}; 
	__property Graphics::TFont* HeaderFont = {read=FHeaderFont, write=SetPrintHeaderFont}; 
	__property Graphics::TFont* FooterFont = {read=FFooterFont, write=SetPrintFooterFont}; 
	__property TPrintBorders Borders = {read=FBorders, write=FBorders, nodefault}; 
	__property bool Centered = {read=FCentered, write=FCentered, nodefault}; 
	__property bool RepeatFixedRows = {read=FRepeatFixedRows, write=FRepeatFixedRows, nodefault}; 
	__property bool RepeatFixedCols = {read=FRepeatFixedCols, write=FRepeatFixedCols, nodefault}; 
	__property int LeftSize = {read=FLeftSize, write=FLeftSize, nodefault}; 
	__property int RightSize = {read=FRightSize, write=FRightSize, nodefault}; 
	__property int ColumnSpacing = {read=FColumnSpacing, write=FColumnSpacing, nodefault}; 
	__property Printers::TPrinterOrientation Orientation = {read=FOrientation, write=FOrientation, nodefault 
		}; 
	__property System::AnsiString PagePrefix = {read=FPagePrefix, write=FPagePrefix}; 
	__property int FixedWidth = {read=FFixedWidth, write=FFixedWidth, nodefault}; 
	__property int FixedHeight = {read=FFixedHeight, write=FFixedHeight, nodefault}; 
	__property bool UseFixedHeight = {read=FUseFixedHeight, write=FUseFixedHeight, nodefault}; 
	__property bool UseFixedWidth = {read=FUseFixedWidth, write=FUseFixedWidth, nodefault}; 
}; 
 
class DELPHICLASS tGridCombo; 
class PASCALIMPLEMENTATION tGridCombo : public Stdctrls::TComboBox  
{ 
	typedef Stdctrls::TComboBox inherited; 
	 
protected: 
	DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift); 
	DYNAMIC void __fastcall DoExit(void); 
public: 
	/* TCustomComboBox.Create */ __fastcall virtual tGridCombo(Classes::TComponent* AOwner) : Stdctrls:: 
		TComboBox(AOwner) { } 
	/* TCustomComboBox.Destroy */ __fastcall virtual ~tGridCombo(void) { } 
	 
public: 
	/* TWinControl.CreateParented */ __fastcall tGridCombo(HWND ParentWindow) : Stdctrls::TComboBox(ParentWindow 
		) { } 
	 
}; 
 
class DELPHICLASS tGridSpin; 
class PASCALIMPLEMENTATION tGridSpin : public Spin::TSpinEdit  
{ 
	typedef Spin::TSpinEdit inherited; 
	 
protected: 
	DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift); 
	DYNAMIC void __fastcall DoExit(void); 
public: 
	/* TSpinEdit.Create */ __fastcall virtual tGridSpin(Classes::TComponent* AOwner) : Spin::TSpinEdit( 
		AOwner) { } 
	/* TSpinEdit.Destroy */ __fastcall virtual ~tGridSpin(void) { } 
	 
public: 
	/* TWinControl.CreateParented */ __fastcall tGridSpin(HWND ParentWindow) : Spin::TSpinEdit(ParentWindow 
		) { } 
	 
}; 
 
class DELPHICLASS tGridCheckBox; 
class PASCALIMPLEMENTATION tGridCheckBox : public Stdctrls::TCheckBox  
{ 
	typedef Stdctrls::TCheckBox inherited; 
	 
private: 
	HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TWMMouse &Msg); 
	 
protected: 
	DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift); 
	DYNAMIC void __fastcall DoExit(void); 
public: 
	/* TCustomCheckBox.Create */ __fastcall virtual tGridCheckBox(Classes::TComponent* AOwner) : Stdctrls:: 
		TCheckBox(AOwner) { } 
	 
public: 
	/* TWinControl.CreateParented */ __fastcall tGridCheckBox(HWND ParentWindow) : Stdctrls::TCheckBox( 
		ParentWindow) { } 
	/* TWinControl.Destroy */ __fastcall virtual ~tGridCheckBox(void) { } 
	 
}; 
 
class DELPHICLASS tGridEditBtn; 
class PASCALIMPLEMENTATION tGridEditBtn : public Editbtn::TEditBtn  
{ 
	typedef Editbtn::TEditBtn inherited; 
	 
protected: 
	void __fastcall ExtClick(System::TObject* Sender); 
	DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift); 
	DYNAMIC void __fastcall DoExit(void); 
	 
public: 
	__fastcall tGridEditBtn(Classes::TComponent* aOwner); 
public: 
	/* TEditBtn.Destroy */ __fastcall virtual ~tGridEditBtn(void) { } 
	 
public: 
	/* TWinControl.CreateParented */ __fastcall tGridEditBtn(HWND ParentWindow) : Editbtn::TEditBtn(ParentWindow 
		) { } 
	 
}; 
 
class DELPHICLASS TAdvInplaceEdit; 
class PASCALIMPLEMENTATION TAdvInplaceEdit : public Grids::TInplaceEdit  
{ 
	typedef Grids::TInplaceEdit inherited; 
	 
private: 
	bool fvalign; 
	bool fwordwrap; 
	void __fastcall setvalign(bool value); 
	void __fastcall setwordwrap(bool value); 
	HIDESBASE MESSAGE void __fastcall WMSetFocus(Messages::TWMSetFocus &Msg); 
	 
protected: 
	virtual void __fastcall CreateParams(Controls::TCreateParams &Params); 
	DYNAMIC void __fastcall KeyPress(char &Key); 
	virtual void __fastcall UpdateContents(void); 
	 
__published: 
	__property bool valign = {read=fvalign, write=setvalign, nodefault}; 
	__property bool wordwrap = {read=fwordwrap, write=setwordwrap, nodefault}; 
public: 
	/* TInplaceEdit.Create */ __fastcall virtual TAdvInplaceEdit(Classes::TComponent* AOwner) : Grids:: 
		TInplaceEdit(AOwner) { } 
	 
public: 
	/* TWinControl.CreateParented */ __fastcall TAdvInplaceEdit(HWND ParentWindow) : Grids::TInplaceEdit( 
		ParentWindow) { } 
	/* TWinControl.Destroy */ __fastcall virtual ~TAdvInplaceEdit(void) { } 
	 
}; 
 
class DELPHICLASS TAdvStringGrid; 
class PASCALIMPLEMENTATION TAdvStringGrid : public Grids::TStringGrid  
{ 
	typedef Grids::TStringGrid inherited; 
	 
private: 
	int FSortColumn; 
	bool FSortShow; 
	TSortDirection FSortDirection; 
	bool FAutoSize; 
	bool FEnhTextSize; 
	bool FSizeWithForm; 
	bool FMultilinecells; 
	bool FSortFixedCols; 
	TGridColorEvent FOnGetCellColor; 
	TGridColorEvent FOnGetCellPrintColor; 
	TGridAlignEvent FOnGetAlignment; 
	TGridFormatEvent FOnGetFormat; 
	TGridHintEvent FOnGridHint; 
	Forms::TShowHintEvent FOnShowHint; 
	TAutoInsertRowEvent FOnAutoInsertRow; 
	TAutoInsertColEvent FOnAutoInsertCol; 
	TAutoDeleteRowEvent FOnAutoDeleteRow; 
	TClickSortEvent FOnClickSort; 
	TCanSortEvent FOnCanSort; 
	TCustomCompareEvent FCustomCompare; 
	TOnResizeEvent FOnResize; 
	TGridPrintPageEvent FOnPrintPage; 
	TClickCellEvent FOnClickCell; 
	TDblClickCellEvent FOnDblClickCell; 
	TCanEditCellEvent FOnCanEditCell; 
	TCellValidateEvent FOnCellValidate; 
	Graphics::TColor FHintColor; 
	bool FHintShowCells; 
	tagPOINT FLastHintPos; 
	TPrintsettings* FPrintSettings; 
	TNavigation* FNavigation; 
	TColumnSize* FColumnSize; 
	bool FScrollProportional; 
	TSizeWhileTyping* FSizeWhileTyping; 
	TMouseActions* FMouseActions; 
	bool FVisiblecol[257]; 
	int FNumHidden; 
	bool FURLShow; 
	bool FURLFull; 
	Graphics::TColor FURLColor; 
	Controls::TImageList* FGridImages; 
	TIntelliPan FIntelliPan; 
	int FFixedFooters; 
	int FFixedRightCols; 
	char FDelimiter; 
	bool FEnableGraphics; 
	bool FSaveFixedCells; 
	bool FWordWrap; 
	bool fModified; 
	System::AnsiString fOldCellText; 
	int fOldCol; 
	int fOldRow; 
	bool fOldModifiedValue; 
	int fOldCursor; 
	Grids::TGridRect fOldSelection; 
	bool fEntered; 
	int sortdir; 
	int sortrow; 
	tagPOINT searchcell; 
	bool showhintassigned; 
	bool resizeassigned; 
	Grids::TGridRect fprintrect; 
	TFindParams ffindparams; 
	System::AnsiString cellcache; 
	System::AnsiString searchcache; 
	int zoomfactor; 
	bool colchgflg; 
	int wheelmsg; 
	int wheelscrl; 
	bool wheelpan; 
	tagPOINT wheelpanpos; 
	int wheeltimer; 
	HICON prevcurs; 
	Windows::TRect prevrect; 
	TGetEditorTypeEvent FOnGetEditorType; 
	TEllipsClickEvent FOnEllipsClick; 
	tGridCombo* editcombo; 
	tGridSpin* editspin; 
	tGridCheckBox* editcheck; 
	tGridEditBtn* editbtn; 
	TEditorType editcontrol; 
	void __fastcall HideEditControl(int acol, int arow); 
	void __fastcall ShowEditControl(int acol, int arow); 
	void __fastcall RestoreCache(void); 
	virtual void __fastcall DrawCell(int ACol, int ARow, const Windows::TRect &ARect, Grids::TGridDrawState  
		AState); 
	void __fastcall SetAutoSize(bool aAutoSize); 
	void __fastcall SetSortShow(bool aSortShow); 
	void __fastcall SetSortColumn(int aSortColumn); 
	void __fastcall BuildPage(Graphics::TCanvas* canvas, bool preview); 
	int __fastcall Compare(int col, int arow1, int arow2); 
	int __fastcall CompareLine(int col, int arow1, int arow2); 
	bool __fastcall MatchCell(int col, int row); 
	HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TWMMouse &Msg); 
	HIDESBASE MESSAGE void __fastcall WMLButtonDblClk(Messages::TWMMouse &Message); 
	HIDESBASE MESSAGE void __fastcall WMKeyDown(Messages::TWMKey &Msg); 
	void __fastcall ShowHintProc(System::AnsiString &HintStr, bool &CanShow, Forms::THintInfo &HintInfo 
		); 
	void __fastcall Resize(System::TObject* Sender); 
	void __fastcall SetInts(int ACol, int ARow, const int Value); 
	int __fastcall GetInts(int ACol, int ARow); 
	void __fastcall SetDates(int ACol, int ARow, const System::TDateTime Value); 
	System::TDateTime __fastcall GetDates(int ACol, int ARow); 
	void __fastcall PasteFunc(int arow, int acol); 
	void __fastcall SetScrollPages(void); 
	int __fastcall remapcol(int acol); 
	void __fastcall setvisiblecol(int i, bool avalue); 
	bool __fastcall getvisiblecol(int i); 
	System::AnsiString __fastcall lftofile(System::AnsiString s); 
	System::AnsiString __fastcall filetolf(System::AnsiString s); 
	int __fastcall MaxLinesInGrid(void); 
	int __fastcall MaxLinesInRow(int arow); 
	int __fastcall MaxCharsInCol(int acol); 
	int __fastcall GetCellTextSize(int col, int row); 
	void __fastcall DrawIntelliFocusPoint(void); 
	void __fastcall EraseIntelliFocusPoint(void); 
	void __fastcall SetImages(Controls::TImageList* value); 
	void __fastcall SetFixedFooters(int value); 
	void __fastcall SetFixedRightCols(int value); 
	void __fastcall SetWordWrap(bool value); 
	void __fastcall InputFromCSV(bool insert, System::AnsiString Filename); 
	 
public: 
	int compares; 
	int swaps; 
	int prevsizex; 
	int prevsizey; 
	bool editmode; 
	void __fastcall ClearComboString(void); 
	void __fastcall AddComboString(System::AnsiString s); 
	__fastcall virtual TAdvStringGrid(Classes::TComponent* aOwner); 
	__fastcall virtual ~TAdvStringGrid(void); 
	virtual void __fastcall ValidateCell(void); 
	void __fastcall RemoveRows(int RowIndex, int RCount); 
	void __fastcall InsertRows(int RowIndex, int RCount); 
	void __fastcall RemoveCols(int ColIndex, int CCount); 
	void __fastcall InsertCols(int ColIndex, int CCount); 
	void __fastcall SwapColumns(int aCol1, int aCol2); 
	void __fastcall HideColumn(int colindex); 
	void __fastcall UnhideColumn(int colindex); 
	bool __fastcall IsHiddenColumn(int colindex); 
	void __fastcall HideSelection(void); 
	void __fastcall UnHideSelection(void); 
	HIDESBASE void __fastcall MoveRow(int FromIndex, int ToIndex); 
	HIDESBASE void __fastcall MoveColumn(int FromIndex, int ToIndex); 
	void __fastcall SwapRows(int aRow1, int aRow2); 
	void __fastcall SortSwapRows(int aRow1, int aRow2); 
	void __fastcall ClearRect(int aCol1, int aRow1, int aCol2, int aRow2); 
	void __fastcall Clear(void); 
	void __fastcall ClearRows(int RowIndex, int RCount); 
	void __fastcall ClearCols(int ColIndex, int CCount); 
	void __fastcall ClearNormalCells(void); 
	bool __fastcall isCell(System::AnsiString SubStr, int &ACol, int &ARow); 
	void __fastcall SaveToFile(System::AnsiString FileName); 
	void __fastcall SaveToHTML(System::AnsiString FileName); 
	void __fastcall SaveToASCII(System::AnsiString FileName); 
	void __fastcall SaveToCSV(System::AnsiString fileName); 
	void __fastcall AppendToCSV(System::AnsiString fileName); 
	void __fastcall SaveToStream(Classes::TStream* stream); 
	void __fastcall LoadFromFile(System::AnsiString FileName); 
	void __fastcall LoadFromCSV(System::AnsiString FileName); 
	void __fastcall LoadFromStream(Classes::TStream* stream); 
	void __fastcall InsertFromCSV(System::AnsiString FileName); 
	void __fastcall CutToClipboard(void); 
	void __fastcall CopyToClipBoard(void); 
	void __fastcall CopySelectionToClipboard(void); 
	void __fastcall PasteFromClipboard(void); 
	void __fastcall PasteSelectionFromClipboard(void); 
	void __fastcall Zoom(int x); 
	void __fastcall SaveToXLS(System::AnsiString Filename); 
	void __fastcall LoadFromXLS(System::AnsiString Filename); 
	double __fastcall CellToReal(int ACol, int ARow); 
	void __fastcall AutoSizeColumns(const bool DoFixedCols, const int Padding); 
	void __fastcall AutoSizeCol(const int ACol); 
	void __fastcall StretchRightColumn(void); 
	void __fastcall AutoNumberCol(const int ACol); 
	void __fastcall BSort(void); 
	void __fastcall QSort(void); 
	void __fastcall Print(void); 
	void __fastcall PrintRect(const Grids::TGridRect &gridrect); 
	void __fastcall PrintPreview(Graphics::TCanvas* canvas, const Windows::TRect &displayrect); 
	void __fastcall PrintPreviewRect(Graphics::TCanvas* canvas, const Windows::TRect &displayrect, const  
		Grids::TGridRect &gridrect); 
	void __fastcall SortByColumn(int col); 
	void __fastcall QuickSort(int col, int left, int right); 
	bool __fastcall SortLine(int col, int arow1, int arow2); 
	int __fastcall Search(System::AnsiString s); 
	tagPOINT __fastcall FindFirst(System::AnsiString s, TFindParams findparams); 
	tagPOINT __fastcall FindNext(void); 
	int __fastcall MapFontHeight(int pointsize); 
	int __fastcall MapFontSize(int height); 
	void __fastcall AddBitmap(int Acol, int Arow, Graphics::TBitmap* abmp, bool transparent, TCellHAlign  
		hal, TCellVAlign val); 
	void __fastcall RemoveBitmap(int Acol, int Arow); 
	void __fastcall AddImageIdx(int Acol, int Arow, int Aidx, TCellHAlign hal, TCellVAlign val); 
	void __fastcall RemoveImageIdx(int Acol, int Arow); 
	bool __fastcall GetImageIdx(int Acol, int Arow, int &idx); 
	void __fastcall AddIcon(int Acol, int Arow, Graphics::TIcon* aicon, TCellHAlign hal, TCellVAlign val 
		); 
	void __fastcall RemoveIcon(int Acol, int Arow); 
	void __fastcall AddCheckBox(int Acol, int Arow, bool state); 
	void __fastcall RemoveCheckBox(int Acol, int Arow); 
	bool __fastcall HasCheckBox(int Acol, int Arow); 
	bool __fastcall GetCheckBoxState(int Acol, int Arow, bool &state); 
	bool __fastcall SetCheckBoxState(int Acol, int Arow, bool state); 
	bool __fastcall ToggleCheckBox(int Acol, int Arow); 
	double __fastcall ColumnSum(int acol, int fromrow, int torow); 
	__property int Ints[int ACol][int ARow] = {read=GetInts, write=SetInts}; 
	__property System::TDateTime Dates[int ACol][int ARow] = {read=GetDates, write=SetDates}; 
	__property char Delimiter = {read=FDelimiter, write=FDelimiter, nodefault}; 
	__property bool SaveFixedCells = {read=FSaveFixedCells, write=FSaveFixedCells, nodefault}; 
	 
protected: 
	virtual Grids::TInplaceEdit* __fastcall CreateEditor(void); 
	virtual bool __fastcall CanEditShow(void); 
	DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y); 
	DYNAMIC void __fastcall KeyPress(char &Key); 
	virtual void __fastcall DestroyWnd(void); 
	virtual void __fastcall CreateWnd(void); 
	virtual void __fastcall Loaded(void); 
	virtual bool __fastcall SelectCell(int ACol, int ARow); 
	virtual void __fastcall WndProc(Messages::TMessage &Message); 
	DYNAMIC void __fastcall SizeChanged(int OldColCount, int OldRowCount); 
	DYNAMIC void __fastcall Click(void); 
	DYNAMIC void __fastcall DoEnter(void); 
	DYNAMIC void __fastcall DoExit(void); 
	virtual void __fastcall InitValidate(void); 
	virtual void __fastcall Paint(void); 
	DYNAMIC System::AnsiString __fastcall GetEditText(int ACol, int ARow); 
	DYNAMIC void __fastcall SetEditText(int ACol, int ARow, const System::AnsiString Value); 
	DYNAMIC void __fastcall ColWidthsChanged(void); 
	DYNAMIC void __fastcall RowHeightsChanged(void); 
	DYNAMIC void __fastcall TopLeftChanged(void); 
	virtual void __fastcall EllipsClick(void); 
	 
__published: 
	__property bool AutoSize = {read=FAutoSize, write=SetAutoSize, nodefault}; 
	__property bool EnhTextSize = {read=FEnhTextSize, write=FEnhTextSize, nodefault}; 
	__property bool SortFixedCols = {read=FSortFixedCols, write=FSortFixedCols, nodefault}; 
	__property bool SizeWithForm = {read=FSizeWithForm, write=FSizeWithForm, nodefault}; 
	__property bool Multilinecells = {read=FMultilinecells, write=FMultilinecells, nodefault}; 
	__property TGridColorEvent OnGetCellColor = {read=FOnGetCellColor, write=FOnGetCellColor}; 
	__property TGridColorEvent OnGetCellPrintColor = {read=FOnGetCellPrintColor, write=FOnGetCellPrintColor 
		}; 
	__property TGridAlignEvent OnGetAlignment = {read=FOnGetAlignment, write=FOnGetAlignment}; 
	__property TGridFormatEvent OnGetFormat = {read=FOnGetFormat, write=FOnGetFormat}; 
	__property TGridHintEvent OnGridHint = {read=FOnGridHint, write=FOnGridHint}; 
	__property TGridPrintPageEvent OnPrintPage = {read=FOnPrintPage, write=FOnPrintPage}; 
	__property TAutoInsertRowEvent OnAutoInsertRow = {read=FOnAutoInsertRow, write=FOnAutoInsertRow}; 
	__property TAutoInsertColEvent OnAutoInsertCol = {read=FOnAutoInsertCol, write=FOnAutoInsertCol}; 
	__property TAutoDeleteRowEvent OnAutoDeleteRow = {read=FOnAutoDeleteRow, write=FOnAutoDeleteRow}; 
	__property TClickSortEvent OnClickSort = {read=FOnClickSort, write=FOnClickSort}; 
	__property TCanSortEvent OnCanSort = {read=FOnCanSort, write=FOnCanSort}; 
	__property TCustomCompareEvent OnCustomCompare = {read=FCustomCompare, write=FCustomCompare}; 
	__property TClickCellEvent OnClickCell = {read=FOnClickCell, write=FOnClickCell}; 
	__property TDblClickCellEvent OnDblClickCell = {read=FOnDblClickCell, write=FOnDblClickCell}; 
	__property TCanEditCellEvent OnCanEditCell = {read=FOnCanEditCell, write=FOnCanEditCell}; 
	__property TCellValidateEvent OnCellValidate = {read=FOnCellValidate, write=FOnCellValidate}; 
	__property TSortDirection SortDirection = {read=FSortDirection, write=FSortDirection, nodefault}; 
	__property TGetEditorTypeEvent OnGetEditorType = {read=FOnGetEditorType, write=FOnGetEditorType}; 
	__property TEllipsClickEvent OnEllipsClick = {read=FOnEllipsClick, write=FOnEllipsClick}; 
	__property bool SortShow = {read=FSortShow, write=SetSortShow, nodefault}; 
	__property bool EnableGraphics = {read=FEnableGraphics, write=FEnableGraphics, nodefault}; 
	__property int SortColumn = {read=FSortColumn, write=SetSortColumn, nodefault}; 
	__property bool ScrollProportional = {read=FScrollProportional, write=FScrollProportional, nodefault 
		}; 
	__property Graphics::TColor HintColor = {read=FHintColor, write=FHintColor, nodefault}; 
	__property TPrintsettings* PrintSettings = {read=FPrintSettings, write=FPrintSettings}; 
	__property TNavigation* Navigation = {read=FNavigation, write=FNavigation}; 
	__property TColumnSize* ColumnSize = {read=FColumnSize, write=FColumnSize}; 
	__property TSizeWhileTyping* SizeWhileTyping = {read=FSizeWhileTyping, write=FSizeWhileTyping}; 
	__property TMouseActions* MouseActions = {read=FMouseActions, write=FMouseActions}; 
	__property Controls::TImageList* GridImages = {read=FGridImages, write=SetImages}; 
	__property TIntelliPan IntelliPan = {read=FIntelliPan, write=FIntelliPan, nodefault}; 
	__property Graphics::TColor URLColor = {read=FURLColor, write=FURLColor, nodefault}; 
	__property bool URLShow = {read=FURLShow, write=FURLShow, nodefault}; 
	__property bool URLFull = {read=FURLFull, write=FURLFull, nodefault}; 
	__property int FixedFooters = {read=FFixedFooters, write=SetFixedFooters, nodefault}; 
	__property int FixedRightCols = {read=FFixedRightCols, write=SetFixedRightCols, nodefault}; 
	__property bool WordWrap = {read=FWordWrap, write=SetWordWrap, nodefault}; 
public: 
	/* TWinControl.CreateParented */ __fastcall TAdvStringGrid(HWND ParentWindow) : Grids::TStringGrid( 
		ParentWindow) { } 
	 
}; 
 
//-- var, const, procedure --------------------------------------------------- 
#define maxcolumns (Word)(256) 
#define crURLcursor (Word)(8009) 
#define crHorzArr (Word)(8010) 
#define crVertArr (Word)(8011) 
#define crAsgCross (Word)(8012) 
#define LINEFEED (char)(13) 
#define MSH_MOUSEWHEEL "MSWHEEL_ROLLMSG" 
#define MOUSEZ_CLASSNAME "MouseZ" 
#define MOUSEZ_TITLE "Magellan MSWHEEL" 
#define MSH_WHEELSUPPORT "MSH_WHEELSUPPORT_MSG" 
#define MSH_SCROLL_LINES "MSH_SCROLL_LINES_MSG" 
#define SPI_SETWHEELSCROLLLINES (Byte)(105) 
#define MSH_WHEELMODULE_CLASS "MouseZ" 
#define MSH_WHEELMODULE_TITLE "Magellan MSWHEEL" 
extern PACKAGE void __fastcall Register(void); 
 
}	/* namespace Advgrid */ 
#if !defined(NO_IMPLICIT_NAMESPACE_USE) 
using namespace Advgrid; 
#endif 
//-- end unit ---------------------------------------------------------------- 
#endif	// AdvGrid