Page principale | Liste des namespaces | Hiérarchie des classes | Liste par ordre alphabétique | Liste des composants | Liste des fichiers | Membres des namespaces | Composants | Déclarations

# ExCWindowButtonSwitch.cpp

Aller à la documentation de ce fichier.

    00001 /*
    00002  * ExNihilo 3D Engine
    00003  *
    00004  *  This program is free software; you can redistribute it and/or modify
    00005  *  it under the terms of the GNU General Public License as published by
    00006  *  the Free Software Foundation; either version 2 of the License, or
    00007  *  (at your option) any later version.
    00008  *
    00009  *  This program is distributed in the hope that it will be useful,
    00010  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
    00011  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    00012  *  GNU Library General Public License for more details.
    00013  *
    00014  *  You should have received a copy of the GNU General Public License
    00015  *  along with this program; if not, write to the Free Software
    00016  *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
    00017  *
    00018  * Please read AUTHORS file !!!
    00019  *
    00020  *
    00021  */
    00022
    00023 #include "ExCWindowButtonSwitch.h"
    00024 //--------------------------------
    00025 // Constructor // Destructor
    00026 //--------------------------------
    00027 ExCWindowButtonSwitch::ExCWindowButtonSwitch(void)
    00028 {
    00029 Guard(ExCWindowButtonSwitch::ExCWindowButtonSwitch(void))
    00030         Init();
    00031 UnGuard
    00032 }
    00033
    00034 ExCWindowButtonSwitch::ExCWindowButtonSwitch(ExCVec2D Size,ExCVec2D Position)
    00035 {
    00036 Guard(ExCWindowButtonSwitch::ExCWindowButtonSwitch(ExCVec2D Size,ExCVec2D Position))
    00037         Init();
    00038         SetPosition(Position);
    00039         SetOldPosition(Position);
    00040         SetWindowSize(Size);
    00041         SetOldWindowSize(Size);
    00042 UnGuard
    00043 }
    00044
    00045 ExCWindowButtonSwitch::~ExCWindowButtonSwitch(void)
    00046 {
    00047 }
    00048 //--------------------------------
    00049 // Methode
    00050 //--------------------------------
    00051 void ExCWindowButtonSwitch::Init(void)
    00052 {
    00053 Guard(void ExCWindowButtonSwitch::Init(void))
    00054         ExCWindowObject::Init();
    00055         SetName("ExCWindowButtonSwitch");
    00056         SetType(typeid(this).name());
    00057         ShowWindowTitle(true);
    00058         m_StateButton=true;
    00059 UnGuard
    00060 }
    00061
    00062 void ExCWindowButtonSwitch::Draw(void)
    00063 {
    00064 Guard(void ExCWindowButtonSwitch::Draw(void))
    00065         ExCWindowObject::Draw();
    00066 UnGuard
    00067 }
    00068
    00069 ExCAction ExCWindowButtonSwitch::InputCommand(ExCCommand Command)
    00070 {
    00071 Guard(ExCAction ExCWindowButtonSwitch::InputCommand(ExCCommand Command))
    00072         //std::cout<<"ExCWindowButtonSwitch::Input Command window:"<<Command.m_Command<<std::endl;
    00073         for(unsigned int i=0;i<m_VecCommandAction.size();i++)
    00074         {
    00075                 if(m_VecCommandAction.at(i).first.m_Command==Command.m_Command)
    00076                 {
    00077                         SwitchValue();
    00078                         return m_VecCommandAction.at(i).second;
    00079                 }
    00080         }
    00081         return NOTHING;
    00082 UnGuard
    00083 }
    00084
    00085 ExCAction ExCWindowButtonSwitch::InputAction(ExCAction Action)
    00086 {
    00087 Guard(ExCAction ExCWindowButtonSwitch::InputAction(ExCAction Action))
    00088         return NOTHING;
    00089 UnGuard
    00090 }
    00091
    00092 void ExCWindowButtonSwitch::SwitchValue(void)
    00093 {
    00094 Guard(void ExCWindowButtonSwitch::SwitchValue(void))
    00095         ExCWindowButton *ValueSource;
    00096         if (m_StateButton)
    00097         {
    00098                 ValueSource=m_Butt1;
    00099                 m_StateButton=false;
    00100         }else
    00101         {
    00102                 ValueSource=m_Butt2;
    00103                 m_StateButton=true;
    00104         }
    00105         //Title
    00106         m_ShowWindowTitle=ValueSource->IsShowWindowTitle();
    00107         m_WindowTitle=ValueSource->GetWindowTitle();
    00108         m_WindowOldTitle=ValueSource->GetWindowOldTitle();
    00109         m_WindowTitleColor=ValueSource->GetWindowTitleColor();
    00110         //Color and blending
    00111         m_Blending=ValueSource->IsBackroundBlending();
    00112         m_BackroundBlending=ValueSource->GetBackroundBlending();
    00113         m_BackroundColor=ValueSource->GetBackroundColor();
    00114         //Border
    00115         m_BorderColor=ValueSource->GetBorderColor();
    00116         m_BorderSize=ValueSource->GetBorderSize();
    00117         m_ShowBorder=ValueSource->GetShowBorder();
    00118         //Texturing
    00119         m_BackroundIsTexturing1=ValueSource->IsBackroundTexturing1();
    00120         m_BackroundTexture1=ValueSource->GetBackroundTexture1();
    00121         m_BackroundIsTexturing2=ValueSource->IsBackroundTexturing2();
    00122         m_BackroundTexture2=ValueSource->GetBackroundTexture2();
    00123         m_TextureIsMouving=ValueSource->IsTextureIsMouving();
    00124         m_TextureMouvingVec=ValueSource->GetTextureMouvingVec();
    00125
    00126         m_VecCommandAction=ValueSource->GetVecActionCommand();
    00127 UnGuard
    00128 }