arcadia 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (167) hide show
  1. data/README +126 -123
  2. data/arcadia.rb +770 -756
  3. data/base/a-contracts.rb +130 -93
  4. data/base/a-ext.rb +280 -280
  5. data/base/a-libs.rb +5 -11
  6. data/base/a-utils.rb +235 -44
  7. data/conf/arcadia.conf +20 -16
  8. data/conf/arcadia.init.rb +0 -0
  9. data/conf/arcadia.res.rb +74 -0
  10. data/ext/ae-complete-code/ae-complete-code.conf +0 -0
  11. data/ext/ae-complete-code/ae-complete-code.rb +80 -79
  12. data/ext/ae-debug/ae-debug.conf +0 -0
  13. data/ext/ae-debug/ae-debug.rb +2 -6
  14. data/ext/ae-debug/debug1.57.rb +0 -0
  15. data/ext/ae-doc-code/ae-doc-code.conf +15 -0
  16. data/ext/ae-doc-code/ae-doc-code.rb +289 -0
  17. data/ext/ae-editor/ae-editor.conf +17 -8
  18. data/ext/ae-editor/ae-editor.rb +738 -396
  19. data/ext/ae-event-log/ae-event-log.conf +0 -0
  20. data/ext/ae-event-log/ae-event-log.rb +0 -0
  21. data/ext/ae-file-history/ae-file-history.conf +2 -2
  22. data/ext/ae-file-history/ae-file-history.rb +286 -290
  23. data/ext/ae-inspector/ae-inspector.conf +0 -0
  24. data/ext/ae-inspector/ae-inspector.rb +0 -0
  25. data/ext/ae-output-event/ae-output-event.conf +2 -2
  26. data/ext/ae-output/ae-output.conf +2 -2
  27. data/ext/ae-output/ae-output.rb +173 -178
  28. data/ext/ae-palette/ae-palette.conf +0 -0
  29. data/ext/ae-palette/ae-palette.rb +0 -0
  30. data/ext/ae-shell/ae-shell.conf +0 -0
  31. data/ext/ae-shell/ae-shell.rb +54 -54
  32. data/lib/tk/al-tk.rb +3076 -3082
  33. data/lib/tk/al-tk.res.rb +0 -0
  34. data/lib/tk/al-tkarcadia.rb +0 -0
  35. data/lib/tk/al-tkcustom.rb +0 -0
  36. data/lib/tkext/al-bwidget.rb +0 -0
  37. data/lib/tkext/al-iwidgets.rb +0 -0
  38. data/lib/tkext/al-tile.rb +0 -0
  39. data/lib/tkext/al-tktable.rb +0 -0
  40. data/tcl/BWidget-1.8.0/BWman/ArrowButton.html +276 -0
  41. data/tcl/BWidget-1.8.0/BWman/BWidget.html +228 -0
  42. data/tcl/BWidget-1.8.0/BWman/Button.html +273 -0
  43. data/tcl/BWidget-1.8.0/BWman/ButtonBox.html +264 -0
  44. data/tcl/BWidget-1.8.0/BWman/ComboBox.html +402 -0
  45. data/tcl/BWidget-1.8.0/BWman/Dialog.html +314 -0
  46. data/tcl/BWidget-1.8.0/BWman/DragSite.html +139 -0
  47. data/tcl/BWidget-1.8.0/BWman/DropSite.html +254 -0
  48. data/tcl/BWidget-1.8.0/BWman/DynamicHelp.html +248 -0
  49. data/tcl/BWidget-1.8.0/BWman/Entry.html +341 -0
  50. data/tcl/BWidget-1.8.0/BWman/Label.html +331 -0
  51. data/tcl/BWidget-1.8.0/BWman/LabelEntry.html +194 -0
  52. data/tcl/BWidget-1.8.0/BWman/LabelFrame.html +144 -0
  53. data/tcl/BWidget-1.8.0/BWman/ListBox.html +678 -0
  54. data/tcl/BWidget-1.8.0/BWman/MainFrame.html +283 -0
  55. data/tcl/BWidget-1.8.0/BWman/MessageDlg.html +218 -0
  56. data/tcl/BWidget-1.8.0/BWman/NoteBook.html +374 -0
  57. data/tcl/BWidget-1.8.0/BWman/PagesManager.html +180 -0
  58. data/tcl/BWidget-1.8.0/BWman/PanedWindow.html +142 -0
  59. data/tcl/BWidget-1.8.0/BWman/PanelFrame.html +153 -0
  60. data/tcl/BWidget-1.8.0/BWman/PasswdDlg.html +214 -0
  61. data/tcl/BWidget-1.8.0/BWman/ProgressBar.html +152 -0
  62. data/tcl/BWidget-1.8.0/BWman/ProgressDlg.html +145 -0
  63. data/tcl/BWidget-1.8.0/BWman/ScrollView.html +130 -0
  64. data/tcl/BWidget-1.8.0/BWman/ScrollableFrame.html +191 -0
  65. data/tcl/BWidget-1.8.0/BWman/ScrolledWindow.html +116 -0
  66. data/tcl/BWidget-1.8.0/BWman/SelectColor.html +164 -0
  67. data/tcl/BWidget-1.8.0/BWman/SelectFont.html +152 -0
  68. data/tcl/BWidget-1.8.0/BWman/Separator.html +77 -0
  69. data/tcl/BWidget-1.8.0/BWman/SpinBox.html +250 -0
  70. data/tcl/BWidget-1.8.0/BWman/StatusBar.html +147 -0
  71. data/tcl/BWidget-1.8.0/BWman/TitleFrame.html +107 -0
  72. data/tcl/BWidget-1.8.0/BWman/Tree.html +947 -0
  73. data/tcl/BWidget-1.8.0/BWman/Widget.html +502 -0
  74. data/tcl/BWidget-1.8.0/BWman/contents.html +84 -0
  75. data/tcl/BWidget-1.8.0/BWman/index.html +7 -0
  76. data/tcl/BWidget-1.8.0/BWman/navtree.html +41 -0
  77. data/tcl/BWidget-1.8.0/BWman/options.htm +458 -0
  78. data/tcl/BWidget-1.8.0/CHANGES.txt +266 -0
  79. data/tcl/BWidget-1.8.0/ChangeLog +1641 -0
  80. data/tcl/BWidget-1.8.0/LICENSE.txt +41 -0
  81. data/tcl/BWidget-1.8.0/README.txt +127 -0
  82. data/tcl/BWidget-1.8.0/arrow.tcl +551 -0
  83. data/tcl/BWidget-1.8.0/bitmap.tcl +94 -0
  84. data/tcl/BWidget-1.8.0/button.tcl +324 -0
  85. data/tcl/BWidget-1.8.0/buttonbox.tcl +403 -0
  86. data/tcl/BWidget-1.8.0/color.tcl +493 -0
  87. data/tcl/BWidget-1.8.0/combobox.tcl +809 -0
  88. data/tcl/BWidget-1.8.0/demo/basic.tcl +199 -0
  89. data/tcl/BWidget-1.8.0/demo/bwidget.xbm +46 -0
  90. data/tcl/BWidget-1.8.0/demo/demo.tcl +212 -0
  91. data/tcl/BWidget-1.8.0/demo/dnd.tcl +42 -0
  92. data/tcl/BWidget-1.8.0/demo/manager.tcl +141 -0
  93. data/tcl/BWidget-1.8.0/demo/select.tcl +59 -0
  94. data/tcl/BWidget-1.8.0/demo/tmpldlg.tcl +214 -0
  95. data/tcl/BWidget-1.8.0/demo/tree.tcl +260 -0
  96. data/tcl/BWidget-1.8.0/demo/x1.xbm +2258 -0
  97. data/tcl/BWidget-1.8.0/dialog.tcl +345 -0
  98. data/tcl/BWidget-1.8.0/dragsite.tcl +197 -0
  99. data/tcl/BWidget-1.8.0/dropsite.tcl +455 -0
  100. data/tcl/BWidget-1.8.0/dynhelp.tcl +625 -0
  101. data/tcl/BWidget-1.8.0/entry.tcl +469 -0
  102. data/tcl/BWidget-1.8.0/font.tcl +566 -0
  103. data/tcl/BWidget-1.8.0/images/bold.gif +0 -0
  104. data/tcl/BWidget-1.8.0/images/copy.gif +0 -0
  105. data/tcl/BWidget-1.8.0/images/cut.gif +0 -0
  106. data/tcl/BWidget-1.8.0/images/dragfile.gif +0 -0
  107. data/tcl/BWidget-1.8.0/images/dragicon.gif +0 -0
  108. data/tcl/BWidget-1.8.0/images/error.gif +0 -0
  109. data/tcl/BWidget-1.8.0/images/file.gif +0 -0
  110. data/tcl/BWidget-1.8.0/images/folder.gif +0 -0
  111. data/tcl/BWidget-1.8.0/images/hourglass.gif +0 -0
  112. data/tcl/BWidget-1.8.0/images/info.gif +0 -0
  113. data/tcl/BWidget-1.8.0/images/italic.gif +0 -0
  114. data/tcl/BWidget-1.8.0/images/minus.xbm +5 -0
  115. data/tcl/BWidget-1.8.0/images/new.gif +0 -0
  116. data/tcl/BWidget-1.8.0/images/opcopy.xbm +5 -0
  117. data/tcl/BWidget-1.8.0/images/open.gif +0 -0
  118. data/tcl/BWidget-1.8.0/images/openfold.gif +0 -0
  119. data/tcl/BWidget-1.8.0/images/oplink.xbm +5 -0
  120. data/tcl/BWidget-1.8.0/images/opmove.xbm +5 -0
  121. data/tcl/BWidget-1.8.0/images/overstrike.gif +0 -0
  122. data/tcl/BWidget-1.8.0/images/palette.gif +0 -0
  123. data/tcl/BWidget-1.8.0/images/passwd.gif +0 -0
  124. data/tcl/BWidget-1.8.0/images/paste.gif +0 -0
  125. data/tcl/BWidget-1.8.0/images/plus.xbm +5 -0
  126. data/tcl/BWidget-1.8.0/images/print.gif +0 -0
  127. data/tcl/BWidget-1.8.0/images/question.gif +0 -0
  128. data/tcl/BWidget-1.8.0/images/redo.gif +0 -0
  129. data/tcl/BWidget-1.8.0/images/save.gif +0 -0
  130. data/tcl/BWidget-1.8.0/images/target.xbm +9 -0
  131. data/tcl/BWidget-1.8.0/images/underline.gif +0 -0
  132. data/tcl/BWidget-1.8.0/images/undo.gif +0 -0
  133. data/tcl/BWidget-1.8.0/images/warning.gif +0 -0
  134. data/tcl/BWidget-1.8.0/init.tcl +40 -0
  135. data/tcl/BWidget-1.8.0/label.tcl +271 -0
  136. data/tcl/BWidget-1.8.0/labelentry.tcl +100 -0
  137. data/tcl/BWidget-1.8.0/labelframe.tcl +160 -0
  138. data/tcl/BWidget-1.8.0/lang/da.rc +52 -0
  139. data/tcl/BWidget-1.8.0/lang/de.rc +52 -0
  140. data/tcl/BWidget-1.8.0/lang/en.rc +52 -0
  141. data/tcl/BWidget-1.8.0/lang/es.rc +53 -0
  142. data/tcl/BWidget-1.8.0/lang/fr.rc +52 -0
  143. data/tcl/BWidget-1.8.0/listbox.tcl +1638 -0
  144. data/tcl/BWidget-1.8.0/mainframe.tcl +711 -0
  145. data/tcl/BWidget-1.8.0/messagedlg.tcl +128 -0
  146. data/tcl/BWidget-1.8.0/notebook.tcl +1164 -0
  147. data/tcl/BWidget-1.8.0/pagesmgr.tcl +294 -0
  148. data/tcl/BWidget-1.8.0/panedw.tcl +381 -0
  149. data/tcl/BWidget-1.8.0/panelframe.tcl +246 -0
  150. data/tcl/BWidget-1.8.0/passwddlg.tcl +178 -0
  151. data/tcl/BWidget-1.8.0/pkgIndex.tcl +47 -0
  152. data/tcl/BWidget-1.8.0/progressbar.tcl +208 -0
  153. data/tcl/BWidget-1.8.0/progressdlg.tcl +87 -0
  154. data/tcl/BWidget-1.8.0/scrollframe.tcl +226 -0
  155. data/tcl/BWidget-1.8.0/scrollview.tcl +254 -0
  156. data/tcl/BWidget-1.8.0/scrollw.tcl +280 -0
  157. data/tcl/BWidget-1.8.0/separator.tcl +75 -0
  158. data/tcl/BWidget-1.8.0/spinbox.tcl +331 -0
  159. data/tcl/BWidget-1.8.0/statusbar.tcl +422 -0
  160. data/tcl/BWidget-1.8.0/tests/entry.test +173 -0
  161. data/tcl/BWidget-1.8.0/titleframe.tcl +170 -0
  162. data/tcl/BWidget-1.8.0/tree.tcl +2228 -0
  163. data/tcl/BWidget-1.8.0/utils.tcl +645 -0
  164. data/tcl/BWidget-1.8.0/widget.tcl +1576 -0
  165. data/tcl/BWidget-1.8.0/wizard.tcl +1028 -0
  166. data/tcl/BWidget-1.8.0/xpm2image.tcl +115 -0
  167. metadata +141 -5
