13
0

include group descriptions when processing keybindings

This commit is contained in:
Paul Davis 2016-06-22 18:56:35 -04:00
parent 37156d6761
commit 22d52876b7

View File

@ -23,8 +23,8 @@ $group_number = 0;
$platform = linux; $platform = linux;
$winkey = 'Win'; $winkey = 'Win';
$make_cheatsheet = 1; $make_cheatsheet = 0;
$make_accelmap = 0; $make_accelmap = 1;
$merge_from = ""; $merge_from = "";
$html = 0; $html = 0;
@ -264,7 +264,7 @@ while (<SOURCE>) {
} }
} }
# print the accelmap output # store the accelmap output
if ($key =~ /^\+/) { if ($key =~ /^\+/) {
# remove + and don't print it in the accelmap # remove + and don't print it in the accelmap
@ -282,7 +282,7 @@ while (<SOURCE>) {
$b =~ s/LEVEL4/Level4-/; $b =~ s/LEVEL4/Level4-/;
$bref = $owner_bindings{$owner}; $bref = $owner_bindings{$owner};
push (@$bref, [ $action, $b ]); push (@$bref, [ $action, $b, $group_names{$gkey} ]);
} }
} }
@ -294,6 +294,9 @@ while (<SOURCE>) {
$bref = $group_bindings{$key}; $bref = $group_bindings{$key};
push (@$bref, [$binding, $text]); push (@$bref, [$binding, $text]);
$sref = $section_text{$key};
push (@$sref, [$owner]);
next; next;
} }
@ -308,13 +311,13 @@ if ($make_accelmap) {
$bindings = $owner_bindings{$owner}; $bindings = $owner_bindings{$owner};
shift (@$bindings); # remove initial empty element shift (@$bindings); # remove initial empty element
for my $binding (@$bindings) { for my $binding (@$bindings) {
print ' <Binding key="' . @$binding[1] . '" action="' . @$binding[0] . "\"/>\n"; print ' <Binding key="' . @$binding[1] . '" action="' . @$binding[0] . '" group="' . @$binding[2] . "\"/>\n";
} }
print " </Press>\n </Bindings>\n"; print " </Press>\n </Bindings>\n";
} }
# merge in the "fixed" bindings that are not defined by the argument given to this program # merge in the "fixed" bindings that are not defined by the argument given to this program
# namely, the step editor and the mixer windows # this covers things like the step editor, monitor and processor box bindings
foreach $hardcoded_bindings ("mixer.bindings", "step_editing.bindings", "monitor.bindings", "processor_box.bindings") { foreach $hardcoded_bindings ("mixer.bindings", "step_editing.bindings", "monitor.bindings", "processor_box.bindings") {
$path = File::Spec->catfile (dirname ($ARGV[0]), $hardcoded_bindings); $path = File::Spec->catfile (dirname ($ARGV[0]), $hardcoded_bindings);