cryptopunks-gui 0.0.4 → 0.0.5
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/CHANGELOG.md +8 -0
- data/README.md +20 -2
- data/VERSION +1 -1
- data/app/cryptopunks_gui.rb +80 -11
- data/cryptopunks-gui.gemspec +2 -2
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d349e8c9967a50ce0c6af942f6cc3c3673f65a3daffcad18f9bd237ec70958d2
|
4
|
+
data.tar.gz: 25ed4d8548aad51cc5dba533ed70edc42032e4850bddbbed3e659e2b1ebe9ca1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4d06d0a8c6c1c4a8f65290e85f7d645a0b19206d58c53b7ed365827a4ba46a99d14db0a41d8bf774abb07e8bc7e43ec008233e3f8b241ccf305ecb341f5bacb0
|
7
|
+
data.tar.gz: 4ba66061f49bb601ccf0bebb5e8712526ec081831dc3a792af57b967d769d4c75212184636114999396ae43d48632b2f2ed34d1566c43eb4a5fa8fb63fb236f5
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,13 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
+
## 0.0.5
|
4
|
+
|
5
|
+
- Led style spacing option
|
6
|
+
- Led style round corner option
|
7
|
+
- Sketch style line option
|
8
|
+
- Apply zoom to led and sketch styles correctly
|
9
|
+
- Fixed issue with typing punk index higher than 9999 (ignore)
|
10
|
+
|
3
11
|
## 0.0.4
|
4
12
|
|
5
13
|
- Changed flip and mirror to checkbuttons
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# <img src="https://raw.githubusercontent.com/AndyObtiva/cryptopunks-gui/master/icons/cryptopunks-gui.png" height=85 /> CryptoPunks GUI 0.0.
|
1
|
+
# <img src="https://raw.githubusercontent.com/AndyObtiva/cryptopunks-gui/master/icons/cryptopunks-gui.png" height=85 /> CryptoPunks GUI 0.0.5
|
2
2
|
## Simplified Minting
|
3
3
|
[](http://badge.fury.io/rb/cryptopunks-gui)
|
4
4
|
|
@@ -25,7 +25,7 @@ You can use CryptoPunks GUI via gem or via cloning repository.
|
|
25
25
|
Run:
|
26
26
|
|
27
27
|
```
|
28
|
-
gem install cryptopunks-gui -v0.0.
|
28
|
+
gem install cryptopunks-gui -v0.0.5
|
29
29
|
```
|
30
30
|
|
31
31
|
Afterwards, run app via:
|
@@ -99,12 +99,30 @@ Change palette to get different punk colors.
|
|
99
99
|
|
100
100
|
Change style to get different punk looks.
|
101
101
|
|
102
|
+
#### Normal Style
|
103
|
+
|
102
104
|

|
103
105
|
|
106
|
+
#### Led Style
|
107
|
+
|
104
108
|

|
105
109
|
|
110
|
+
##### Led Spacing
|
111
|
+
|
112
|
+

|
113
|
+
|
114
|
+
##### Led Round Corner
|
115
|
+
|
116
|
+

|
117
|
+
|
118
|
+
#### Sketch Style
|
119
|
+
|
106
120
|

|
107
121
|
|
122
|
+
##### Sketch Line
|
123
|
+
|
124
|
+

|
125
|
+
|
108
126
|
### Mirror/Flip
|
109
127
|
|
110
128
|
Check mirror and/or flip to apply punk transformation. Can combine with different palettes and styles.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.5
|
data/app/cryptopunks_gui.rb
CHANGED
@@ -13,7 +13,7 @@ class CryptopunksGui
|
|
13
13
|
PALETTES = ['Standard'] + (Palette8bit.constants).map(&:name).map {|palette| palette.split('_').map(&:capitalize).join(' ')}.reject { |palette| palette.include?(' ') }.sort
|
14
14
|
STYLES = ['Normal', 'Led', 'Sketch']
|
15
15
|
|
16
|
-
attr_accessor :punk_index, :zoom, :palette, :style, :flip, :mirror
|
16
|
+
attr_accessor :punk_index, :zoom, :palette, :style, :led_spacing, :led_round_corner, :sketch_line, :flip, :mirror
|
17
17
|
|
18
18
|
def initialize
|
19
19
|
initialize_punks
|
@@ -44,6 +44,9 @@ class CryptopunksGui
|
|
44
44
|
@zoom = 12
|
45
45
|
@palette = PALETTES.first
|
46
46
|
@style = STYLES.first
|
47
|
+
@led_spacing = 2
|
48
|
+
@led_round_corner = false
|
49
|
+
@sketch_line = 1
|
47
50
|
@mirror = false
|
48
51
|
@flip = false
|
49
52
|
end
|
@@ -54,28 +57,34 @@ class CryptopunksGui
|
|
54
57
|
observer.observe(self, :zoom)
|
55
58
|
observer.observe(self, :palette)
|
56
59
|
observer.observe(self, :style)
|
60
|
+
observer.observe(self, :led_spacing)
|
61
|
+
observer.observe(self, :led_round_corner)
|
62
|
+
observer.observe(self, :sketch_line)
|
57
63
|
observer.observe(self, :mirror)
|
58
64
|
observer.observe(self, :flip)
|
59
65
|
end
|
60
66
|
|
61
67
|
def generate_image
|
68
|
+
return if @punk_index.to_i > 9999
|
62
69
|
image_location = File.join(@punk_directory, "punk-#{@punk_index}#{"x#{@zoom}" if @zoom.to_i > 1}#{"-#{@palette.underscore}" if @palette != PALETTES.first}#{"-#{@style.underscore}" if @style != STYLES.first}.png")
|
63
70
|
puts "Writing punk image to #{image_location}"
|
64
71
|
selected_punk = @punks[@punk_index.to_i]
|
65
72
|
selected_punk = selected_punk.change_palette8bit(Palette8bit.const_get(@palette.gsub(' ', '_').upcase.to_sym)) if @palette != PALETTES.first
|
66
73
|
@original_zoom = @zoom
|
67
74
|
if @style != STYLES.first
|
68
|
-
|
69
|
-
if @style
|
70
|
-
|
71
|
-
|
75
|
+
style_options = {}
|
76
|
+
if @style == 'Led'
|
77
|
+
style_options[:spacing] = @led_spacing.to_i
|
78
|
+
style_options[:round_corner] = @led_round_corner
|
72
79
|
end
|
73
|
-
|
74
|
-
|
80
|
+
if @style == 'Sketch'
|
81
|
+
style_options[:line] = @sketch_line.to_i
|
82
|
+
end
|
83
|
+
selected_punk = selected_punk.send(@style.underscore, @zoom.to_i, **style_options)
|
75
84
|
end
|
76
85
|
selected_punk = selected_punk.mirror if @mirror
|
77
86
|
selected_punk = selected_punk.flip if @flip
|
78
|
-
selected_punk = selected_punk.zoom(@zoom.to_i)
|
87
|
+
selected_punk = selected_punk.zoom(@zoom.to_i) if @style == STYLES.first
|
79
88
|
selected_punk.save(image_location)
|
80
89
|
@image_label.image = image_location
|
81
90
|
@message_entry.text = image_location
|
@@ -125,13 +134,17 @@ class CryptopunksGui
|
|
125
134
|
}
|
126
135
|
combobox {
|
127
136
|
readonly true
|
128
|
-
text <=> [self, :style]
|
137
|
+
text <=> [self, :style, after_write: ->(val) {add_style_options}]
|
138
|
+
}
|
139
|
+
|
140
|
+
@style_options_frame = frame {
|
141
|
+
padding 0
|
129
142
|
}
|
130
143
|
|
131
144
|
frame {
|
132
145
|
padding 0
|
133
146
|
|
134
|
-
|
147
|
+
checkbutton {
|
135
148
|
grid row: 0, column: 0, column_weight: 0
|
136
149
|
variable <=> [self, :mirror]
|
137
150
|
}
|
@@ -144,7 +157,7 @@ class CryptopunksGui
|
|
144
157
|
end
|
145
158
|
}
|
146
159
|
|
147
|
-
|
160
|
+
checkbutton {
|
148
161
|
grid row: 0, column: 2
|
149
162
|
variable <=> [self, :flip]
|
150
163
|
}
|
@@ -171,6 +184,62 @@ class CryptopunksGui
|
|
171
184
|
}
|
172
185
|
}
|
173
186
|
end
|
187
|
+
|
188
|
+
def add_style_options
|
189
|
+
@style_options_frame.content {
|
190
|
+
@style_options_frame.children.each(&:destroy)
|
191
|
+
if @style == 'Led'
|
192
|
+
frame {
|
193
|
+
padding 0
|
194
|
+
|
195
|
+
label {
|
196
|
+
grid row: 0, column: 0, column_weight: 0
|
197
|
+
text 'Spacing:'
|
198
|
+
}
|
199
|
+
spinbox {
|
200
|
+
grid row: 0, column: 1
|
201
|
+
from 1
|
202
|
+
to 72
|
203
|
+
text <=> [self, :led_spacing]
|
204
|
+
}
|
205
|
+
|
206
|
+
checkbutton {
|
207
|
+
grid row: 0, column: 2
|
208
|
+
variable <=> [self, :led_round_corner]
|
209
|
+
}
|
210
|
+
label {
|
211
|
+
grid row: 0, column: 3
|
212
|
+
text 'Round Corner'
|
213
|
+
|
214
|
+
on('Button-1') do
|
215
|
+
self.led_round_corner = !led_round_corner
|
216
|
+
end
|
217
|
+
}
|
218
|
+
}
|
219
|
+
elsif @style == 'Sketch'
|
220
|
+
frame {
|
221
|
+
padding 0
|
222
|
+
|
223
|
+
label {
|
224
|
+
grid row: 0, column: 0, column_weight: 0
|
225
|
+
text 'Line:'
|
226
|
+
}
|
227
|
+
spinbox {
|
228
|
+
grid row: 0, column: 1
|
229
|
+
from 1
|
230
|
+
to 72
|
231
|
+
text <=> [self, :sketch_line]
|
232
|
+
}
|
233
|
+
}
|
234
|
+
else
|
235
|
+
frame { # filler
|
236
|
+
padding 0
|
237
|
+
height 0
|
238
|
+
width 0
|
239
|
+
}
|
240
|
+
end
|
241
|
+
}
|
242
|
+
end
|
174
243
|
end
|
175
244
|
|
176
245
|
CryptopunksGui.new.launch
|
data/cryptopunks-gui.gemspec
CHANGED
@@ -2,11 +2,11 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Juwelier::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: cryptopunks-gui 0.0.
|
5
|
+
# stub: cryptopunks-gui 0.0.5 ruby app
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "cryptopunks-gui".freeze
|
9
|
-
s.version = "0.0.
|
9
|
+
s.version = "0.0.5"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
12
12
|
s.require_paths = ["app".freeze]
|