@@ -464,9 +464,7 @@ class AG
464
464
  end
465
465
 
466
466
  def select
467
- _tobj = InspectorContract::TInspectorObj.new(self)
468
- _tobj.wrapper = self
469
- InspectorContract.instance.select(_tobj)
467
+ InspectorContract.instance.select(self, 'wrapper'=>self)
470
468
  self
471
469
  end
472
470
 
@@ -514,7 +512,7 @@ class AG
514
512
  if @ag_parent
515
513
  return @ag_parent.register(_agobj)
516
514
  else
517
- WrapperContract.instance.wrapper_created(WrapperContract::TWrapperObj.new(self,'wrapper'=>_agobj))
515
+ WrapperContract.instance.wrapper_created(self,'wrapper'=>_agobj)
518
516
  #
519
517
  # _tobj = InspectorActionContract::TInspectorActionObj.new(self)
520
518
  # _tobj.wrapper = _agobj
@@ -590,9 +588,7 @@ class AG
590
588
 
591
589
 
592
590
  def delete
593
- _tobj = InspectorContract::TInspectorObj.new(self)
594
- _tobj.wrapper = self
595
- InspectorContract.instance.delete_wrapper(_tobj)
591
+ InspectorContract.instance.delete_wrapper(self, 'wrapper'=>self)
596
592
  end
