jrubyfx 0.9.1-java → 0.9.2-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. data/README.md +18 -2
  2. data/bin/{rubyfx-generator → jrubyfx-generator} +3 -3
  3. data/bin/jrubyfx-jarify +29 -4
  4. data/lib/jrubyfx/core_ext/border_pane.rb +2 -0
  5. data/lib/jrubyfx/core_ext/column_constraints.rb +2 -0
  6. data/lib/jrubyfx/core_ext/drag_event.rb +32 -0
  7. data/lib/jrubyfx/core_ext/drag_event.rb~ +32 -0
  8. data/lib/jrubyfx/core_ext/duration.rb +2 -0
  9. data/lib/jrubyfx/core_ext/effects.rb +2 -0
  10. data/lib/jrubyfx/core_ext/file_chooser.rb +3 -0
  11. data/lib/jrubyfx/core_ext/image_view.rb +24 -0
  12. data/lib/jrubyfx/core_ext/image_view.rb~ +24 -0
  13. data/lib/jrubyfx/core_ext/media_player.rb +2 -0
  14. data/lib/jrubyfx/core_ext/menu.rb +25 -0
  15. data/lib/jrubyfx/core_ext/menu.rb~ +26 -0
  16. data/lib/jrubyfx/core_ext/menu_bar.rb +25 -0
  17. data/lib/jrubyfx/core_ext/menu_bar.rb~ +24 -0
  18. data/lib/jrubyfx/core_ext/menu_item.rb +22 -0
  19. data/lib/jrubyfx/core_ext/node.rb +2 -0
  20. data/lib/jrubyfx/core_ext/pagination.rb +4 -2
  21. data/lib/jrubyfx/core_ext/path.rb +2 -0
  22. data/lib/jrubyfx/core_ext/progress_indicator.rb +3 -0
  23. data/lib/jrubyfx/core_ext/region.rb +3 -0
  24. data/lib/jrubyfx/core_ext/rotate.rb +2 -0
  25. data/lib/jrubyfx/core_ext/shape.rb +2 -0
  26. data/lib/jrubyfx/core_ext/stop.rb +2 -0
  27. data/lib/jrubyfx/core_ext/timeline.rb +13 -0
  28. data/lib/jrubyfx/core_ext/transition.rb +1 -0
  29. data/lib/jrubyfx/core_ext/tree_item.rb +25 -0
  30. data/lib/jrubyfx/core_ext/tree_item.rb~ +25 -0
  31. data/lib/jrubyfx/core_ext/tree_view.rb +40 -0
  32. data/lib/jrubyfx/core_ext/tree_view.rb~ +33 -0
  33. data/lib/jrubyfx/dsl.rb +46 -7
  34. data/lib/jrubyfx/fxml_controller.rb +85 -30
  35. data/lib/jrubyfx/jfx_imports.rb +25 -23
  36. data/lib/jrubyfx/utils/__ignore_java_stupid_rdoc.rb +6 -0
  37. data/lib/jrubyfx/utils/common_converters.rb +50 -2
  38. data/lib/jrubyfx/version.rb +1 -1
  39. data/lib/jrubyfx_tasks.rb +54 -10
  40. metadata +18 -5
data/README.md CHANGED
@@ -39,6 +39,22 @@ This jar can then run anywhere there is a JVM with JavaFX. Note than the main fi
39
39
  renamed to jar-bootstrap.rb inside the jar. If you need to detect if you are in a jar,
40
40
  use the JRubyFX::Application.in_jar? method.
41
41
 
