From e95a2bec41e6ef67f132f316e3d73dc5f3d93305 Mon Sep 17 00:00:00 2001 From: Daveo Date: Sat, 10 Feb 2001 20:21:20 +0000 Subject: [PATCH] --- Utils/MapEdit/Core.h | 5 +++- Utils/MapEdit/MapEdit.clw | 24 +++++++-------- Utils/MapEdit/MapEditDoc.cpp | 19 ++++++++---- Utils/MapEdit/MapEditDoc.h | 2 ++ Utils/MapEdit/MapEditView.cpp | 1 + Utils/MapEdit/TexCache.cpp | 3 +- Utils/MapEdit/TileSet.cpp | 28 ++++-------------- Utils/MapEdit/TileSet.h | 55 ++++++++++++++++++----------------- 8 files changed, 70 insertions(+), 67 deletions(-) diff --git a/Utils/MapEdit/Core.h b/Utils/MapEdit/Core.h index 2611c3bac..e0492abdc 100644 --- a/Utils/MapEdit/Core.h +++ b/Utils/MapEdit/Core.h @@ -39,7 +39,9 @@ public: void RenderTileView(CMapEditView *View); void Export(char *Filename); - +// View Stuff + void SetView(CMapEditView *View) {CurrentView=View;} + CMapEditView *GetView() {return(CurrentView);} // Control void SetMode(int NewMode); void LButtonControl(CMapEditView *View,UINT nFlags, CPoint &point,BOOL DownFlag); @@ -119,6 +121,7 @@ public: GString GetCurrentPath(); private: + CMapEditView *CurrentView; CPoint CurrentMousePos,LastMousePos; CPoint CursorPos,LastCursorPos; Vector3 MapCam,TileCam; diff --git a/Utils/MapEdit/MapEdit.clw b/Utils/MapEdit/MapEdit.clw index c9711b0a4..005e92bd7 100644 --- a/Utils/MapEdit/MapEdit.clw +++ b/Utils/MapEdit/MapEdit.clw @@ -2,7 +2,7 @@ [General Info] Version=1 -LastClass=CMapEditView +LastClass=CMapEditDoc LastTemplate=CDialog NewFileInclude1=#include "stdafx.h" NewFileInclude2=#include "mapedit.h" @@ -20,26 +20,26 @@ Class7=CMapEditView ResourceCount=14 Resource1=IDD_NEW_LAYER Resource2=IDR_MAPEDITYPE (English (U.S.)) -Resource3=IDD_ADDLAYER +Resource3=IDD_MAPSIZE Resource4=IDD_DIALOGBAR (English (U.S.)) -Resource5=IDR_MAINFRAME (English (U.S.)) +Resource5=IDD_LAYERTILE_TOOLBAR Class8=CMultiBar -Resource6=IDD_LAYER_LIST_DIALOG -Resource7=IDD_MULTIBAR (English (U.S.)) +Resource6=IDD_ABOUTBOX (English (U.S.)) +Resource7=IDR_MAINFRAME (English (U.S.)) Class9=CLayerList Class10=CMapSizeDlg -Resource8=IDD_NEWMAP +Resource8=IDD_LAYER_LIST_DIALOG Class11=CGfxToolBar Class12=CLayerTileGUI -Resource9=IDD_LAYERTILE_TOOLBAR -Resource10=IDR_TOOLBAR (English (U.S.)) +Resource9=IDD_ADDLAYER +Resource10=IDD_LAYERTILE_GUI Class13=CNewMapGUI Class14=CProgressDlg -Resource11=IDD_LAYERTILE_GUI +Resource11=IDD_NEWMAP Class15=CAddLayerDlg -Resource12=IDD_MAPSIZE +Resource12=IDD_MULTIBAR (English (U.S.)) Class16=CLayerTileToolbar -Resource13=IDD_ABOUTBOX (English (U.S.)) +Resource13=IDR_TOOLBAR (English (U.S.)) Class17=CLayerShadeGUI Resource14=IDD_LAYERSHADE_GUI @@ -93,7 +93,7 @@ Type=0 BaseClass=CGLEnabledView HeaderFile=MapEditView.h ImplementationFile=MapEditView.cpp -LastObject=ID_TOGGLE_GRID +LastObject=CMapEditView Filter=C VirtualFilter=VWC diff --git a/Utils/MapEdit/MapEditDoc.cpp b/Utils/MapEdit/MapEditDoc.cpp index 31453473b..1f2395e96 100644 --- a/Utils/MapEdit/MapEditDoc.cpp +++ b/Utils/MapEdit/MapEditDoc.cpp @@ -88,6 +88,18 @@ void CMapEditDoc::Dump(CDumpContext& dc) const /*********************************************************************************/ /*********************************************************************************/ /*********************************************************************************/ +/*********************************************************************************/ +void CMapEditDoc::SetView(CMapEditView *View) +{ + Core.SetView(View); +} + +/*********************************************************************************/ +CMapEditView *CMapEditDoc::GetView() +{ + return(Core.GetView()); +} + /*********************************************************************************/ void CMapEditDoc::UpdateView(CMapEditView *View) { @@ -98,18 +110,15 @@ CView *V=(CView*)View; /*********************************************************************************/ void CMapEditDoc::Render(CMapEditView *View) { - - if (View) +// if (View) Core.Render(View); } /*********************************************************************************/ void CMapEditDoc::UpdateAll(CMapEditView *View) { - - if (View) +// if (View) Core.UpdateAll(); - } /*********************************************************************************/ diff --git a/Utils/MapEdit/MapEditDoc.h b/Utils/MapEdit/MapEditDoc.h index 94f0e40d0..d9caa23aa 100644 --- a/Utils/MapEdit/MapEditDoc.h +++ b/Utils/MapEdit/MapEditDoc.h @@ -19,6 +19,8 @@ protected: // create from serialization only // Attributes public: + void SetView(CMapEditView *View); + CMapEditView *GetView(); void UpdateView(CMapEditView *View); void Render(CMapEditView *View); void UpdateAll(CMapEditView *View); diff --git a/Utils/MapEdit/MapEditView.cpp b/Utils/MapEdit/MapEditView.cpp index 1c54ecdfd..1d5e4cf68 100644 --- a/Utils/MapEdit/MapEditView.cpp +++ b/Utils/MapEdit/MapEditView.cpp @@ -168,6 +168,7 @@ void CMapEditView::OnActivateView(BOOL bActivate, CView* pActivateView, CView* p { CMapEditDoc *CurDoc=GetDocument(); theApp.SetCurrent(CurDoc); + CurDoc->SetView(this); CurDoc->UpdateAll(this); } } diff --git a/Utils/MapEdit/TexCache.cpp b/Utils/MapEdit/TexCache.cpp index a16743469..3bebb6326 100644 --- a/Utils/MapEdit/TexCache.cpp +++ b/Utils/MapEdit/TexCache.cpp @@ -42,7 +42,7 @@ GFName FName=Filename; int Idx=GetTexIdx(NewTex); // Is already loaded? if (Idx!=-1) return(Idx); -// TRACE1("Loading Texture %s\n",NewTex.Filename); + TRACE1("Loading Texture %s\n",NewTex.Filename); if (!LoadBMP(NewTex.Filename,ThisRGB)) { @@ -133,6 +133,7 @@ u8 *Src,*Dst; Buffer=(u8*)malloc(GLWidth*GLHeight*4); Src=TexData->RGB; Dst=&Buffer[0]; + for (int Y=0; Y TileSet; +// std::vector TileSet; + CList TileSet; int CurrentSet,LastSet; CMap Brush[2]; int ActiveBrush; @@ -97,7 +97,7 @@ protected: BOOL LoadFlag; int LastCursorPos,CursorPos; - CLayerTileGUI TileBankGUI; + CLayerTileGUI TileBankGUI; }; @@ -108,37 +108,40 @@ public: CTileSet(const char *_Filename,int Idx); ~CTileSet(); - int IsLoaded() {return(Loaded);} - int GetTileCount() {return(Tile.size());} + int IsLoaded() {return(Loaded);} + int GetTileCount() {return(Tile.size());} - void Load(CCore *Core); - void Load2d(CCore *Core); - void Load3d(CCore *Core); + void Load(CCore *Core); + void Load2d(CCore *Core); + void Load3d(CCore *Core); - const char *GetFilename() {return(Filename);} - const char *GetName() {return(Name);} +const char *GetFilename() {return(Filename);} +const char *GetName() {return(Name);} - CTile &GetTile(int No) {return(Tile[No]);} - void Purge(); - int FindCursorPos(CCore *Core,CMapEditView *View,Vector3 &CamPos,CPoint &MousePos); - void Render(CCore *Core,Vector3 &CamPos,CMap &LBrush,CMap &RBrush,BOOL Render3d); - void RenderCursor(Vector3 &CamPos,int Pos,int Width, int Height); - void RenderBrush(Vector3 &CamPos,CMap &LBrush,CMap &RBrush); - void RenderGrid(Vector3 &CamPos); - int GetTileBrowserWidth() {return(TileBrowserWidth);} - BOOL IsTileValid(int No); + CTile &GetTile(int No) {return(Tile[No]);} + void Purge(); + int FindCursorPos(CCore *Core,CMapEditView *View,Vector3 &CamPos,CPoint &MousePos); + void Render(CCore *Core,Vector3 &CamPos,CMap &LBrush,CMap &RBrush,BOOL Render3d); + void RenderCursor(Vector3 &CamPos,int Pos,int Width, int Height); + void RenderBrush(Vector3 &CamPos,CMap &LBrush,CMap &RBrush); + void RenderGrid(Vector3 &CamPos); + int GetTileBrowserWidth() {return(TileBrowserWidth);} + BOOL IsTileValid(int No); +bool operator==(CTileSet const &v1) {return (Name==v1.Name);} + +// if (IsStrSame((char*)Name,(char*)v1.Name) return(i); private: - BOOL Create16x16Tile(sRGBData &Src,u8 *Dst,int XOfs,int YOfs); - CPoint GetTilePos(int ID); + BOOL Create16x16Tile(sRGBData &Src,u8 *Dst,int XOfs,int YOfs); + CPoint GetTilePos(int ID); - GString Filename,Name; + GString Filename,Name; - int SetNumber; - CList Tile; - BOOL Loaded; - int TileBrowserWidth; + int SetNumber; + CList Tile; + BOOL Loaded; + int TileBrowserWidth; }; /*****************************************************************************/