Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# OgreGuiElementCommands.cpp

Go to the documentation of this file.

    00001 /*
    00002 -----------------------------------------------------------------------------
    00003 This source file is part of OGRE
    00004     (Object-oriented Graphics Rendering Engine)
    00005 For the latest info, see http://www.ogre3d.org/
    00006
    00007 Copyright © 2000-2002 The OGRE Team
    00008 Also see acknowledgements in Readme.html
    00009
    00010 This program is free software; you can redistribute it and/or modify it under
    00011 the terms of the GNU Lesser General Public License as published by the Free Software
    00012 Foundation; either version 2 of the License, or (at your option) any later
    00013 version.
    00014
    00015 This program is distributed in the hope that it will be useful, but WITHOUT
    00016 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
    00017 FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
    00018
    00019 You should have received a copy of the GNU Lesser General Public License along with
    00020 this program; if not, write to the Free Software Foundation, Inc., 59 Temple
    00021 Place - Suite 330, Boston, MA 02111-1307, USA, or go to
    00022 http://www.gnu.org/copyleft/lesser.txt.
    00023 -----------------------------------------------------------------------------
    00024 */
    00025 #include "OgreStableHeaders.h"
    00026 #include "OgreGuiElementCommands.h"
    00027 #include "OgreGuiElement.h"
    00028 #include "OgreStringConverter.h"
    00029
    00030
    00031 namespace Ogre {
    00032
    00033     namespace GuiElementCommands {
    00034
    00035         //-----------------------------------------------------------------------
    00036         String CmdLeft::doGet(const void* target) const
    00037         {
    00038             return StringConverter::toString(
    00039                 static_cast<const GuiElement*>(target)->getLeft() );
    00040         }
    00041         void CmdLeft::doSet(void* target, const String& val)
    00042         {
    00043             static_cast<GuiElement*>(target)->setLeft(StringConverter::parseReal(val));
    00044         }
    00045         //-----------------------------------------------------------------------
    00046         String CmdTop::doGet(const void* target) const
    00047         {
    00048             return StringConverter::toString(
    00049                 static_cast<const GuiElement*>(target)->getTop() );
    00050         }
    00051         void CmdTop::doSet(void* target, const String& val)
    00052         {
    00053             static_cast<GuiElement*>(target)->setTop(StringConverter::parseReal(val));
    00054         }
    00055         //-----------------------------------------------------------------------
    00056         String CmdWidth::doGet(const void* target) const
    00057         {
    00058             return StringConverter::toString(
    00059                 static_cast<const GuiElement*>(target)->getWidth() );
    00060         }
    00061         void CmdWidth::doSet(void* target, const String& val)
    00062         {
    00063             static_cast<GuiElement*>(target)->setWidth(StringConverter::parseReal(val));
    00064         }
    00065         //-----------------------------------------------------------------------
    00066         String CmdHeight::doGet(const void* target) const
    00067         {
    00068             return StringConverter::toString(
    00069                 static_cast<const GuiElement*>(target)->getHeight() );
    00070         }
    00071         void CmdHeight::doSet(void* target, const String& val)
    00072         {
    00073             static_cast<GuiElement*>(target)->setHeight(StringConverter::parseReal(val));
    00074         }
    00075         //-----------------------------------------------------------------------
    00076         String CmdMaterial::doGet(const void* target) const
    00077         {
    00078             return static_cast<const GuiElement*>(target)->getMaterialName();
    00079         }
    00080         void CmdMaterial::doSet(void* target, const String& val)
    00081         {
    00082             if (val != "")
    00083             {
    00084                 static_cast<GuiElement*>(target)->setMaterialName(val);
    00085             }
    00086         }
    00087         //-----------------------------------------------------------------------
    00088         //-----------------------------------------------------------------------
    00089         String CmdCaption::doGet(const void* target) const
    00090         {
    00091             return static_cast<const GuiElement*>(target)->getCaption();
    00092         }
    00093         void CmdCaption::doSet(void* target, const String& val)
    00094         {
    00095             static_cast<GuiElement*>(target)->setCaption(val);
    00096         }
    00097         //-----------------------------------------------------------------------
    00098         //-----------------------------------------------------------------------
    00099         //-----------------------------------------------------------------------
    00100         String CmdMetricsMode::doGet(const void* target) const
    00101         {
    00102             GuiMetricsMode gmm =
    00103                 static_cast<const GuiElement*>(target)->getMetricsMode();
    00104
    00105             switch (gmm)
    00106             {
    00107             case GMM_PIXELS :
    00108                 return "pixels";
    00109
    00110             case GMM_RELATIVE_ASPECT_ADJUSTED :
    00111                 return "relative_aspect_adjusted";
    00112
    00113             default :
    00114                 return "relative";
    00115             }
    00116         }
    00117         void CmdMetricsMode::doSet(void* target, const String& val)
    00118         {
    00119             if (val == "pixels")
    00120             {
    00121                 static_cast<GuiElement*>(target)->setMetricsMode(GMM_PIXELS);
    00122             }
    00123             else if (val == "relative_aspect_adjusted")
    00124             {
    00125                 static_cast<GuiElement*>(target)->setMetricsMode(GMM_RELATIVE_ASPECT_ADJUSTED);
    00126             }
    00127             else
    00128             {
    00129                 static_cast<GuiElement*>(target)->setMetricsMode(GMM_RELATIVE);
    00130             }
    00131         }
    00132         //-----------------------------------------------------------------------
    00133         //-----------------------------------------------------------------------
    00134         //-----------------------------------------------------------------------
    00135         String CmdHorizontalAlign::doGet(const void* target) const
    00136         {
    00137             GuiHorizontalAlignment gha =
    00138                 static_cast<const GuiElement*>(target)->getHorizontalAlignment();
    00139             switch(gha)
    00140             {
    00141             case GHA_LEFT:
    00142                 return "left";
    00143             case GHA_RIGHT:
    00144                 return "right";
    00145             case GHA_CENTER:
    00146                 return "center";
    00147             }
    00148             // To keep compiler happy
    00149             return "center";
    00150         }
    00151         void CmdHorizontalAlign::doSet(void* target, const String& val)
    00152         {
    00153             if (val == "left")
    00154             {
    00155                 static_cast<GuiElement*>(target)->setHorizontalAlignment(GHA_LEFT);
    00156             }
    00157             else if (val == "right")
    00158             {
    00159                 static_cast<GuiElement*>(target)->setHorizontalAlignment(GHA_RIGHT);
    00160             }
    00161             else
    00162             {
    00163                 static_cast<GuiElement*>(target)->setHorizontalAlignment(GHA_CENTER);
    00164             }
    00165         }
    00166         //-----------------------------------------------------------------------
    00167         //-----------------------------------------------------------------------
    00168         //-----------------------------------------------------------------------
    00169         String CmdVerticalAlign::doGet(const void* target) const
    00170         {
    00171             GuiVerticalAlignment gva =
    00172                 static_cast<const GuiElement*>(target)->getVerticalAlignment();
    00173             switch(gva)
    00174             {
    00175             case GVA_TOP:
    00176                 return "top";
    00177             case GVA_BOTTOM:
    00178                 return "bottom";
    00179             case GVA_CENTER:
    00180                 return "center";
    00181             }
    00182             // To keep compiler happy
    00183             return "center";
    00184         }
    00185         void CmdVerticalAlign::doSet(void* target, const String& val)
    00186         {
    00187             if (val == "top")
    00188             {
    00189                 static_cast<GuiElement*>(target)->setVerticalAlignment(GVA_TOP);
    00190             }
    00191             else if (val == "bottom")
    00192             {
    00193                 static_cast<GuiElement*>(target)->setVerticalAlignment(GVA_BOTTOM);
    00194             }
    00195             else
    00196             {
    00197                 static_cast<GuiElement*>(target)->setVerticalAlignment(GVA_CENTER);
    00198             }
    00199         }
    00200         //-----------------------------------------------------------------------
    00201         //-----------------------------------------------------------------------
    00202         //-----------------------------------------------------------------------
    00203         //-----------------------------------------------------------------------
    00204         String CmdVisible::doGet(const void* target) const
    00205         {
    00206             bool visible =
    00207                 static_cast<const GuiElement*>(target)->isVisible();
    00208             switch(visible)
    00209             {
    00210             case true:
    00211                 return "true";
    00212             case false:
    00213                 return "false";
    00214             }
    00215             // To keep compiler happy
    00216             return "true";
    00217         }
    00218         void CmdVisible::doSet(void* target, const String& val)
    00219         {
    00220             if (val == "true")
    00221             {
    00222                 static_cast<GuiElement*>(target)->show();
    00223             }
    00224             else if (val == "false")
    00225             {
    00226                 static_cast<GuiElement*>(target)->hide();
    00227             }
    00228         }
    00229         //-----------------------------------------------------------------------
    00230     }
    00231 }
    00232

Copyright © 2002-2003 by The OGRE Team
Last modified Sun Nov 28 19:48:28 2004