#include "AdeptHeaders.hpp" #include "GUIStatBar.hpp" #include "Tool.hpp" //############################################################################# //########################### GUIStatBar ################################# //############################################################################# GUIStatBar::ClassData* GUIStatBar::DefaultData = NULL; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // void GUIStatBar::InitializeClass() { Verify(!DefaultData); DefaultData = new ClassData( GUIStatBarClassID, "Adept::GUIStatBar", GUIObject::DefaultData, 0, NULL ); Register_Object(DefaultData); } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // void GUIStatBar::TerminateClass() { Unregister_Object(DefaultData); delete DefaultData; DefaultData = NULL; } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // GUIStatBar::GUIStatBar( ClassData *class_data, MemoryStream *stream ): GUIObject(class_data, stream) { Check_Pointer(this); Check_Object(stream); baseValue = -1.0f; currentValue = -1.0f; dataPointer = NULL; } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // GUIStatBar::GUIStatBar( ClassData *class_data, Page *instance_page ): GUIObject(class_data, instance_page) { Check_Pointer(this); Check_Object(instance_page); const char *bar_type; instance_page->GetEntry("StatBarType", &bar_type, true); if(!strcmp(bar_type, "VerticalDown")) { statBarType = VerticalDownType; } else if(!strcmp(bar_type, "VerticalUp")) { statBarType = VerticalUpType; } else if(!strcmp(bar_type, "HorizontalLeft")) { statBarType = HorizontalLeftType; } else if(!strcmp(bar_type, "HorizontalRight")) { statBarType = HorizontalRightType; } else { statBarType = -1; } baseValue = -1.0f; currentValue = -1.0f; dataPointer = NULL; } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // void GUIStatBar::Save(MemoryStream *stream) { Check_Object(this); Check_Object(stream); GUIObject::Save(stream); } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // GUIStatBar::~GUIStatBar() { } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // void GUIStatBar::LinkStatBar(Scalar base_value, Scalar *value) { Check_Object(this); Check_Pointer(value); Verify(base_value >= 0); baseValue = base_value; currentValue = *value; dataPointer = value; } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // void GUIStatBar::Draw() { Check_Object(this); if(!currentValue) return; if(statBarType == -1) return; switch(statBarType) { case VerticalUpType: { break; } case VerticalDownType: { break; } case HorizontalRightType: { break; } case HorizontalLeftType: { break; } }; GUIObject::Draw(); } //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // void GUIStatBar::TestInstance() { Verify(IsDerivedFrom(DefaultData)); }