Add callbacks, make library locations part of project now
This commit is contained in:
@@ -27,7 +27,7 @@
|
|||||||
FavorSizeOrSpeed="1"
|
FavorSizeOrSpeed="1"
|
||||||
OmitFramePointers="TRUE"
|
OmitFramePointers="TRUE"
|
||||||
WholeProgramOptimization="TRUE"
|
WholeProgramOptimization="TRUE"
|
||||||
AdditionalIncludeDirectories="".\src\include""
|
AdditionalIncludeDirectories="C:\libraries\ode\include;C:\libraries\sdl\include;"C:\libraries\g3d-6_10\include";.\src\include"
|
||||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;NO_SDL_MAIN;_ATL_STATIC_REGISTRY"
|
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;NO_SDL_MAIN;_ATL_STATIC_REGISTRY"
|
||||||
StringPooling="TRUE"
|
StringPooling="TRUE"
|
||||||
RuntimeLibrary="2"
|
RuntimeLibrary="2"
|
||||||
@@ -47,6 +47,7 @@
|
|||||||
OutputFile="./Blocks3D.exe"
|
OutputFile="./Blocks3D.exe"
|
||||||
LinkIncremental="1"
|
LinkIncremental="1"
|
||||||
SuppressStartupBanner="TRUE"
|
SuppressStartupBanner="TRUE"
|
||||||
|
AdditionalLibraryDirectories="C:\libraries\sdl\lib\x86;C:\libraries\ode\lib\releaselib;"C:\libraries\g3d-6_10\win32-7-lib""
|
||||||
ProgramDatabaseFile=".\Release/Blocks3D.pdb"
|
ProgramDatabaseFile=".\Release/Blocks3D.pdb"
|
||||||
SubSystem="2"
|
SubSystem="2"
|
||||||
StackReserveSize="16777216"
|
StackReserveSize="16777216"
|
||||||
@@ -96,7 +97,7 @@
|
|||||||
<Tool
|
<Tool
|
||||||
Name="VCCLCompilerTool"
|
Name="VCCLCompilerTool"
|
||||||
Optimization="0"
|
Optimization="0"
|
||||||
AdditionalIncludeDirectories=".\src\include"
|
AdditionalIncludeDirectories="C:\libraries\ode\include;C:\libraries\sdl\include;"C:\libraries\g3d-6_10\include";.\src\include"
|
||||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_ATL_STATIC_REGISTRY;NO_SDL_MAIN"
|
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_ATL_STATIC_REGISTRY;NO_SDL_MAIN"
|
||||||
MinimalRebuild="FALSE"
|
MinimalRebuild="FALSE"
|
||||||
BasicRuntimeChecks="0"
|
BasicRuntimeChecks="0"
|
||||||
@@ -115,11 +116,11 @@
|
|||||||
Name="VCCustomBuildTool"/>
|
Name="VCCustomBuildTool"/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalDependencies="Advapi32.lib UxTheme.lib Comctl32.lib Comdlg32.lib Shell32.lib Urlmon.lib ole32.lib oleaut32.lib uuid.lib oded.lib"
|
AdditionalDependencies="Advapi32.lib UxTheme.lib Comctl32.lib Comdlg32.lib Shell32.lib Urlmon.lib ole32.lib oleaut32.lib uuid.lib ode.lib"
|
||||||
OutputFile="./Blocks3D-Debug.exe"
|
OutputFile="./Blocks3D-Debug.exe"
|
||||||
LinkIncremental="2"
|
LinkIncremental="2"
|
||||||
SuppressStartupBanner="TRUE"
|
SuppressStartupBanner="TRUE"
|
||||||
AdditionalLibraryDirectories=""
|
AdditionalLibraryDirectories="C:\libraries\sdl\lib\x86;C:\libraries\ode\lib\debuglib;"C:\libraries\g3d-6_10\win32-7-lib""
|
||||||
GenerateDebugInformation="TRUE"
|
GenerateDebugInformation="TRUE"
|
||||||
ProgramDatabaseFile=".\Debug/Blocks3D.pdb"
|
ProgramDatabaseFile=".\Debug/Blocks3D.pdb"
|
||||||
SubSystem="1"
|
SubSystem="1"
|
||||||
|
|||||||
@@ -6,9 +6,9 @@
|
|||||||
</dependentAssembly>
|
</dependentAssembly>
|
||||||
</dependency>
|
</dependency>
|
||||||
<!--This should generally not be specified, but XP's VS2005 won't update automatically-->
|
<!--This should generally not be specified, but XP's VS2005 won't update automatically-->
|
||||||
<dependency>
|
<!-- <dependency>
|
||||||
<dependentAssembly>
|
<dependentAssembly>
|
||||||
<assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50727.6195" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
|
<assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50727.6195" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
|
||||||
</dependentAssembly>
|
</dependentAssembly>
|
||||||
</dependency>
|
</dependency> -->
|
||||||
</assembly>
|
</assembly>
|
||||||
@@ -12,6 +12,7 @@ namespace B3D{
|
|||||||
virtual void drawObj(RenderDevice* rd, Vector2 mousePos, bool mouseDown);
|
virtual void drawObj(RenderDevice* rd, Vector2 mousePos, bool mouseDown);
|
||||||
virtual bool mouseInButton(float, float, RenderDevice* rd);
|
virtual bool mouseInButton(float, float, RenderDevice* rd);
|
||||||
virtual void onMouseClick();
|
virtual void onMouseClick();
|
||||||
|
virtual void setCallback(void (*callback)(DataModelInstance * theDatamodel, BaseButtonInstance * theCaller, WPARAM wParam, LPARAM lParam));
|
||||||
void setActionCode(int actionCode);
|
void setActionCode(int actionCode);
|
||||||
bool floatBottom;
|
bool floatBottom;
|
||||||
bool floatRight;
|
bool floatRight;
|
||||||
@@ -21,5 +22,6 @@ namespace B3D{
|
|||||||
protected:
|
protected:
|
||||||
int actionCode;
|
int actionCode;
|
||||||
bool mouseInArea(float, float, float, float, float, float);
|
bool mouseInArea(float, float, float, float, float, float);
|
||||||
|
void (*callback)(DataModelInstance * theDatamodel, BaseButtonInstance * theCaller, WPARAM wParam, LPARAM lParam);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -4,6 +4,7 @@ using namespace B3D;
|
|||||||
BaseButtonInstance::BaseButtonInstance(void) : Instance()
|
BaseButtonInstance::BaseButtonInstance(void) : Instance()
|
||||||
{
|
{
|
||||||
actionCode = 0;
|
actionCode = 0;
|
||||||
|
callback = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
void BaseButtonInstance::render(RenderDevice* rd)
|
void BaseButtonInstance::render(RenderDevice* rd)
|
||||||
@@ -29,12 +30,20 @@ bool BaseButtonInstance::mouseInButton(float mousex, float mousey, RenderDevice*
|
|||||||
|
|
||||||
void BaseButtonInstance::onMouseClick()
|
void BaseButtonInstance::onMouseClick()
|
||||||
{
|
{
|
||||||
|
if(callback != NULL)
|
||||||
|
{
|
||||||
|
callback(this->getParentDataModel(), this, NULL, NULL);
|
||||||
|
}
|
||||||
// if(listener != NULL)
|
// if(listener != NULL)
|
||||||
// {
|
// {
|
||||||
// listener->onButton1MouseClick(this);
|
// listener->onButton1MouseClick(this);
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void BaseButtonInstance::setCallback(void (*callback)(DataModelInstance * theDatamodel, BaseButtonInstance * theCaller, WPARAM wParam, LPARAM lParam))
|
||||||
|
{
|
||||||
|
this->callback = callback;
|
||||||
|
}
|
||||||
|
|
||||||
bool BaseButtonInstance::mouseInArea(float point1x, float point1y, float point2x, float point2y, float mousex, float mousey)
|
bool BaseButtonInstance::mouseInArea(float point1x, float point1y, float point2x, float point2y, float mousex, float mousey)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -22,6 +22,10 @@ using namespace B3D;
|
|||||||
#define VS03_WORKAROUND
|
#define VS03_WORKAROUND
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
void menuCallback(DataModelInstance * theDataModel, BaseButtonInstance * theCaller, WPARAM wParam, LPARAM lParam) {
|
||||||
|
MessageBoxA(NULL, "Tomato", "Tomato", MB_OK);
|
||||||
|
}
|
||||||
|
|
||||||
ImageButtonInstance* GuiRootInstance::makeImageButton(G3D::TextureRef newImage = NULL, G3D::TextureRef overImage = NULL, G3D::TextureRef downImage = NULL, G3D::TextureRef disableImage = NULL)
|
ImageButtonInstance* GuiRootInstance::makeImageButton(G3D::TextureRef newImage = NULL, G3D::TextureRef overImage = NULL, G3D::TextureRef downImage = NULL, G3D::TextureRef disableImage = NULL)
|
||||||
{
|
{
|
||||||
//Oh come on
|
//Oh come on
|
||||||
@@ -65,7 +69,7 @@ TextButtonInstance* makeToolbarTextButton(std::string title, std::string name, V
|
|||||||
button->fontLocationRelativeTo = Vector2(10, 0);
|
button->fontLocationRelativeTo = Vector2(10, 0);
|
||||||
button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F);
|
button->boxColorOvr = Color4(0.6F,0.6F,0.6F,0.4F);
|
||||||
button->setAllColorsSame();
|
button->setAllColorsSame();
|
||||||
//button->setButtonListener(menuListener);
|
button->setCallback(&menuCallback);
|
||||||
return button;
|
return button;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -150,7 +154,7 @@ GuiRootInstance::GuiRootInstance() : Instance(), _message(""), _messageTime(0)
|
|||||||
button->setParent(this);
|
button->setParent(this);
|
||||||
button->name = "MENU";
|
button->name = "MENU";
|
||||||
//TODO Define Action
|
//TODO Define Action
|
||||||
//button->setButtonListener(menuListener);
|
button->setCallback(&menuCallback);
|
||||||
|
|
||||||
ImageButtonInstance* instance = new ToggleImageButtonInstance(
|
ImageButtonInstance* instance = new ToggleImageButtonInstance(
|
||||||
Texture::fromFile(VS03_WORKAROUND GetFileInPath("/content/images/Run.png")),
|
Texture::fromFile(VS03_WORKAROUND GetFileInPath("/content/images/Run.png")),
|
||||||
@@ -162,7 +166,7 @@ GuiRootInstance::GuiRootInstance() : Instance(), _message(""), _messageTime(0)
|
|||||||
Texture::fromFile(VS03_WORKAROUND GetFileInPath("/content/images/Stop_dn.png"))
|
Texture::fromFile(VS03_WORKAROUND GetFileInPath("/content/images/Stop_dn.png"))
|
||||||
);
|
);
|
||||||
//TODO Define Action
|
//TODO Define Action
|
||||||
//instance->setButtonListener(menuListener);
|
instance->setCallback(&menuCallback);
|
||||||
instance->name = "go";
|
instance->name = "go";
|
||||||
instance->size = Vector2(65,65);
|
instance->size = Vector2(65,65);
|
||||||
instance->position = Vector2(6.5, 25);
|
instance->position = Vector2(6.5, 25);
|
||||||
|
|||||||
Reference in New Issue
Block a user