diff --git a/common.inc b/common.inc index a786ea2..da9d195 100644 --- a/common.inc +++ b/common.inc @@ -523,6 +523,7 @@ /menu.texts exch def /menu.humans exch def /menu.indices exch def + /menu.labels exch def timeout.hidden { window.splash diff --git a/dia_modes.inc b/dia_modes.inc index e18ec61..81cf589 100644 --- a/dia_modes.inc +++ b/dia_modes.inc @@ -100,7 +100,7 @@ /modes.filter { modes.rawlabels .undef eq { pop return } if - menu.texts exch get + menu.labels exch get dup length 3 add string /modes.tmp.label exch def " %s " modes.tmp.label sprintf diff --git a/menuconfig.inc b/menuconfig.inc index 6c4ebdc..368b03e 100644 --- a/menuconfig.inc +++ b/menuconfig.inc @@ -67,7 +67,7 @@ /menuconfig.idx 0 def menuconfig.humans { menuconfig.human eq { - menuconfig.entries menuconfig.idx menuconfig.curlabel put + menuconfig.labels menuconfig.idx menuconfig.curlabel put return } if /menuconfig.idx inc @@ -80,13 +80,14 @@ menuconfig.curlabel .undef eq { return } if /menuconfig.idx 0 def - menuconfig.entries { + menuconfig.labels { menuconfig.curlabel eq { % Copy everything up to here into new arrays. /menuconfig.newargs menuconfig.args length 1 sub array def /menuconfig.newentries menuconfig.entries length 1 sub array def /menuconfig.newhumans menuconfig.humans length 1 sub array def /menuconfig.newindices menuconfig.indices length 1 sub array def + /menuconfig.newlabels menuconfig.labels length 1 sub array def menuconfig.idx 0 ne { 0 1 menuconfig.idx 1 sub { menuconfig.args over get @@ -95,20 +96,24 @@ menuconfig.newentries 2 index rot put menuconfig.humans over get menuconfig.newhumans 2 index rot put + menuconfig.labels over get + menuconfig.newlabels 2 index rot put menuconfig.indices over get menuconfig.newindices 3 1 roll put } for } if - menuconfig.idx menuconfig.entries length 1 sub lt { + menuconfig.idx menuconfig.labels length 1 sub lt { % Slide everything else down one place. - menuconfig.idx 1 menuconfig.entries length 2 sub { + menuconfig.idx 1 menuconfig.labels length 2 sub { menuconfig.args over 1 add get menuconfig.newargs 2 index rot put menuconfig.entries over 1 add get menuconfig.newentries 2 index rot put menuconfig.humans over 1 add get menuconfig.newhumans 2 index rot put + menuconfig.labels over 1 add get + menuconfig.newlabels 2 index rot put menuconfig.indices over 1 add get menuconfig.newindices 3 1 roll put } for @@ -118,6 +123,7 @@ /menuconfig.entries menuconfig.newentries def /menuconfig.humans menuconfig.newhumans def /menuconfig.indices menuconfig.newindices def + /menuconfig.labels menuconfig.newlabels def return } if @@ -182,7 +188,8 @@ % removed. /menuconfig.init { dup length array /menuconfig.args exch def - over length array /menuconfig.entries exch def + dup length array /menuconfig.entries exch def + over length array /menuconfig.labels exch def over length array /menuconfig.humans exch def over length array /menuconfig.indices exch def @@ -195,6 +202,7 @@ /menuconfig.idx 0 def { dup menuconfig.entries menuconfig.idx rot put + dup menuconfig.labels menuconfig.idx rot put menuconfig.humans menuconfig.idx rot put menuconfig.indices menuconfig.idx dup put /menuconfig.idx inc @@ -209,5 +217,5 @@ .undef menuconfig.parse - menuconfig.indices menuconfig.humans menuconfig.entries menuconfig.args + menuconfig.labels menuconfig.indices menuconfig.humans menuconfig.entries menuconfig.args } def