597
593
 
598
594
  def AG.class_wrapped
@@ -833,14 +829,12 @@ class AG
833
829
  if old_value != _value
834
830
  @props[_family][_name]['set'].call(_value)
835
831
  end
836
- WrapperContract.instance.property_updated(
837
- WrapperContract::TWrapperObj.new(self,
832
+ WrapperContract.instance.property_updated(self,
838
833
  'wrapper'=>self,
839
834
  'property_name'=> _name,
840
835
  'property_family'=>_family,
841
836
  'property_old_value'=>old_value,
842
- 'property_new_value'=>_value
843
- )
837
+ 'property_new_value'=>_value
844
838
  )
845
839
  end
846
840
 
@@ -263,7 +263,7 @@ class AGTkOSplittedFrames < AGTkSplittedFrames
263
263
  relief 'flat'
264
264
  }
265
265
  if perc
266
- p_height = TkWinfo.screenheight(self)
266
+ p_height = TkWinfo.screenheight(self)
267
267
  y = (p_height/100*height).to_i
268
268
  else
269
269
  y = height
@@ -442,20 +442,68 @@ class AGTkOSplittedFrames < AGTkSplittedFrames
442
442
 
443
443
  end
444
444
 
445
- class TkTitledFrame < TkFrame
445
+ class TkBaseTitledFrame < TkFrame
446
446
  attr_reader :frame
