arcadia 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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>