Complete disaster-recovery snapshot: engine/game source, game data assets, VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive. Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false, no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
169 lines
3.5 KiB
C++
169 lines
3.5 KiB
C++
|
|
#pragma once
|
|
#include "Adept.hpp"
|
|
|
|
namespace Adept
|
|
{
|
|
class GUITextObject;
|
|
|
|
//##########################################################################
|
|
//########################### GUIDebugTextObject ######################
|
|
//##########################################################################
|
|
class GUIDebugText:
|
|
public Plug
|
|
{
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// Construction, Destruction
|
|
//
|
|
public:
|
|
GUIDebugText(
|
|
const char *debug_label,
|
|
void *data,
|
|
int type
|
|
);
|
|
|
|
~GUIDebugText();
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// Functions
|
|
//
|
|
public:
|
|
void
|
|
Draw();
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// Public Data
|
|
//
|
|
public:
|
|
enum{
|
|
IntType = 0,
|
|
ScalarType,
|
|
StringType,
|
|
Vector3DType,
|
|
YawPitchRollType
|
|
};
|
|
|
|
void
|
|
*debugData;
|
|
Stuff::MString
|
|
debugLabel;
|
|
int
|
|
debugType;
|
|
};
|
|
//####################################################################
|
|
//########################### GUITextManager ####################
|
|
//####################################################################
|
|
|
|
typedef Plug__ClassData GUITextManager__ClassData;
|
|
|
|
class GUITextManager:
|
|
public Plug
|
|
{
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// Inheritance Support
|
|
//
|
|
public:
|
|
typedef GUITextManager__ClassData ClassData;
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// Construction, Destruction
|
|
//
|
|
public:
|
|
static void
|
|
InitializeClass();
|
|
static void
|
|
TerminateClass();
|
|
|
|
GUITextManager(ClassData *class_data);
|
|
|
|
~GUITextManager();
|
|
|
|
void
|
|
TestInstance();
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// Class Data support
|
|
//
|
|
public:
|
|
static ClassData
|
|
*DefaultData;
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// GUI Initialization
|
|
//
|
|
public:
|
|
void
|
|
ReadObjectsFromNotation(Stuff::NotationFile *gui_contents);
|
|
|
|
void
|
|
SaveObjectsToStream(Stuff::MemoryStream *stream);
|
|
|
|
void
|
|
ReadObjectsFromStream(Stuff::MemoryStream *stream);
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// GUI Text Simulation
|
|
//
|
|
public:
|
|
void
|
|
Execute();
|
|
|
|
GUITextObject
|
|
*MakeNewTextObject(
|
|
const char *display_string,
|
|
int x_location,
|
|
int y_location,
|
|
HGOSFONT3D font_handle = NULL
|
|
);
|
|
|
|
void
|
|
AddTextObject(GUITextObject *text_object);
|
|
void
|
|
RemoveTextObject(GUITextObject *text_object);
|
|
void
|
|
RemoveTextObject(const MString& text_object_name);
|
|
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// GUI Debug Text Simulation
|
|
//
|
|
public:
|
|
GUIDebugText
|
|
*MakeNewDebugTextObject(
|
|
const char *debug_label,
|
|
void *value,
|
|
int type
|
|
);
|
|
|
|
void
|
|
RemoveDebugTextObject(const char *debug_label);
|
|
|
|
void
|
|
DrawDebugWindow();
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
// Public Data
|
|
//
|
|
public:
|
|
ChainOf<GUITextObject *>
|
|
guiTextObjects;
|
|
|
|
SortedChainOf<GUIDebugText *, MString>
|
|
guiDebugTextObjects;
|
|
|
|
HGOSFONT3D
|
|
debugFontHandle;
|
|
|
|
bool
|
|
debugScreenVisible;
|
|
|
|
static GUITextManager*
|
|
GetInstance()
|
|
{
|
|
return reinterpret_cast<GUITextManager *>( GlobalPointers::GetGlobalPointer(GUITextManagerGlobalPointerIndex));
|
|
};
|
|
|
|
};
|
|
}
|