447
447
  attr_reader :top
448
448
 
449
- def initialize(parent=nil, title='...', img=nil , keys=nil)
450
- super(parent, keys)
451
- @state = 'normal'
449
+ def initialize(parent=nil, *args)
450
+ super(parent, *args)
452
451
  @parent = parent
453
452
  @title_height = 18
454
-
455
453
  @top = TkFrame.new(self){
456
454
  background '#303b50'
455
+ #foreground 'white'
456
+ #anchor 'w'
457
457
  }.place('x'=>0, 'y'=>0,'height'=>@title_height, 'relwidth'=>1)
458
+ #.pack('fill'=> 'x','ipady'=> @title_height, 'side'=>'top')
459
+
460
+
461
+ @frame = create_frame
462
+
463
+
458
464
 
465
+ @button_frame=TkFrame.new(@top){
466
+ #background '#303b50'
467
+ }.pack('side'=> 'right','anchor'=> 'w')
468
+
469
+ self.head_buttons
470
+ end
471
+
472
+ def create_frame
473
+ return TkFrame.new(self).place('x'=>0, 'y'=>@title_height,'height'=>-@title_height,'relheight'=>1, 'relwidth'=>1)
474
+ #pack('fill'=>'both','expand'=> 1, 'anchor'=>'center')
475
+ #
476
+ end
477
+
478
+ def add_button(_label,_proc=nil,_image=nil, _side= 'right')
479
+ TkButton.new(@button_frame){
480
+ text _label if _label
481
+ image TkPhotoImage.new('dat' => _image) if _image
482
+ relief 'flat'
483
+ font 'helvetica 8 bold'
484
+ #borderwidth 0
485
+ #background '#303b50'
486
+ #background '#8080ff'
487
+ pack('side'=> _side,'anchor'=> 'e')
488
+ bind('1',_proc) if _proc
489
+ }
490
+ end
491
+
492
+ def head_buttons
493
+ @bmaxmin = add_button('[ ]',proc{resize}, W_MAX_GIF)
494
+ end
495
+
496
+ end
497
+
498
+
499
+
500
+ class TkTitledFrame < TkBaseTitledFrame
501
+ attr_reader :frame
502
+ attr_reader :top
503
+
504
+ def initialize(parent=nil, title='...', img=nil , keys=nil)
505
+ super(parent, keys)
506
+ @state = 'normal'
459
507
  @title_label =TkLabel.new(@top){
460
508
  text title+' :: '
461
509
  anchor 'w'
@@ -474,12 +522,7 @@ class TkTitledFrame < TkFrame
474
522
  compound 'left'
475
523
  pack('side'=> 'left','anchor'=> 'e')
476
524
  }
