rubytext 0.0.88 → 0.0.89
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/menu.rb +5 -2
- data/lib/output.rb +1 -1
- data/lib/version.rb +1 -1
- data/lib/window.rb +9 -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: a8d6049a03577c6aa5919abd27092093e46a57484285f3a79f49c01465d86fce
|
4
|
+
data.tar.gz: 51acb3997e4112519f88247d13e42c3857d3213ea16101696a3437aa5dc5f016
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2b3c8b90adfafc39d23bf4f14fe6c3251c725b38a8c63dadcd7f42f245977efae6b02801d3cec43becea64be1c554fe6187d6e1602c4498442e846846be33435
|
7
|
+
data.tar.gz: ca0598628940b1681e04ad820ea6b42d0142098dece9e1852f9c1bba9eea97b27cc3c14ac53deb4d8c2b7981b8aa8c3de9eb5d3e7ddd97eff9e09111dc1977c3
|
data/lib/menu.rb
CHANGED
@@ -1,12 +1,13 @@
|
|
1
1
|
module RubyText
|
2
2
|
|
3
|
-
def self.menu(win: STDSCR, r:
|
3
|
+
def self.menu(win: STDSCR, r: :center, c: :center, items:, curr: 0,
|
4
4
|
title: nil, fg: White, bg: Blue)
|
5
5
|
RubyText.hide_cursor
|
6
6
|
high = items.size + 2
|
7
7
|
wide = items.map(&:length).max + 4
|
8
8
|
tlen = title.length + 8
|
9
9
|
wide = [wide, tlen].max
|
10
|
+
r, c = win.coords(r, c)
|
10
11
|
win.saveback(high, wide, r, c)
|
11
12
|
mr, mc = r+win.r0, c+win.c0
|
12
13
|
debug "menu: rc = #{[r,c].inspect} win r0c0 = #{[win.r0, win.c0].inspect}"
|
@@ -14,8 +15,10 @@ module RubyText
|
|
14
15
|
mwin = RubyText.window(high, wide, r: mr, c: mc,
|
15
16
|
fg: fg, bg: bg)
|
16
17
|
|
18
|
+
where = win == STDSCR ? [r, c+1] : [r-1, c+1] # wtf?
|
19
|
+
|
17
20
|
unless title.nil?
|
18
|
-
win.go(
|
21
|
+
win.go(*where) do # same row as corner but farther right
|
19
22
|
win.print fx("[ #{title} ]", :bold, fg, bg: bg)
|
20
23
|
end
|
21
24
|
end
|
data/lib/output.rb
CHANGED
@@ -19,7 +19,7 @@ class RubyText::Window
|
|
19
19
|
args = [""] if args.empty?
|
20
20
|
args += ["\n"] if sym == :puts
|
21
21
|
set_colors(@fg, @bg)
|
22
|
-
|
22
|
+
# debug " set colors: #{[@fg, @bg].inspect}"
|
23
23
|
if sym == :p
|
24
24
|
args.map! {|x| effect?(x) ? x : x.inspect }
|
25
25
|
else
|
data/lib/version.rb
CHANGED
data/lib/window.rb
CHANGED
@@ -7,7 +7,7 @@ class RubyText::Window
|
|
7
7
|
|
8
8
|
# Better to use Window.window IRL
|
9
9
|
|
10
|
-
def initialize(high=nil, wide=nil, r0=
|
10
|
+
def initialize(high=nil, wide=nil, r0=0, c0=0, border=false,
|
11
11
|
fg=White, bg=Blue, scroll=false)
|
12
12
|
@wide, @high, @r0, @c0 = wide, high, r0, c0
|
13
13
|
@border, @fg, @bg = border, fg, bg
|
@@ -103,7 +103,10 @@ class RubyText::Window
|
|
103
103
|
@save = []
|
104
104
|
0.upto(high-1) do |h|
|
105
105
|
0.upto(wide-1) do |w|
|
106
|
-
|
106
|
+
row, col = h+r-1, w+c-1
|
107
|
+
row += 1 if self == STDSCR # wtf?
|
108
|
+
col += 1 if self == STDSCR
|
109
|
+
@save << self[row, col]
|
107
110
|
end
|
108
111
|
end
|
109
112
|
end
|
@@ -112,7 +115,10 @@ class RubyText::Window
|
|
112
115
|
0.upto(high-1) do |h|
|
113
116
|
line = ""
|
114
117
|
0.upto(wide-1) {|w| line << @save.shift }
|
115
|
-
|
118
|
+
row, col = h+r-1, c-1
|
119
|
+
row += 1 if self == STDSCR # wtf?
|
120
|
+
col += 1 if self == STDSCR
|
121
|
+
self.go row, col
|
116
122
|
self.print line
|
117
123
|
end
|
118
124
|
self.go *@pos
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubytext
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.89
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Hal Fulton
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-12-
|
11
|
+
date: 2018-12-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: curses
|