arcadia 0.9.2 → 0.9.3

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.
@@ -253,6 +253,7 @@ class Shell < ArcadiaExt
253
253
  # output_mark = Arcadia.console(self,'msg'=>output_dump, 'level'=>'debug', 'mark'=>output_mark)
254
254
  # _event.add_result(self, 'output'=>_readed)
255
255
  # }
256
+ #p "da cancellare #{ _event.file } #{_event.file[-2..-1] == '~~'} #{_event.persistent == false} #{File.exist?(_event.file)}"
256
257
  if _event.persistent == false && _event.file[-2..-1] == '~~'
257
258
  File.delete(_event.file) if File.exist?(_event.file)
258
259
  end
data/lib/a-commons.rb CHANGED
@@ -510,24 +510,30 @@ module EventBus #(or SourceEvent)
510
510
  end
511
511
 
512
512
 
513
- module Autils
514
- def full_in_path_command(_command=nil)
515
- return nil if _command.nil?
516
- _ret = nil
517
- RUBY_PLATFORM =~ /win32|mingw/ ? _sep = ';':_sep=':'
518
- ENV['PATH'].split(_sep).each{|_path|
519
- _file = File.join(_path, _command)
520
- if FileTest.exist?(_file)
521
- _ret = _file
522
- end
523
- }
524
- _ret
525
- end
513
+ module Cacheble
514
+ def self.extended(_obj)
515
+ _obj.__initialize_cache(_obj)
516
+ end
526
517
 
527
- def is_windows?
528
- RUBY_PLATFORM =~ /mingw|mswin/
518
+ def self.included(_obj)
519
+ _obj.__initialize_cache(_obj)
520
+ end
521
+
522
+ def __initialize_cache(_obj)
523
+ @@cache = Hash.new
524
+ end
525
+
526
+ def self.clear_cache
527
+ @@cache.clear
528
+ end
529
+
530
+ def self.set_cache(_key, _value)
531
+ @@cache[_key]=_value
532
+ end
533
+
534
+ def self.get_cache(_key, _value)
535
+ @@cache[_key]
529
536
  end
530
-
531
537
  end
532
538
 
533
539
  module Configurable
data/lib/a-contracts.rb CHANGED
@@ -131,16 +131,21 @@ end
131
131
  class BufferRaisedEvent < BufferEvent
132
132
  end
133
133
 
134
+ class NoBufferExistEvent < BufferEvent
135
+ end
136
+
137
+ class OneBufferExistEvent < BufferEvent
138
+ end
139
+
134
140
  # +---------------------------------------------+
135
141
  # Debug event
136
142
  # +---------------------------------------------+
137
143
 
138
144
  class DebugEvent < ArcadiaEvent
139
- attr_accessor :file, :row, :active
145
+ attr_accessor :id, :file, :row, :active, :persistent
140
146
  end
141
147
 
142
148
  class SetBreakpointEvent < DebugEvent
143
- attr_accessor :active
144
149
  attr_accessor :line_code
145
150
  end
146
151
 
data/lib/a-core.rb CHANGED
@@ -22,7 +22,7 @@ class Arcadia < TkApplication
22
22
  super(
23
23
  ApplicationParams.new(
24
24
  'arcadia',
25
- '0.9.2',
25
+ '0.9.3',
26
26
  'conf/arcadia.conf',
27
27
  'conf/arcadia.pers'
28
28
  )
@@ -939,7 +939,20 @@ class Arcadia < TkApplication
939
939
  def Arcadia.is_windows?
940
940
  RUBY_PLATFORM =~ /mingw|mswin/
941
941
  end
942
-
942
+
943
+ def Arcadia.which(_command=nil)
944
+ return nil if _command.nil?
945
+ _ret = nil
946
+ ENV['PATH'].split(File::PATH_SEPARATOR).each{|_path|
947
+ _file = File.join(_path, _command)
948
+ if FileTest.exist?(_file)
949
+ _ret = _file
950
+ break
951
+ end
952
+ }
953
+ _ret
954
+ end
955
+
943
956
  def Arcadia.menu_root(_menu_root_name, _menu_root=nil)
944
957
  if @@instance['menu_roots'] == nil
945
958
  @@instance['menu_roots'] = Hash.new
@@ -1582,7 +1595,7 @@ class ArcadiaAboutSplash < TkToplevel
1582
1595
  place('x' => 100,'y' => 65,'height' => 19)
1583
1596
  }
1584
1597
  @tkLabel21 = TkLabel.new(self){
1585
- text 'by Antonio Galeone - 2004/2010'
1598
+ text 'by Antonio Galeone - 2004/2011'
1586
1599
  background _bgcolor
1587
1600
  foreground '#ffffff'
1588
1601
  font Arcadia.instance['conf']['splash.credits.font']
@@ -1632,13 +1645,13 @@ class ArcadiaAboutSplash < TkToplevel
1632
1645
  def set_progress(_max=10)
1633
1646
  @max = _max
1634
1647
  Tk::BWidget::ProgressBar.new(self, :width=>150, :height=>10,
1635
- :background=>'black',
1636
- :troughcolor=>'black',
1637
- :foreground=>'#a11934',
1638
- :variable=>@progress,
1639
- :borderwidth=>0,
1640
- :relief=>'flat',
1641
- :maximum=>_max).place('relwidth' => '1','y' => 146,'height' => 2)
1648
+ :background=>'#000000',
1649
+ :troughcolor=>'#000000',
1650
+ :foreground=>'#a11934',
1651
+ :variable=>@progress,
1652
+ :borderwidth=>0,
1653
+ :relief=>'flat',
1654
+ :maximum=>_max).place('relwidth' => '1','y' => 146,'height' => 2)
1642
1655
  end
