misc 3dviewer work. still not worth using
This commit is contained in:
parent
55f60d5496
commit
7b7bb56ba2
|
@ -23,6 +23,7 @@
|
|||
#include "driver.h"
|
||||
#include "rasterize.h"
|
||||
#include "gfx3d.h"
|
||||
#include "texcache.h"
|
||||
|
||||
|
||||
#ifdef HAVE_WX
|
||||
|
@ -55,14 +56,17 @@ public:
|
|||
void NewFrame()
|
||||
{
|
||||
listPolys->SetItemCount(viewer3d_state.polylist.count);
|
||||
labelFrameCounter->SetLabel(wxString::Format("%s: %d",_("Frame"),viewer3d_state.frameNumber));
|
||||
labelUserPolycount->SetLabel(wxString::Format("%s: %d",_("User Polys"),viewer3d_state.polylist.count));
|
||||
labelFinalPolycount->SetLabel(wxString::Format("%s: %d",_("Final Polys"),viewer3d_state.polylist.count));
|
||||
tree->DeleteAllItems();
|
||||
wxTreeItemId root = tree->AddRoot("");
|
||||
for(int i=0;i<viewer3d_state.polylist.count;i++)
|
||||
{
|
||||
tree->AppendItem(root,"hai kirin");
|
||||
}
|
||||
//tree->DeleteAllItems();
|
||||
//tree->Freeze();
|
||||
//wxTreeItemId root = tree->AddRoot("");
|
||||
//for(int i=0;i<viewer3d_state.polylist.count;i++)
|
||||
//{
|
||||
// tree->AppendItem(root,"hai kirin");
|
||||
//}
|
||||
//tree->Thaw();
|
||||
}
|
||||
|
||||
virtual wxString OnGetItemText(const wxListCtrl* list, long item, long column) const
|
||||
|
@ -70,6 +74,12 @@ public:
|
|||
return "hi";
|
||||
}
|
||||
|
||||
virtual void OnListPolysSelected( wxListEvent& event )
|
||||
{
|
||||
panelTexture->Refresh(false);
|
||||
engine._debug_drawClippedUserPoly = GetSelectedListviewItem(listPolys);
|
||||
}
|
||||
|
||||
void RedrawPanel(wxClientDC* dc)
|
||||
{
|
||||
//------------
|
||||
|
@ -114,6 +124,48 @@ public:
|
|||
wxPaintDC dc(wxDynamicCast(event.GetEventObject(), wxWindow));
|
||||
RedrawPanel(&dc);
|
||||
}
|
||||
|
||||
int GetSelectedListviewItem(wxListCtrl* list)
|
||||
{
|
||||
return list->GetNextItem(-1, wxLIST_NEXT_ALL, wxLIST_STATE_SELECTED);
|
||||
}
|
||||
|
||||
virtual void OnPaintPanelTexture( wxPaintEvent& event )
|
||||
{
|
||||
wxPaintDC dc(wxDynamicCast(event.GetEventObject(), wxWindow));
|
||||
dc.SetBackground(*wxBLACK_BRUSH); dc.Clear();
|
||||
|
||||
int selection = GetSelectedListviewItem(listPolys);
|
||||
if(selection < 0) return;
|
||||
if(selection>=viewer3d_state.polylist.count) return;
|
||||
|
||||
POLY& poly = viewer3d_state.polylist.list[selection];
|
||||
|
||||
TexCacheItem* texkey = TexCache_SetTexture(TexFormat_32bpp,poly.texParam,poly.texPalette);
|
||||
const u32 w = texkey->sizeX;
|
||||
const u32 h = texkey->sizeY;
|
||||
u8* const bmpdata = new u8[w*h*4];
|
||||
for(int i=0;i<w*h;i++) {
|
||||
bmpdata[i*3] = texkey->decoded[i*4];
|
||||
bmpdata[i*3+1] = texkey->decoded[i*4+1];
|
||||
bmpdata[i*3+2] = texkey->decoded[i*4+2];
|
||||
}
|
||||
for(int i=0;i<w*h;i++)
|
||||
bmpdata[w*h*3+i] = texkey->decoded[i*4+3];
|
||||
|
||||
|
||||
wxImage image(w,h,false);
|
||||
image.InitAlpha();
|
||||
image.SetData(bmpdata,true);
|
||||
image.SetAlpha(bmpdata+w*h*3,true);
|
||||
wxBitmap bitmap(image);
|
||||
double xscale = (double)panelTexture->GetSize().x / w;
|
||||
double yscale = (double)panelTexture->GetSize().y / h;
|
||||
|
||||
dc.SetUserScale(xscale,yscale);
|
||||
dc.DrawBitmap(bitmap,0,0);
|
||||
delete[] bmpdata;
|
||||
}
|
||||
};
|
||||
|
||||
class VIEW3D_Driver_WX : public VIEW3D_Driver
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
#include "NDSSystem.h"
|
||||
#include "readwrite.h"
|
||||
#include "FIFO.h"
|
||||
#include "movie.h" //only for currframecounter which really ought to be moved into the core emu....
|
||||
#include <queue>
|
||||
|
||||
/*
|
||||
|
@ -1978,6 +1979,7 @@ static void gfx3d_doFlush()
|
|||
|
||||
if(driver->view3d->IsRunning())
|
||||
{
|
||||
viewer3d_state.frameNumber = currFrameCounter;
|
||||
viewer3d_state.state = gfx3d.state;
|
||||
viewer3d_state.polylist = *gfx3d.polylist;
|
||||
viewer3d_state.vertlist = *gfx3d.vertlist;
|
||||
|
|
|
@ -346,6 +346,7 @@ struct GFX3D_State
|
|||
|
||||
struct Viewer3d_State
|
||||
{
|
||||
int frameNumber;
|
||||
GFX3D_State state;
|
||||
VERTLIST vertlist;
|
||||
POLYLIST polylist;
|
||||
|
|
|
@ -346,8 +346,10 @@ class RasterizerUnit
|
|||
public:
|
||||
|
||||
int SLI_MASK, SLI_VALUE;
|
||||
bool _debug_thisPoly;
|
||||
|
||||
RasterizerUnit()
|
||||
: _debug_thisPoly(false)
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -739,15 +741,77 @@ public:
|
|||
|
||||
//runs several scanlines, until an edge is finished
|
||||
template<bool SLI>
|
||||
void runscanlines(edge_fx_fl *left, edge_fx_fl *right)
|
||||
void runscanlines(edge_fx_fl *left, edge_fx_fl *right,bool horizontal)
|
||||
{
|
||||
//oh lord, hack city for edge drawing
|
||||
|
||||
//do not overstep either of the edges
|
||||
int Height = min(left->Height,right->Height);
|
||||
bool first=true;
|
||||
static int runctr=0;
|
||||
runctr++;
|
||||
while(Height--) {
|
||||
if(!SLI || (left->Y & SLI_MASK) == SLI_VALUE)
|
||||
drawscanline(left,right);
|
||||
bool draw = (!SLI || (left->Y & SLI_MASK) == SLI_VALUE);
|
||||
if(draw) drawscanline(left,right);
|
||||
const int xl = left->X;
|
||||
const int xr = right->X;
|
||||
const int y = left->Y;
|
||||
left->Step();
|
||||
right->Step();
|
||||
|
||||
if(!RENDERER && _debug_thisPoly)
|
||||
{
|
||||
//debug drawing
|
||||
bool top = (horizontal&&first);
|
||||
bool bottom = (!Height&&horizontal);
|
||||
if(Height || top || bottom)
|
||||
{
|
||||
if(draw)
|
||||
{
|
||||
int nxl = left->X;
|
||||
int nxr = right->X;
|
||||
if(top) {
|
||||
int xs = min(xl,xr);
|
||||
int xe = max(xl,xr);
|
||||
for(int x=xs;x<=xe;x++) {
|
||||
int adr = (y*engine->width)+x;
|
||||
engine->screenColor[adr].r = 63;
|
||||
engine->screenColor[adr].g = 0;
|
||||
engine->screenColor[adr].b = 0;
|
||||
}
|
||||
} else if(bottom) {
|
||||
int xs = min(xl,xr);
|
||||
int xe = max(xl,xr);
|
||||
for(int x=xs;x<=xe;x++) {
|
||||
int adr = (y*engine->width)+x;
|
||||
engine->screenColor[adr].r = 63;
|
||||
engine->screenColor[adr].g = 0;
|
||||
engine->screenColor[adr].b = 0;
|
||||
}
|
||||
} else
|
||||
{
|
||||
int xs = min(xl,nxl);
|
||||
int xe = max(xl,nxl);
|
||||
for(int x=xs;x<=xe;x++) {
|
||||
int adr = (y*engine->width)+x;
|
||||
engine->screenColor[adr].r = 63;
|
||||
engine->screenColor[adr].g = 0;
|
||||
engine->screenColor[adr].b = 0;
|
||||
}
|
||||
xs = min(xr,nxr);
|
||||
xe = max(xr,nxr);
|
||||
for(int x=xs;x<=xe;x++) {
|
||||
int adr = (y*engine->width)+x;
|
||||
engine->screenColor[adr].r = 63;
|
||||
engine->screenColor[adr].g = 0;
|
||||
engine->screenColor[adr].b = 0;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
first = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -789,6 +853,7 @@ public:
|
|||
//This function can handle any convex N-gon up to octagons
|
||||
//verts must be clockwise.
|
||||
//I didnt reference anything for this algorithm but it seems like I've seen it somewhere before.
|
||||
//Maybe it is like crow's algorithm
|
||||
template<bool SLI>
|
||||
void shape_engine(int type, bool backwards)
|
||||
{
|
||||
|
@ -826,8 +891,9 @@ public:
|
|||
//handle a failure in the edge setup due to nutty polys
|
||||
if(failure)
|
||||
return;
|
||||
|
||||
runscanlines<SLI>(&left,&right);
|
||||
|
||||
bool horizontal = left.Y == right.Y;
|
||||
runscanlines<SLI>(&left,&right,horizontal);
|
||||
|
||||
//if we ran out of an edge, step to the next one
|
||||
if(right.Height == 0) {
|
||||
|
@ -862,6 +928,7 @@ public:
|
|||
//iterate over polys
|
||||
for(int i=0;i<engine->clippedPolyCounter;i++)
|
||||
{
|
||||
if(!RENDERER) _debug_thisPoly = (i==engine->_debug_drawClippedUserPoly);
|
||||
if(!engine->polyVisible[i]) continue;
|
||||
|
||||
GFX3D_Clipper::TClippedPoly &clippedPoly = engine->clippedPolys[i];
|
||||
|
@ -1150,6 +1217,7 @@ void SoftRasterizerEngine::updateFloatColors()
|
|||
}
|
||||
|
||||
SoftRasterizerEngine::SoftRasterizerEngine()
|
||||
: _debug_drawClippedUserPoly(-1)
|
||||
{
|
||||
this->clippedPolys = clipper.clippedPolys = new GFX3D_Clipper::TClippedPoly[POLYLIST_SIZE*2];
|
||||
}
|
||||
|
@ -1368,6 +1436,9 @@ void SoftRasterizerEngine::setupTextures(const bool skipBackfacing)
|
|||
polyAttr.setup(poly->polyAttr);
|
||||
|
||||
//make sure all the textures we'll need are cached
|
||||
//(otherwise on a multithreaded system there will be multiple writers--
|
||||
//this SHOULD be read-only, although some day the texcache may collect statistics or something
|
||||
//and then it won't be safe.
|
||||
if(needInitTexture || lastTextureFormat != poly->texParam || lastTexturePalette != poly->texPalette)
|
||||
{
|
||||
lastTexKey = TexCache_SetTexture(TexFormat_15bpp,poly->texParam,poly->texPalette);
|
||||
|
|
|
@ -57,6 +57,9 @@ class TexCacheItem;
|
|||
class SoftRasterizerEngine
|
||||
{
|
||||
public:
|
||||
//debug:
|
||||
int _debug_drawClippedUserPoly;
|
||||
|
||||
SoftRasterizerEngine();
|
||||
|
||||
void initFramebuffer(const int width, const int height, const bool clearImage);
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
<bool name="use_two_step_construction">0</bool>
|
||||
<bool name="use_enums">0</bool>
|
||||
<bool name="generate_for_xrced">0</bool>
|
||||
<bool name="generate_virtual_eventhandlers">0</bool>
|
||||
<bool name="generate_virtual_eventhandlers">1</bool>
|
||||
<string name="current_platform">"<All platforms>"</string>
|
||||
<string name="target_wx_version">"2.8.10"</string>
|
||||
<string name="app_kind">"Standard"</string>
|
||||
|
@ -379,7 +379,7 @@
|
|||
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
|
||||
<string name="proxy-Platform">"<Any platform>"</string>
|
||||
<document>
|
||||
<string name="title">"wxCheckBox: ID_MATERIALINTERPOLATE"</string>
|
||||
<string name="title">"wxCheckBox: ID_CheckMaterialInterpolate"</string>
|
||||
<string name="type">"dialog-control-document"</string>
|
||||
<string name="filename">""</string>
|
||||
<string name="icon-name">"checkbox"</string>
|
||||
|
@ -389,7 +389,7 @@
|
|||
<long name="locked">0</long>
|
||||
<string name="proxy-type">"wbCheckBoxProxy"</string>
|
||||
<string name="event-handler-0">"wxEVT_COMMAND_CHECKBOX_CLICKED|OnMaterialInterpolateClick|NONE||wxdlg3dViewer"</string>
|
||||
<string name="proxy-Id name">"ID_MATERIALINTERPOLATE"</string>
|
||||
<string name="proxy-Id name">"ID_CheckMaterialInterpolate"</string>
|
||||
<long name="proxy-Id value">10004</long>
|
||||
<string name="proxy-Name">""</string>
|
||||
<string name="proxy-Class">"wxCheckBox"</string>
|
||||
|
@ -560,10 +560,153 @@
|
|||
<bool name="proxy-wxSHAPED">0</bool>
|
||||
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
|
||||
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
|
||||
<document>
|
||||
<string name="title">"wxWindow: ID_PanelTexture"</string>
|
||||
<string name="type">"dialog-control-document"</string>
|
||||
<string name="filename">""</string>
|
||||
<string name="icon-name">"foreign"</string>
|
||||
<long name="is-transient">0</long>
|
||||
<long name="owns-file">1</long>
|
||||
<long name="title-mode">0</long>
|
||||
<long name="locked">0</long>
|
||||
<string name="proxy-type">"wbForeignCtrlProxy"</string>
|
||||
<string name="event-handler-0">"wxEVT_PAINT|OnPaintPanelTexture|NONE||wxdlg3dViewer"</string>
|
||||
<string name="event-handler-1">"wxEVT_ERASE_BACKGROUND|OnDoNotEraseBackground|NONE||wxdlg3dViewer"</string>
|
||||
<string name="proxy-Id name">"ID_PanelTexture"</string>
|
||||
<long name="proxy-Id value">10001</long>
|
||||
<string name="proxy-Name">""</string>
|
||||
<string name="proxy-Class">"wxWindow"</string>
|
||||
<string name="proxy-Base class">"wxWindow"</string>
|
||||
<bool name="proxy-External implementation">1</bool>
|
||||
<bool name="proxy-Separate files">0</bool>
|
||||
<string name="proxy-Implementation filename">""</string>
|
||||
<string name="proxy-Header filename">""</string>
|
||||
<string name="proxy-Member variable name">"panelTexture"</string>
|
||||
<bool name="proxy-Create in situ">1</bool>
|
||||
<string name="proxy-Help text">""</string>
|
||||
<string name="proxy-Tooltip text">""</string>
|
||||
<string name="proxy-Background colour">""</string>
|
||||
<string name="proxy-Foreground colour">""</string>
|
||||
<string name="proxy-Font">""</string>
|
||||
<bool name="proxy-Hidden">0</bool>
|
||||
<bool name="proxy-Enabled">1</bool>
|
||||
<string name="proxy-Platform">"<Any platform>"</string>
|
||||
<string name="proxy-Data variable">""</string>
|
||||
<string name="proxy-Data validator">""</string>
|
||||
<string name="proxy-Data source">""</string>
|
||||
<string name="proxy-Data class name">""</string>
|
||||
<string name="proxy-Data class implementation filename">""</string>
|
||||
<string name="proxy-Data class header filename">""</string>
|
||||
<string name="proxy-Data class manager window">""</string>
|
||||
<bool name="proxy-wxNO_BORDER">0</bool>
|
||||
<bool name="proxy-wxSIMPLE_BORDER">1</bool>
|
||||
<bool name="proxy-wxDOUBLE_BORDER">0</bool>
|
||||
<bool name="proxy-wxBORDER_THEME">0</bool>
|
||||
<bool name="proxy-wxSUNKEN_BORDER">0</bool>
|
||||
<bool name="proxy-wxRAISED_BORDER">0</bool>
|
||||
<bool name="proxy-wxSTATIC_BORDER">0</bool>
|
||||
<bool name="proxy-wxWANTS_CHARS">0</bool>
|
||||
<bool name="proxy-wxNO_FULL_REPAINT_ON_RESIZE">0</bool>
|
||||
<bool name="proxy-wxFULL_REPAINT_ON_RESIZE">0</bool>
|
||||
<bool name="proxy-wxCLIP_CHILDREN">0</bool>
|
||||
<bool name="proxy-wxHSCROLL">0</bool>
|
||||
<bool name="proxy-wxVSCROLL">0</bool>
|
||||
<bool name="proxy-wxWS_EX_VALIDATE_RECURSIVELY">0</bool>
|
||||
<string name="proxy-Custom styles">""</string>
|
||||
<long name="proxy-X">-1</long>
|
||||
<long name="proxy-Y">-1</long>
|
||||
<long name="proxy-Width">64</long>
|
||||
<long name="proxy-Height">64</long>
|
||||
<string name="proxy-AlignH">"Centre"</string>
|
||||
<string name="proxy-AlignV">"Centre"</string>
|
||||
<long name="proxy-Stretch factor">0</long>
|
||||
<long name="proxy-Border">5</long>
|
||||
<bool name="proxy-wxLEFT">1</bool>
|
||||
<bool name="proxy-wxRIGHT">1</bool>
|
||||
<bool name="proxy-wxTOP">1</bool>
|
||||
<bool name="proxy-wxBOTTOM">1</bool>
|
||||
<bool name="proxy-wxSHAPED">0</bool>
|
||||
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
|
||||
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
|
||||
<string name="proxy-Custom arguments">""</string>
|
||||
<string name="proxy-Custom ctor arguments">""</string>
|
||||
<string name="proxy-Event sources">""</string>
|
||||
</document>
|
||||
<document>
|
||||
<string name="title">"wxStaticText: wxID_STATIC"</string>
|
||||
<string name="type">"dialog-control-document"</string>
|
||||
<string name="filename">""</string>
|
||||
<string name="icon-name">"statictext"</string>
|
||||
<long name="is-transient">0</long>
|
||||
<long name="owns-file">1</long>
|
||||
<long name="title-mode">0</long>
|
||||
<long name="locked">0</long>
|
||||
<string name="proxy-type">"wbStaticTextProxy"</string>
|
||||
<string name="proxy-Id name">"wxID_STATIC"</string>
|
||||
<long name="proxy-Id value">5105</long>
|
||||
<string name="proxy-Name">""</string>
|
||||
<string name="proxy-Class">"wxStaticText"</string>
|
||||
<string name="proxy-Base class">"wxStaticText"</string>
|
||||
<bool name="proxy-External implementation">1</bool>
|
||||
<bool name="proxy-Separate files">0</bool>
|
||||
<string name="proxy-Implementation filename">""</string>
|
||||
<string name="proxy-Header filename">""</string>
|
||||
<string name="proxy-Member variable name">""</string>
|
||||
<string name="proxy-Label">"3dviewer is unstable.
|
||||
dont use it."</string>
|
||||
<long name="proxy-Wrapping width">-1</long>
|
||||
<string name="proxy-Help text">""</string>
|
||||
<string name="proxy-Tooltip text">""</string>
|
||||
<string name="proxy-Background colour">""</string>
|
||||
<string name="proxy-Foreground colour">""</string>
|
||||
<string name="proxy-Font">""</string>
|
||||
<bool name="proxy-Hidden">0</bool>
|
||||
<bool name="proxy-Enabled">1</bool>
|
||||
<string name="proxy-Platform">"<Any platform>"</string>
|
||||
<string name="proxy-Data variable">""</string>
|
||||
<string name="proxy-Data validator">""</string>
|
||||
<string name="proxy-Data source">""</string>
|
||||
<string name="proxy-Data class name">""</string>
|
||||
<string name="proxy-Data class implementation filename">""</string>
|
||||
<string name="proxy-Data class header filename">""</string>
|
||||
<string name="proxy-Data class manager window">""</string>
|
||||
<bool name="proxy-wxALIGN_LEFT">0</bool>
|
||||
<bool name="proxy-wxALIGN_RIGHT">0</bool>
|
||||
<bool name="proxy-wxALIGN_CENTRE">0</bool>
|
||||
<bool name="proxy-wxST_NO_AUTORESIZE">0</bool>
|
||||
<bool name="proxy-wxNO_BORDER">0</bool>
|
||||
<bool name="proxy-wxSIMPLE_BORDER">0</bool>
|
||||
<bool name="proxy-wxDOUBLE_BORDER">0</bool>
|
||||
<bool name="proxy-wxBORDER_THEME">0</bool>
|
||||
<bool name="proxy-wxSUNKEN_BORDER">0</bool>
|
||||
<bool name="proxy-wxRAISED_BORDER">0</bool>
|
||||
<bool name="proxy-wxSTATIC_BORDER">0</bool>
|
||||
<bool name="proxy-wxWANTS_CHARS">0</bool>
|
||||
<bool name="proxy-wxNO_FULL_REPAINT_ON_RESIZE">0</bool>
|
||||
<bool name="proxy-wxFULL_REPAINT_ON_RESIZE">0</bool>
|
||||
<string name="proxy-Custom styles">""</string>
|
||||
<long name="proxy-X">-1</long>
|
||||
<long name="proxy-Y">-1</long>
|
||||
<long name="proxy-Width">-1</long>
|
||||
<long name="proxy-Height">-1</long>
|
||||
<string name="proxy-AlignH">"Centre"</string>
|
||||
<string name="proxy-AlignV">"Centre"</string>
|
||||
<long name="proxy-Stretch factor">0</long>
|
||||
<long name="proxy-Border">5</long>
|
||||
<bool name="proxy-wxLEFT">1</bool>
|
||||
<bool name="proxy-wxRIGHT">1</bool>
|
||||
<bool name="proxy-wxTOP">1</bool>
|
||||
<bool name="proxy-wxBOTTOM">1</bool>
|
||||
<bool name="proxy-wxSHAPED">0</bool>
|
||||
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
|
||||
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
|
||||
<string name="proxy-Custom arguments">""</string>
|
||||
<string name="proxy-Custom ctor arguments">""</string>
|
||||
</document>
|
||||
</document>
|
||||
</document>
|
||||
<document>
|
||||
<string name="title">"wxWindow: ID_VIEWPORT"</string>
|
||||
<string name="title">"wxWindow: ID_PanelViewport"</string>
|
||||
<string name="type">"dialog-control-document"</string>
|
||||
<string name="filename">""</string>
|
||||
<string name="icon-name">"foreign"</string>
|
||||
|
@ -573,8 +716,8 @@
|
|||
<long name="locked">0</long>
|
||||
<string name="proxy-type">"wbForeignCtrlProxy"</string>
|
||||
<string name="event-handler-0">"wxEVT_PAINT|OnPanelPaint|NONE||wxdlg3dViewer"</string>
|
||||
<string name="event-handler-1">"wxEVT_ERASE_BACKGROUND|OnPanelEraseBackground|NONE||wxdlg3dViewer"</string>
|
||||
<string name="proxy-Id name">"ID_VIEWPORT"</string>
|
||||
<string name="event-handler-1">"wxEVT_ERASE_BACKGROUND|OnDoNotEraseBackground|NONE||wxdlg3dViewer"</string>
|
||||
<string name="proxy-Id name">"ID_PanelViewport"</string>
|
||||
<long name="proxy-Id value">10002</long>
|
||||
<string name="proxy-Name">""</string>
|
||||
<string name="proxy-Class">"wxWindow"</string>
|
||||
|
@ -938,6 +1081,76 @@
|
|||
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
|
||||
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
|
||||
<string name="proxy-Platform">"<Any platform>"</string>
|
||||
<document>
|
||||
<string name="title">"wxStaticText: wxID_STATIC"</string>
|
||||
<string name="type">"dialog-control-document"</string>
|
||||
<string name="filename">""</string>
|
||||
<string name="icon-name">"statictext"</string>
|
||||
<long name="is-transient">0</long>
|
||||
<long name="owns-file">1</long>
|
||||
<long name="title-mode">0</long>
|
||||
<long name="locked">0</long>
|
||||
<string name="proxy-type">"wbStaticTextProxy"</string>
|
||||
<string name="proxy-Id name">"wxID_STATIC"</string>
|
||||
<long name="proxy-Id value">5105</long>
|
||||
<string name="proxy-Name">""</string>
|
||||
<string name="proxy-Class">"wxStaticText"</string>
|
||||
<string name="proxy-Base class">"wxStaticText"</string>
|
||||
<bool name="proxy-External implementation">1</bool>
|
||||
<bool name="proxy-Separate files">0</bool>
|
||||
<string name="proxy-Implementation filename">""</string>
|
||||
<string name="proxy-Header filename">""</string>
|
||||
<string name="proxy-Member variable name">"labelFrameCounter"</string>
|
||||
<string name="proxy-Label">"Frame: 9999999"</string>
|
||||
<long name="proxy-Wrapping width">-1</long>
|
||||
<string name="proxy-Help text">""</string>
|
||||
<string name="proxy-Tooltip text">""</string>
|
||||
<string name="proxy-Background colour">""</string>
|
||||
<string name="proxy-Foreground colour">""</string>
|
||||
<string name="proxy-Font">""</string>
|
||||
<bool name="proxy-Hidden">0</bool>
|
||||
<bool name="proxy-Enabled">1</bool>
|
||||
<string name="proxy-Platform">"<Any platform>"</string>
|
||||
<string name="proxy-Data variable">""</string>
|
||||
<string name="proxy-Data validator">""</string>
|
||||
<string name="proxy-Data source">""</string>
|
||||
<string name="proxy-Data class name">""</string>
|
||||
<string name="proxy-Data class implementation filename">""</string>
|
||||
<string name="proxy-Data class header filename">""</string>
|
||||
<string name="proxy-Data class manager window">""</string>
|
||||
<bool name="proxy-wxALIGN_LEFT">0</bool>
|
||||
<bool name="proxy-wxALIGN_RIGHT">0</bool>
|
||||
<bool name="proxy-wxALIGN_CENTRE">0</bool>
|
||||
<bool name="proxy-wxST_NO_AUTORESIZE">0</bool>
|
||||
<bool name="proxy-wxNO_BORDER">0</bool>
|
||||
<bool name="proxy-wxSIMPLE_BORDER">0</bool>
|
||||
<bool name="proxy-wxDOUBLE_BORDER">0</bool>
|
||||
<bool name="proxy-wxBORDER_THEME">0</bool>
|
||||
<bool name="proxy-wxSUNKEN_BORDER">0</bool>
|
||||
<bool name="proxy-wxRAISED_BORDER">0</bool>
|
||||
<bool name="proxy-wxSTATIC_BORDER">0</bool>
|
||||
<bool name="proxy-wxWANTS_CHARS">0</bool>
|
||||
<bool name="proxy-wxNO_FULL_REPAINT_ON_RESIZE">0</bool>
|
||||
<bool name="proxy-wxFULL_REPAINT_ON_RESIZE">0</bool>
|
||||
<string name="proxy-Custom styles">""</string>
|
||||
<long name="proxy-X">-1</long>
|
||||
<long name="proxy-Y">-1</long>
|
||||
<long name="proxy-Width">-1</long>
|
||||
<long name="proxy-Height">-1</long>
|
||||
<string name="proxy-AlignH">"Left"</string>
|
||||
<string name="proxy-AlignV">"Centre"</string>
|
||||
<long name="proxy-Stretch factor">0</long>
|
||||
<long name="proxy-Border">1</long>
|
||||
<bool name="proxy-wxLEFT">1</bool>
|
||||
<bool name="proxy-wxRIGHT">1</bool>
|
||||
<bool name="proxy-wxTOP">1</bool>
|
||||
<bool name="proxy-wxBOTTOM">1</bool>
|
||||
<bool name="proxy-wxSHAPED">0</bool>
|
||||
<bool name="proxy-wxADJUST_MINSIZE">0</bool>
|
||||
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
|
||||
<string name="proxy-Custom arguments">""</string>
|
||||
<string name="proxy-Custom ctor arguments">""</string>
|
||||
</document>
|
||||
<document>
|
||||
<string name="title">"wxStaticText: wxID_STATIC"</string>
|
||||
<string name="type">"dialog-control-document"</string>
|
||||
|
@ -958,7 +1171,7 @@
|
|||
<string name="proxy-Implementation filename">""</string>
|
||||
<string name="proxy-Header filename">""</string>
|
||||
<string name="proxy-Member variable name">"labelUserPolycount"</string>
|
||||
<string name="proxy-Label">"User Polys"</string>
|
||||
<string name="proxy-Label">"User Polys: 999999"</string>
|
||||
<long name="proxy-Wrapping width">-1</long>
|
||||
<string name="proxy-Help text">""</string>
|
||||
<string name="proxy-Tooltip text">""</string>
|
||||
|
@ -1136,7 +1349,7 @@
|
|||
<bool name="proxy-wxFIXED_MINSIZE">0</bool>
|
||||
</document>
|
||||
<document>
|
||||
<string name="title">"wxDesmumeListCtrl: ID_DESMUMELISTCTRL1"</string>
|
||||
<string name="title">"wxDesmumeListCtrl: ID_ListPolys"</string>
|
||||
<string name="type">"dialog-control-document"</string>
|
||||
<string name="filename">""</string>
|
||||
<string name="icon-name">"listctrl"</string>
|
||||
|
@ -1145,7 +1358,8 @@
|
|||
<long name="title-mode">0</long>
|
||||
<long name="locked">0</long>
|
||||
<string name="proxy-type">"wbListCtrlProxy"</string>
|
||||
<string name="proxy-Id name">"ID_DESMUMELISTCTRL1"</string>
|
||||
<string name="event-handler-0">"wxEVT_COMMAND_LIST_ITEM_SELECTED|OnListPolysSelected|NONE||wxdlg3dViewer"</string>
|
||||
<string name="proxy-Id name">"ID_ListPolys"</string>
|
||||
<long name="proxy-Id value">10009</long>
|
||||
<string name="proxy-Name">""</string>
|
||||
<string name="proxy-Class">"wxDesmumeListCtrl"</string>
|
||||
|
@ -1219,7 +1433,7 @@
|
|||
<string name="proxy-Event sources">""</string>
|
||||
</document>
|
||||
<document>
|
||||
<string name="title">"wxTreeCtrl: ID_TREECTRL"</string>
|
||||
<string name="title">"wxTreeCtrl: ID_Tree"</string>
|
||||
<string name="type">"dialog-control-document"</string>
|
||||
<string name="filename">""</string>
|
||||
<string name="icon-name">"treectrl"</string>
|
||||
|
@ -1228,7 +1442,7 @@
|
|||
<long name="title-mode">0</long>
|
||||
<long name="locked">0</long>
|
||||
<string name="proxy-type">"wbTreeCtrlProxy"</string>
|
||||
<string name="proxy-Id name">"ID_TREECTRL"</string>
|
||||
<string name="proxy-Id name">"ID_Tree"</string>
|
||||
<long name="proxy-Id value">10003</long>
|
||||
<string name="proxy-Name">""</string>
|
||||
<string name="proxy-Class">"wxTreeCtrl"</string>
|
||||
|
|
|
@ -48,7 +48,9 @@ BEGIN_EVENT_TABLE( wxdlg3dViewer, wxDialog )
|
|||
////@begin wxdlg3dViewer event table entries
|
||||
EVT_CLOSE( wxdlg3dViewer::OnCloseWindow )
|
||||
|
||||
EVT_CHECKBOX( ID_MATERIALINTERPOLATE, wxdlg3dViewer::OnMaterialInterpolateClick )
|
||||
EVT_CHECKBOX( ID_CheckMaterialInterpolate, wxdlg3dViewer::OnMaterialInterpolateClick )
|
||||
|
||||
EVT_LIST_ITEM_SELECTED( ID_ListPolys, wxdlg3dViewer::OnListPolysSelected )
|
||||
|
||||
////@end wxdlg3dViewer event table entries
|
||||
|
||||
|
@ -113,7 +115,9 @@ void wxdlg3dViewer::Init()
|
|||
{
|
||||
////@begin wxdlg3dViewer member initialisation
|
||||
checkMaterialInterpolate = NULL;
|
||||
panelTexture = NULL;
|
||||
panelViewport = NULL;
|
||||
labelFrameCounter = NULL;
|
||||
labelUserPolycount = NULL;
|
||||
labelFinalPolycount = NULL;
|
||||
listPolys = NULL;
|
||||
|
@ -146,7 +150,7 @@ void wxdlg3dViewer::CreateControls()
|
|||
wxStaticBoxSizer* itemStaticBoxSizer4 = new wxStaticBoxSizer(itemStaticBoxSizer4Static, wxVERTICAL);
|
||||
itemBoxSizer3->Add(itemStaticBoxSizer4, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
|
||||
|
||||
checkMaterialInterpolate = new wxCheckBox( itemDialog1, ID_MATERIALINTERPOLATE, _("Material clip interpolation"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
checkMaterialInterpolate = new wxCheckBox( itemDialog1, ID_CheckMaterialInterpolate, _("Material clip interpolation"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
checkMaterialInterpolate->SetValue(false);
|
||||
itemStaticBoxSizer4->Add(checkMaterialInterpolate, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
|
||||
|
||||
|
@ -159,55 +163,66 @@ void wxdlg3dViewer::CreateControls()
|
|||
wxFlexGridSizer* itemFlexGridSizer8 = new wxFlexGridSizer(0, 2, 0, 0);
|
||||
itemBoxSizer3->Add(itemFlexGridSizer8, 1, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
|
||||
|
||||
panelViewport = new wxWindow( itemDialog1, ID_VIEWPORT, wxDefaultPosition, wxSize(256, 192), wxSIMPLE_BORDER );
|
||||
panelTexture = new wxWindow( itemDialog1, ID_PanelTexture, wxDefaultPosition, wxSize(64, 64), wxSIMPLE_BORDER );
|
||||
itemFlexGridSizer8->Add(panelTexture, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5);
|
||||
|
||||
wxStaticText* itemStaticText10 = new wxStaticText( itemDialog1, wxID_STATIC, _("3dviewer is unstable.\ndont use it."), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
itemFlexGridSizer8->Add(itemStaticText10, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5);
|
||||
|
||||
panelViewport = new wxWindow( itemDialog1, ID_PanelViewport, wxDefaultPosition, wxSize(256, 192), wxSIMPLE_BORDER );
|
||||
itemFlexGridSizer2->Add(panelViewport, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5);
|
||||
|
||||
wxFlexGridSizer* itemFlexGridSizer10 = new wxFlexGridSizer(3, 1, 0, 0);
|
||||
itemFlexGridSizer10->AddGrowableRow(1);
|
||||
itemFlexGridSizer2->Add(itemFlexGridSizer10, 1, wxALIGN_CENTER_HORIZONTAL|wxGROW|wxALL, 5);
|
||||
wxFlexGridSizer* itemFlexGridSizer12 = new wxFlexGridSizer(3, 1, 0, 0);
|
||||
itemFlexGridSizer12->AddGrowableRow(1);
|
||||
itemFlexGridSizer2->Add(itemFlexGridSizer12, 1, wxALIGN_CENTER_HORIZONTAL|wxGROW|wxALL, 5);
|
||||
|
||||
wxStaticBox* itemStaticBoxSizer11Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Choose One"));
|
||||
wxStaticBoxSizer* itemStaticBoxSizer11 = new wxStaticBoxSizer(itemStaticBoxSizer11Static, wxVERTICAL);
|
||||
itemFlexGridSizer10->Add(itemStaticBoxSizer11, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_BOTTOM|wxALL, 5);
|
||||
wxStaticBox* itemStaticBoxSizer13Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Choose One"));
|
||||
wxStaticBoxSizer* itemStaticBoxSizer13 = new wxStaticBoxSizer(itemStaticBoxSizer13Static, wxVERTICAL);
|
||||
itemFlexGridSizer12->Add(itemStaticBoxSizer13, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_BOTTOM|wxALL, 5);
|
||||
|
||||
wxRadioButton* itemRadioButton12 = new wxRadioButton( itemDialog1, ID_RADIOBUTTON, _("Final Polylist"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
itemRadioButton12->SetValue(true);
|
||||
itemStaticBoxSizer11->Add(itemRadioButton12, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
|
||||
wxRadioButton* itemRadioButton14 = new wxRadioButton( itemDialog1, ID_RADIOBUTTON, _("Final Polylist"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
itemRadioButton14->SetValue(true);
|
||||
itemStaticBoxSizer13->Add(itemRadioButton14, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
|
||||
|
||||
wxRadioButton* itemRadioButton13 = new wxRadioButton( itemDialog1, ID_RADIOBUTTON1, _("User Polylist"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
itemRadioButton13->SetValue(false);
|
||||
itemRadioButton13->Enable(false);
|
||||
itemStaticBoxSizer11->Add(itemRadioButton13, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
|
||||
wxRadioButton* itemRadioButton15 = new wxRadioButton( itemDialog1, ID_RADIOBUTTON1, _("User Polylist"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
itemRadioButton15->SetValue(false);
|
||||
itemRadioButton15->Enable(false);
|
||||
itemStaticBoxSizer13->Add(itemRadioButton15, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
|
||||
|
||||
wxRadioButton* itemRadioButton14 = new wxRadioButton( itemDialog1, ID_RADIOBUTTON2, _("Display List"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
itemRadioButton14->SetValue(false);
|
||||
itemRadioButton14->Enable(false);
|
||||
itemStaticBoxSizer11->Add(itemRadioButton14, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
|
||||
wxRadioButton* itemRadioButton16 = new wxRadioButton( itemDialog1, ID_RADIOBUTTON2, _("Display List"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
itemRadioButton16->SetValue(false);
|
||||
itemRadioButton16->Enable(false);
|
||||
itemStaticBoxSizer13->Add(itemRadioButton16, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5);
|
||||
|
||||
itemFlexGridSizer10->Add(5, 5, 1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5);
|
||||
itemFlexGridSizer12->Add(5, 5, 1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5);
|
||||
|
||||
wxStaticBox* itemStaticBoxSizer16Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Statistics"));
|
||||
wxStaticBoxSizer* itemStaticBoxSizer16 = new wxStaticBoxSizer(itemStaticBoxSizer16Static, wxVERTICAL);
|
||||
itemFlexGridSizer10->Add(itemStaticBoxSizer16, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5);
|
||||
wxStaticBox* itemStaticBoxSizer18Static = new wxStaticBox(itemDialog1, wxID_ANY, _("Statistics"));
|
||||
wxStaticBoxSizer* itemStaticBoxSizer18 = new wxStaticBoxSizer(itemStaticBoxSizer18Static, wxVERTICAL);
|
||||
itemFlexGridSizer12->Add(itemStaticBoxSizer18, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5);
|
||||
|
||||
labelUserPolycount = new wxStaticText( itemDialog1, wxID_STATIC, _("User Polys"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
itemStaticBoxSizer16->Add(labelUserPolycount, 0, wxALIGN_LEFT|wxALL, 1);
|
||||
labelFrameCounter = new wxStaticText( itemDialog1, wxID_STATIC, _("Frame: 9999999"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
itemStaticBoxSizer18->Add(labelFrameCounter, 0, wxALIGN_LEFT|wxALL, 1);
|
||||
|
||||
labelUserPolycount = new wxStaticText( itemDialog1, wxID_STATIC, _("User Polys: 999999"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
itemStaticBoxSizer18->Add(labelUserPolycount, 0, wxALIGN_LEFT|wxALL, 1);
|
||||
|
||||
labelFinalPolycount = new wxStaticText( itemDialog1, wxID_STATIC, _("Final Polys: "), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
itemStaticBoxSizer16->Add(labelFinalPolycount, 0, wxALIGN_LEFT|wxALL, 1);
|
||||
itemStaticBoxSizer18->Add(labelFinalPolycount, 0, wxALIGN_LEFT|wxALL, 1);
|
||||
|
||||
wxStaticLine* itemStaticLine19 = new wxStaticLine( itemDialog1, wxID_STATIC, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
|
||||
itemFlexGridSizer2->Add(itemStaticLine19, 0, wxALIGN_CENTER_HORIZONTAL|wxGROW|wxALL, 5);
|
||||
wxStaticLine* itemStaticLine22 = new wxStaticLine( itemDialog1, wxID_STATIC, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
|
||||
itemFlexGridSizer2->Add(itemStaticLine22, 0, wxALIGN_CENTER_HORIZONTAL|wxGROW|wxALL, 5);
|
||||
|
||||
listPolys = new wxDesmumeListCtrl( itemDialog1, ID_DESMUMELISTCTRL1, wxDefaultPosition, wxDefaultSize, wxLC_REPORT|wxLC_VIRTUAL );
|
||||
listPolys = new wxDesmumeListCtrl( itemDialog1, ID_ListPolys, wxDefaultPosition, wxDefaultSize, wxLC_REPORT|wxLC_VIRTUAL );
|
||||
itemFlexGridSizer2->Add(listPolys, 0, wxALIGN_CENTER_HORIZONTAL|wxGROW|wxALL, 5);
|
||||
|
||||
tree = new wxTreeCtrl( itemDialog1, ID_TREECTRL, wxDefaultPosition, wxSize(99, 99), wxTR_HAS_BUTTONS |wxTR_HIDE_ROOT|wxTR_ROW_LINES|wxTR_SINGLE );
|
||||
tree = new wxTreeCtrl( itemDialog1, ID_Tree, wxDefaultPosition, wxSize(99, 99), wxTR_HAS_BUTTONS |wxTR_HIDE_ROOT|wxTR_ROW_LINES|wxTR_SINGLE );
|
||||
itemFlexGridSizer2->Add(tree, 0, wxALIGN_CENTER_HORIZONTAL|wxGROW|wxALL, 5);
|
||||
|
||||
// Connect events and objects
|
||||
panelViewport->Connect(ID_VIEWPORT, wxEVT_PAINT, wxPaintEventHandler(wxdlg3dViewer::OnPanelPaint), NULL, this);
|
||||
panelViewport->Connect(ID_VIEWPORT, wxEVT_ERASE_BACKGROUND, wxEraseEventHandler(wxdlg3dViewer::OnPanelEraseBackground), NULL, this);
|
||||
panelTexture->Connect(ID_PanelTexture, wxEVT_PAINT, wxPaintEventHandler(wxdlg3dViewer::OnPaintPanelTexture), NULL, this);
|
||||
panelTexture->Connect(ID_PanelTexture, wxEVT_ERASE_BACKGROUND, wxEraseEventHandler(wxdlg3dViewer::OnDoNotEraseBackground), NULL, this);
|
||||
panelViewport->Connect(ID_PanelViewport, wxEVT_PAINT, wxPaintEventHandler(wxdlg3dViewer::OnPanelPaint), NULL, this);
|
||||
panelViewport->Connect(ID_PanelViewport, wxEVT_ERASE_BACKGROUND, wxEraseEventHandler(wxdlg3dViewer::OnDoNotEraseBackground), NULL, this);
|
||||
////@end wxdlg3dViewer content construction
|
||||
}
|
||||
|
||||
|
@ -285,7 +300,7 @@ void wxdlg3dViewer::OnPanelPaint( wxPaintEvent& event )
|
|||
* wxEVT_ERASE_BACKGROUND event handler for ID_PANEL
|
||||
*/
|
||||
|
||||
void wxdlg3dViewer::OnPanelEraseBackground( wxEraseEvent& event )
|
||||
void wxdlg3dViewer::OnDoNotEraseBackground( wxEraseEvent& event )
|
||||
{
|
||||
//blank to block background clearing
|
||||
}
|
||||
|
@ -374,3 +389,27 @@ void wxDesmumeListCtrl::CreateControls()
|
|||
}
|
||||
|
||||
|
||||
/*
|
||||
* wxEVT_COMMAND_LIST_ITEM_SELECTED event handler for ID_LISTPOLYS
|
||||
*/
|
||||
|
||||
void wxdlg3dViewer::OnListPolysSelected( wxListEvent& event )
|
||||
{
|
||||
////@begin wxEVT_COMMAND_LIST_ITEM_SELECTED event handler for ID_LISTPOLYS in wxdlg3dViewer.
|
||||
// Before editing this code, remove the block markers.
|
||||
event.Skip();
|
||||
////@end wxEVT_COMMAND_LIST_ITEM_SELECTED event handler for ID_LISTPOLYS in wxdlg3dViewer.
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* wxEVT_PAINT event handler for ID_PanelTexture
|
||||
*/
|
||||
|
||||
void wxdlg3dViewer::OnPaintPanelTexture( wxPaintEvent& event )
|
||||
{
|
||||
////@begin wxEVT_PAINT event handler for ID_PanelTexture in wxdlg3dViewer.
|
||||
// Before editing this code, remove the block markers.
|
||||
wxPaintDC dc(wxDynamicCast(event.GetEventObject(), wxWindow));
|
||||
////@end wxEVT_PAINT event handler for ID_PanelTexture in wxdlg3dViewer.
|
||||
}
|
||||
|
|
|
@ -48,21 +48,22 @@ class wxTreeCtrl;
|
|||
|
||||
////@begin control identifiers
|
||||
#define ID_X 10000
|
||||
#define ID_MATERIALINTERPOLATE 10004
|
||||
#define ID_CheckMaterialInterpolate 10004
|
||||
#define ID_CHECKBOX1 10008
|
||||
#define ID_VIEWPORT 10002
|
||||
#define ID_PanelTexture 10001
|
||||
#define ID_PanelViewport 10002
|
||||
#define ID_RADIOBUTTON 10005
|
||||
#define ID_RADIOBUTTON1 10006
|
||||
#define ID_RADIOBUTTON2 10007
|
||||
#define ID_DESMUMELISTCTRL1 10009
|
||||
#define ID_TREECTRL 10003
|
||||
#define ID_ListPolys 10009
|
||||
#define ID_Tree 10003
|
||||
#define SYMBOL_WXDLG3DVIEWER_STYLE wxCAPTION|wxRESIZE_BORDER|wxSYSTEM_MENU|wxDIALOG_NO_PARENT|wxCLOSE_BOX|wxTAB_TRAVERSAL
|
||||
#define SYMBOL_WXDLG3DVIEWER_TITLE _("3D Viewer")
|
||||
#define SYMBOL_WXDLG3DVIEWER_IDNAME ID_X
|
||||
#define SYMBOL_WXDLG3DVIEWER_SIZE wxSize(399, 300)
|
||||
#define SYMBOL_WXDLG3DVIEWER_POSITION wxDefaultPosition
|
||||
#define SYMBOL_WXDESMUMELISTCTRL_STYLE wxLC_REPORT|wxLC_VIRTUAL
|
||||
#define SYMBOL_WXDESMUMELISTCTRL_IDNAME ID_DESMUMELISTCTRL1
|
||||
#define SYMBOL_WXDESMUMELISTCTRL_IDNAME ID_ListPolys
|
||||
#define SYMBOL_WXDESMUMELISTCTRL_SIZE wxDefaultSize
|
||||
#define SYMBOL_WXDESMUMELISTCTRL_POSITION wxDefaultPosition
|
||||
////@end control identifiers
|
||||
|
@ -103,16 +104,22 @@ public:
|
|||
////@begin wxdlg3dViewer event handler declarations
|
||||
|
||||
/// wxEVT_CLOSE_WINDOW event handler for ID_X
|
||||
void OnCloseWindow( wxCloseEvent& event );
|
||||
virtual void OnCloseWindow( wxCloseEvent& event );
|
||||
|
||||
/// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_MATERIALINTERPOLATE
|
||||
void OnMaterialInterpolateClick( wxCommandEvent& event );
|
||||
/// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_CheckMaterialInterpolate
|
||||
virtual void OnMaterialInterpolateClick( wxCommandEvent& event );
|
||||
|
||||
/// wxEVT_PAINT event handler for ID_VIEWPORT
|
||||
void OnPanelPaint( wxPaintEvent& event );
|
||||
/// wxEVT_PAINT event handler for ID_PanelTexture
|
||||
virtual void OnPaintPanelTexture( wxPaintEvent& event );
|
||||
|
||||
/// wxEVT_ERASE_BACKGROUND event handler for ID_VIEWPORT
|
||||
void OnPanelEraseBackground( wxEraseEvent& event );
|
||||
/// wxEVT_ERASE_BACKGROUND event handler for ID_PanelTexture
|
||||
virtual void OnDoNotEraseBackground( wxEraseEvent& event );
|
||||
|
||||
/// wxEVT_PAINT event handler for ID_PanelViewport
|
||||
virtual void OnPanelPaint( wxPaintEvent& event );
|
||||
|
||||
/// wxEVT_COMMAND_LIST_ITEM_SELECTED event handler for ID_ListPolys
|
||||
virtual void OnListPolysSelected( wxListEvent& event );
|
||||
|
||||
////@end wxdlg3dViewer event handler declarations
|
||||
|
||||
|
@ -130,7 +137,9 @@ public:
|
|||
|
||||
////@begin wxdlg3dViewer member variables
|
||||
wxCheckBox* checkMaterialInterpolate;
|
||||
wxWindow* panelTexture;
|
||||
wxWindow* panelViewport;
|
||||
wxStaticText* labelFrameCounter;
|
||||
wxStaticText* labelUserPolycount;
|
||||
wxStaticText* labelFinalPolycount;
|
||||
wxDesmumeListCtrl* listPolys;
|
||||
|
|
Loading…
Reference in New Issue