//===========================================================================// // File: GUIObject.hpp // // Project: Adept // //---------------------------------------------------------------------------// // Date Who Modification // // -------- --- ---------------------------------------------------------- // // 04/21/99 DPB Initial coding. // //---------------------------------------------------------------------------// // Copyright (C) 1998-1999, Virtual World Entertainment, Inc. // // PROPRIETARY AND CONFIDENTIAL // //===========================================================================// #pragma once #include "Adept.hpp" #include "GUIObject.hpp" namespace Adept { //########################################################################## //########################### GUIStatBar ############################## //########################################################################## //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // The following helper classes must always be typedef'd or overriden by an // inheritor // typedef GUIObject__ClassData GUIStatBar__ClassData; typedef GUIObject__Message GUIStatBar__Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ class GUIStatBar: public GUIObject { //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Inheritance Support // public: typedef GUIStatBar__ClassData ClassData; typedef GUIStatBar__Message Message; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Construction, Destruction, Testing // public: static void InitializeClass(); static void TerminateClass(); GUIStatBar( ClassData *class_data, Stuff::Page *instance_page ); GUIStatBar( ClassData *class_data, Stuff::MemoryStream *stream ); void Save(Stuff::MemoryStream *stream); ~GUIStatBar(); void TestInstance(); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Simulation Support // public: enum{ VerticalDownType = 0, VerticalUpType, HorizontalLeftType, HorizontalRightType }; void LinkStatBar( Stuff::Scalar base_value, Stuff::Scalar *value ); void Draw(); Stuff::Scalar baseValue; Stuff::Scalar currentValue; Stuff::Scalar *dataPointer; int statBarType; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Class Data support // public: static ClassData *DefaultData; }; }