fidgit 0.1.8 → 0.1.9

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.
data/fidgit.gemspec CHANGED
@@ -24,7 +24,7 @@ Gem::Specification.new do |s|
24
24
  s.add_dependency('gosu', '~> 0.7.33')
25
25
  s.add_dependency('chingu', '~> 0.9rc5')
26
26
  s.add_dependency('clipboard', '~> 0.9.9')
27
- s.add_dependency('ffi', '~> 1.0.9') # if RUBY_PLATFORM =~ /mswin32|mingw32/ # Required by clipboard on Windows.
27
+ s.add_dependency('ffi', '= 1.0.9') # 1.0.10 is borked :(
28
28
  s.add_development_dependency('rspec', '~> 2.1.0')
29
29
  s.add_development_dependency('texplay', '~> 0.3.5')
30
30
  end
@@ -24,6 +24,11 @@ module Fidgit
24
24
  event :holding_right_mouse_button
25
25
  event :released_right_mouse_button
26
26
  event :clicked_right_mouse_button
27
+
28
+ event :middle_mouse_button
29
+ event :holding_middle_mouse_button
30
+ event :released_middle_mouse_button
31
+ event :clicked_middle_mouse_button
27
32
 
28
33
  event :mouse_wheel_up
29
34
  event :mouse_wheel_down
@@ -35,7 +35,13 @@ module Fidgit
35
35
  raise ArgumentError, "Parameter, 'action', expected to be a #{Action}, but received: #{action}" unless action.is_a? Action
36
36
 
37
37
  # Remove all undone actions when a new one is performed.
38
- @actions = @actions[0..@last_done] if can_redo?
38
+ if can_redo?
39
+ if @last_done == -1
40
+ @actions.clear
41
+ else
42
+ @actions = @actions[0..@last_done]
43
+ end
44
+ end
39
45
 
40
46
  # If history is too big, remove the oldest action.
41
47
  if @actions.size >= @max_size
@@ -1,5 +1,5 @@
1
1
  # encoding: UTF-8
2
2
 
3
3
  module Fidgit
4
- VERSION = '0.1.8'
4
+ VERSION = '0.1.9'
5
5
  end
@@ -56,6 +56,15 @@ module Fidgit
56
56
  @object.can_undo?.should be_true
57
57
  @object.can_redo?.should be_false
58
58
  end
59
+
60
+ it "should correctly delete any re-doable actions, even if there is only one" do
61
+ @object.do(History::Add.new(2))
62
+ @object.undo
63
+ @object.do(History::Add.new(3))
64
+ @object.undo
65
+
66
+ @object.can_undo?.should be_false
67
+ end
59
68
  end
60
69
 
61
70
  describe "undo()" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fidgit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.9
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-06-29 00:00:00.000000000Z
12
+ date: 2011-11-04 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: gosu
16
- requirement: &23326332 !ruby/object:Gem::Requirement
16
+ requirement: &26986392 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 0.7.33
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *23326332
24
+ version_requirements: *26986392
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: chingu
27
- requirement: &23325840 !ruby/object:Gem::Requirement
27
+ requirement: &26985780 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 0.9rc5
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *23325840
35
+ version_requirements: *26985780
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: clipboard
38
- requirement: &23324772 !ruby/object:Gem::Requirement
38
+ requirement: &26984424 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,21 +43,21 @@ dependencies:
43
43
  version: 0.9.9
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *23324772
46
+ version_requirements: *26984424
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: ffi
49
- requirement: &23324412 !ruby/object:Gem::Requirement
49
+ requirement: &26983992 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
- - - ~>
52
+ - - =
53
53
  - !ruby/object:Gem::Version
54
54
  version: 1.0.9
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *23324412
57
+ version_requirements: *26983992
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rspec
60
- requirement: &23323944 !ruby/object:Gem::Requirement
60
+ requirement: &26983536 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 2.1.0
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *23323944
68
+ version_requirements: *26983536
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: texplay
71
- requirement: &23323176 !ruby/object:Gem::Requirement
71
+ requirement: &26983020 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ~>
@@ -76,7 +76,7 @@ dependencies:
76
76
  version: 0.3.5
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *23323176
79
+ version_requirements: *26983020
80
80
  description: Fidgit is a GUI library built on Gosu/Chingu
81
81
  email:
82
82
  - bil.bagpuss@gmail.com
@@ -193,7 +193,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
193
193
  version: '0'
194
194
  requirements: []
195
195
  rubyforge_project: fidgit
196
- rubygems_version: 1.8.5
196
+ rubygems_version: 1.8.11
197
197
  signing_key:
198
198
  specification_version: 3
199
199
  summary: Fidgit is a GUI library built on Gosu/Chingu