/* ** Name: Yeti3D PRO ** Desc: Portable GameBoy Advanced 3D Engine ** Auth: Derek J. Evans ** ** Copyright (C) 2003-2004 Derek J. Evans. All Rights Reserved. ** ** YY YY EEEEEE TTTTTT IIIIII 33333 DDDDD ** YY YY EE TT II 33 DD DD ** YYYY EEEE TT II 333 DD DD ** YY EE TT II 33 DD DD ** YY EEEEEE TT IIIIII 33333 DDDDD */ #ifndef UnitMainH #define UnitMainH //--------------------------------------------------------------------------- #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "BCBTools.h" //--------------------------------------------------------------------------- class TFormMain : public TForm { __published: // IDE-managed Components TStatusBar *StatusBar; TToolBar *ToolBar; TPanel *PanelClient; TScrollBox *ScrollBox; TMainMenu *MainMenu; TMenuItem *MIFile; TMenuItem *MINew; TMenuItem *MIOpen; TMenuItem *N1; TMenuItem *MISave; TMenuItem *MISaveAs; TMenuItem *N2; TMenuItem *MIExit; TMenuItem *MIEdit; TMenuItem *MIHelp; TToolButton *TBNew; TToolButton *TBOpen; TToolButton *TBSave; TToolButton *ToolButton4; TToolButton *TBCut; TToolButton *TBCopy; TToolButton *TBPaste; TToolButton *TBDelete; TToolButton *ToolButton9; TToolButton *TBArrow; TToolButton *TBDraw; TPanel *PanelScene; TPaintBox *PaintBox; TMenuItem *MIAbout; TImageList *ImageList; TSaveDialog *ExportDialog; TMenuItem *N3; TMenuItem *ExportCFile; TSaveDialog *SaveDialog; TOpenDialog *OpenDialog; TPanel *PanelCamera; TMenuItem *MIUndo; TMenuItem *MIRedo; TMenuItem *N4; TMenuItem *MICut; TMenuItem *MICopy; TMenuItem *MIPaste; TMenuItem *MIDelete; TMenuItem *N5; TMenuItem *MISelectAll; TSplitter *Splitter; TImageList *ILTextures; TToolButton *ToolButton1; TToolButton *ToolButton2; TToolButton *ToolButton3; TPaintBox *PBMouse; TMenuItem *N6; TMenuItem *MIImportTextures; TOpenPictureDialog *OpenPictureDialog; TTimer *Timer; TPageControl *PageControl; TTabSheet *TabSheet1; TListView *ListView; void __fastcall FormCreate(TObject *Sender); void __fastcall FormPaint(TObject *Sender); void __fastcall PaintBoxPaint(TObject *Sender); void __fastcall ScrollBoxResize(TObject *Sender); void __fastcall MIExitClick(TObject *Sender); void __fastcall PaintBoxMouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall PaintBoxMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y); void __fastcall PaintBoxMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y); void __fastcall FormKeyDown(TObject *Sender, WORD &Key, TShiftState Shift); void __fastcall FormKeyUp(TObject *Sender, WORD &Key, TShiftState Shift); void __fastcall ExportCFileClick(TObject *Sender); void __fastcall MISaveAsClick(TObject *Sender); void __fastcall MIOpenClick(TObject *Sender); void __fastcall MINewClick(TObject *Sender); void __fastcall TBNewClick(TObject *Sender); void __fastcall TBOpenClick(TObject *Sender); void __fastcall TBSaveClick(TObject *Sender); void __fastcall MISaveClick(TObject *Sender); void __fastcall MIAboutClick(TObject *Sender); void __fastcall FormCloseQuery(TObject *Sender, bool &CanClose); void __fastcall ToolButton2Click(TObject *Sender); void __fastcall ToolButton3Click(TObject *Sender); void __fastcall ListViewChange(TObject *Sender, TListItem *Item, TItemChange Change); void __fastcall MISelectAllClick(TObject *Sender); void __fastcall ListViewMouseMove(TObject *Sender, TShiftState Shift, int X, int Y); void __fastcall MICopyClick(TObject *Sender); void __fastcall MIDeleteClick(TObject *Sender); void __fastcall MICutClick(TObject *Sender); void __fastcall MIImportTexturesClick(TObject *Sender); void __fastcall TimerTimer(TObject *Sender); private: // User declarations public: // User declarations __fastcall TFormMain(TComponent* Owner); bool tc; bool Modified; DynamicArray > MapClip; Graphics::TBitmap* TmpBitmap; String FileName; rom_map_t rommap; yeti_t* yeti; bool LButton; bool RButton; int Zoom; TRect Selection; TRect SelectionStatus; void UpdateTextureList(); void SetZoom(int AZoom); TRect CellRect(int x, int y); void CellDraw(int x, int y); void SetFileName(String AFileName); void SaveToFile(String AFileName); void LoadFromFile(String AFileName); void ExportToFile(String AFileName); bool CanClose(); }; //--------------------------------------------------------------------------- extern PACKAGE TFormMain *FormMain; //--------------------------------------------------------------------------- #endif