72 lines
1.7 KiB
C++
Executable File
72 lines
1.7 KiB
C++
Executable File
//-----------------------------------------------------------------------------
|
|
// Torque Engine
|
|
//
|
|
// Copyright (C) GarageGames.com, Inc.
|
|
//-----------------------------------------------------------------------------
|
|
|
|
#ifndef _GUIBUTTONBASECTRL_H_
|
|
#define _GUIBUTTONBASECTRL_H_
|
|
|
|
#ifndef _GUICONTROL_H_
|
|
#include "gui/core/guiControl.h"
|
|
#endif
|
|
|
|
// all the button functionality is moving into buttonBase
|
|
// thus, all subclasses will just be rendering classes,
|
|
// and radios and check boxes can be done using pushbuttons
|
|
// or bitmap buttons.
|
|
|
|
class GuiButtonBaseCtrl : public GuiControl
|
|
{
|
|
typedef GuiControl Parent;
|
|
|
|
protected:
|
|
StringTableEntry mButtonText;
|
|
StringTableEntry mButtonTextID;
|
|
bool mDepressed;
|
|
bool mMouseOver;
|
|
bool mStateOn;
|
|
S32 mButtonType;
|
|
S32 mRadioGroup;
|
|
public:
|
|
enum {
|
|
ButtonTypePush,
|
|
ButtonTypeCheck,
|
|
ButtonTypeRadio,
|
|
};
|
|
|
|
GuiButtonBaseCtrl();
|
|
bool onWake();
|
|
|
|
DECLARE_CONOBJECT(GuiButtonBaseCtrl);
|
|
static void initPersistFields();
|
|
|
|
void setText(const char *text);
|
|
void setTextID(S32 id);
|
|
void setTextID(const char *id);
|
|
const char *getText();
|
|
void setStateOn( bool bStateOn );
|
|
|
|
void acceleratorKeyPress(U32 index);
|
|
void acceleratorKeyRelease(U32 index);
|
|
|
|
void onMouseDown(const GuiEvent &);
|
|
void onMouseUp(const GuiEvent &);
|
|
void onRightMouseUp(const GuiEvent &);
|
|
|
|
void onMouseEnter(const GuiEvent &);
|
|
void onMouseLeave(const GuiEvent &);
|
|
|
|
bool onKeyDown(const GuiEvent &event);
|
|
bool onKeyUp(const GuiEvent &event);
|
|
|
|
void setScriptValue(const char *value);
|
|
const char *getScriptValue();
|
|
|
|
void onMessage(GuiControl *,S32 msg);
|
|
void onAction();
|
|
|
|
};
|
|
|
|
#endif
|