vdr  2.6.9
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
cOsdMenu Class Reference

#include <osdbase.h>

Public Member Functions

 cOsdMenu (const char *Title, int c0=0, int c1=0, int c2=0, int c3=0, int c4=0)
 
virtual ~cOsdMenu ()
 
virtual bool NeedsFastResponse (void)
 
void SetMenuCategory (eMenuCategory MenuCategory)
 
void SetMenuSortMode (eMenuSortMode MenuSortMode)
 
int Current (void) const
 
void Add (cOsdItem *Item, bool Current=false, cOsdItem *After=NULL)
 
void Ins (cOsdItem *Item, bool Current=false, cOsdItem *Before=NULL)
 
virtual void Display (void)
 
virtual eOSState ProcessKey (eKeys Key)
 
- Public Member Functions inherited from cOsdObject
 cOsdObject (bool FastResponse=false)
 
virtual ~cOsdObject ()
 
bool IsMenu (void) const
 
virtual void Show (void)
 
- Public Member Functions inherited from cList< cOsdItem >
 cList (const char *NeedsLocking=NULL)
 
const cOsdItemGet (int Index) const
 
cOsdItemGet (int Index)
 
const cOsdItemFirst (void) const
 
cOsdItemFirst (void)
 
const cOsdItemLast (void) const
 
cOsdItemLast (void)
 
const cOsdItemPrev (const cOsdItem *Object) const
 
cOsdItemPrev (const cOsdItem *Object)
 
const cOsdItemNext (const cOsdItem *Object) const
 
cOsdItemNext (const cOsdItem *Object)
 
- Public Member Functions inherited from cListBase
virtual ~cListBase ()
 
bool Lock (cStateKey &StateKey, bool Write=false, int TimeoutMs=0) const
 
void SetSyncStateKey (cStateKey &StateKey)
 
void SetUseGarbageCollector (void)
 
void SetExplicitModify (void)
 
void SetModified (void)
 
void Add (cListObject *Object, cListObject *After=NULL)
 
void Ins (cListObject *Object, cListObject *Before=NULL)
 
void Del (cListObject *Object, bool DeleteObject=true)
 
virtual void Move (int From, int To)
 
void Move (cListObject *From, cListObject *To)
 
bool Contains (const cListObject *Object) const
 
const cListObjectGet (int Index) const
 
cListObjectGet (int Index)
 
int Count (void) const
 
void Sort (void)
 

Protected Member Functions

void SetDisplayMenu (void)
 
cSkinDisplayMenuDisplayMenu (void)
 
const char * hk (const char *s)
 
void SetCols (int c0, int c1=0, int c2=0, int c3=0, int c4=0)
 
void SetHasHotkeys (bool HasHotkeys=true)
 
virtual void Clear (void)
 
const char * Title (void)
 
bool SelectableItem (int idx)
 
void SetCurrent (cOsdItem *Item)
 
void RefreshCurrent (void)
 
void DisplayCurrent (bool Current)
 
void DisplayItem (cOsdItem *Item)
 
void CursorUp (void)
 
void CursorDown (void)
 
void PageUp (void)
 
void PageDown (void)
 
void Mark (void)
 
eOSState HotKey (eKeys Key)
 
eOSState AddSubMenu (cOsdMenu *SubMenu)
 
eOSState CloseSubMenu (bool ReDisplay=true)
 
bool HasSubMenu (void)
 
cOsdMenuSubMenu (void)
 
void SetStatus (const char *s)
 
void SetTitle (const char *Title)
 
void SetHelp (const char *Red, const char *Green=NULL, const char *Yellow=NULL, const char *Blue=NULL)
 
virtual void Del (int Index)
 
- Protected Member Functions inherited from cOsdObject
void SetNeedsFastResponse (bool NeedsFastResponse)
 
- Protected Member Functions inherited from cListBase
 cListBase (const char *NeedsLocking=NULL)
 

Private Member Functions

void DisplayHelp (bool Force=false)
 

Private Attributes

int displayMenuItems
 
char * title
 