42
+ You can create native application packages and installers. For now, this requires that you have [JDK8 installed](http://jdk8.java.net/download.html), although this may change in the near future. Just pass the `--native` option. The packaging toolkit can only create packages for the OS it is being used on, so for Windows installers you will need to run it on a Windows machine, for OSX installers you will need to run it on a Mac, etc.
43
+
44
+ In order for the installer to be created, you will need some additional tools installed on your system. For Windows you need either Inno Setup 5 or later for an EXE or [Windows Installer XML (WiX) toolset](http://wix.sourceforge.net/) to generate an MSI. Make sure the WiX toolset's `bin` folder is on the `PATH`. No special tools are need to generate a DMG, just a recent version of OSX. For linux, the packager uses dpkg-deb to create DEB installers and rpmbuild for RPM.
45
+
46
+ If you don't want your application to be called "JarBootstrapMain", I highly suggest passing the `--name` option with an appropriate string.
47
+
48
+ To customize the package, for example to change the icons or license pass the `-v` or `--verbose` option. This will cause the JavaFX packaging tools to enter verbose mode, and provide more details about the process, including (the important part for customization) the location of a temporary folder where the config resources for the build are held and a list of the resources and the role of each. Copy the contents of this tmp folder into a folder in your project directory (the dir you run jrubyfx-jarify from) where the packaging tools will know to look for them. For example, on linux this would be `main_project_dir/package/linux`. On OSX, it is `main_project_dir/package/macosx`. So, if I wanted to use a custom icon, I'd replace the default icon with my own, ensuring it has the same name, and place it inside that linux or macosx folder. Then run the build again. You can find more information on customizing at the [official Oracle documentation](http://docs.oracle.com/javafx/2/deployment/self-contained-packaging.htm#BCGICFDB). [This blog post](http://ed4becky.net/homepage/javafx-from-the-trenches-part-1-native-packaging/4/) may also be helpful, as he goes through the process of customizing an app for both Windows and OSX.
49
+
50
+ The JavaFX tools provide far more options than are available from this tool. You can create your own rake tasks and access them directly, however. See [this article](https://github.com/jruby/jruby/wiki/Packaging-Native-Installers-with-the-JavaFX-Ant-Tasks) in the JRuby wiki.
51
+
52
+ Example: If my project directory is `Hello`, all my files are in `src`, I have a `dist` folder created for my jar file, my main file is called `HelloWorldApp.rb`, my app's name is "Hello World App", and I want the customization info, the command line would look like this:
53
+
54
+ ```
55
+ jrubyfx-jarify src --main src/HelloWorldApp.rb dist/HelloWorldApp.jar --native --name "Hello World App" -v
56
+ ```
57
+
42
58
  Sample
43
59
  -------
44
60
 
@@ -65,8 +81,8 @@ Creating Application and Controller
65
81
 
66
82
  Require the 'jrubyfx' file/gem, and subclass JRubyFX::Application (and JRubyFX::Controller if you are using FXML).
67
83
  At the bottom of the file, call _yourFXApplicationClass_.launch().
68
- Override start(stage) in the application. See samples/fxml/Demo.rb for commented FXML example,
69
- or the fils in samples/javafx for non-FXML (programatic JavaFX, but you should really
84
+ Override start(stage) in the application. See samples/fxml/Demo.rb for commented FXML example,
85
+ or the fils in samples/javafx for non-FXML (programatic JavaFX, but you should really
70
86
  look into FXML, its better) or see the Getting Started Guide and the Notes.
71
87
 
72
88
  If you want rdoc, run `rake rdoc`.
@@ -31,12 +31,12 @@ rb = ARGV[1] if ARGV.length > 1
31
31
  name_guess = "My" + File.basename(fxml).gsub(/\.fxml$/i, "").gsub(/[^a-zA-Z0-9_]/i, "") # better guess would be better
32
32
  name_guess = ARGV[2] if ARGV.length > 2
33
33
 
34
- print "Generating RubyFX template for #{fxml} into #{rb}... "
34
+ print "Generating JRubyFX template for #{fxml} into #{rb}... "
35
35
 
36
36
  File.open(rb, "w") do |output|
37
37
 
38
38
  output << <<END
39
- # This file was auto-generated by rubyfx-generator at #{DateTime.now.to_s}
39
+ # This file was auto-generated by jrubyfx-generator at #{DateTime.now.to_s}
40
40
 
41
41
  require 'jrubyfx'
42
42
 
@@ -76,6 +76,6 @@ END
76
76
  end
77
77
 
78
78
  puts "Done!"
79
- puts "Launching 'ruby #{rb}' ..."
79
+ puts "Launching 'jruby #{rb}' ..."
80
80
 
81
81
  require rb
@@ -21,11 +21,16 @@ require 'jrubyfx_tasks'
21
21
  def usage
22
22
  puts "#{$0} {options} project-folder [output.jar]"
23
23
  puts <<THEOPTIONS
24
- project-folder should contain rb files and supporting files
24
+ project-folder should contain rb files and supporting files
25
25
 
26
- -m|--main FILE ruby script to launch when the jar is executed.
26
+ -m|--main FILE ruby script to launch when the jar is executed.
27
27
  Defaults to jar-bootstrap.rb or main.rb
28
- -j|--include-jars Include jars in the jar
28
+ -j|--include-jars Include jars in the jar. (off by default to prevent including
29
+ the jar you are building)
30
+ --native Create native application packages and installers. (Requires JDK8)
31
+ -v|--verbose Turns on the native packagers verbose mode. Useful for
32
+ customizing icons, licenses, etc.
33
+ --name STRING Name for your native package.
29
34
  THEOPTIONS
30
35
  exit -1
31
36
  end
@@ -36,6 +41,9 @@ end
36
41
 
37
42
  main = ["jar-bootstrap.rb", "main.rb"]
38
43
  include_jars = false
44
+ native_bundle = false
45
+ app_name = ""
46
+ verbose = false
39
47
  nargs = []
40
48
  default_on_next = on_next = ->(arg){true}
41
49
 
@@ -54,8 +62,21 @@ ARGV.each do |arg|
54
62
  when "-j", "--include-jars"
55
63
  include_jars = true
56
64
  next
65
+ when "--native"
66
+ native_bundle = true
67
+ next
68
+ when "--name"
69
+ on_next = ->(arg){
70
+ app_name = [arg]
71
+ on_next = default_on_next
72
+ false
73
+ }
74
+ next
75
+ when "-v", "--verbose"
76
+ verbose = true
57
77
  when "-h", "--help"
58
78
  usage
79
+ exit 0
59
80
  when /^-/
60
81
  puts "ERROR! Unrecognized option '#{arg}'!"
61
82
  exit -2
@@ -73,7 +94,7 @@ project_folder, output_jar = nargs
73
94
  # Download the current running JRuby version
74
95
  JRubyFX::Tasks::download_jruby(JRUBY_VERSION)
75
96
 
76
- # set the main script to the first (must be passed in), or tries to find
97
+ # set the main script to the first (must be passed in), or tries to find
77
98
  # a file that does exists. Silently fails if it fails.
78
99
  main_script = main[0]
79
100
  if main.length > 1
@@ -88,3 +109,7 @@ end
88
109
 
89
110
  # Jarify!
90
111
  JRubyFX::Tasks::jarify_jrubyfx(project_folder + "/**/*", main_script, nil, output_jar, :file_filter => ->(filename){!filename.end_with?(".jar") or include_jars})
112
+
113
+ if native_bundle
114
+ JRubyFX::Tasks::native_bundles(Dir.pwd, output_jar, verbose, app_name[0])
115
+ end
@@ -14,6 +14,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
14
  See the License for the specific language governing permissions and
15
15
  limitations under the License.
16
16
  =end
17
+ require 'jrubyfx/dsl'
18
+
17
19
  # JRubyFX DSL extensions for BorderPanes
18
20
  class Java::javafx::scene::layout::BorderPane
19
21
  include JRubyFX::DSL
@@ -14,6 +14,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
14
  See the License for the specific language governing permissions and
15
15
  limitations under the License.
16
16
  =end
17
+ require 'jrubyfx/dsl'
18
+
17
19
  # JRubyFX DSL extensions for JavaFX Column Constraints
18
20
  class Java::javafx::scene::layout::ColumnConstraints
19
21
  extend JRubyFX::Utils::CommonConverters
@@ -0,0 +1,32 @@
1
+ =begin
2
+ JRubyFX - Write JavaFX and FXML in Ruby
3
+ Copyright (C) 2013 The JRubyFX Team
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+ =end
17
+ require 'jrubyfx/utils/common_converters'
18
+
19
+ # JRubyFX DSL extensions for JavaFX drag events
20
+ class Java::javafx::scene::input::DragEvent
21
+ extend JRubyFX::Utils::CommonConverters
22
+ include JRubyFX::Utils::CommonUtils
23
+
24
+ tmc = enum_converter(Java::javafx::scene::input::TransferMode)
25
+ converter_for :accept_transfer_modes, &tmc
26
+
27
+ # FIXME: For non-dsl calls like this we want converter logic
28
+ alias :accept_transfer_modes_orig :accept_transfer_modes
29
+ def accept_transfer_modes(*values)
30
+ accept_transfer_modes_orig *attempt_conversion(self, "accept_transfer_modes", *values)
31
+ end
32
+ end
@@ -0,0 +1,32 @@
1
+ =begin
2
+ JRubyFX - Write JavaFX and FXML in Ruby
3
+ Copyright (C) 2013 The JRubyFX Team
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+ =end
17
+ require 'jrubyfx/dsl'
18
+
19
+ # JRubyFX DSL extensions for JavaFX drop shadows
20
+ class Java::javafx::scene::input::DragEvent
21
+ extend JRubyFX::Utils::CommonConverters
22
+
23
+ converter_for :acceptTransferModes, [enum_converter(Java::javafx::scene::input::TransferMode)]
24
+
25
+ class << self
26
+ extend JRubyFX::Utils::CommonConverters
27
+
28
+ converter_for :new, [], [:none, :color], [:none, :none, :none, :color],
29
+ [enum_converter(Java::javafx::scene::effect::BlurType), :color, :none, :none, :none, :none]
30
+ end
31
+
32
+ end
@@ -14,6 +14,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
14
  See the License for the specific language governing permissions and
15
15
  limitations under the License.
16
16
  =end
17
+ require 'jrubyfx/dsl'
18
+
17
19
  # JRubyFX DSL extensions for JavaFX Duration
18
20
  class Fixnum
19
21
  # defines #ms, #sec, etc to create a JavaFX duration object of respective type
@@ -14,6 +14,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
14
  See the License for the specific language governing permissions and
15
15
  limitations under the License.
16
16
  =end
17
+ require 'jrubyfx/dsl'
18
+
17
19
  # JRubyFX DSL extensions for JavaFX drop shadows
18
20
  class Java::javafx::scene::effect::DropShadow
19
21
  extend JRubyFX::Utils::CommonConverters
@@ -14,8 +14,11 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
14
  See the License for the specific language governing permissions and
15
15
  limitations under the License.
16
16
  =end
17
+ require 'jrubyfx/dsl'
18
+
17
19
  # JRubyFX DSL extensions for JavaFX FileChooser
18
20
  class Java::javafx::stage::FileChooser
21
+ include JRubyFX::DSL
19
22
 
20
23
  # call-seq:
21
24
  # add_extension_filter(description)
@@ -0,0 +1,24 @@
1
+ =begin
2
+ JRubyFX - Write JavaFX and FXML in Ruby
3
+ Copyright (C) 2013 The JRubyFX Team
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+ =end
17
+ require 'jrubyfx/dsl'
18
+
19
+ # JRubyFX DSL extensions for JavaFX Image Views
20
+ class Java::javafx::scene::image::ImageView
21
+ extend JRubyFX::Utils::CommonConverters
22
+
23
+ converter_for :viewport, [:rectangle2d]
24
+ end
@@ -0,0 +1,24 @@
1
+ =begin
2
+ JRubyFX - Write JavaFX and FXML in Ruby
3
+ Copyright (C) 2013 The JRubyFX Team
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+ =end
17
+ require 'jrubyfx/dsl'
18
+
19
+ # JRubyFX DSL extensions for JavaFX color stops
20
+ class Java::javafx::scene::media::MediaPlayer
21
+ extend JRubyFX::Utils::CommonConverters
22
+
23
+ converter_for :viewport, [:geometry]
24
+ end
@@ -14,6 +14,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
14
  See the License for the specific language governing permissions and
15
15
  limitations under the License.
16
16
  =end
17
+ require 'jrubyfx/dsl'
18
+
17
19
  # JRubyFX DSL extensions for JavaFX color stops
18
20
  class Java::javafx::scene::media::MediaPlayer
19
21
  extend JRubyFX::Utils::CommonConverters
@@ -0,0 +1,25 @@
1
+ =begin
2
+ JRubyFX - Write JavaFX and FXML in Ruby
3
+ Copyright (C) 2013 The JRubyFX Team
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+ =end
17
+ require 'jrubyfx/dsl'
18
+
19
+ # JRubyFX DSL extensions for JavaFX Menus
20
+ class Java::javafx::scene::control::Menu
21
+ include JRubyFX::DSL
22
+
23
+ include_method_missing MenuItem
24
+ include_add :getItems
25
+ end
@@ -0,0 +1,26 @@
1
+ =begin
2
+ JRubyFX - Write JavaFX and FXML in Ruby
3
+ Copyright (C) 2013 The JRubyFX Team
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+ =end
17
+ require 'jrubyfx/dsl'
18
+
19
+ # JRubyFX DSL extensions for JavaFX color stops
20
+ class Java::javafx::scene::control::MenuBar
21
+ java_import 'javafx.scene.control.MenuItem'
22
+ include JRubyFX::DSL
23
+
24
+ include_method_missing MenuItem
25
+ include_add :getItems
26
+ end
@@ -0,0 +1,25 @@
1
+ =begin
2
+ JRubyFX - Write JavaFX and FXML in Ruby
3
+ Copyright (C) 2013 The JRubyFX Team
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+ =end
17
+ require 'jrubyfx/dsl'
18
+
19
+ # JRubyFX DSL extensions for JavaFX Menu Bars
20
+ class Java::javafx::scene::control::MenuBar
21
+ include JRubyFX::DSL
22
+
23
+ include_method_missing Menu
24
+ include_add :getMenus
25
+ end
@@ -0,0 +1,24 @@
1
+ =begin
2
+ JRubyFX - Write JavaFX and FXML in Ruby
3
+ Copyright (C) 2013 The JRubyFX Team
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+ =end
17
+ require 'jrubyfx/dsl'
18
+
19
+ # JRubyFX DSL extensions for JavaFX color stops
20
+ class Java::javafx::scene::control::MenuBar
21
+ extend JRubyFX::Utils::CommonConverters
22
+
23
+ include_add :get_menus
24
+ end
@@ -0,0 +1,22 @@
1
+ =begin
2
+ JRubyFX - Write JavaFX and FXML in Ruby
3
+ Copyright (C) 2013 The JRubyFX Team
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
16
+ =end
17
+ require 'jrubyfx/dsl'
18
+
19
+ # JRubyFX DSL extensions for JavaFX Menu Items
20
+ class Java::javafx::scene::control::MenuItem
21
+ include JRubyFX::DSL
22
+ end
@@ -21,4 +21,6 @@ class Java::javafx::scene::Node
21
21
  include JRubyFX::DSL
22
22
 
23
23
  include_rotate
24
+
25
+ getter_setter :effect
24
26
  end
@@ -14,10 +14,12 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
14
  See the License for the specific language governing permissions and
15
15
  limitations under the License.
16
16
  =end
17
- # JRubyFX DSL extensions for JavaFX Progress *
17
+ require 'jrubyfx/dsl'
18
+
19
+ # JRubyFX DSL extensions for JavaFX Pagination
18
20
  class Java::javafx::scene::control::Pagination
19
21
  extend JRubyFX::Utils::CommonConverters
20
-
22
+
21
23
  indeterm_map = map_converter(indeterminate: INDETERMINATE)
22
24
 
23
25
  converter_for :page_count, [indeterm_map]