libui 0.1.0.pre.0 → 0.1.1.pre.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 86351824e7a0d8285f2f853268a3085116c5499e0c0cbc68f567a18df02d6659
4
- data.tar.gz: 3648436c3fa23817f2317cd70c55924931413bb16cc2a7e671004aceabddabfd
3
+ metadata.gz: 02bf3f408d1da0bff768718f0c64c2e88e03a156e7152ba3d2cb7ba4d718c969
4
+ data.tar.gz: 0aeef35a3af1a42486cc50d600cd1753f46d92b0dc8fa47fce4a223b2256762a
5
5
  SHA512:
6
- metadata.gz: 29ca304955f3f8f36a74c3484e1220330fd562c128654626c680422fec6d715102d0135f2eedbb95200febcf0e3e0fe6087acd9be9b81bc6766f0a06c18d339e
7
- data.tar.gz: 4f449bc98a90c9bb0ea42ccc1973fe9b53112f8ffe4b2e5bc7b89b6f52ccad5d6aa7341d78c053a28138b39af0fe5aae04ca6d5a01ce539ee74980dce6318f88
6
+ metadata.gz: 2d4d9e2154829f5707bbb362303a3253e8322154c181433c72d62c3543a5be2c5f34856a5bc0a0a263693b59f928f9dc5bcbed4a21924bc4c4c6824bd88ba07b
7
+ data.tar.gz: ec4581382c70bbec09874861814b94b26b9cc56b071aa6eeb34442095b12e956e6ee67c9632bcdff5648e571a9048d137836294bdb534a4901fbe9253a427e63
data/README.md CHANGED
@@ -177,16 +177,17 @@ You can use the following rake tasks to download the shared library required for
177
177
  `rake -T`
178
178
 
179
179
  ```
180
- rake vendor:default # Downlaod [linux_x64, mac_arm, windows_x64] to vendor directory
181
- rake vendor:linux_x64 # Download libui.so for Linux to vendor directory
182
- rake vendor:linux_x86 # Download libui.so for Linux to vendor directory
183
- rake vendor:mac_arm # Download libui.dylib for Mac to vendor directory (universal binary)
184
- rake vendor:mac_x64 # Download libui.dylib for Mac to vendor directory
185
- rake vendor:windows_x64 # Download libui.dll for Windows to vendor directory
186
- rake vendor:windows_x86 # Download libui.dll for Windows to vendor directory
180
+ rake vendor:kojix2:auto # Download kojix2 pre-build for your platform to vendor directory
181
+ rake vendor:kojix2:mac # Download kojix2 pre-build for Mac to vendor directory
182
+ rake vendor:kojix2:ubuntu_x64 # Download kojix2 pre-build for Ubuntu to vendor directory
183
+ rake vendor:kojix2:windows_x64 # Download kojix2 pre-build for Windows to vendor directory
184
+ rake vendor:kojix2:windows_x86 # Download kojix2 pre-build for Windows to vendor directory
185
+ rake vendor:libui-ng:build[hash] # Build libui-ng latest master [commit hash]
186
+ rake vendor:libui-ng:mac # Download latest dev build for Mac to vendor directory
187
+ rake vendor:libui-ng:ubuntu_x64 # Download latest dev build for Ubuntu to vendor directory
187
188
  ```
188
189
 
189
- For example, If you are using a 32-bit (x86) version of Ruby on Windows, type `rake vendor:windows_x86`.
190
+ For example, If you are using a 32-bit (x86) version of Ruby on Windows, type `vendor:kojix2:windows_x86`.
190
191
 
191
192
  ### Use C libui compiled from source code
192
193
 
@@ -194,21 +195,10 @@ You can compile C libui from source code on your platform and tell ruby LibUI wh
194
195
 
195
196
  Another simple approach is to replace the shared libraries in the gem vendor directory with the ones you have compiled.
196
197
 
197
- ### libui-ng
198
+ ### libui or libui-ng
198
199
 