int cols [cSkinDisplayMenu::MaxTabs]
 
int first
 
int current
 
int marked
 
int lastOffset
 
eMenuCategory menuCategory
 
eMenuSortMode menuSortMode
 
eMenuOrientation menuOrientation
 
cOsdMenusubMenu
 
const char * helpRed
 
const char * helpGreen
 
const char * helpYellow
 
const char * helpBlue
 
bool helpDisplayed
 
char * status
 
int digit
 
bool hasHotkeys
 

Static Private Attributes

static cSkinDisplayMenudisplayMenu = NULL
 
static int displayMenuCount = 0
 
static int osdState = 0
 

Additional Inherited Members

- Protected Attributes inherited from cListBase
cListObjectobjects
 
cListObjectlastObject
 
int count
 
cStateLock stateLock
 
const char * needsLocking
 
bool useGarbageCollector
 

Detailed Description

Definition at line 85 of file osdbase.h.

Constructor & Destructor Documentation

◆ cOsdMenu()

cOsdMenu::cOsdMenu ( const char *  Title,
int  c0 = 0,
int  c1 = 0,
int  c2 = 0,
int  c3 = 0,
int  c4 = 0 
)

◆ ~cOsdMenu()

cOsdMenu::~cOsdMenu ( )
virtual

Member Function Documentation

◆ Add()

void cOsdMenu::Add ( cOsdItem Item,
bool  Current = false,
cOsdItem After = NULL 
)

◆ AddSubMenu()

eOSState cOsdMenu::AddSubMenu ( cOsdMenu SubMenu)
protected

◆ Clear()

void cOsdMenu::Clear ( void  )
protectedvirtual

◆ CloseSubMenu()

eOSState cOsdMenu::CloseSubMenu ( bool  ReDisplay = true)
protected

◆ Current()

int cOsdMenu::Current ( void  ) const
inline

◆ CursorDown()

void cOsdMenu::CursorDown ( void  )
protected

◆ CursorUp()

void cOsdMenu::CursorUp ( void  )
protected

◆ Del()

void cOsdMenu::Del ( int  Index)
protectedvirtual

◆ Display()

void cOsdMenu::Display ( void  )
virtual

Reimplemented in cMenuEvent, cMenuText, and cMenuRecording.

Definition at line 227 of file osdbase.c.

References cSkinDisplayMenu::Clear(), cols, cListBase::count, cListBase::Count(), current, Display(), DisplayHelp(), displayMenu, displayMenuItems, first, cList< cOsdItem >::First(), cList< cOsdItem >::Get(), isempty(), max(), cSkinDisplayMenu::MaxItems(), menuCategory, cSkinDisplayMenu::MenuCategory(), menuOrientation, cSkinDisplayMenu::MenuOrientation(), menuSortMode, min(), cStatus::MsgOsdClear(), cStatus::MsgOsdCurrentItem(), cStatus::MsgOsdItem(), cStatus::MsgOsdTitle(), mtStatus, cList< cOsdItem >::Next(), cOsdProvider::OsdSizeChanged(), osdState, SetDisplayMenu(), cSkinDisplayMenu::SetMenuCategory(), cSkinDisplayMenu::SetMenuSortMode(), cSkinDisplayMenu::SetMessage(), cSkinDisplayMenu::SetScrollbar(), cSkinDisplayMenu::SetTabs(), cSkinDisplayMenu::SetTitle(), status, subMenu, and title.