1643
1656
 
1644
1657
  def reset
@@ -1828,7 +1841,6 @@ class EventWatcherForGem
1828
1841
  end
1829
1842
 
1830
1843
  class ArcadiaGemsWizard
1831
- include Autils
1832
1844
  def initialize(_arcadia)
1833
1845
  @arcadia = _arcadia
1834
1846
  Arcadia.attach_listener(self, NeedRubyGemWizardEvent)
@@ -1862,7 +1874,7 @@ class ArcadiaGemsWizard
1862
1874
 
1863
1875
  sh=ArcadiaSh.new
1864
1876
  cmd = "gem install --remote --include-dependencies #{name}"
1865
- cmd="sudo #{cmd}" if !is_windows?
1877
+ cmd="sudo #{cmd}" if !Arcadia.is_windows?
1866
1878
  cmd+=" --source=#{repository}" if repository
1867
1879
  sh.prepare_exec(cmd)
1868
1880
  while sh.wait
data/lib/a-tkcommons.rb CHANGED
@@ -46,6 +46,31 @@ class BWidgetTreePatched < Tk::BWidget::Tree
46
46
  # def selectcommand(_proc=nil)
47
47
  # self.configure('selectcommand'=>_proc)
48
48
  # end
49
+
50
+ def selected
51
+ if self.selection_get[0]
52
+ if self.selection_get[0].respond_to?(:length) && self.selection_get[0].length >0
53
+ _selected = ""
54
+ if self.selection_get[0].instance_of?(Array)
55
+ selection_lines = self.selection_get[0]
56
+ else
57
+ if String.method_defined?(:lines)
58
+ selection_lines = self.selection_get[0].lines
59
+ else
60
+ selection_lines = self.selection_get[0].split("\n")
61
+ end
62
+ end
63
+ selection_lines.each{|_block|
64
+ _selected = _selected + _block.to_s + "\s"
65
+ }
66
+ _selected = _selected.strip
67
+ else
68
+ _selected = self.selection_get[0]
69
+ end
70
+ end
71
+ return _selected
72
+ end
73
+
49
74
  end
50
75
 
51
76
 
@@ -873,6 +898,9 @@ class TkTitledFrame < TkBaseTitledFrame
873
898
  @apy = Array.new
874
899
  @apw = Array.new
875
900
  @aph = Array.new
901
+ @top.bind_append("Double-Button-1", proc{resize})
902
+ @left_label.bind_append("Double-Button-1", proc{resize})
903
+ @right_label.bind_append("Double-Button-1", proc{resize})
876
904
  end
877
905
 
878
906
  def create_left_label
@@ -1495,14 +1523,14 @@ module TkAutoPostMenu
1495
1523
  @last_clicked.unpost
1496
1524
  @last_clicked = nil
1497
1525
  end
1498
-
1526
+
1499
1527
  ch.menu.post(x-rx,y-ry+hh)
1500
-
1501
1528
  #just_posted = TkWinfo.containing(x, y+hh)
1502
1529
 
1503
1530
  chmenus = TkWinfo.children(ch)
1504
1531
  @last_menu_posted = chmenus[0]
1505
1532
  @last_menu_posted.set_focus
1533
+
1506
1534
  @last_menu_posted.bind("Enter", proc{
1507
1535
  @last_menu_posted.bind("Leave", proc{
1508
1536
  if @posting_on
@@ -1524,7 +1552,7 @@ module TkAutoPostMenu
1524
1552
  if @last_post
1525
1553
  _x = TkWinfo.x(@last_post)
1526
1554
  _y = TkWinfo.y(@last_post)
1527
- ch.event_generate("KeyPress", :keysym=>"Escape") #if Tk.focus.kind_of?(TkMenu) && Tk.focus != ch.menu
1555
+ ch.event_generate("KeyPress", :keysym=>"Escape") if Tk.focus.kind_of?(TkMenu) && Tk.focus != ch.menu
1528
1556
  @last_post.post(_x,_y) if @last_clicked && @last_clicked == ch.menu
1529
1557
  end
1530
1558
  if @last_post!=ch.menu
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: arcadia
3
3
  version: !ruby/object:Gem::Version
4
- hash: 63
4
+ hash: 61
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 9
9
- - 2
10
- version: 0.9.2
9
+ - 3
10
+ version: 0.9.3
11
11
  platform: ruby
12
12
  authors:
13
13
  - Antonio Galeone
@@ -15,11 +15,11 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-11-21 00:00:00 +01:00
18
+ date: 2011-12-02 00:00:00 +01:00
19
19
  default_executable: arcadia
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- name: whichr
22
+ name: coderay
23
23
  prerelease: false
24
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
25
  none: false