477
- @button_frame=TkFrame.new(@top){
478
- #background '#303b50'
479
- }.pack('side'=> 'right','anchor'=> 'w')
480
525
 
481
- self.head_buttons
482
- @frame = create_frame
483
526
  @ap = Array.new
484
527
  @apx = Array.new
485
528
  @apy = Array.new
@@ -495,9 +538,6 @@ class TkTitledFrame < TkFrame
495
538
  @title_label.text(_text+'::')
496
539
  end
497
540
 
498
- def create_frame
499
- return TkFrame.new(self).place('x'=>0, 'y'=>@title_height,'height'=>-@title_height,'relheight'=>1, 'relwidth'=>1)
500
- end
501
541
 
502
542
  def add_sep(_width=0,_background =@top.background)
503
543
  TkLabel.new(@top){||
@@ -507,19 +547,6 @@ class TkTitledFrame < TkFrame
507
547
  }
508
548
  end
509
549
 
510
- def add_button(_label,_proc=nil,_image=nil, _side= 'right')
511
- TkButton.new(@button_frame){
512
- text _label if _label
513
- image TkPhotoImage.new('dat' => _image) if _image
514
- relief 'flat'
515
- font 'helvetica 8 bold'
516
- #borderwidth 0
517
- #background '#303b50'
518
- #background '#8080ff'
519
- pack('side'=> _side,'anchor'=> 'e', 'padx'=>0, 'pady'=>0)
520
- bind('1',_proc) if _proc
521
- }
522
- end
523
550
 
524
551
  def head_buttons
525
552
  @bmaxmin = add_button('[ ]',proc{resize}, W_MAX_GIF)
@@ -601,10 +628,10 @@ class Application
601
628
  init_config
602
629
  yield(self) if block_given?
603
630
  end
604
-
605
- def Application.instance
606
- @@instance
607
- end
631
+
632
+ def Application.instance
633
+ @@instance
634
+ end
608
635
 
609
636
  def init_config
610
637
  self['applicationParams'].persistent_file = File.join(local_dir, self['applicationParams'].name+'.pers')
@@ -623,13 +650,13 @@ class Application
623
650
  @objs[_name] = _obj
624
651
  end
625
652
 
626
- # this method load arcadia.conf from local directory for personalizations
627
- def load_local_config(_create_if_not_exist=true)
628
- local_file_config = File.join(local_dir,File.basename(self['applicationParams'].config_file))
629
- if FileTest.exist?(local_file_config)
630
- self['conf'].update(self.config_file2hash(local_file_config))
631
- elsif _create_if_not_exist
632
- f = File.new(local_file_config, "w")
653
+ # this method load arcadia.conf from local directory for personalizations
654
+ def load_local_config(_create_if_not_exist=true)
655
+ local_file_config = File.join(local_dir,File.basename(self['applicationParams'].config_file))
656
+ if FileTest.exist?(local_file_config)
657
+ self['conf'].update(self.config_file2hash(local_file_config))
658
+ elsif _create_if_not_exist
659
+ f = File.new(local_file_config, "w")
633
660
  begin
