- Main Page
- Namespaces
- Classes
- Files
- Directories
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# Exponent::GUI::Controls::CPopupButton Interface Reference

Inheritance diagram for Exponent::GUI::Controls::CPopupButton:

List of all members.

## Detailed Description

Pops up a menu when the button is clicked.

Date:
  22/04/2005

Author:
  Paul Chana

Version:
  1.0.0 Initial version

Note:
  All contents of this source code are copyright 2005 Exp Digital Uk.
  This source file is covered by the licence conditions of the Infinity API. You should have recieved a copy
  with the source code. If you didnt, please refer to http://www.expdigital.co.uk All content is the Intellectual property of Exp Digital Uk.
  Certain sections of this code may come from other sources. They are credited where applicable.
  If you have comments, suggestions or bug reports please visit http://support.expdigital.co.uk

Id
  CPopupButton.hpp,v 1.6 2007/02/08 21:07:54 paul Exp

Definition at line 41 of file CPopupButton.hpp.

## Public Member Functions

- CPopupButton (IControlRoot *root, const long uniqueId, const CRect &area, CMenu *menu, IActionListener *listener)
- virtual CMenuEvent * getLastMenuEvent () const
- virtual const CMenu * getMenu () const
- virtual CMenuWindow * getMenuWindow () const
- virtual CMenu * getMutableMenu ()
- virtual void handleLeftButtonUp (CMouseEvent &event)
- virtual void handleMenuClosing (const CMenuEvent &event)
- virtual void handleMenuOpening (const CMenuEvent &event)
- virtual void handleMenuSelection (const CMenuEvent &event)
- virtual void setMenu (CMenu *menu)
- virtual void setMenuWindowAttributes (CWindowAttributes *windowAttributes, const bool useIcons=true)
- virtual ~CPopupButton ()

## Protected Attributes

- CMenu * m_menu
- CMenuWindow * m_menuWindow
- bool m_useIcons
- CWindowAttributes * m_windowAttributes
- CMenuEvent * myMenuEvent

## Constructor & Destructor Documentation

Exponent::GUI::Controls::CPopupButton::CPopupButton | ( | IControlRoot * | root,
|  | const long | uniqueId,
|  | const CRect & | area,
|  | CMenu * | menu,
|  | IActionListener * | listener |
| ) |  |  |

Construction

Parameters:

  | root | The root control that this control is being added to
  | uniqueId | The unique Identifier of this control or CCONTROL_NO_ID_REQUIRED if no id is required
  | area | The area of this control relative to the root controls top left
  | listener | The action listener
  | menu | The menu to display on click

virtual Exponent::GUI::Controls::CPopupButton::~CPopupButton | ( |  | ) | `[virtual]`

Destruction

## Member Function Documentation

virtual CMenuEvent* Exponent::GUI::Controls::CPopupButton::getLastMenuEvent | ( |  | ) | const`[inline, virtual]`

Get the last menu event

Return values:

  | CMenuEvent* | The last menu event recieved

Definition at line 118 of file CPopupButton.hpp.

References myMenuEvent.

virtual const CMenu* Exponent::GUI::Controls::CPopupButton::getMenu | ( |  | ) | const`[inline, virtual]`

Get the menu

Return values:

  | const | CMenu* The menu

Definition at line 112 of file CPopupButton.hpp.

References m_menu.

virtual CMenuWindow* Exponent::GUI::Controls::CPopupButton::getMenuWindow | ( |  | ) | const`[inline, virtual]`

Get the menu window

Return values:

  | CMenuWindow* | The menu window

Definition at line 133 of file CPopupButton.hpp.

References m_menuWindow.

virtual CMenu* Exponent::GUI::Controls::CPopupButton::getMutableMenu | ( |  | ) | `[inline, virtual]`

Get the menu

Return values:

  | CMenu* | The menu

Definition at line 106 of file CPopupButton.hpp.

References m_menu.

virtual void Exponent::GUI::Controls::CPopupButton::handleLeftButtonUp | ( | CMouseEvent & | event | ) | `[virtual]`

Handle left button being released

Parameters:

  | event | The event to handle

Implements Exponent::GUI::Controls::CLatchingButton.

virtual void Exponent::GUI::Controls::CPopupButton::handleMenuClosing | ( | const CMenuEvent & | event | ) | `[virtual]`

Handle a menu closing

Parameters:

  | event | The event to handle

virtual void Exponent::GUI::Controls::CPopupButton::handleMenuOpening | ( | const CMenuEvent & | event | ) | `[inline, virtual]`

Handle a menu opening

Parameters:

  | event | The event to handle

Definition at line 86 of file CPopupButton.hpp.

virtual void Exponent::GUI::Controls::CPopupButton::handleMenuSelection | ( | const CMenuEvent & | event | ) | `[virtual]`

Handle a menu selection

Parameters:

  | event | The event to handle

virtual void Exponent::GUI::Controls::CPopupButton::setMenu | ( | CMenu * | menu | ) | `[virtual]`

Set the menu

Parameters:

  | menu | The menu to display

virtual void Exponent::GUI::Controls::CPopupButton::setMenuWindowAttributes | ( | CWindowAttributes * | windowAttributes,
|  | const bool | useIcons = `true` |
| ) |  |  | `[virtual]`

Set menu window attributes

Parameters:

  | windowAttributes | The attributes for the menu window
  | useIcons | If true icons are displayed for menu items, if false they are not

## Member Data Documentation

CMenu* Exponent::GUI::Controls::CPopupButton::m_menu`[protected]`

The menu to display

Definition at line 141 of file CPopupButton.hpp.

Referenced by getMenu(), and getMutableMenu().

CMenuWindow* Exponent::GUI::Controls::CPopupButton::m_menuWindow`[protected]`

The menu window

Definition at line 142 of file CPopupButton.hpp.

Referenced by getMenuWindow().

bool Exponent::GUI::Controls::CPopupButton::m_useIcons`[protected]`

If true menu window draws icons

Definition at line 145 of file CPopupButton.hpp.

CWindowAttributes* Exponent::GUI::Controls::CPopupButton::m_windowAttributes`[protected]`

The window attributes

Definition at line 143 of file CPopupButton.hpp.

CMenuEvent* Exponent::GUI::Controls::CPopupButton::myMenuEvent`[protected]`

The menu event to send to listeners

Definition at line 144 of file CPopupButton.hpp.

Referenced by getLastMenuEvent().