1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
#
# dnd demo --- called from demo.rb
#
unless Object.const_defined?('DemoVar')
fail RuntimeError, "This is NOT a stand alone script. This script is called from 'demo.rb'. "
end
module DemoDnD
def self.create(nb)
frame = nb.insert('end', 'demoDnD', :text=>'Drag and Drop')
titf1 = Tk::BWidget::TitleFrame.new(frame, :text=>'Drag source')
subf = titf1.get_frame
ent1 = Tk::BWidget::LabelEntry.new(subf, :label=>'Entry',
:labelwidth=>14, :dragenabled=>true,
:dragevent=>3)
labf1 = Tk::BWidget::LabelFrame.new(subf, :text=>'Label (text)',
:width=>14)
f = labf1.get_frame
lab = Tk::BWidget::Label.new(f, :text=>'Drag this text',
:dragenabled=>true, :dragevent=>3).pack
labf2 = Tk::BWidget::LabelFrame.new(subf, :text=>'Label (bitmap)',
:width=>14)
f = labf2.get_frame
lab = Tk::BWidget::Label.new(f, :bitmap=>'info',
:dragenabled=>true, :dragevent=>3).pack
Tk.pack(ent1, labf1, labf2, :side=>:top, :fill=>:x, :pady=>4)
titf2 = Tk::BWidget::TitleFrame.new(frame, :text=>'Drop targets')
subf = titf2.get_frame
ent1 = Tk::BWidget::LabelEntry.new(subf, :label=>'Entry',
:labelwidth=>14, :dropenabled=>true)
labf1 = Tk::BWidget::LabelFrame.new(subf, :text=>'Label', :width=>14)
f = labf1.get_frame
lab = Tk::BWidget::Label.new(f, :dropenabled=>true,
:highlightthickness=>1).pack(:fill=>:x)
Tk.pack(ent1, labf1, :side=>:top, :fill=>:x, :pady=>4)
Tk.pack(titf1, titf2, :pady=>4)
frame
end
end
|