Referenced by AddSubMenu(), CloseSubMenu(), cMenuFolder::cMenuFolder(), cMenuPathEdit::cMenuPathEdit(), cMenuRecordings::cMenuRecordings(), cMenuWhatsOn::cMenuWhatsOn(), CursorDown(), CursorUp(), cMenuTimers::Delete(), cMenuFolder::Delete(), cMenuRecordings::Delete(), cMenuRecording::Display(), cMenuText::Display(), cMenuEvent::Display(), Display(), HotKey(), cMenuChannels::Number(), PageDown(), PageUp(), cMenuChannels::ProcessKey(), cMenuTimers::ProcessKey(), cMenuWhatsOn::ProcessKey(), cMenuSchedule::ProcessKey(), cMenuSetupPlugins::ProcessKey(), cMenuSetup::ProcessKey(), cMenuEditTimer::ProcessKey(), cMenuMain::ProcessKey(), cMenuRecordings::ProcessKey(), cHdffSetupPage::ProcessKey(), cMenuChannels::Propagate(), cMenuWhatsOn::Record(), cMenuSchedule::Record(), cMenuChannels::Set(), cMenuRecordings::Set(), cMenuSchedule::Set(), cMenuTimers::Set(), cMenuCam::Set(), cMenuRecordingEdit::Set(), cMenuSetupOSD::Set(), cMenuSetupMisc::Set(), cMenuMain::Set(), cMenuEditTimer::SetFirstDayItem(), cMenuPathEdit::SetFolder(), cMenuRecordingEdit::SetFolder(), cMenuFolder::SetFolder(), cMenuEditTimer::SetFolder(), cMenuEditTimer::SetPatternItem(), cMenuEditChannel::Setup(), cMenuSetupEPG::Setup(), cMenuSetupDVB::Setup(), cMenuSetupLNB::Setup(), and cHdffMenu::SetVideoConversion().

◆ DisplayCurrent()

void cOsdMenu::DisplayCurrent ( bool  Current)
protected

◆ DisplayHelp()

void cOsdMenu::DisplayHelp ( bool  Force = false)
private

◆ DisplayItem()

void cOsdMenu::DisplayItem ( cOsdItem Item)
protected

◆ DisplayMenu()

cSkinDisplayMenu* cOsdMenu::DisplayMenu ( void  )
inlineprotected

◆ HasSubMenu()

bool cOsdMenu::HasSubMenu ( void  )
inlineprotected

◆ hk()

const char * cOsdMenu::hk ( const char *  s)
protected

◆ HotKey()

eOSState cOsdMenu::HotKey ( eKeys  Key)
protected

◆ Ins()

void cOsdMenu::Ins ( cOsdItem Item,
bool  Current = false,
cOsdItem Before = NULL 
)

Definition at line 220 of file osdbase.c.

References current, Current(), cListObject::Index(), and cListBase::Ins().

Referenced by cMenuEditTimer::SetPatternItem().

◆ Mark()

void cOsdMenu::Mark ( void  )
protected

Definition at line 492 of file osdbase.c.

References cListBase::Count(), current, marked, SetStatus(), and tr.

Referenced by cMenuChannels::ProcessKey().

◆ NeedsFastResponse()

virtual bool cOsdMenu::NeedsFastResponse ( void  )
inlinevirtual

Reimplemented from cOsdObject.

Definition at line 135 of file osdbase.h.

References cOsdObject::NeedsFastResponse(), NeedsFastResponse(), and subMenu.

Referenced by NeedsFastResponse().

◆ PageDown()

void cOsdMenu::PageDown ( void  )
protected

◆ PageUp()

void cOsdMenu::PageUp ( void  )
protected

◆ ProcessKey()

eOSState cOsdMenu::ProcessKey ( eKeys  Key)
virtual

Reimplemented from cOsdObject.

Reimplemented in cPictureMenu, cHdffSetupPage, cHdffMenu, cMenuSetupPage, cMenuRecordings, cMenuMain, cMenuEvent, cMenuEditTimer, cMenuCommands, cMenuFolder, cMenuText, cMenuSetup, cMenuSetupPlugins, cMenuSetupMisc, cMenuSetupCAM, cMenuSetupLNB, cMenuSetupDVB, cMenuSetupEPG, cMenuSetupOSD, cMenuRecording, cMenuRecordingEdit, cMenuPathEdit, cMenuCam, cMenuSchedule, cMenuWhatsOn, cMenuTimers, cMenuEditFolder, cMenuChannels, and cMenuEditChannel.

Definition at line 536 of file osdbase.c.

