foobar2000 SDK  2015-01-14
Public Member Functions | Private Member Functions | Private Attributes
win32_menu

#include <win-objects.h>

Public Member Functions

 win32_menu (HMENU p_initval)
 
 win32_menu ()
 
 ~win32_menu ()
 
void create_popup ()
 
HMENU detach ()
 
HMENU get () const
 
bool is_valid () const
 
void release ()
 
void set (HMENU p_menu)
 

Private Member Functions

 win32_menu (const win32_menu &)
 
const win32_menuoperator= (const win32_menu &)
 

Private Attributes

HMENU m_menu
 

Detailed Description

Definition at line 101 of file win-objects.h.

Constructor & Destructor Documentation

win32_menu::win32_menu ( HMENU  p_initval)
inline

Definition at line 103 of file win-objects.h.

103 : m_menu(p_initval) {}
HMENU m_menu
Definition: win-objects.h:117
win32_menu::win32_menu ( )
inline

Definition at line 104 of file win-objects.h.

104 : m_menu(NULL) {}
HMENU m_menu
Definition: win-objects.h:117
win32_menu::~win32_menu ( )
inline

Definition at line 105 of file win-objects.h.

105 {release();}
void release()
win32_menu::win32_menu ( const win32_menu )
private

Member Function Documentation

void win32_menu::create_popup ( )

Definition at line 187 of file win-objects.cpp.

187  {
188  release();
189  SetLastError(NO_ERROR);
190  m_menu = CreatePopupMenu();
191  if (m_menu == NULL) throw exception_win32(GetLastError());
192 }
HMENU m_menu
Definition: win-objects.h:117
void release()
HMENU win32_menu::detach ( )
inline

Definition at line 110 of file win-objects.h.

110 {return pfc::replace_t(m_menu,(HMENU)NULL);}
t_type replace_t(t_type &p_var, const t_newval &p_newval)
Definition: primitives.h:682
HMENU m_menu
Definition: win-objects.h:117
HMENU win32_menu::get ( ) const
inline

Definition at line 109 of file win-objects.h.

109 {return m_menu;}
HMENU m_menu
Definition: win-objects.h:117
bool win32_menu::is_valid ( ) const
inline

Definition at line 112 of file win-objects.h.

112 {return m_menu != NULL;}
HMENU m_menu
Definition: win-objects.h:117
const win32_menu& win32_menu::operator= ( const win32_menu )
private
void win32_menu::release ( )

Definition at line 180 of file win-objects.cpp.

180  {
181  if (m_menu != NULL) {
182  DestroyMenu(m_menu);
183  m_menu = NULL;
184  }
185 }
HMENU m_menu
Definition: win-objects.h:117
void win32_menu::set ( HMENU  p_menu)
inline

Definition at line 107 of file win-objects.h.

107 {release(); m_menu = p_menu;}
HMENU m_menu
Definition: win-objects.h:117
void release()

Field Documentation

HMENU win32_menu::m_menu
private

Definition at line 117 of file win-objects.h.


The documentation for this class was generated from the following files: