home *** CD-ROM | disk | FTP | other *** search
- //---------------------------------------------------------------------------
- //Borland C++Builder
- //Copyright (c) 1987, 1998 Borland International Inc. All Rights Reserved.
- //---------------------------------------------------------------------------
- //---------------------------------------------------------------------------
- #ifndef NewBrowH
- #define NewBrowH
- //---------------------------------------------------------------------------
- #include <Classes.hpp>
- #include <Controls.hpp>
- #include <StdCtrls.hpp>
- #include <Forms.hpp>
- #include <ComCtrls.hpp>
- #include <Db.hpp>
- #include <DBGrids.hpp>
- #include <DBTables.hpp>
- #include <Dialogs.hpp>
- #include <ExtCtrls.hpp>
- #include <Grids.hpp>
- #include <Menus.hpp>
- #include "Clonetab.h"
- #include <Buttons.hpp>
- #include <ToolWin.hpp>
- #include <DBCtrls.hpp>
- //---------------------------------------------------------------------------
- class TMainForm : public TForm
- {
- __published: // IDE-managed Components
- TPanel *Panel1;
- TPageControl *MainPgCtl;
- TTabSheet *ClassTab;
- TTabSheet *MemberTab;
- TTabSheet *ProtoTab;
- TTabSheet *TableTab;
- TTabSheet *HeaderTab;
- TTabSheet *SourceTab;
- TRichEdit *DeclareRE;
- TDBGrid *Grid;
- TRichEdit *pasFileRE;
- TTable *ParseVclTable;
- TTable *VCLTable;
- TStringField *VCLTableClassName;
- TStringField *VCLTableMember;
- TStringField *VCLTableMemberName;
- TAutoIncField *VCLTableRecNum;
- TStringField *VCLTableScope;
- TStringField *VCLTableReturnType;
- TStringField *VCLTableHeader;
- TSmallintField *VCLTablePs;
- TStringField *VCLTablePType1;
- TStringField *VCLTablePObject1;
- TStringField *VCLTablePType2;
- TStringField *VCLTablePObject2;
- TStringField *VCLTablePType3;
- TStringField *VCLTablePObject3;
- TStringField *VCLTablePType4;
- TStringField *VCLTablePObject4;
- TStringField *VCLTablePType5;
- TStringField *VCLTablePObject5;
- TStringField *VCLTablePType6;
- TStringField *VCLTablePObject6;
- TStringField *VCLTablePType7;
- TStringField *VCLTablePObject7;
- TStringField *VCLTablePType8;
- TStringField *VCLTablePObject8;
- TStringField *VCLTableSecondClass;
- TStringField *VCLTableMisc;
- TTable *DestTable;
- TStringField *DestTableClassName;
- TStringField *DestTableMember;
- TStringField *DestTableMemberName;
- TAutoIncField *DestTableRecNum;
- TStringField *DestTableScope;
- TStringField *DestTableReturnType;
- TStringField *DestTableHeader;
- TSmallintField *DestTablePs;
- TStringField *DestTablePType1;
- TStringField *DestTablePObject1;
- TStringField *DestTablePType2;
- TStringField *DestTablePObject2;
- TStringField *DestTablePType3;
- TStringField *DestTablePObject3;
- TStringField *DestTablePType4;
- TStringField *DestTablePObject4;
- TStringField *DestTablePType5;
- TStringField *DestTablePObject5;
- TStringField *DestTablePType6;
- TStringField *DestTablePObject6;
- TStringField *DestTablePType7;
- TStringField *DestTablePObject7;
- TStringField *DestTablePType8;
- TStringField *DestTablePObject8;
- TStringField *DestTableSecondClass;
- TStringField *DestTableMisc;
- TTable *ClassListTab;
- TStringField *ClassListTabClassName;
- TPopupMenu *PopupMenu1;
- TMenuItem *ViewParent;
- TMenuItem *N4;
- TMenuItem *ShowRecord;
- TMenuItem *N3;
- TMenuItem *ClosePage;
- TMenuItem *CloseAll;
- TMenuItem *N2;
- TMenuItem *PrintDec;
- TMenuItem *PrintDef;
- TMenuItem *PrintHead;
- TMenuItem *PrintSrce;
- TDataSource *MainDS;
- TQuery *DestTabQry;
- TStringField *DestTabQryClassName;
- TBatchMove *BatchMove1;
- TPrintDialog *PrintDialog1;
- TImageList *ImageList1;
- TOpenDialog *FileOpenDlg;
- TFontDialog *FontDialog1;
- TColorDialog *ColorDialog1;
- TMainMenu *MainMenu2;
- TMenuItem *MenuItem1;
- TMenuItem *Openhppcpp;
- TMenuItem *N6;
- TMenuItem *RebuildTab;
- TMenuItem *ParseHeader;
- TMenuItem *LoadVCLTable;
- TMenuItem *N5;
- TMenuItem *Exit;
- TMenuItem *Search1;
- TMenuItem *MemberName1;
- TMenuItem *ClassName1;
- TMenuItem *FontColors1;
- TMenuItem *Declaration;
- TMenuItem *Definition;
- TMenuItem *MemberList;
- TMenuItem *QuickClass;
- TMenuItem *Grid1;
- TMenuItem *HeaderPage;
- TMenuItem *SourcePage;
- TMenuItem *Background1;
- TMenuItem *Declaration2;
- TMenuItem *Definition2;
- TMenuItem *MemberList2;
- TMenuItem *QuickClass2;
- TMenuItem *Grid2;
- TMenuItem *HeaderPage2;
- TMenuItem *SourcePage2;
- TMenuItem *Help1;
- TMenuItem *About1;
- TDatabase *ClassOrgDB;
- TStatusBar *StatusBar;
- TListBox *ClassLB;
- TPageControl *MembPgCtl;
- TListView *MembersLV;
- TRichEdit *DefineRE;
- TPanel *Panel2;
- TPanel *Panel3;
- TRichEdit *hppFileRE;
- TMenuItem *N1;
- TMenuItem *Find1;
- TMenuItem *FindNext1;
- TFindDialog *FindDlg;
- TToolBar *ToolBar1;
- TImageList *TBGImages;
- TImageList *TBHImages;
- TDBNavigator *DBNavigator1;
- TToolButton *PublicBtn;
- TToolButton *PublishBtn;
- TToolButton *ProtectBtn;
- TToolButton *PrivateBtn;
- void __fastcall SelectATab(TObject *Sender);
- void __fastcall MembersLVClick(TObject *Sender);
- void __fastcall FormCreate(TObject *Sender);
- void __fastcall RebuildVCLTabMi(TObject *Sender);
- void __fastcall FormShow(TObject *Sender);
- void __fastcall ClassLBClick(TObject *Sender);
- void __fastcall MemberName1Click(TObject *Sender);
- void __fastcall ViewHeaderClick(TObject *Sender);
- void __fastcall ShowRecordClick(TObject *Sender);
- void __fastcall About1Click(TObject *Sender);
- void __fastcall ClassName1Click(TObject *Sender);
- void __fastcall ViewSourceClick(TObject *Sender);
- void __fastcall ParseHeaderClick(TObject *Sender);
- void __fastcall ClosePageClick(TObject *Sender);
- void __fastcall CloseAllClick(TObject *Sender);
- void __fastcall FormActivate(TObject *Sender);
- void __fastcall ChangeFonts(TObject *Sender);
- void __fastcall ChangeBkgnds(TObject *Sender);
- void __fastcall ViewParentClick(TObject *Sender);
- void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
- void __fastcall ExitClick(TObject *Sender);
- void __fastcall PublicLabClick(TObject *Sender);
- void __fastcall MembersLVKeyDown(TObject *Sender,
- WORD &Key, TShiftState Shift);
- void __fastcall LoadVCLTableClick(TObject *Sender);
- void __fastcall ViewMultipleClick(TObject *Sender);
- void __fastcall ViewExpandedClick(TObject *Sender);
- void __fastcall OpenhppcppClick(TObject *Sender);
- void __fastcall MainPgCtlChange(TObject *Sender);
- void __fastcall ShowHint(TObject *Sender);
- void __fastcall Print(TObject *Sender);
- void __fastcall FindDlgFind(TObject *Sender);
- void __fastcall Find1Click(TObject *Sender);
-
-
- void __fastcall ClassLBKeyDown(TObject *Sender, WORD &Key,
- TShiftState Shift);
- private: // User declarations
- bool InitializedTable;
- bool DoesFileExist;
- bool MemberSearch;
- bool LocateSuccess;
- bool ParsingHeaders;
- bool DeleteTabs;
- bool IsOperator;
- String SecondClass;
- String LocalVclSource;
- String LocalTablesDir;
- String LocalVclHeaders;
- String UserName;
- String PasFileName;
- String CurrentHeader;
- String CurrentSource;
- String MemberNameSel;
- String ClassLBSel;
- String CurrentTab;
- int DefLength;
- long EndLineNum;
- long PosFound;
- TCloneTable *RawVCLTable;
- TLocateOptions MySearchOptions;
- void WriteRegKeys();
- void ProcessSelectedClass();
- void LoadSourcePage();
- void GetRegInfo();
- void LoadPasCode(const String MemberType,
- const String LBSelectMember);
- void LoadDeclCode(const String LBString);
- int FindImageIndex(const String Line,
- const String DefinedLineNumber);
- bool IsItABadLine(const String Line,
- const int DefinedLineNumber);
- void ExtractClassMembers(const int ClassPosition,
- const String ClassName);
- void HppToDestTable();
- void LoadClasses();
- void StringToTablePos(const String SelectedText,
- const String ClassName);
- void ConvertTableToTabs();
- void TableToListStrings(const String ClassName);
- void MemberToTable(const String MemberDeclaration,
- const String MyScope,
- const String CppClassName,
- const int MemberLineNumber);
- void LoadCppDef(const String ParamArray[8],
- const int ParamQty);
- void ClearTabs();
- public: // User declarations
- __fastcall TMainForm(TComponent* Owner);
- void virtual __fastcall RestrictSize(TMessage& Msg);
- BEGIN_MESSAGE_MAP
- MESSAGE_HANDLER(WM_GETMINMAXINFO,TMessage,RestrictSize)
- // Add any number of additional message handlers here.
- END_MESSAGE_MAP(TForm)
- };
-
-
- // extract class
- class TExtractObjects
- {
- public:
- TExtractObjects();
- void ExtractNameAndType(int StartPosition,
- int EndPosition,
- String LineString,
- String Phase);
- String ObjectName;
- String ObjectType;
- int LastCommaPosition;
- };
-
- // search class
- class TSearchEngine
- {
- public:
- TSearchEngine();
- void SearchForString(String Word,
- int Occurance, int StartPosition, String Page);
- long PosFound;
- long LineNumFound;
- long LinePosOne;
- long NewSearchPos;
- };
-
- //---------------------------------------------------------------------------
- extern PACKAGE TMainForm *MainForm;
- //---------------------------------------------------------------------------
- #endif
-