199
- Version 0.0.X only supports libui. From version 0.1.X, we plan to support only libui-ng.
200
-
201
- [libui-ng](https://github.com/libui-ng/libui-ng) is the successor project to libui. Rake tasks are available to build or download libui-ng shared libraries.
202
-
203
- ```
204
- rake libui-ng:build[hash] # Build libui-ng latest master [commit hash]
205
- rake libui-ng:mac # Download latest dev build for Mac to vendor directory
206
- rake libui-ng:ubuntu_x64 # Download latest dev build for Ubuntu to vendor directory
207
- ```
208
-
209
- ```
210
- rake install
211
- ```
200
+ * From version 0.1.X, we plan to support only libui-ng/libui-ng.
201
+ * Version 0.0.X only supports andlabs/libui.
212
202
 
213
203
  ## Contributing
214
204
 
data/lib/libui/ffi.rb CHANGED
@@ -616,6 +616,8 @@ module LibUI
616
616
  try_extern 'int uiTableHeaderVisible(uiTable *t)'
617
617
  try_extern 'void uiTableHeaderSetVisible(uiTable *t, int visible)'
618
618
  try_extern 'uiTable *uiNewTable(uiTableParams *params)'
619
+ try_extern 'void uiTableOnRowClicked(uiTable *t, void (*f)(uiTable *t, int row, void *data), void *data)'
620
+ try_extern 'void uiTableOnRowDoubleClicked(uiTable *t, void (*f)(uiTable *t, int row, void *data), void *data)'
619
621
 
620
622
  typealias 'uiSortIndicator', 'int'
621
623
 
@@ -624,5 +626,19 @@ module LibUI
624
626
  try_extern 'void uiTableHeaderOnClicked(uiTable *t, void (*f)(uiTable *sender, int column, void *senderData), void *data)'
625
627
  try_extern 'int uiTableColumnWidth(uiTable *t, int column)'
626
628
  try_extern 'void uiTableColumnSetWidth(uiTable *t, int column, int width)'
629
+ try_extern 'uiTableSelectionMode uiTableGetSelectionMode(uiTable *t)'
630
+
631
+ typealias 'uiTableSelectionMode', 'int'
632
+
633
+ try_extern 'void uiTableSetSelectionMode(uiTable *t, uiTableSelectionMode mode)'
634
+ try_extern 'void uiTableOnSelectionChanged(uiTable *t, void (*f)(uiTable *t, void *data), void *data)'
635
+ try_extern 'uiTableSelection* uiTableGetSelection(uiTable *t)'
636
+ try_extern 'void uiTableSetSelection(uiTable *t, uiTableSelection *sel)'
637
+ try_extern 'void uiFreeTableSelection(uiTableSelection* s)'
638
+
639
+ TableSelection = struct [
640
+ 'int NumRows',
641
+ 'int *Rows'
642
+ ]
627
643
  end
628
644
  end
data/lib/libui/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module LibUI
2
- VERSION = '0.1.0.pre.0'
2
+ VERSION = '0.1.1.pre.0'
3
3
  end
data/lib/libui.rb CHANGED
@@ -51,8 +51,7 @@ module LibUI
51
51
  end
52
52
  end
53
53
 
54
- # UI_ENUM
55
- # https://github.com/andlabs/libui/blob/master/ui.h
54
+ ## UI_ENUM https://github.com/libui-ng/libui-ng/blob/master/ui.h
56
55
 
57
56
  # ForEach
58
57
  ForEachContinue = 0
@@ -223,4 +222,10 @@ module LibUI
223
222
  # editable
224
223
  TableModelColumnNeverEditable = -1
225
224
  TableModelColumnAlwaysEditable = -2
225
+
226
+ # TableSelectionMode
227
+ TableSelectionModeNone = 0
228
+ TableSelectionModeZeroOrOne = 1
229
+ TableSelectionModeOne = 2
230
+ TableSelectionModeZeroOrMany = 3
226
231
  end
data/vendor/libui.dll CHANGED
Binary file
data/vendor/libui.dylib CHANGED
Binary file
data/vendor/libui.so CHANGED
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: libui
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.pre.0
4
+ version: 0.1.1.pre.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - kojix2
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-13 00:00:00.000000000 Z
11
+ date: 2023-03-05 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description:
14
14
  email:
@@ -49,7 +49,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
49
49
  - !ruby/object:Gem::Version
50
50
  version: 1.3.1
51
51
  requirements: []
52
- rubygems_version: 3.3.7
52
+ rubygems_version: 3.4.6
53
53
  signing_key:
54
54
  specification_version: 4
55
55
  summary: Ruby bindings to libui