634
661
  if f
635
662
  p = self['conf']
@@ -642,8 +669,8 @@ class Application
642
669
  ensure
643
670
  f.close unless f.nil?
644
671
  end
645
- end
646
- end
672
+ end
673
+ end
647
674
 
648
675
  def local_dir
649
676
  _local_dir = File.join(ENV["HOME"],'.'+self['applicationParams'].name) if ENV["HOME"]
@@ -716,10 +743,10 @@ class Application
716
743
 
717
744
 
718
745
  def load_persist(_persist_file)
719
- if _persist_file && !FileTest::exist?(_persist_file)
720
- Dir.mkdir(File.dirname(_persist_file)) unless File.exists?(File.dirname(_persist_file))
721
- File.new(_persist_file, File::CREAT)
722
- end
746
+ if _persist_file && !FileTest::exist?(_persist_file)
747
+ Dir.mkdir(File.dirname(_persist_file)) unless File.exists?(File.dirname(_persist_file))
748
+ File.new(_persist_file, File::CREAT)
749
+ end
723
750
 
724
751
  if _persist_file && FileTest::exist?(_persist_file)
725
752
  f = File::open(_persist_file,'r')
@@ -783,3 +810,167 @@ class TkApplication < Application
783
810
  Tk.mainloop
784
811
  end
785
812
  end
