This commit is contained in:
fgerlits 2006-11-27 18:22:44 +00:00
parent e4d0811d86
commit 6d1de0a933
2 changed files with 18 additions and 2 deletions

View File

@ -77,7 +77,8 @@ LiveModeWindow :: LiveModeWindow (Ptr<GLiveSupport>::Ref gLiveSupport,
throw () throw ()
: GuiWindow(gLiveSupport, : GuiWindow(gLiveSupport,
bundle, bundle,
windowOpenerButton) windowOpenerButton),
isDeleting(false)
{ {
try { try {
set_title(*getResourceUstring("windowTitle")); set_title(*getResourceUstring("windowTitle"));
@ -397,7 +398,7 @@ LiveModeWindow :: onKeyPressed(GdkEventKey * event) throw ()
return true; return true;
case KeyboardShortcut::removeItem : case KeyboardShortcut::removeItem :
treeView->onRemoveMenuOption(); onRemoveItemButtonClicked();
return true; return true;
case KeyboardShortcut::playAudio : case KeyboardShortcut::playAudio :
@ -638,7 +639,10 @@ LiveModeWindow :: constructPlaylistContextMenu(void) throw ()
void void
LiveModeWindow :: onClearListButtonClicked (void) throw () LiveModeWindow :: onClearListButtonClicked (void) throw ()
{ {
isDeleting = true;
treeModel->clear(); treeModel->clear();
isDeleting = false;
onTreeModelChanged();
} }
@ -648,7 +652,10 @@ LiveModeWindow :: onClearListButtonClicked (void) throw ()
void void
LiveModeWindow :: onRemoveItemButtonClicked(void) throw () LiveModeWindow :: onRemoveItemButtonClicked(void) throw ()
{ {
isDeleting = true;
treeView->onRemoveMenuOption(); treeView->onRemoveMenuOption();
isDeleting = false;
onTreeModelChanged();
} }
@ -658,6 +665,10 @@ LiveModeWindow :: onRemoveItemButtonClicked(void) throw ()
void void
LiveModeWindow :: onTreeModelChanged(void) throw () LiveModeWindow :: onTreeModelChanged(void) throw ()
{ {
if (isDeleting) {
return;
}
Gtk::TreeModel::iterator iter = treeModel->children().begin(); Gtk::TreeModel::iterator iter = treeModel->children().begin();
if (iter) { if (iter) {

View File

@ -86,6 +86,11 @@ class LiveModeWindow : public GuiWindow
*/ */
Ptr<Playable>::Ref savedTopPlayable; Ptr<Playable>::Ref savedTopPlayable;
/**
* A flag used to disable preload() while deleting items.
*/
bool isDeleting;
/** /**
* The Export Playlist pop-up window. * The Export Playlist pop-up window.
*/ */