Class: JRubyFX::Application

Inherits:
Object
  • Object
show all
Includes:
JRubyFX, DSL
Defined in:
lib/jrubyfx/application.rb

Overview

Inherit from this class for FXML Applications. You must use this class for both raw JavaFX and FXML as it contains the launch method.

Constant Summary

Constants included from DSL

DSL::NAME_TO_CLASSES

Constants included from JRubyFX

VERSION

Constants included from FXImports

FXImports::JFX_CLASS_HIERARCHY

Class Method Summary collapse

Methods included from DSL

compile_dsl, included, load_dsl, #logical_lookup, #method_missing, #self_test_lookup, write_color_method_converter, write_enum_converter, write_enum_method_converter

Methods included from JRubyFX

#build, included, #run_later, #with

Methods included from Utils::CommonUtils

#attempt_conversion, #populate_properties, #split_args_from_properties

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class JRubyFX::DSL

Class Method Details

.in_jar?Boolean

Are we packaged in a jar? This does some comparison, and may get false positives and, if jruby changes, false negatives. If you are using this, it might be a very bad idea… (though it is handy)

Returns:

  • (Boolean)


29
30
31
# File 'lib/jrubyfx/application.rb', line 29

def self.in_jar?()
  $LOAD_PATH.inject(false) { |res,i| res || i.include?(".jar!/META-INF/jruby.home/lib/ruby/")}
end

.launch(*args) ⇒ Object

call-seq:

launch()

When called on a subclass, this is effectively our main method.



38
39
40
41
# File 'lib/jrubyfx/application.rb', line 38

def self.launch(*args)
  #call our custom launcher to avoid a java shim
  JavaFXImpl::Launcher.launch_app(self, *args)
end