summaryrefslogtreecommitdiff
path: root/muse2/muse/dialogs.cpp
diff options
context:
space:
mode:
authorTim E. Real <termtech@rogers.com>2013-01-27 11:51:23 +0000
committerTim E. Real <termtech@rogers.com>2013-01-27 11:51:23 +0000
commit3f99f3410d57b4377c38662b02e36186a019ad66 (patch)
tree06804038097eef0dbfe7a806c6f0473b61bd1bfb /muse2/muse/dialogs.cpp
parent5fb1cdfe5bdd48406e58441b354fc87d3d3c582e (diff)
Feature: Shortcuts dialog modeless + has default global shortcut Ctl+Shift+F1 + "Printable file" button.
Memory leaks! Many widgets and dialogs had no parent and were not deleted! See ChangeLog.
Diffstat (limited to 'muse2/muse/dialogs.cpp')
-rw-r--r--muse2/muse/dialogs.cpp28
1 files changed, 16 insertions, 12 deletions
diff --git a/muse2/muse/dialogs.cpp b/muse2/muse/dialogs.cpp
index a39f7c10..6bdddcdd 100644
--- a/muse2/muse/dialogs.cpp
+++ b/muse2/muse/dialogs.cpp
@@ -57,6 +57,7 @@ PasteEventsDialog* paste_events_dialog=NULL;
void init_function_dialogs()
{
+ // NOTE: For deleting parentless dialogs and widgets, please add them to MusE::deleteParentlessDialogs().
gatetime_dialog = new GateTime();
velocity_dialog = new Velocity();
quantize_dialog = new Quantize();
@@ -71,20 +72,23 @@ void init_function_dialogs()
paste_events_dialog = new PasteEventsDialog();
}
+//
+// NOTE: This is called by MusE::deleteParentlessDialogs()
+//
void destroy_function_dialogs()
{
- delete gatetime_dialog;
- delete velocity_dialog;
- delete quantize_dialog;
- delete erase_dialog;
- delete del_overlaps_dialog;
- delete set_notelen_dialog;
- delete move_notes_dialog;
- delete transpose_dialog;
- delete crescendo_dialog;
- delete legato_dialog;
- delete paste_dialog;
- delete paste_events_dialog;
+ if(gatetime_dialog) delete gatetime_dialog;
+ if(velocity_dialog) delete velocity_dialog;
+ if(quantize_dialog) delete quantize_dialog;
+ if(erase_dialog) delete erase_dialog;
+ if(del_overlaps_dialog) delete del_overlaps_dialog;
+ if(set_notelen_dialog) delete set_notelen_dialog;
+ if(move_notes_dialog) delete move_notes_dialog;
+ if(transpose_dialog) delete transpose_dialog;
+ if(crescendo_dialog) delete crescendo_dialog;
+ if(legato_dialog) delete legato_dialog;
+ if(paste_dialog) delete paste_dialog;
+ if(paste_events_dialog) delete paste_events_dialog;
}
void retranslate_function_dialogs()