References CloseSubMenu(), current, CursorDown(), CursorUp(), DisplayCurrent(), cList< cOsdItem >::Get(), hasHotkeys, HotKey(), k0, k1, k_Repeat, kBack, kDown, kLeft, kOk, kRight, kUp, marked, menuOrientation, moHorizontal, cListBase::Move(), osBack, osContinue, osUnknown, PageDown(), PageUp(), cOsdItem::ProcessKey(), ProcessKey(), SetStatus(), and subMenu.

Referenced by cMenuEditChannel::ProcessKey(), cMenuChannels::ProcessKey(), cMenuEditFolder::ProcessKey(), cMenuTimers::ProcessKey(), cMenuWhatsOn::ProcessKey(), cMenuSchedule::ProcessKey(), cMenuCam::ProcessKey(), cMenuPathEdit::ProcessKey(), cMenuRecordingEdit::ProcessKey(), cMenuRecording::ProcessKey(), cMenuSetupCAM::ProcessKey(), cMenuSetupPlugins::ProcessKey(), cMenuSetup::ProcessKey(), cMenuText::ProcessKey(), cMenuFolder::ProcessKey(), cMenuCommands::ProcessKey(), cMenuEditTimer::ProcessKey(), cMenuEvent::ProcessKey(), cMenuMain::ProcessKey(), cMenuRecordings::ProcessKey(), cMenuSetupPage::ProcessKey(), ProcessKey(), cHdffMenu::ProcessKey(), and cPictureMenu::ProcessKey().

◆ RefreshCurrent()

void cOsdMenu::RefreshCurrent ( void  )
protected

Definition at line 290 of file osdbase.c.

References current, cList< cOsdItem >::Get(), and cOsdItem::Set().

Referenced by CloseSubMenu(), HotKey(), and cMenuTimers::OnOff().

◆ SelectableItem()

bool cOsdMenu::SelectableItem ( int  idx)
protected

Definition at line 340 of file osdbase.c.

References cList< cOsdItem >::Get(), and cOsdItem::Selectable().

Referenced by CursorDown(), CursorUp(), Del(), PageDown(), and PageUp().

◆ SetCols()

void cOsdMenu::SetCols ( int  c0,
int  c1 = 0,
int  c2 = 0,
int  c3 = 0,
int  c4 = 0 
)
protected

◆ SetCurrent()

void cOsdMenu::SetCurrent ( cOsdItem Item)
protected

◆ SetDisplayMenu()

void cOsdMenu::SetDisplayMenu ( void  )
protected

Definition at line 128 of file osdbase.c.

References cSkinDisplayMenu::Clear(), cSkins::Current(), displayMenu, cSkin::DisplayMenu(), and Skins.

Referenced by cOsdMenu(), and Display().

◆ SetHasHotkeys()

void cOsdMenu::SetHasHotkeys ( bool  HasHotkeys = true)
protected

◆ SetHelp()

void cOsdMenu::SetHelp ( const char *  Red,
const char *  Green = NULL,
const char *  Yellow = NULL,
const char *  Blue = NULL 
)
protected

◆ SetMenuCategory()

void cOsdMenu::SetMenuCategory ( eMenuCategory  MenuCategory)

◆ SetMenuSortMode()

void cOsdMenu::SetMenuSortMode ( eMenuSortMode  MenuSortMode)

Definition at line 123 of file osdbase.c.

References menuSortMode.

Referenced by cMenuChannels::Set(), and cMenuRecordings::Set().

◆ SetStatus()

void cOsdMenu::SetStatus ( const char *  s)
protected

Definition at line 167 of file osdbase.c.

References displayMenu, mtStatus, cSkinDisplayMenu::SetMessage(), and status.

Referenced by Clear(), Mark(), and ProcessKey().

◆ SetTitle()

void cOsdMenu::SetTitle ( const char *  Title)
protected

◆ SubMenu()

cOsdMenu* cOsdMenu::SubMenu ( void  )
inlineprotected

◆ Title()

const char* cOsdMenu::Title ( void  )
inlineprotected

Definition at line 112 of file osdbase.h.

