diff options
author | Pascal Rigaux <pixel@mandriva.com> | 2009-01-27 17:30:08 +0000 |
---|---|---|
committer | Pascal Rigaux <pixel@mandriva.com> | 2009-01-27 17:30:08 +0000 |
commit | 5ce8d30439463838f845c78bc926cc9b310a8743 (patch) | |
tree | bb1852dc58711c7baee31216a765067dfa49b65b /panel.inc | |
parent | 10658e71475bd964263d09f1a661f24fadfaf496 (diff) | |
download | bootloader-theme-5ce8d30439463838f845c78bc926cc9b310a8743.tar bootloader-theme-5ce8d30439463838f845c78bc926cc9b310a8743.tar.gz bootloader-theme-5ce8d30439463838f845c78bc926cc9b310a8743.tar.bz2 bootloader-theme-5ce8d30439463838f845c78bc926cc9b310a8743.tar.xz bootloader-theme-5ce8d30439463838f845c78bc926cc9b310a8743.zip |
imported openSUSE.tar.bz2 (from gfxboot-4.1.19-2.1.src.rpm)4.1.19.1
Diffstat (limited to 'panel.inc')
-rw-r--r-- | panel.inc | 201 |
1 files changed, 0 insertions, 201 deletions
diff --git a/panel.inc b/panel.inc deleted file mode 100644 index d2d28e3..0000000 --- a/panel.inc +++ /dev/null @@ -1,201 +0,0 @@ -% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% -% Panel handling. -% -% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% Some global vars. -% -/panel.size { clip.size pop 24 } def -/panel.y { clip.size exch pop panel.size exch pop sub 10 sub } def -/panel.text.y { panel.y 5 add } def -/panel.text.Fy 0 def -/panel.font font.normal def -/panel.normal white def -/panel.high lightblue def -/panel.bg lightgray def -/panel.border lightdotcolor def - -/panel.expert false def - -% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% Init panel. -% -% ( ) ==> ( ) -% -/panel.init { - - /panel.back 0 panel.y moveto panel.size savescreen def - - % define panel layout - /panel.full [ - - % [ key x label show_func width_func update_func init_func ] - - [ keyF1 0 "F1" /panel.help /panel.help.width /panel.help.update .undef ] - - syslinux { - - livecd { - - [ keyF2 0 "F2" /panel.lang /panel.lang.width /panel.lang.update /lang.init ] - [ keyF3 0 "F3" /panel.video /panel.video.width /panel.video.update /video.init ] - [ keyF4 0 "F4" /panel.kernel_option /panel.kernel_option.width /panel.kernel_option.update /kernel_option.init ] - - } { - - [ keyF2 0 "F2" /panel.lang /panel.lang.width /panel.lang.update /lang.init ] - [ keyF3 0 "F3" /panel.video /panel.video.width /panel.video.update /video.init ] - [ keyF4 0 "F4" /panel.install /panel.install.width /panel.install.update /install.init ] - [ keyF5 0 "F5" /panel.dud /panel.dud.width /panel.dud.update /dud.init ] - [ keyF6 0 "F6" /panel.kernel_option /panel.kernel_option.width /panel.kernel_option.update /kernel_option.init ] - - 32+64bit_source { - 64bit { - 32bit_boot_dir .undef ne - 64bit_boot_dir .undef ne - 32bit_boot_dir 64bit_boot_dir ne - and and { - [ keyF7 0 "F7" /panel.bits /panel.bits.width /panel.bits.update /bits.init ] - } if - } if - } if - - } ifelse - - xmenu.bits .undef eq { bits.init } if - - } { - - [ keyF2 0 "F2" /panel.lang /panel.lang.width /panel.lang.update /lang.init ] - "profiles" findfile dup { - /profile.data exch def - [ keyF3 0 "F3" /panel.profile /panel.profile.width /panel.profile.update /profile.init ] - } { pop } ifelse - - } ifelse - - ] def - - % initialize all - panel.full { 6 get dup .undef ne { exec } { pop } ifelse } forall - - syslinux { - /panel.short [ - [ keyF1 0 "F1" /panel.help /panel.help.width /panel.help.update .undef ] - [ keyF2 0 "F2" /panel.lang /panel.lang.width /panel.lang.update /lang.init ] - [ keyF3 0 "F3" /panel.options /panel.options.width /panel.options.update .undef ] - ] def - - /panel CapsLock { panel.full } { panel.short } ifelse def - } { - /panel.short [ - [ keyF1 0 "F1" /panel.help /panel.help.width /panel.help.update .undef ] - [ keyF2 0 "F2" /panel.options /panel.options.width /panel.options.update .undef ] - ] def - - /panel panel.short def - } ifelse - - panel.show -} def - - -% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% Show panel. -% -% ( ) ==> ( ) -% -/panel.show { - panel.font setfont - -% panel.bg setcolor - 0 panel.y moveto -% currentpoint - panel.back restorescreen -% currenttransparency -% 50 settransparency -% panel.size fillrect -% settransparency -% moveto - -% panel.border setcolor -% 0 -1 rmoveto -% 0 1 clip.size pop 3 div { pop putpixel 3 0 rmoveto } for - - % don't change xmenu - /xmenu xmenu - - /panel.x 0 def - panel { dup { - dup 1 panel.x put - dup 4 get exec over 2 get strsize pop add 20 add panel.x add /panel.x exch def - dup 5 get exec - } { pop } ifelse } forall - - def - -} def - - -% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% Handle keyboard input. -% -% ( key_in ) ==> ( key_out ) -% -/panel.input { - panel { dup { - dup 0 get 2 index eq { over panel.extra pop 3 get exec pop 0 exit } { pop } ifelse - } { pop } ifelse } forall -} def - - -% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% Draw panel entry label and move to text field. -% -% ( panel ) => ( ) -% -/panel.text.moveto { - /panel.tmp.x over 1 get 10 add def - /panel.tmp.F exch 2 get def - - panel.tmp.x panel.text.y panel.text.Fy add moveto - panel.high setcolor panel.tmp.F show - panel.normal setcolor - - 6 panel.text.Fy neg rmoveto -} def - - -% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -% Do some extra things. -% -% ( key ) => ( key ) -% -/panel.extra { - % move down one menu entry; but only once - % see keyDown in main::main.input - - % only for install CDs - syslinux not { return } if - - % not for F1 - dup keyF1 eq { return } if - - panel.extra.fkey .undef eq - menu.entry 0 eq - menu.entry menu.texts length 1 sub lt - and and { - /panel.extra.fkey 1 def - menu.entry false MenuSelect - menu.visible.entries menu.entry menu.shift sub sub 1 eq { - /menu.shift menu.shift 1 add def redrawmenu - } if - /menu.entry menu.entry 1 add def - menu.entry true MenuSelect - } if -} def - - |