813
+
814
+ module TkMovable
815
+ def start_moving(_moving_obj=self, _moved_obj=self)
816
+ @x0 = 0
817
+ @y0 = 0
818
+ @moving_obj = _moving_obj
819
+ @moved_obj = _moved_obj
820
+ @moving_obj.bind_append("B1-Motion", proc{|x, y| moving_do_move_obj(x,y)},"%x %y")
821
+ @moving_obj.bind_append("ButtonPress-1", proc{|e| moving_do_press(e.x, e.y)})
822
+ end
823
+
824
+ def stop_moving
825
+ @moving_obj.bind_remove("B1-Motion")
826
+ @moving_obj.bind_remove("ButtonPress-1")
827
+ end
828
+
829
+ def moving_do_press(_x, _y)
830
+ @x0 = _x
831
+ @y0 = _y
832
+ end
833
+
834
+ def moving_do_move_obj(_x, _y)
835
+ _x = TkPlace.info(@moved_obj)['x'] + _x - @x0
836
+ _y = TkPlace.info(@moved_obj)['y'] + _y - @y0
837
+ @moved_obj.place('x'=>_x, 'y'=>_y)
838
+ end
839
+
840
+ end
841
+
842
+ module TkResizabled
843
+ MIN_WIDTH = 50
844
+ MIN_HEIGHT = 50
845
+ def start_resizing(_moving_obj=self, _moved_obj=self)
846
+ @x0 = 0
847
+ @y0 = 0
848
+ @moving_obj = _moving_obj
849
+ @moved_obj = _moved_obj
850
+ @moving_obj.bind_append("B1-Motion", proc{|x, y| resizing_do_move_obj(x,y)},"%x %y")
851
+ @moving_obj.bind_append("ButtonPress-1", proc{|e| resizing_do_press(e.x, e.y)})
852
+ end
853
+
854
+ def stop_resizing
855
+ @moving_obj.bind_remove("B1-Motion")
856
+ @moving_obj.bind_remove("ButtonPress-1")
857
+ end
858
+
859
+ def resizing_do_press(_x, _y)
860
+ @x0 = _x
861
+ @y0 = _y
862
+ end
863
+
864
+ def resizing_do_move_obj(_x, _y)
865
+ _width0 = TkPlace.info(@moved_obj)['width']
866
+ _height0 = TkPlace.info(@moved_obj)['height']
867
+ _width = _width0 + _x - @x0
868
+ _height = _height0 + _y -@y0
869
+ _width = MIN_WIDTH if _width < MIN_WIDTH
870
+ _height = MIN_HEIGHT if _height < MIN_HEIGHT
871
+ @moved_obj.place('width'=>_width, 'height'=>_height)
872
+ end
873
+
874
+ end
875
+
876
+
877
+ class TkFloatTitledFrame < TkBaseTitledFrame
878
+ include TkMovable
879
+ include TkResizabled
880
+ def initialize(parent=nil, *args)
881
+ super(parent)
882
+ frame.place('height'=>-32)
883
+ borderwidth 2
884
+ relief 'groove'
885
+
886
+ @top_label = TkLabel.new(@top){
887
+ background '#303b50'
888
+ foreground 'white'
889
+ anchor 'w'
890
+ }.pack('fill'=>'x', 'side'=>'top')
891
+ #.place('x'=>0, 'y'=>0,'relheight'=>1, 'relwidth'=>1 ,'width'=>-20)
892
+
893
+ @resizing_label=TkLabel.new(self){
894
+ #background '#303b50'
895
+ text '-'
896
+ image TkPhotoImage.new('dat'=>EXPAND_LIGHT_GIF)
897
+ }.pack('side'=> 'right','anchor'=> 's')
898
+
899
+
900
+ start_moving(@top_label, self)
901
+ start_resizing(@resizing_label, self)
902
+ end
903
+
904
+ def title(_text)
905
+ @top_label.text(_text)
906
+ end
907
+
908
+
909
+ def on_close=(_proc)
910
+ add_button('X', _proc, TAB_CLOSE_GIF)
911
+ end
912
+
913
+ def hide
914
+ @manager = TkWinfo.manager(self)
915
+ if @manager == 'place'
916
+ @x_place = TkPlace.info(self)['x']
917
+ @y_place = TkPlace.info(self)['y']
918
+ @width_place = TkPlace.info(self)['width']
919
+ @height_place = TkPlace.info(self)['height']
920
+ self.unplace
921
+ end
922
+ end
923
+
924
+ def show
925
+ if @manager == 'place'
926
+ self.place('x'=>@x_place, 'y'=>@y_place, 'width'=>@width_place, 'height'=>@height_place)
927
+ end
928
+ end
929
+
930
+ def head_buttons
931
+ end
932
+
933
+ end
934
+
935
+ class TkProgressframe < TkFloatTitledFrame
936
+ def initialize(parent=nil, _max=100, *args)
937
+ super(parent)
938
+ @max = _max
939
+ @progress = TkVariable.new
940
+ @progress.value = -1
941
+ Tk::BWidget::ProgressBar.new(self, :width=>150, :height=>10,
942
+ :background=>'red',
943
+ :foreground=>'blue',
944
+ :variable=>@progress,
945
+ :borderwidth=>0,
946
+ :relief=>'flat',
947
+ :maximum=>_max).place('width' => '150','x' => 25,'y' => 30,'height' => 15)
948
+
949
+ @buttons_frame = TkFrame.new(self).pack('fill'=>'x', 'side'=>'bottom')
950
+
951
+ @b_cancel = TkButton.new(@buttons_frame){|_b_go|
952
+ default 'disabled'
953
+ text 'Cancel'
954
+ overrelief 'raised'
955
+ justify 'center'
956
+ pack('side'=>'top','ipadx'=>5, 'padx'=>5)
957
+ }
958
+
959
+ place('x'=>100,'y'=>100,'height'=> 120,'width'=> 200)
960
+ end
961
+
962
+ def quit
963
+ #self.destroy
964
+ end
965
+
966
+ def progress(_incr=1)
967
+ @progress.numeric += _incr
968
+ end
969
+
970
+ def on_cancel=(_proc)
971
+ @b_cancel.bind_append('1', _proc)
972
+ end
973
+
974
+
975
+ end
976
+
@@ -73,9 +73,11 @@ toolbar_buttons.run.debugquit.action=debug->debug_quit
73
73
  toolbar_buttons.sys=exit
74
74
  toolbar_buttons.sys.exit.name=exit
75
75
  toolbar_buttons.sys.exit.hint=Exit from Arcadia
76
- toolbar_buttons.sys.exit.image=EXIT_GIF
76
+ toolbar_buttons.sys.exit.image=EXIT_STORY_GIF
77
77
  toolbar_buttons.sys.exit.action=arcadia->do_exit
78
78
 
79
+ toolbar_show=yes
80
+
79
81
  #:::::::::::::::: Libraries group ::::::::::::::::::::::<begin>
80
82
 
81
83
  # this section is for the components pallets of the wrapped class
