mirror of
https://github.com/tuxbox-neutrino/neutrino.git
synced 2025-08-27 23:42:58 +02:00
gui/widget/menue.cpp: add param delete_items to CMenuWidget::resetWidget, use resetWidget in destructor
git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-beta@2161 e54a6e83-5905-42d5-8d5c-058d10e6a962
This commit is contained in:
@@ -380,6 +380,7 @@ void CMenuWidget::move(int xoff, int yoff)
|
|||||||
|
|
||||||
CMenuWidget::~CMenuWidget()
|
CMenuWidget::~CMenuWidget()
|
||||||
{
|
{
|
||||||
|
#if 0
|
||||||
for(unsigned int count=0;count<items.size();count++) {
|
for(unsigned int count=0;count<items.size();count++) {
|
||||||
CMenuItem * item = items[count];
|
CMenuItem * item = items[count];
|
||||||
if ((item != GenericMenuSeparator) &&
|
if ((item != GenericMenuSeparator) &&
|
||||||
@@ -392,6 +393,8 @@ CMenuWidget::~CMenuWidget()
|
|||||||
|
|
||||||
items.clear();
|
items.clear();
|
||||||
page_start.clear();
|
page_start.clear();
|
||||||
|
#endif
|
||||||
|
resetWidget(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CMenuWidget::addItem(CMenuItem* menuItem, const bool defaultselected)
|
void CMenuWidget::addItem(CMenuItem* menuItem, const bool defaultselected)
|
||||||
@@ -411,7 +414,7 @@ void CMenuWidget::addItem(CMenuItem* menuItem, const bool defaultselected)
|
|||||||
items.push_back(menuItem);
|
items.push_back(menuItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CMenuWidget::resetWidget()
|
void CMenuWidget::resetWidget(bool delete_items)
|
||||||
{
|
{
|
||||||
for(unsigned int count=0;count<items.size();count++) {
|
for(unsigned int count=0;count<items.size();count++) {
|
||||||
CMenuItem * item = items[count];
|
CMenuItem * item = items[count];
|
||||||
@@ -419,7 +422,8 @@ void CMenuWidget::resetWidget()
|
|||||||
(item != GenericMenuSeparatorLine) &&
|
(item != GenericMenuSeparatorLine) &&
|
||||||
(item != GenericMenuBack) &&
|
(item != GenericMenuBack) &&
|
||||||
(item != GenericMenuCancel)){
|
(item != GenericMenuCancel)){
|
||||||
//delete item;//FIXME: possible crash here
|
if(delete_items)
|
||||||
|
delete item;
|
||||||
item = NULL;
|
item = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -446,7 +446,7 @@ class CMenuWidget : public CMenuTarget
|
|||||||
};
|
};
|
||||||
virtual void addIntroItems(neutrino_locale_t subhead_text = NONEXISTANT_LOCALE, neutrino_locale_t section_text = NONEXISTANT_LOCALE, int buttontype = BTN_TYPE_BACK );
|
virtual void addIntroItems(neutrino_locale_t subhead_text = NONEXISTANT_LOCALE, neutrino_locale_t section_text = NONEXISTANT_LOCALE, int buttontype = BTN_TYPE_BACK );
|
||||||
bool hasItem();
|
bool hasItem();
|
||||||
void resetWidget();
|
void resetWidget(bool delete_items = false);
|
||||||
void insertItem(const uint& item_id, CMenuItem* menuItem);
|
void insertItem(const uint& item_id, CMenuItem* menuItem);
|
||||||
void removeItem(const uint& item_id);
|
void removeItem(const uint& item_id);
|
||||||
int getItemId(CMenuItem* menuItem);
|
int getItemId(CMenuItem* menuItem);
|
||||||
|
Reference in New Issue
Block a user