shoes-core 4.0.0.pre8 → 4.0.0.pre9
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.
- checksums.yaml +4 -4
- data/bin/shoes-picker +1 -0
- data/lib/shoes.rb +1 -0
- data/lib/shoes/animation.rb +1 -0
- data/lib/shoes/app.rb +7 -1
- data/lib/shoes/arc.rb +2 -3
- data/lib/shoes/arrow.rb +2 -3
- data/lib/shoes/background.rb +2 -2
- data/lib/shoes/border.rb +2 -2
- data/lib/shoes/builtin_methods.rb +2 -2
- data/lib/shoes/button.rb +2 -2
- data/lib/shoes/check_button.rb +2 -2
- data/lib/shoes/color.rb +1 -0
- data/lib/shoes/color/dsl.rb +1 -0
- data/lib/shoes/color/dsl_helpers.rb +1 -0
- data/lib/shoes/color/hex_converter.rb +1 -0
- data/lib/shoes/common/art_element.rb +6 -9
- data/lib/shoes/common/attachable.rb +1 -0
- data/lib/shoes/common/background_element.rb +2 -11
- data/lib/shoes/common/changeable.rb +1 -0
- data/lib/shoes/common/clickable.rb +1 -0
- data/lib/shoes/common/fill.rb +1 -0
- data/lib/shoes/common/hover.rb +2 -1
- data/lib/shoes/common/inspect.rb +1 -0
- data/lib/shoes/common/link_finder.rb +1 -0
- data/lib/shoes/common/positioning.rb +1 -0
- data/lib/shoes/common/registration.rb +1 -0
- data/lib/shoes/common/remove.rb +1 -0
- data/lib/shoes/common/rotate.rb +1 -0
- data/lib/shoes/common/safely_evaluate.rb +13 -0
- data/lib/shoes/common/state.rb +4 -10
- data/lib/shoes/common/stroke.rb +1 -0
- data/lib/shoes/common/style.rb +13 -3
- data/lib/shoes/common/style_normalizer.rb +1 -0
- data/lib/shoes/common/translate.rb +1 -0
- data/lib/shoes/common/ui_element.rb +67 -5
- data/lib/shoes/common/visibility.rb +7 -6
- data/lib/shoes/configuration.rb +5 -16
- data/lib/shoes/console.rb +91 -0
- data/lib/shoes/core.rb +1 -1
- data/lib/shoes/core/version.rb +1 -1
- data/lib/shoes/dialog.rb +1 -0
- data/lib/shoes/dimension.rb +1 -0
- data/lib/shoes/dimensions.rb +1 -0
- data/lib/shoes/download.rb +1 -0
- data/lib/shoes/dsl.rb +28 -588
- data/lib/shoes/dsl/animate.rb +51 -0
- data/lib/shoes/dsl/art.rb +256 -0
- data/lib/shoes/dsl/element.rb +56 -0
- data/lib/shoes/dsl/interaction.rb +76 -0
- data/lib/shoes/dsl/media.rb +38 -0
- data/lib/shoes/dsl/setup.rb +42 -0
- data/lib/shoes/dsl/style.rb +81 -0
- data/lib/shoes/dsl/text.rb +50 -0
- data/lib/shoes/file_not_found_error.rb +1 -0
- data/lib/shoes/font.rb +2 -1
- data/lib/shoes/gradient.rb +1 -0
- data/lib/shoes/image.rb +2 -2
- data/lib/shoes/image_pattern.rb +1 -0
- data/lib/shoes/input_box.rb +11 -2
- data/lib/shoes/internal_app.rb +16 -3
- data/lib/shoes/key_event.rb +1 -0
- data/lib/shoes/line.rb +2 -3
- data/lib/shoes/link.rb +2 -0
- data/lib/shoes/list_box.rb +3 -3
- data/lib/shoes/logger_collection.rb +38 -0
- data/lib/shoes/mock.rb +1 -0
- data/lib/shoes/mock/animation.rb +1 -0
- data/lib/shoes/mock/app.rb +1 -0
- data/lib/shoes/mock/arc.rb +1 -0
- data/lib/shoes/mock/arrow.rb +1 -0
- data/lib/shoes/mock/background.rb +1 -0
- data/lib/shoes/mock/border.rb +1 -0
- data/lib/shoes/mock/button.rb +1 -0
- data/lib/shoes/mock/check.rb +1 -0
- data/lib/shoes/mock/clickable.rb +1 -0
- data/lib/shoes/mock/common_methods.rb +1 -0
- data/lib/shoes/mock/dialog.rb +1 -0
- data/lib/shoes/mock/download.rb +1 -0
- data/lib/shoes/mock/font.rb +1 -0
- data/lib/shoes/mock/image.rb +1 -0
- data/lib/shoes/mock/image_pattern.rb +1 -0
- data/lib/shoes/mock/input_box.rb +4 -0
- data/lib/shoes/mock/keypress.rb +1 -0
- data/lib/shoes/mock/keyrelease.rb +1 -0
- data/lib/shoes/mock/line.rb +1 -0
- data/lib/shoes/mock/link.rb +1 -0
- data/lib/shoes/mock/list_box.rb +1 -0
- data/lib/shoes/mock/oval.rb +1 -0
- data/lib/shoes/mock/packager.rb +3 -0
- data/lib/shoes/mock/progress.rb +1 -0
- data/lib/shoes/mock/radio.rb +1 -0
- data/lib/shoes/mock/rect.rb +1 -0
- data/lib/shoes/mock/shape.rb +1 -0
- data/lib/shoes/mock/slot.rb +1 -0
- data/lib/shoes/mock/sound.rb +1 -0
- data/lib/shoes/mock/star.rb +1 -0
- data/lib/shoes/mock/text_block.rb +1 -0
- data/lib/shoes/mock/timer.rb +1 -0
- data/lib/shoes/not_implemented_error.rb +1 -0
- data/lib/shoes/oval.rb +2 -3
- data/lib/shoes/packager.rb +13 -0
- data/lib/shoes/point.rb +1 -0
- data/lib/shoes/progress.rb +2 -3
- data/lib/shoes/radio.rb +1 -0
- data/lib/shoes/rect.rb +2 -3
- data/lib/shoes/renamed_delegate.rb +1 -0
- data/lib/shoes/shape.rb +2 -4
- data/lib/shoes/slot.rb +3 -3
- data/lib/shoes/slot_contents.rb +1 -0
- data/lib/shoes/sound.rb +1 -0
- data/lib/shoes/span.rb +1 -0
- data/lib/shoes/standard_logger.rb +14 -0
- data/lib/shoes/star.rb +2 -3
- data/lib/shoes/text.rb +1 -0
- data/lib/shoes/text_block.rb +4 -4
- data/lib/shoes/text_block_dimensions.rb +1 -0
- data/lib/shoes/timer.rb +1 -0
- data/lib/shoes/ui/cli.rb +5 -0
- data/lib/shoes/ui/picker.rb +2 -1
- data/lib/shoes/url.rb +1 -0
- data/lib/shoes/version.rb +1 -1
- data/lib/shoes/widget.rb +1 -0
- data/lib/shoes/window.rb +1 -0
- metadata +14 -5
- data/lib/shoes/common/initialization.rb +0 -71
- data/lib/shoes/logger.rb +0 -65
- data/lib/shoes/logger/ruby.rb +0 -15
data/lib/shoes/mock/check.rb
CHANGED
data/lib/shoes/mock/clickable.rb
CHANGED
data/lib/shoes/mock/dialog.rb
CHANGED
data/lib/shoes/mock/download.rb
CHANGED
data/lib/shoes/mock/font.rb
CHANGED
data/lib/shoes/mock/image.rb
CHANGED
data/lib/shoes/mock/input_box.rb
CHANGED
data/lib/shoes/mock/keypress.rb
CHANGED
data/lib/shoes/mock/line.rb
CHANGED
data/lib/shoes/mock/link.rb
CHANGED
data/lib/shoes/mock/list_box.rb
CHANGED
data/lib/shoes/mock/oval.rb
CHANGED
data/lib/shoes/mock/packager.rb
CHANGED
data/lib/shoes/mock/progress.rb
CHANGED
data/lib/shoes/mock/radio.rb
CHANGED
data/lib/shoes/mock/rect.rb
CHANGED
data/lib/shoes/mock/shape.rb
CHANGED
data/lib/shoes/mock/slot.rb
CHANGED
data/lib/shoes/mock/sound.rb
CHANGED
data/lib/shoes/mock/star.rb
CHANGED
data/lib/shoes/mock/timer.rb
CHANGED
data/lib/shoes/oval.rb
CHANGED
data/lib/shoes/packager.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
class Shoes
|
2
3
|
class Packager
|
3
4
|
attr_reader :packages, :backend
|
@@ -5,6 +6,7 @@ class Shoes
|
|
5
6
|
def initialize
|
6
7
|
begin
|
7
8
|
@backend = Shoes.backend_for(self)
|
9
|
+
configure_gems
|
8
10
|
rescue ArgumentError
|
9
11
|
# Packaging unsupported by this backend
|
10
12
|
end
|
@@ -24,6 +26,17 @@ class Shoes
|
|
24
26
|
@backend.run(path)
|
25
27
|
end
|
26
28
|
|
29
|
+
def configure_gems
|
30
|
+
@backend.gems = []
|
31
|
+
return unless defined?(::Bundler)
|
32
|
+
|
33
|
+
@backend.gems = ::Bundler.environment.specs.map(&:name) - ["shoes"]
|
34
|
+
rescue Bundler::GemfileNotFound
|
35
|
+
# Ok to be quiet since we didn't even have a Gemfile
|
36
|
+
rescue => e
|
37
|
+
Shoes.logger.error "Looking up gems for packaging failed:\n#{e.message}"
|
38
|
+
end
|
39
|
+
|
27
40
|
def help(program_name)
|
28
41
|
return "" if @backend.nil?
|
29
42
|
@backend.help(program_name)
|
data/lib/shoes/point.rb
CHANGED
data/lib/shoes/progress.rb
CHANGED
data/lib/shoes/radio.rb
CHANGED
data/lib/shoes/rect.rb
CHANGED
data/lib/shoes/shape.rb
CHANGED
@@ -1,11 +1,9 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
class Shoes
|
2
|
-
class Shape
|
3
|
-
include Common::ArtElement
|
4
|
-
|
3
|
+
class Shape < Common::ArtElement
|
5
4
|
attr_reader :blk, :x, :y, :left_bound, :top_bound, :right_bound, :bottom_bound
|
6
5
|
|
7
6
|
style_with :art_styles, :center, :common_styles, :dimensions
|
8
|
-
|
9
7
|
STYLES = { fill: Shoes::COLORS[:black] }.freeze
|
10
8
|
|
11
9
|
def create_dimensions(left, top)
|
data/lib/shoes/slot.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
class Shoes
|
2
|
-
class Slot
|
3
|
-
include Common::UIElement
|
3
|
+
class Slot < Common::UIElement
|
4
4
|
include Common::Clickable
|
5
5
|
include Common::Hover
|
6
6
|
|
@@ -55,7 +55,7 @@ class Shoes
|
|
55
55
|
def eval_block(blk, *args)
|
56
56
|
old_current_slot = @app.current_slot
|
57
57
|
@app.current_slot = self
|
58
|
-
|
58
|
+
safely_evaluate(*args, &blk)
|
59
59
|
@app.current_slot = old_current_slot
|
60
60
|
end
|
61
61
|
|
data/lib/shoes/slot_contents.rb
CHANGED
data/lib/shoes/sound.rb
CHANGED
data/lib/shoes/span.rb
CHANGED
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require 'logger'
|
3
|
+
|
4
|
+
class Shoes
|
5
|
+
class StandardLogger < SimpleDelegator
|
6
|
+
def initialize(device = STDERR)
|
7
|
+
logger = ::Logger.new(device)
|
8
|
+
logger.formatter = proc do |severity, _datetime, _progname, message|
|
9
|
+
"#{severity}: #{message}\n"
|
10
|
+
end
|
11
|
+
super(logger)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
data/lib/shoes/star.rb
CHANGED
@@ -1,7 +1,6 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
class Shoes
|
2
|
-
class Star
|
3
|
-
include Common::ArtElement
|
4
|
-
|
3
|
+
class Star < Common::ArtElement
|
5
4
|
style_with :angle, :art_styles, :common_styles, :dimensions, :inner, :outer, :points
|
6
5
|
STYLES = { angle: 0, fill: Shoes::COLORS[:black] }.freeze
|
7
6
|
|
data/lib/shoes/text.rb
CHANGED
data/lib/shoes/text_block.rb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
class Shoes
|
2
|
-
CENTER = "center"
|
3
|
-
DEFAULT_TEXTBLOCK_FONT = "Arial"
|
3
|
+
CENTER = "center"
|
4
|
+
DEFAULT_TEXTBLOCK_FONT = "Arial"
|
4
5
|
|
5
|
-
class TextBlock
|
6
|
-
include Common::UIElement
|
6
|
+
class TextBlock < Common::UIElement
|
7
7
|
include Common::Clickable
|
8
8
|
include Common::Hover
|
9
9
|
include Common::LinkFinder
|
data/lib/shoes/timer.rb
CHANGED
data/lib/shoes/ui/cli.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
require 'optparse'
|
2
3
|
require 'shoes'
|
3
4
|
|
@@ -43,6 +44,10 @@ Usage: #{opts.program_name} [-h] [-p package] file
|
|
43
44
|
exit
|
44
45
|
end
|
45
46
|
|
47
|
+
opts.on('-f', '--fail-fast', 'Crash on exceptions in Shoes code') do
|
48
|
+
Shoes.configuration.fail_fast = true
|
49
|
+
end
|
50
|
+
|
46
51
|
opts.separator @packager.help(opts.program_name)
|
47
52
|
end
|
48
53
|
|
data/lib/shoes/ui/picker.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
#
|
2
3
|
# This class is used for interactively (if necessary) picking the Shoes
|
3
4
|
# backend that the user will run their Shoes app with.
|
@@ -58,7 +59,7 @@ class Shoes
|
|
58
59
|
|
59
60
|
def find_candidates(desired_backend)
|
60
61
|
search_string = "shoes/**/#{desired_backend}/generate_backend.rb"
|
61
|
-
search_string.gsub
|
62
|
+
search_string = search_string.gsub("//", "/")
|
62
63
|
Gem.find_files(search_string)
|
63
64
|
end
|
64
65
|
|
data/lib/shoes/url.rb
CHANGED
data/lib/shoes/version.rb
CHANGED
data/lib/shoes/widget.rb
CHANGED
data/lib/shoes/window.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shoes-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.0.0.
|
4
|
+
version: 4.0.0.pre9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Team Shoes
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-03-24 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Shoes is the best little GUI toolkit for Ruby. Shoes makes building for Mac, Windows, and Linux super simple. This is the DSL for writing your app. You'll need a backend to run it.
|
14
14
|
email:
|
@@ -44,13 +44,13 @@ files:
|
|
44
44
|
- lib/shoes/common/clickable.rb
|
45
45
|
- lib/shoes/common/fill.rb
|
46
46
|
- lib/shoes/common/hover.rb
|
47
|
-
- lib/shoes/common/initialization.rb
|
48
47
|
- lib/shoes/common/inspect.rb
|
49
48
|
- lib/shoes/common/link_finder.rb
|
50
49
|
- lib/shoes/common/positioning.rb
|
51
50
|
- lib/shoes/common/registration.rb
|
52
51
|
- lib/shoes/common/remove.rb
|
53
52
|
- lib/shoes/common/rotate.rb
|
53
|
+
- lib/shoes/common/safely_evaluate.rb
|
54
54
|
- lib/shoes/common/state.rb
|
55
55
|
- lib/shoes/common/stroke.rb
|
56
56
|
- lib/shoes/common/style.rb
|
@@ -59,6 +59,7 @@ files:
|
|
59
59
|
- lib/shoes/common/ui_element.rb
|
60
60
|
- lib/shoes/common/visibility.rb
|
61
61
|
- lib/shoes/configuration.rb
|
62
|
+
- lib/shoes/console.rb
|
62
63
|
- lib/shoes/core.rb
|
63
64
|
- lib/shoes/core/version.rb
|
64
65
|
- lib/shoes/dialog.rb
|
@@ -66,6 +67,14 @@ files:
|
|
66
67
|
- lib/shoes/dimensions.rb
|
67
68
|
- lib/shoes/download.rb
|
68
69
|
- lib/shoes/dsl.rb
|
70
|
+
- lib/shoes/dsl/animate.rb
|
71
|
+
- lib/shoes/dsl/art.rb
|
72
|
+
- lib/shoes/dsl/element.rb
|
73
|
+
- lib/shoes/dsl/interaction.rb
|
74
|
+
- lib/shoes/dsl/media.rb
|
75
|
+
- lib/shoes/dsl/setup.rb
|
76
|
+
- lib/shoes/dsl/style.rb
|
77
|
+
- lib/shoes/dsl/text.rb
|
69
78
|
- lib/shoes/file_not_found_error.rb
|
70
79
|
- lib/shoes/font.rb
|
71
80
|
- lib/shoes/gradient.rb
|
@@ -78,8 +87,7 @@ files:
|
|
78
87
|
- lib/shoes/line.rb
|
79
88
|
- lib/shoes/link.rb
|
80
89
|
- lib/shoes/list_box.rb
|
81
|
-
- lib/shoes/
|
82
|
-
- lib/shoes/logger/ruby.rb
|
90
|
+
- lib/shoes/logger_collection.rb
|
83
91
|
- lib/shoes/mock.rb
|
84
92
|
- lib/shoes/mock/animation.rb
|
85
93
|
- lib/shoes/mock/app.rb
|
@@ -126,6 +134,7 @@ files:
|
|
126
134
|
- lib/shoes/slot_contents.rb
|
127
135
|
- lib/shoes/sound.rb
|
128
136
|
- lib/shoes/span.rb
|
137
|
+
- lib/shoes/standard_logger.rb
|
129
138
|
- lib/shoes/star.rb
|
130
139
|
- lib/shoes/text.rb
|
131
140
|
- lib/shoes/text_block.rb
|