CheckBoxObject::CheckBoxObject(std::string name_) : Object(name_), borderWidth(1), padding(5) { //Create the SFGUI CheckBox object obj = sfg::CheckButton::Create("Texte"); SetString("Case à cocher"); //Default size of the object SetWidth(180); SetHeight(24); fontSize = 12; //Colors "Schemes" borderColor = new ColorScheme(sf::Color(146, 147, 151, 255), sf::Color(146, 147, 151, 255), sf::Color(146, 147, 151, 255), sf::Color(173, 173, 173, 255)); backgroundColor = new ColorScheme(sf::Color(255, 255, 255, 255), sf::Color(201, 201, 201, 255), sf::Color(230, 230, 230, 255), sf::Color(140, 140, 140, 255)); textColor = new ColorScheme(sf::Color(0, 0, 0, 255), sf::Color(0, 0, 0, 255), sf::Color(0, 0, 0, 255), sf::Color(100, 100, 100, 255)); checkColor = new ColorScheme(sf::Color(122, 122, 122, 255)); SetBoxSize(14); SetCheckSignSize(6); obj->SetPosition( sf::Vector2f( GetX(), GetY() ) ); obj->SetId(ToString<void*>(this)); ConnectSignals(); ResetEventInformations(); UpdateProperties(); }
void TConvex::Initialise() { SetBoxSize(1.0f, 1.0f, 1.0f); neT3 t; t.SetIdentity(); SetTransform(t); matIndex = 0; //id = 0; userData = 0; breakInfo.mass = 1.0f; breakInfo.inertiaTensor = neBoxInertiaTensor(1.0f, 1.0f, 1.0f, 1.0f); breakInfo.breakMagnitude = 0.0f; breakInfo.breakAbsorb = 0.5f; breakInfo.neighbourRadius = 0.0f; breakInfo.flag = neGeometry::NE_BREAK_DISABLE; //break all, breakInfo.breakPlane.SetZero(); }
//================================================================================== void SetBox(U8 _box_num, U16 _boxhl, U16 _boxhw, U16 _boxvt, U16 _boxvw) { SetBoxPos(_box_num,_boxhl,_boxvt); SetBoxSize(_box_num,_boxhw,_boxvw); }
void CheckBoxObject::LoadFromXml(const TiXmlElement * elem) { if ( elem->FirstChildElement( "String" ) == NULL || elem->FirstChildElement( "String" )->Attribute("value") == NULL ) { cout << "Les informations concernant le texte d'un objet Text manquent."; } else { SetString(elem->FirstChildElement("String")->Attribute("value")); } if ( elem->FirstChildElement( "Checked" ) == NULL || elem->FirstChildElement( "Checked" )->Attribute("value") == NULL ) { cout << "Les informations concernant le texte d'un objet Text manquent."; } else { int checked = 0; elem->FirstChildElement("Checked")->QueryIntAttribute("value", &checked); SetChecked(static_cast<bool>(checked)); } if ( elem->FirstChildElement( "Font" ) == NULL || elem->FirstChildElement( "Font" )->Attribute("value") == NULL ) { cout << "Les informations concernant la police d'un objet Text manquent."; } else { SetFont(elem->FirstChildElement("Font")->Attribute("value")); } if ( elem->FirstChildElement( "CharacterSize" ) == NULL || elem->FirstChildElement( "CharacterSize" )->Attribute("value") == NULL ) { cout << "Les informations concernant la taille du texte d'un objet Text manquent."; } else { float size = 12; elem->FirstChildElement("CharacterSize")->QueryFloatAttribute("value", &size); SetCharacterSize(size); } //Background Scheme if ( elem->FirstChildElement( "BackgroundColorScheme" ) == NULL ) { cout << "Widgets Extension Warning : Unable to load background color full scheme."; } else { backgroundColor->LoadFromXml(elem->FirstChildElement( "BackgroundColorScheme" )); } //Border Scheme if ( elem->FirstChildElement( "BorderColorScheme" ) == NULL ) { cout << "Widgets Extension Warning : Unable to load border color full scheme."; } else { borderColor->LoadFromXml(elem->FirstChildElement( "BorderColorScheme" )); } //Text Scheme if ( elem->FirstChildElement( "TextColorScheme" ) == NULL ) { cout << "Widgets Extension Warning : Unable to load text color full scheme."; } else { textColor->LoadFromXml(elem->FirstChildElement( "TextColorScheme" )); } //Check Scheme if ( elem->FirstChildElement( "CheckColorScheme" ) == NULL ) { cout << "Widgets Extension Warning : Unable to load check color full scheme."; } else { checkColor->LoadFromXml(elem->FirstChildElement( "CheckColorScheme" )); } if ( elem->FirstChildElement( "BorderWidth" ) == NULL || elem->FirstChildElement( "BorderWidth" )->Attribute("value") == NULL ) { cout << "Widgets Extension Warning : Unable to load width of border"; } else { float borderW = 12; elem->FirstChildElement("BorderWidth")->QueryFloatAttribute("value", &borderW); SetBorderWidth(borderW); } if ( elem->FirstChildElement( "Padding" ) == NULL || elem->FirstChildElement( "Padding" )->Attribute("value") == NULL ) { cout << "Widgets Extension Warning : Unable to load padding"; } else { float pad = 12; elem->FirstChildElement("Padding")->QueryFloatAttribute("value", &pad); SetPadding(pad); } if ( elem->FirstChildElement( "BoxSize" ) == NULL || elem->FirstChildElement( "BoxSize" )->Attribute("value") == NULL ) { cout << "Widgets Extension Warning : Unable to load box size"; } else { int boxS = 14; elem->FirstChildElement("BoxSize")->QueryIntAttribute("value", &boxS); SetBoxSize(boxS); } if ( elem->FirstChildElement( "CheckSignSize" ) == NULL || elem->FirstChildElement( "CheckSignSize" )->Attribute("value") == NULL ) { cout << "Widgets Extension Warning : Unable to load check sign size"; } else { int checkS = 6; elem->FirstChildElement("CheckSignSize")->QueryIntAttribute("value", &checkS); SetCheckSignSize(checkS); } UpdateProperties(); }
void CreateDestroyTownInfoBox( void ) { // create destroy pop up box for town/mine info static BOOLEAN fCreated = FALSE; SGPRect pDimensions; SGPPoint pPosition; INT8 bTownId = 0; if( ( fCreated == FALSE ) && ( fShowTownInfo == TRUE ) ) { // create pop up box CreateTownInfoBox( ); // decide what kind of text to add to display if ( bCurrentTownMineSectorZ == 0 ) { // only show the mine info when mines button is selected, otherwise we need to see the sector's regular town info if ( ( IsThereAMineInThisSector( bCurrentTownMineSectorX, bCurrentTownMineSectorY ) == TRUE) && fShowMineFlag ) { AddTextToMineBox( ); } else { bTownId = GetTownIdForSector( bCurrentTownMineSectorX, bCurrentTownMineSectorY ); // do we add text for the town box? if( bTownId != BLANK_SECTOR ) { // add text for town box AddTextToTownBox( ); } else { // just a blank sector (handles SAM sites if visible) AddTextToBlankSectorBox( ); } } // add "militia", "militia training", "control" "enemy forces", etc. lines text to any popup box AddCommonInfoToBox(); } else // underground { // sector AddSectorToBox(); } AddItemsInSectorToBox(); // set font type SetBoxFont(ghTownMineBox, BLOCKFONT2); // set highlight color SetBoxHighLight(ghTownMineBox, FONT_WHITE); SetBoxSecondColumnForeground( ghTownMineBox, FONT_WHITE ); SetBoxSecondColumnBackground( ghTownMineBox, FONT_BLACK ); SetBoxSecondColumnHighLight( ghTownMineBox, FONT_WHITE ); SetBoxSecondColumnShade( ghTownMineBox, FONT_BLACK ); SetBoxSecondColumnFont( ghTownMineBox, BLOCKFONT2 ); SetBoxSecondColumnMinimumOffset( ghTownMineBox, 20 ); // unhighlighted color SetBoxForeground(ghTownMineBox, FONT_YELLOW); // background color SetBoxBackground(ghTownMineBox, FONT_BLACK); // shaded color..for darkened text SetBoxShade( ghTownMineBox, FONT_BLACK ); // give title line (0) different color from the rest SetBoxLineForeground( ghTownMineBox, 0, FONT_LTGREEN ); // ressize box to text ResizeBoxToText( ghTownMineBox ); // make box bigger to this size GetBoxSize( ghTownMineBox , &pDimensions ); if( pDimensions.iRight < BOX_BUTTON_WIDTH ) { // resize box to fit button pDimensions.iRight += BOX_BUTTON_WIDTH; } pDimensions.iBottom += BOX_BUTTON_HEIGHT; SetBoxSize( ghTownMineBox, pDimensions ); ShowBox( ghTownMineBox ); // now position box MinWidthOfTownMineInfoBox( ); PositionTownMineInfoBox( ); // now add the button AddInventoryButtonForMapPopUpBox( ); // now position box PositionTownMineInfoBox( ); fCreated = TRUE; } else if( ( fCreated == TRUE ) && ( fShowTownInfo == FALSE ) ) { // get box size GetBoxSize( ghTownMineBox, &pDimensions ); // get position GetBoxPosition( ghTownMineBox, &pPosition); // destroy pop up box RemoveBox( ghTownMineBox ); ghTownMineBox = -1; // remove inventory button RemoveInventoryButtonForMapPopUpBox( ); // restore background RestoreExternBackgroundRect( ( INT16 )pPosition.iX, ( INT16 )pPosition.iY, ( INT16 ) ( pDimensions.iRight - pDimensions.iLeft ), ( INT16 ) ( pDimensions.iBottom - pDimensions.iTop + 3 ) ); fCreated = FALSE; } return; }