cryptopunks-gui 0.0.5 → 0.0.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -0
- data/README.md +9 -3
- data/VERSION +1 -1
- data/app/cryptopunks_gui.rb +36 -10
- data/cryptopunks-gui.gemspec +3 -3
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 41332d4eb8f4427149280fd075b456ace5f882ec6acd9d794a052d66747b5ab4
|
4
|
+
data.tar.gz: b52e82c7789dd198ee4925db7b1f59cfc99fae0e11b7d1d577ffa1e7190ddd6c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 50ead25c82393bfb068c411b17edd7a64bf5eb943fae3f74094ae25766e5600d07949f85f283c4869777645a2b05bc85efce4a3d3e0eb241c218e5d063cc0341
|
7
|
+
data.tar.gz: 4f18e99c50b31cb823ea68e8239c78a30d0ed6428b9199aa8300eaf747a503499a2c321dd552ff3d0f039c525babb6d9b832066da5ff200774160b65f8f742ef
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,12 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
+
## 0.0.6
|
4
|
+
|
5
|
+
- Provide option to change output location
|
6
|
+
- Update default output location not to be a hidden location, switching `~/.cryptopunks` to `~/cryptopunks`
|
7
|
+
- Remember last selected output location upon app start
|
8
|
+
- Avoid hardcoding punk count in code (change 9999 to size of `@punks` array)
|
9
|
+
|
3
10
|
## 0.0.5
|
4
11
|
|
5
12
|
- Led style spacing option
|
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.6
|
2
2
|
## Simplified Minting
|
3
3
|
[![Gem Version](https://badge.fury.io/rb/cryptopunks-gui.svg)](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.6
|
29
29
|
```
|
30
30
|
|
31
31
|
Afterwards, run app via:
|
@@ -125,7 +125,7 @@ Change style to get different punk looks.
|
|
125
125
|
|
126
126
|
### Mirror/Flip
|
127
127
|
|
128
|
-
Check mirror and/or flip to apply punk
|
128
|
+
Check mirror and/or flip to apply punk transformations. Can be combined with different palettes and styles.
|
129
129
|
|
130
130
|
![Screenshot](/screenshots/cryptopunks-gui-screenshot-no-mirror-no-flip.png)
|
131
131
|
|
@@ -137,6 +137,12 @@ Check mirror and/or flip to apply punk transformation. Can combine with differen
|
|
137
137
|
|
138
138
|
![Screenshot](/screenshots/cryptopunks-gui-screenshot-palette-false-style-led-mirror-flip.png)
|
139
139
|
|
140
|
+
### Output Location
|
141
|
+
|
142
|
+
You may select a new output location by clicking on the `...` button.
|
143
|
+
|
144
|
+
![Screenshot](/screenshots/cryptopunks-gui-screenshot-output-location.png)
|
145
|
+
|
140
146
|
## TODO
|
141
147
|
|
142
148
|
[TODO.md](TODO.md)
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.6
|
data/app/cryptopunks_gui.rb
CHANGED
@@ -5,6 +5,7 @@ require 'fileutils'
|
|
5
5
|
require 'net/http'
|
6
6
|
require 'uri'
|
7
7
|
require 'glimmer/data_binding/observer'
|
8
|
+
require 'yaml'
|
8
9
|
require 'puts_debuggerer'
|
9
10
|
|
10
11
|
class CryptopunksGui
|
@@ -17,6 +18,7 @@ class CryptopunksGui
|
|
17
18
|
|
18
19
|
def initialize
|
19
20
|
initialize_punks
|
21
|
+
load_config
|
20
22
|
initialize_defaults
|
21
23
|
observe_image_attribute_changes
|
22
24
|
create_gui
|
@@ -33,13 +35,24 @@ class CryptopunksGui
|
|
33
35
|
end
|
34
36
|
|
35
37
|
def initialize_punks
|
36
|
-
@punk_directory = File.join(Dir.home, '
|
38
|
+
@punk_directory = File.join(Dir.home, 'cryptopunks')
|
37
39
|
FileUtils.mkdir_p(@punk_directory)
|
38
40
|
@punk_file = File.join(@punk_directory, 'punks.png')
|
39
41
|
File.write(@punk_file, Net::HTTP.get(URI('https://raw.githubusercontent.com/larvalabs/cryptopunks/master/punks.png'))) unless File.exist?(@punk_file)
|
40
42
|
@punks = Punks::Image::Composite.read(@punk_file)
|
41
43
|
end
|
42
44
|
|
45
|
+
def load_config
|
46
|
+
@punk_config_file = File.join(@punk_directory, 'cryptopunks.yml')
|
47
|
+
FileUtils.touch(@punk_config_file)
|
48
|
+
@punk_config = YAML.load(File.read(@punk_config_file)) || {punk_directory: @punk_directory}
|
49
|
+
@punk_directory = @punk_config[:punk_directory]
|
50
|
+
end
|
51
|
+
|
52
|
+
def save_config
|
53
|
+
File.write(@punk_config_file, YAML.dump(@punk_config))
|
54
|
+
end
|
55
|
+
|
43
56
|
def initialize_defaults
|
44
57
|
@zoom = 12
|
45
58
|
@palette = PALETTES.first
|
@@ -65,7 +78,7 @@ class CryptopunksGui
|
|
65
78
|
end
|
66
79
|
|
67
80
|
def generate_image
|
68
|
-
return if @punk_index.to_i >
|
81
|
+
return if @punk_index.to_i > @punks.size
|
69
82
|
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")
|
70
83
|
puts "Writing punk image to #{image_location}"
|
71
84
|
selected_punk = @punks[@punk_index.to_i]
|
@@ -87,7 +100,7 @@ class CryptopunksGui
|
|
87
100
|
selected_punk = selected_punk.zoom(@zoom.to_i) if @style == STYLES.first
|
88
101
|
selected_punk.save(image_location)
|
89
102
|
@image_label.image = image_location
|
90
|
-
@
|
103
|
+
@output_location_entry.text = image_location
|
91
104
|
@previous_style = @style
|
92
105
|
notify_observers(:zoom) if @zoom != @original_zoom
|
93
106
|
end
|
@@ -98,11 +111,6 @@ class CryptopunksGui
|
|
98
111
|
iconphoto File.expand_path('../icons/cryptopunks-gui.png', __dir__)
|
99
112
|
|
100
113
|
frame {
|
101
|
-
label {
|
102
|
-
text 'Select Punk Index and Zoom To Mint Cryptopunk'
|
103
|
-
font weight: 'bold'
|
104
|
-
}
|
105
|
-
|
106
114
|
label {
|
107
115
|
text 'Punk Index:'
|
108
116
|
}
|
@@ -174,8 +182,26 @@ class CryptopunksGui
|
|
174
182
|
label {
|
175
183
|
text 'Output Location:'
|
176
184
|
}
|
177
|
-
|
178
|
-
|
185
|
+
frame {
|
186
|
+
padding 0
|
187
|
+
|
188
|
+
@output_location_entry = entry {
|
189
|
+
grid row: 0, column: 0
|
190
|
+
readonly true
|
191
|
+
width 35
|
192
|
+
}
|
193
|
+
button {
|
194
|
+
grid row: 0, column: 1
|
195
|
+
text '...'
|
196
|
+
width 1.1
|
197
|
+
|
198
|
+
on('command') do
|
199
|
+
@punk_directory = choose_directory(parent: @root)
|
200
|
+
@punk_config[:punk_directory] = @punk_directory
|
201
|
+
save_config
|
202
|
+
generate_image
|
203
|
+
end
|
204
|
+
}
|
179
205
|
}
|
180
206
|
|
181
207
|
@image_label = label {
|
data/cryptopunks-gui.gemspec
CHANGED
@@ -2,16 +2,16 @@
|
|
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.6 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.6"
|
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]
|
13
13
|
s.authors = ["Andy Maleh".freeze]
|
14
|
-
s.date = "2021-10-
|
14
|
+
s.date = "2021-10-28"
|
15
15
|
s.description = "CryptoPunks GUI for Simplified Minting - Built with Glimmer DSL for Tk (requires ActiveTcl to run cryptopunks-gui command)".freeze
|
16
16
|
s.email = "andy.am@gmail.com".freeze
|
17
17
|
s.executables = ["cryptopunks-gui".freeze]
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cryptopunks-gui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andy Maleh
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-10-
|
11
|
+
date: 2021-10-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: glimmer-dsl-tk
|