Class/Object

net.sf.jguiraffe.gui.platform.javafx.layout

JavaFxUnitSizeHandler

Related Docs: object JavaFxUnitSizeHandler | package layout

Permalink

class JavaFxUnitSizeHandler extends UnitSizeHandler

The Java FX-based implementation of the UnitSizeHandler interface.

This class implements functionality for detecting screen properties and calculating font sizes based on the Java FX library. Unfortunately, some of these calculations are not trivial; especially, there is no easy way to determine the width and height of a text string. The workaround applied here makes use of Java FX components which are configured and layouted to obtain their size. This has to happen in the Java FX thread, so threading issues have to be taken into account.

Because the calculation of font sizes can be expensive, a cache is maintained which is shared by all instances. Access to the cache is protected so this class can be called from different threads. (This is required because size calculations will also have to take place in background threads executing builder scripts.)

Linear Supertypes
UnitSizeHandler, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. JavaFxUnitSizeHandler
  2. UnitSizeHandler
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Instance Constructors

  1. new JavaFxUnitSizeHandler()

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  10. def getFontSize(component: AnyRef, y: Boolean): Double

    Permalink

    <invalid inheritdoc annotation> This implementation expects the passed in component to be an instance of ContainerWrapper.

    <invalid inheritdoc annotation> This implementation expects the passed in component to be an instance of ContainerWrapper. It makes use of a static cache for font sizes. If the cache does not contain the font in question, a Text component is created for determining the font size. This has to happen in the Java FX thread. Atomic variables are used to deal with concurrent access.

    Definition Classes
    JavaFxUnitSizeHandler → UnitSizeHandler
  11. def getScreenResolution(): Int

    Permalink

    <invalid inheritdoc annotation> This implementation obtains the resolution from the primary screen.

    <invalid inheritdoc annotation> This implementation obtains the resolution from the primary screen.

    Definition Classes
    JavaFxUnitSizeHandler → UnitSizeHandler
  12. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  16. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  17. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  18. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  19. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from UnitSizeHandler

Inherited from AnyRef

Inherited from Any

Ungrouped