CEGUIComboDropList.h

00001 /************************************************************************
00002         filename:       CEGUIComboDropList.h
00003         created:        13/6/2004
00004         author:         Paul D Turner
00005         
00006         purpose:        Interface for the Combobox Drop-List widget base class
00007 *************************************************************************/
00008 /*************************************************************************
00009     Crazy Eddie's GUI System (http://www.cegui.org.uk)
00010     Copyright (C)2004 - 2005 Paul D Turner (paul@cegui.org.uk)
00011 
00012     This library is free software; you can redistribute it and/or
00013     modify it under the terms of the GNU Lesser General Public
00014     License as published by the Free Software Foundation; either
00015     version 2.1 of the License, or (at your option) any later version.
00016 
00017     This library is distributed in the hope that it will be useful,
00018     but WITHOUT ANY WARRANTY; without even the implied warranty of
00019     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00020     Lesser General Public License for more details.
00021 
00022     You should have received a copy of the GNU Lesser General Public
00023     License along with this library; if not, write to the Free Software
00024     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00025 *************************************************************************/
00026 #ifndef _CEGUIComboDropList_h_
00027 #define _CEGUIComboDropList_h_
00028 
00029 #include "elements/CEGUIListbox.h"
00030 
00031 
00032 #if defined(_MSC_VER)
00033 #       pragma warning(push)
00034 #       pragma warning(disable : 4251)
00035 #endif
00036 
00037 
00038 // Start of CEGUI namespace section
00039 namespace CEGUI
00040 {
00045 class CEGUIEXPORT ComboDropList : public Listbox
00046 {
00047 public:
00048         static const String EventNamespace;                             
00049 
00050 
00051         /*************************************************************************
00052                 Constants
00053         *************************************************************************/
00054         // Event names
00055         static const String EventListSelectionAccepted;         
00056 
00057 
00068         virtual void    initialise(void);
00069 
00070 
00089         void    setArmed(bool setting)          { d_armed = setting; }
00090 
00091 
00102         bool    isArmed(void) const             { return d_armed; }
00103 
00104 
00116         void    setAutoArmEnabled(bool setting)         { d_autoArm = setting; }
00117 
00118 
00127         bool    isAutoArmEnabled(void) const            { return d_autoArm; }
00128 
00129 
00130         /*************************************************************************
00131                 Constructor & Destructor
00132         *************************************************************************/
00137         ComboDropList(const String& type, const String& name);
00138 
00139 
00144         virtual ~ComboDropList(void);
00145 
00146 
00147 protected:
00152         void    addComboDropListEvents(void);
00153 
00154 
00165         virtual bool    testClassName_impl(const String& class_name) const
00166         {
00167                 if (class_name==(const utf8*)"ComboDropList")   return true;
00168                 return Listbox::testClassName_impl(class_name);
00169         }
00170         
00171         /*************************************************************************
00172                 New event handlers
00173         *************************************************************************/
00178         void    onListSelectionAccepted(WindowEventArgs& e);
00179 
00180 
00181         /*************************************************************************
00182                 Overridden Event handling
00183         *************************************************************************/
00184         virtual void    onMouseMove(MouseEventArgs& e);
00185         virtual void    onMouseButtonDown(MouseEventArgs& e);
00186         virtual void    onMouseButtonUp(MouseEventArgs& e);
00187         virtual void    onCaptureLost(WindowEventArgs& e);
00188         virtual void    onActivated(ActivationEventArgs& e);
00189 
00190 
00191         /*************************************************************************
00192                 Implementation Data
00193         *************************************************************************/
00194         bool    d_autoArm;              
00195         bool    d_armed;                
00196 };
00197 
00198 } // End of  CEGUI namespace section
00199 
00200 #if defined(_MSC_VER)
00201 #       pragma warning(pop)
00202 #endif
00203 
00204 #endif  // end of guard _CEGUIComboDropList_h_

Generated on Sat Nov 26 09:34:48 2005 for Crazy Eddies GUI System by  doxygen 1.4.5