@@ -146,11 +148,11 @@ i386-mswin32::splash.banner.font=Ariel 8 italic
146
148
  #:::::::::::::::: splash group ::::::::::::::::::::::<begin>
147
149
 
148
150
  #:::::::::::::::: main group ::::::::::::::::::::::<begin>
149
- main.mainmenu.font=courier 9
151
+ main.mainmenu.font=courier 12
150
152
  i386-freebsd6::main.mainmenu.font=courier 12
151
153
  i386-mswin32::main.mainmenu.font=Ariel 8
152
- main.font=courier 9
153
- main.font.bold=courier 9 bold
154
+ main.font=courier 12
155
+ main.font.bold=courier 12 bold
154
156
  i386-freebsd6::main.font=courier 12
155
157
  i386-freebsd6::main.font=courier 12 bold
156
158
  i386-mswin32::main.font=Ariel 8
@@ -160,39 +162,41 @@ i386-mswin32::main.component.font=Ariel 8
160
162
  #:::::::::::::::: main group ::::::::::::::::::::::<end>
161
163
 
162
164
  #:::::::::::::::: inspector group ::::::::::::::::::::::<begin>
163
- inspectors.tabs.font=courier 9
165
+ inspectors.tabs.font=courier 12
164
166
  i386-mswin32::inspectors.tabs.font=Ariel 8
165
167
  i386-freebsd6::inspectors.tabs.font=courier 12
166
168
  inspectors.tabs.side=top
167
- inspectors.inspector.tabs.font=courier 9
169
+ inspectors.inspector.tabs.font=courier 12
168
170
  i386-freebsd6::inspectors.inspector.tabs.font=courier 12
169
171
  i386-mswin32::inspectors.inspector.tabs.font=Ariel 8
170
172
  inspectors.inspector.tabs.side=top
171
- inspectors.inspector.key.font=courier 9
172
- inspectors.inspector.value.font=courier 9
173
+ inspectors.inspector.key.font=courier 12
174
+ inspectors.inspector.value.font=courier 12
173
175
  i386-freebsd6::inspectors.inspector.key.font=courier 12
174
176
  i386-freebsd6::inspectors.inspector.value.font=courier 12
175
177
  i386-mswin32::inspectors.inspector.key.font=Ariel 8
176
178
  i386-mswin32::inspectors.inspector.value.font=Ariel 8
177
- inspectors.inspector.tree.font=courier 9
179
+ inspectors.inspector.tree.font=courier 12
178
180
  i386-mswin32::inspectors.inspector.tree.font=Ariel 8
179
181
 
180
- inspectors.debug.tabs.font=courier 9
182
+ inspectors.debug.tabs.font=courier 12
183
+ inspectors.debug.tabs.font.bold=courier 12 bold
181
184
  i386-freebsd6::inspectors.debug.tabs.font=courier 12
182
- i386-mswin32::inspectors.debug.tabs.font=courier 8
183
- inspectors.debug.tabs.font.bold=courier 9 bold
184
185
  i386-freebsd6::inspectors.debug.tabs.font.bold=courier 12 bold
186
+ i386-mswin32::inspectors.debug.tabs.font=courier 8
185
187
  i386-mswin32::inspectors.debug.tabs.font.bold=courier 8 bold
186
188
  #:::::::::::::::: inspector group ::::::::::::::::::::::<end>
187
189
 
188
190
 
189
191
 
190
192
  #:::::::::::::::: all ::::::::::::::::::::::<begin>
191
- all.frame.title.font=courier 9
192
- all.frame.title.font.bold=courier 9 bold
193
- all.frame.title.font.italic=courier 9 italic
193
+ all.frame.title.font=courier 12
194
+ all.frame.title.font.bold=courier 12 bold
195
+ all.frame.title.font.italic=courier 12 italic
194
196
  i386-freebsd6::all.frame.title.font=courier 12
195
197
  i386-freebsd6::all.frame.title.font.bold=courier 12 bold
196
198
  i386-freebsd6::all.frame.title.font.italic=courier 12 italic
197
- i386-mswin32::all.frame.title.font=Ariel 8
199
+ i386-mswin32::all.frame.title.font=courier 9
200
+ i386-mswin32::all.frame.title.font.bold=courier 9 bold
201
+ i386-mswin32::all.frame.title.font.italic=courier 9 italic
198
202
  #:::::::::::::::: all ::::::::::::::::::::::<end>