summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRichard Shann <rshann@debianrts.home>2011-02-05 18:00:35 +0000
committerRichard Shann <rshann@debianrts.home>2011-02-05 18:00:35 +0000
commit3e7f5f8d7ba41e8f3568281928673f07c266182b (patch)
tree7da7355afe93dc1998da221f184a1e54bc6307b5 /src
parent6adb43136035cca13e609c26e446d2c4c5e81463 (diff)
Allow quick shortcuts by default, and give a pref for disabling
Diffstat (limited to 'src')
-rw-r--r--src/prefdialog.c7
-rw-r--r--src/prefops.c3
-rw-r--r--src/view.c11
3 files changed, 17 insertions, 4 deletions
diff --git a/src/prefdialog.c b/src/prefdialog.c
index 5520ed2e..178bb40d 100644
--- a/src/prefdialog.c
+++ b/src/prefdialog.c
@@ -33,6 +33,7 @@ struct callbackdata
GtkWidget *persistence;
GtkWidget *startmidiin;
GtkWidget *applytoselection;
+ GtkWidget *quickshortcuts;
GtkWidget *saveparts;
GtkWidget *autosave;
GtkWidget *toolbar;
@@ -187,6 +188,7 @@ set_preferences (struct callbackdata *cbdata)
ASSIGNBOOLEAN(cursor_highlight)
ASSIGNBOOLEAN(startmidiin)
ASSIGNBOOLEAN(applytoselection)
+ ASSIGNBOOLEAN(quickshortcuts)
ASSIGNBOOLEAN(autosave)
ASSIGNINT(autosave_timeout)
ASSIGNBOOLEAN(articulation_palette)
@@ -413,7 +415,10 @@ preferences_change (GtkAction *action, gpointer param)
NEWPAGE("Command Behavior");
TEXTENTRY("Profile", profile)
// TEXTENTRY("Strict", strictshortcuts)
- BOOLEANENTRY("Apply commands to selection if present", applytoselection);
+ BOOLEANENTRY("Apply commands to selection if present", applytoselection);
+ BOOLEANENTRY("Allow Quick Setting of Shortcuts", quickshortcuts);
+
+
BOOLEANENTRY("Strict Shortcuts", strictshortcuts);
/*
diff --git a/src/prefops.c b/src/prefops.c
index d0bd4109..927220e6 100644
--- a/src/prefops.c
+++ b/src/prefops.c
@@ -184,6 +184,7 @@ initprefs ()
ret->zoom = 100;
ret->system_height = 100;
ret->applytoselection = TRUE;
+ ret->quickshortcuts = TRUE;
/* Read values from systemwide preferences file */
@@ -471,6 +472,7 @@ parseConfig (xmlDocPtr doc, xmlNodePtr cur, DenemoPrefs * prefs)
READBOOLXMLENTRY(persistence)
READBOOLXMLENTRY(cursor_highlight)
READBOOLXMLENTRY(applytoselection)
+ READBOOLXMLENTRY(quickshortcuts)
READBOOLXMLENTRY(startmidiin)
READINTXMLENTRY(mode)
@@ -825,6 +827,7 @@ writeXMLPrefs (DenemoPrefs * prefs)
WRITEBOOLXMLENTRY(persistence)
WRITEBOOLXMLENTRY(cursor_highlight)
WRITEBOOLXMLENTRY(applytoselection)
+ WRITEBOOLXMLENTRY(quickshortcuts)
WRITEBOOLXMLENTRY(startmidiin)
WRITEINTXMLENTRY(mode)
WRITEBOOLXMLENTRY(strictshortcuts)
diff --git a/src/view.c b/src/view.c
index b7abcb39..d547e9c6 100644
--- a/src/view.c
+++ b/src/view.c
@@ -250,6 +250,8 @@ void execute_scheme(GtkAction *action, DenemoScriptParam *param) {
#define ToggleScoreTitles_STRING "ToggleScoreTitles"
#define QuickEdits_STRING "QuickEdits"
#define RecordScript_STRING "RecordScript"
+
+
#define ReadOnly_STRING "ReadOnly"
@@ -3614,6 +3616,9 @@ void show_preferred_view(void) {
if (!Denemo.prefs.midi_in_controls)
activate_action("/MainMenu/ViewMenu/"ToggleMidiInControls_STRING);
+ if (!Denemo.prefs.quickshortcuts)
+ activate_action("/MainMenu/EditMenu/Preferences/Keybindings/"QuickEdits_STRING);
+
if (!Denemo.prefs.toolbar)
activate_action("/MainMenu/ViewMenu/"ToggleToolbar_STRING);
@@ -7256,7 +7261,7 @@ toggle_entry_toolbar (GtkAction * action, gpointer param) {
static void
toggle_quick_edits (GtkAction * action, gpointer param)
{
- Denemo.QuickShortcutEdits = !Denemo.QuickShortcutEdits;
+ Denemo.prefs.quickshortcuts = !Denemo.prefs.quickshortcuts;
}
@@ -7472,7 +7477,7 @@ GtkToggleActionEntry toggle_menu_entries[] = {
{QuickEdits_STRING, NULL, N_("Allow Quick Shortcut Edits"), NULL, "Enable editing keybindings by pressing a key while hovering over the menu item",
- G_CALLBACK (toggle_quick_edits), FALSE},
+ G_CALLBACK (toggle_quick_edits), TRUE},
{RecordScript_STRING, NULL, N_("Record Scheme Script"), NULL, "Start recording menu clicks into the Scheme script text window",
G_CALLBACK (toggle_record_script), FALSE},
@@ -7626,7 +7631,7 @@ static gint dnm_key_snooper(GtkWidget *grab_widget, GdkEventKey *event)
if (event->type == GDK_KEY_RELEASE)
return FALSE;
//if the grab_widget is a menu, the event could be a quick edit
- if (Denemo.QuickShortcutEdits && GTK_IS_MENU (grab_widget)) {
+ if (Denemo.prefs.quickshortcuts && GTK_IS_MENU (grab_widget)) {
return keymap_accel_quick_edit_snooper(grab_widget, event);
}
//else we let the event be processed by other functions