References title.

Referenced by cOsdMenu(), cMenuFolder::DescendPath(), cMenuCommands::Execute(), cMenuFolder::Select(), and SetTitle().

Member Data Documentation

◆ cols

int cOsdMenu::cols[cSkinDisplayMenu::MaxTabs]
private

Definition at line 92 of file osdbase.h.

Referenced by Display(), and SetCols().

◆ current

int cOsdMenu::current
private

◆ digit

int cOsdMenu::digit
private

Definition at line 102 of file osdbase.h.

Referenced by cOsdMenu(), hk(), and SetHasHotkeys().

◆ displayMenu

cSkinDisplayMenu * cOsdMenu::displayMenu = NULL
staticprivate

◆ displayMenuCount

int cOsdMenu::displayMenuCount = 0
staticprivate

Definition at line 88 of file osdbase.h.

Referenced by cOsdMenu(), and ~cOsdMenu().

◆ displayMenuItems

int cOsdMenu::displayMenuItems
private

Definition at line 90 of file osdbase.h.

Referenced by cOsdMenu(), CursorDown(), CursorUp(), Display(), DisplayItem(), PageDown(), and PageUp().

◆ first

int cOsdMenu::first
private

◆ hasHotkeys

bool cOsdMenu::hasHotkeys
private

Definition at line 103 of file osdbase.h.

Referenced by cOsdMenu(), hk(), ProcessKey(), and SetHasHotkeys().

◆ helpBlue

const char * cOsdMenu::helpBlue
private

Definition at line 99 of file osdbase.h.

Referenced by cOsdMenu(), DisplayHelp(), and SetHelp().

◆ helpDisplayed

bool cOsdMenu::helpDisplayed
private

Definition at line 100 of file osdbase.h.

Referenced by cOsdMenu(), DisplayCurrent(), and DisplayHelp().

◆ helpGreen

const char * cOsdMenu::helpGreen
private

Definition at line 99 of file osdbase.h.

Referenced by cOsdMenu(), DisplayHelp(), and SetHelp().

◆ helpRed

const char* cOsdMenu::helpRed
private

Definition at line 99 of file osdbase.h.

Referenced by cOsdMenu(), DisplayHelp(), and SetHelp().

◆ helpYellow

const char * cOsdMenu::helpYellow
private

Definition at line 99 of file osdbase.h.

Referenced by cOsdMenu(), DisplayHelp(), and SetHelp().

◆ lastOffset

int cOsdMenu::lastOffset
private

Definition at line 94 of file osdbase.h.

Referenced by Clear(), cOsdMenu(), and SetCurrent().

◆ marked

int cOsdMenu::marked
private

Definition at line 93 of file osdbase.h.

Referenced by Clear(), cOsdMenu(), Mark(), and ProcessKey().

◆ menuCategory

eMenuCategory cOsdMenu::menuCategory
private

Definition at line 95 of file osdbase.h.

Referenced by cOsdMenu(), Display(), and SetMenuCategory().

◆ menuOrientation

eMenuOrientation cOsdMenu::menuOrientation
private

Definition at line 97 of file osdbase.h.

Referenced by cOsdMenu(), Display(), and ProcessKey().

◆ menuSortMode

eMenuSortMode cOsdMenu::menuSortMode
private

Definition at line 96 of file osdbase.h.

Referenced by cOsdMenu(), Display(), and SetMenuSortMode().

◆ osdState

int cOsdMenu::osdState = 0
staticprivate

Definition at line 89 of file osdbase.h.

Referenced by cOsdMenu(), and Display().

◆ status

char* cOsdMenu::status
private

Definition at line 101 of file osdbase.h.

Referenced by cOsdMenu(), Display(), SetStatus(), and ~cOsdMenu().

◆ subMenu

cOsdMenu* cOsdMenu::subMenu
private

◆ title

char* cOsdMenu::title
private

Definition at line 91 of file osdbase.h.

Referenced by cOsdMenu(), Display(), SetTitle(), Title(), and ~cOsdMenu().


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