### Copyright (C) 1995, 1996, 1997 Jeppe Buk (buk@imada.ou.dk) ### This program is free software; you can redistribute it and/or modify ### it under the terms of the GNU General Public License as published by ### the Free Software Foundation; either version 2 of the License, or ### (at your option) any later version. ### ### This program is distributed in the hope that it will be useful, ### but WITHOUT ANY WARRANTY; without even the implied warranty of ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ### GNU General Public License for more details. ### ### You should have received a copy of the GNU General Public License ### along with this program; if not, write to the Free Software ### Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ### ### Sun Feb 22 1998 Japanized by Mashio Motoyama ### proc buttonsAndCursors {} { # 概観と操作性 / ボタンの設定 Desc "ボタンとマウスカーソルのスタイル設定" ShortDesc "ボタンとカーソル" ######################################################################## # Button styles # Header butH -text "ボタンの設定" -frame:relief flat Help butH \ "このページではタイトルバー・ボタンの見た目を設定します。" Line butL for {set i 0} {$i <= 9} {incr i} { Label lab$i -text " $i" CheckBox but$i Help but$i "どのボタンを変更するか選択します。 button no. $i." Help lab$i "どのボタンを変更するか選択します。 button no. $i." Frame fram$i -entries " lab$i but$i " -orient top } Label empty -text "" -help "" Label butNo -text "ボタン番号:" Label space -text " " -help "" -packFrame:expand no Frame framL -entries { empty butNo } -orient top Frame butS -entries { framL fram1 fram3 fram5 fram7 fram9 space fram0 fram8 fram6 fram4 fram2 } Help butNo "どのボタンを変更するか選択します。" Change { if {[regexp "but(\[0-9\])" $changeElm all no] && $changeElm == $all} { if {[set but$no] == 1} { for {set i 0} {$i <= 9} {incr i} { if {$i != $no} {set but$i 0} } } } } # User shape Header coordH -text "ボタンの大きさを入力します。" \ -frame:relief flat Line coordL Int coordX -text "X 座標" Int coordY -text "Y 座標" Radio shade -entries { shadow highlight } ExtEntry coord -entries { coordX coordY shade } CheckBox butB -text "ユーザスタイル" -pack:expand no Window butW -text "座標" -entries { coordH coordL coord } Frame butF -entries { butB butW } # Pixmap CheckBox pixB -text "ピックスマップ" -pack:expand no Entry pixEup -text "上:" Entry pixEdown -text "下:" Frame pixE -entries { pixB pixEup pixEdown } Label pixRlabel -text " ボタンの下をピックスマップで描画しますか?" \ -packFrame:expand no Radio pixRbut -entries { "yes" "no" } -default "yes" Frame pixR -entries { pixRlabel pixRbut } Frame pixF -entries { pixE pixR } -orient top ExtEntry but -entries { butS butF pixF } -count 1 -orient top \ -packFrame:expand yes -packFrame:fill x set userHelp1 [concat \ "ユーザ定義ボタンが選択されていれば、ポリゴンでの座標を指定できます。その座標はボタンの幅と高さのパーセンテージで、0 から 100 の間になります。"] set userHelp2 [concat \ "更に、ラインの色調を(影かハイライト)指定できます。"] # concat eats newline... set userHelp "$userHelp1\n\n$userHelp2" Help coordH $userHelp Help coordX "このポイントの X 座標を指定します。" Help coordY "このポイントの Y 座標を指定します。" Help shade "このポイントへ至るラインの色調を選択します。" Help butB $userHelp Help butW $userHelp set pixmapHelp1 [concat\ "ピックスマップボタンが押されていれば、二つまでのピックスマップを指定できます。\"上\"のピックスマップのみ指定しているのであれば、それはあらゆる状況下で使われます。\"下\"のピックスマップも指定してあるのであれば、それは\"下\"になっているときに使われます。"] set pixmapHelp2 [concat\ "ボタンの下をピックスマップ描画するかどうか指定できます。これが選択されているのであれば、FVWM は最初にこのボタンを描画し、それをピックスマップで満たします。これが選択されていないならば、FVWM はボタンの全ての領域をピックスマップで満たします。"] # concat eats newline... set pixmapHelp "$pixmapHelp1\n\n$pixmapHelp2" Help pixB $pixmapHelp Help pixEup "\"上\"で使うピックスマップを入力します。" Help pixEdown "\"下\"で使うピックスマップを入力します。" Help pixRlabel "FVWM がボタンを描画するかどうか選択します。" Help pixRbut "FVWM がボタンを描画するかどうか選択します。" Change { if {$changeElm == "butB"} { if {$butB == 1} { set pixB 0 Disable pixEup pixEdown pixR Enable butW } else { Disable butW } } if {$changeElm == "pixB"} { if {$pixB == 1} { set butB 0 Disable butW Enable pixEup pixR if { $pixEup != "" } { Enable pixEdown } } else { Disable pixEup pixEdown pixR } } if { $changeElm == "pixEup" } { if { $pixEup == "" } { Disable pixEdown } else { Enable pixEdown } } } Save { forevery but { set no -1 for { set i 0 } { $i < 10 } { incr i } { if { [set but$i] == 1 } { set no $i } } if { $butB == 1 && $no != -1 } { # User style set coords 0 set buttonStyle "" forevery coord { if { $coordX != "" && $coordY != "" } { append buttonStyle " ${coordX}x${coordY}@$shade(index)" incr coords } } if { $coords > 0 } { print "ButtonStyle\t$no $coords$buttonStyle" } else { error "No coordinates set for button $no" } } if { $pixB == 1 && $no != -1 && $pixEup != "" } { # Pixmap set buttonStyle "Pixmap $pixEup" if { $pixRbut(name) == "no" } { append buttonStyle " -- Flat" } print "ButtonStyle\t$no $buttonStyle" if { $pixEdown != "" } { set buttonStyle "Pixmap $pixEdown" if { $pixRbut(name) == "no" } { append buttonStyle " -- Flat" } print "ButtonStyle\t$no ActiveDown $buttonStyle" } } } } # ######################################################################## }