diff options
Diffstat (limited to 'ext/tk/sample/demos-jp/style.rb')
-rw-r--r-- | ext/tk/sample/demos-jp/style.rb | 271 |
1 files changed, 0 insertions, 271 deletions
diff --git a/ext/tk/sample/demos-jp/style.rb b/ext/tk/sample/demos-jp/style.rb deleted file mode 100644 index 737c9f8994..0000000000 --- a/ext/tk/sample/demos-jp/style.rb +++ /dev/null @@ -1,271 +0,0 @@ -# -*- coding: utf-8 -*- -# frozen_string_literal: false -# -# text (display styles) widget demo (called by 'widget') -# - -# toplevel widget が存在すれば削除する -if defined?($style_demo) && $style_demo - $style_demo.destroy - $style_demo = nil -end - - -# demo 用の toplevel widget を生成 -$style_demo = TkToplevel.new {|w| - title("Text Demonstration - Display Styles") - iconname("style") - positionWindow(w) -} - -base_frame = TkFrame.new($style_demo).pack(:fill=>:both, :expand=>true) - -# frame 生成 -TkFrame.new(base_frame) {|frame| - TkButton.new(frame) { - #text '了解' - text '閉じる' - command proc{ - tmppath = $style_demo - $style_demo = nil - tmppath.destroy - } - }.pack('side'=>'left', 'expand'=>'yes') - - TkButton.new(frame) { - text 'コード参照' - command proc{showCode 'style'} - }.pack('side'=>'left', 'expand'=>'yes') -}.pack('side'=>'bottom', 'fill'=>'x', 'pady'=>'2m') - - -# text 生成 -txt = TkText.new(base_frame){|t| - # 生成 - setgrid 'true' - #width 70 - #height 32 - wrap 'word' - font $font - TkScrollbar.new(base_frame) {|s| - pack('side'=>'right', 'fill'=>'y') - command proc{|*args| t.yview(*args)} - t.yscrollcommand proc{|first,last| s.set first,last} - } - pack('expand'=>'yes', 'fill'=>'both') - - # テキストタグ設定 (フォント関連) - family = 'Courier' - - if $tk_version =~ /^4.*/ - style_tag_bold = TkTextTag.new(t, 'font'=>'-*-Courier-Bold-O-Normal--*-120-*-*-*-*-*-*') - style_tag_big = TkTextTag.new(t, 'font'=>'-*-Courier-Bold-R-Normal--*-140-*-*-*-*-*-*', 'kanjifont'=>$msg_kanji_font) - style_tag_verybig = TkTextTag.new(t, 'font'=>'-*-Helvetica-Bold-R-Normal--*-240-*-*-*-*-*-*') - # style_tag_small = TkTextTag.new(t, 'font'=>'-Adobe-Helvetica-Bold-R-Normal-*-100-*', 'kanjifont'=>$kanji_font) - style_tag_small = TkTextTag.new(t, 'font'=>'-Adobe-Helvetica-Bold-R-Normal-*-100-*') - else - style_tag_bold = TkTextTag.new(t, 'font'=>[family, 12, :bold, :italic]) - style_tag_big = TkTextTag.new(t, 'font'=>[family, 14, :bold]) - style_tag_verybig = TkTextTag.new(t, 'font'=>['Helvetica', 24, :bold]) - style_tag_small = TkTextTag.new(t, 'font'=>'Times 8 bold') - end -### -# case($tk_version) -# when /^4.*/ -# style_tag_big = TkTextTag.new(t, 'font'=>'-*-Courier-Bold-R-Normal--*-140-*-*-*-*-*-*', 'kanjifont'=>$msg_kanji_font) -# style_tag_small = TkTextTag.new(t, 'font'=>'-Adobe-Helvetica-Bold-R-Normal-*-100-*', 'kanjifont'=>$kanji_font) -# when /^8.*/ -# unless $style_demo_do_first -# $style_demo_do_first = true -# Tk.tk_call('font', 'create', '@bigascii', -# '-copy', '-*-Courier-Bold-R-Normal--*-140-*-*-*-*-*-*') -# Tk.tk_call('font', 'create', '@smallascii', -# '-copy', '-Adobe-Helvetica-Bold-R-Normal-*-100-*') -# Tk.tk_call('font', 'create', '@cBigFont', -# '-compound', '@bigascii @msg_knj') -# Tk.tk_call('font', 'create', '@cSmallFont', -# '-compound', '@smallascii @kanji') -# end -# style_tag_big = TkTextTag.new(t, 'font'=>'@cBigFont') -# style_tag_small = TkTextTag.new(t, 'font'=>'@cSmallFont') -# end - - # テキストタグ設定 (色,レリーフ関連) - if TkWinfo.depth($root).to_i > 1 - style_tag_color1 = TkTextTag.new(t, 'background'=>'#a0b7ce') - style_tag_color2 = TkTextTag.new(t, 'foreground'=>'red') - style_tag_raised = TkTextTag.new(t, 'relief'=>'raised', 'borderwidth'=>1) - style_tag_sunken = TkTextTag.new(t, 'relief'=>'sunken', 'borderwidth'=>1) - else - style_tag_color1 = TkTextTag.new(t, 'background'=>'black', - 'foreground'=>'white') - style_tag_color2 = TkTextTag.new(t, 'background'=>'black', - 'foreground'=>'white') - style_tag_raised = TkTextTag.new(t, 'background'=>'white', - 'relief'=>'raised', 'borderwidth'=>1) - style_tag_sunken = TkTextTag.new(t, 'background'=>'white', - 'relief'=>'sunken', 'borderwidth'=>1) - end - - # テキストタグ設定 (その他) - if $tk_version =~ /^4\.[01]/ - style_tag_bgstipple = TkTextTag.new(t, 'background'=>'black', - 'borderwidth'=>0, - 'bgstipple'=>'gray25') - else - style_tag_bgstipple = TkTextTag.new(t, 'background'=>'black', - 'borderwidth'=>0, - 'bgstipple'=>'gray12') - end - style_tag_fgstipple = TkTextTag.new(t, 'fgstipple'=>'gray50') - style_tag_underline = TkTextTag.new(t, 'underline'=>'on') - style_tag_overstrike = TkTextTag.new(t, 'overstrike'=>'on') - style_tag_right = TkTextTag.new(t, 'justify'=>'right') - style_tag_center = TkTextTag.new(t, 'justify'=>'center') - if $tk_version =~ /^4.*/ - style_tag_super = TkTextTag.new(t, 'offset'=>'4p', 'font'=>'-Adobe-Courier-Medium-R-Normal--*-100-*-*-*-*-*-*') - style_tag_sub = TkTextTag.new(t, 'offset'=>'-2p', 'font'=>'-Adobe-Courier-Medium-R-Normal--*-100-*-*-*-*-*-*') - else - style_tag_super = TkTextTag.new(t, 'offset'=>'4p', 'font'=>[family, 10]) - style_tag_sub = TkTextTag.new(t, 'offset'=>'-2p', 'font'=>[family, 10]) - end - style_tag_margins = TkTextTag.new(t, 'lmargin1'=>'12m', 'lmargin2'=>'6m', - 'rmargin'=>'10m') - style_tag_spacing = TkTextTag.new(t, 'spacing1'=>'10p', 'spacing2'=>'2p', - 'lmargin1'=>'12m', 'lmargin2'=>'6m', - 'rmargin'=>'10m') - - # テキスト挿入 - insert('end', 'このようにテキスト widget は情報を様々なスタイルで表示すること -ができます。') - insert('end', 'タグ', style_tag_big) - insert('end', 'というメカニズムでコントロールされます。 -タグとはテキスト widget 内のある文字 (の範囲)に対して適用できる -単なる名前のことです。タグは様々な表示スタイルに設定できます。 -設定すると、そのタグのついた文字は指定したスタイルで表示される -ようになります。使用できる表示スタイルは次の通りです。 -') - insert('end', ' -1. フォント', style_tag_big) - insert('end', ' どんな X のフォントでも使えます。') - insert('end', 'large', style_tag_verybig) - insert('end', ' -とか') -# insert('end', '小さい', style_tag_small) - insert('end', 'small', style_tag_small) - insert('end', 'とか。 -') - insert('end', ' -2. 色', style_tag_big) - insert('end', ' ') - insert('end', '背景色', style_tag_color1) - insert('end', 'も') - insert('end', '前景色', style_tag_color2) - insert('end', 'も') - insert('end', '両方', style_tag_color1, style_tag_color2) - insert('end', 'とも変えることができます。 -') - insert('end', ' -3. 網かけ', style_tag_big) - insert('end', ' このように描画の際に') - insert('end', '背景も', style_tag_bgstipple) - insert('end', '文字も', style_tag_fgstipple) - insert('end', '単なる塗りつぶし -でなく、網かけを使うことができます。 -') - insert('end', ' -4. 下線', style_tag_big) - insert('end', ' このように') - insert('end', '文字に下線を引く', style_tag_underline) - insert('end', 'ことができます。 -') - insert('end', ' -5. 打ち消し線', style_tag_big) - insert('end', ' このように') - insert('end', '文字に重ねて線を引く', style_tag_overstrike) - insert('end', 'ことができます。 -') - insert('end', ' -6. 3D 効果', style_tag_big) - insert('end', ' 背景に枠をつけて、文字を') - insert('end', '飛び出す', style_tag_raised) - insert('end', 'ようにしたり') - insert('end', '沈む', style_tag_sunken) - insert('end', ' -ようにできます。 -') - insert('end', ' -7. 行揃え', style_tag_big) - insert('end', ' このように行を -') - insert('end', '左に揃えたり -') - insert('end', '右に揃えたり -', style_tag_right) - insert('end', '真中に揃えたりできます。 -', style_tag_center) - insert('end', ' -8. 肩付き文字と添字', style_tag_big) - insert('end', ' 10') - insert('end', 'n', style_tag_super) - insert('end', ' のように肩付き文字の効果や、') - insert('end', ' -X') - insert('end', 'i', style_tag_sub) - insert('end', 'のように添字の効果を出すことができます。 -') - insert('end', ' -9. マージン', style_tag_big) - insert('end', 'テキストの左側に余分な空白を置くことができます: -') - insert('end', 'この段落はマージンの使用例です。スクリーン', - style_tag_margins) - insert('end', '上で折り返されて表示されている1行のテキストです。', - style_tag_margins) - insert('end', '左側には2種類のマージンを持ちます。', style_tag_margins) - insert('end', '1行目に対するものと、', style_tag_margins) - insert('end', '2行目以降の連続したマージン', style_tag_margins) - insert('end', 'です。また右側にもマージンがあります。', style_tag_margins) - insert('end', '行の折り返し位置を決めるために使用することができます。 -', style_tag_margins) - insert('end', ' -10. スペーシング', style_tag_big) - insert('end', '3つのパラメータで行のスペーシングを') - insert('end', '制御す -ることができます。Spacing1で、行の') - insert('end', '上にどのくらいの空間を置くか、 -spacing3') - insert('end', 'で行の下にどのくらいの空間を置くか、') - insert('end', '行が折り返されているなら -ば、spacing2で、') - insert('end', 'テキスト行を生成している行の間にどのくらい') - insert('end', 'の空間を置 -くかを示します。 -') - insert('end', 'これらのインデントされた段落はどのように', - style_tag_spacing) - insert('end', 'スペーシングがが行われるのかを示します。', - style_tag_spacing) - insert('end', '各段落は実際はテキストwidget', style_tag_spacing) - insert('end', 'の1行で、widgetによって折り畳まれています。 -', style_tag_spacing) - insert('end', 'Spacing1はこのテキストでは10pointに', style_tag_spacing) - insert('end', '設定されています。', style_tag_spacing) - insert('end', 'これにより、段落の間に大きな間隔が', style_tag_spacing) - insert('end', '存在しています。', style_tag_spacing) - insert('end', 'Spacing2は2pointに設定されています。', style_tag_spacing) - insert('end', 'これで段落の中にほんの少し間隔が存在しています。', - style_tag_spacing) - insert('end', 'Spacing3はこの例では使用されていません。 -', style_tag_spacing) - insert('end', '間隔がどこにあるかを見たければ、これらの段落の', - style_tag_spacing) - insert('end', 'なかでテキストを選択してください。選択の', style_tag_spacing) - insert('end', '反転した部分には余分にとられた間隔が', style_tag_spacing) - insert('end', '含まれています。 -', style_tag_spacing) - -} - -txt.width 70 -txt.height 32 |