O1Library Docs
Fall 2023
Docs API

# TerminatesOnClose

o1.gui.TerminatesOnClose
trait TerminatesOnClose extends Window

Give this convenience trait to a Swing GUI frame to make it terminate the application when closed.

## Attributes

Graph
Supertypes
  class Window
  trait RootPanel
  trait Container
  trait UIElement
  trait Publisher
  trait Reactor
  trait Proxy
  class Object
  trait Matchable
  class Any
  Show all

## Members list

### Type members

#### Inherited classlikes

protected trait InterfaceMixin extends RootPaneContainer

## Attributes

Inherited from:
  Window
Supertypes
  trait RootPaneContainer
  class Object
  trait Matchable
  class Any
Known subtypes
  trait InterfaceMixin2

protected trait SuperMixin extends Window

## Attributes

Inherited from:
  Window
Supertypes
  class Window
  trait Accessible
  class Container
  class Component
  trait Serializable
  trait MenuContainer
  trait ImageObserver
  class Object
  trait Matchable
  class Any
  Show all

### Value members

#### Concrete methods

override def closeOperation(): Unit

Call `closeOperation` on the superclass, then terminates the entire application. (Skips termination if it seems the program is running in the REPL.)

Call `closeOperation` on the superclass, then terminates the entire application. (Skips termination if it seems the program is running in the REPL.)

## Attributes

Definition Classes
  Window

#### Inherited methods

def background: Color

## Attributes

Inherited from:
  UIElement

def background_=(c: Color): Unit

## Attributes

Inherited from:
  UIElement

def bounds: Rectangle

## Attributes

Inherited from:
  UIElement

def bounds_=(rect: Rectangle): Unit

## Attributes

Inherited from:
  Window

def centerOnScreen(): Unit

## Attributes

Inherited from:
  Window

def close(): Unit

## Attributes

Inherited from:
  Window

def componentOrientation: ComponentOrientation

## Attributes

Inherited from:
  UIElement

def componentOrientation_=(x: ComponentOrientation): Unit

## Attributes

Inherited from:
  UIElement

def contents: Seq[Component]

At most one component.

At most one component.

## Attributes

Inherited from:
  RootPanel

override def contents_=(c: Component): Unit

## Attributes

Definition Classes
  Window -> RootPanel
Inherited from:
  Window

def cursor: Cursor

## Attributes

Inherited from:
  UIElement

def cursor_=(c: Cursor): Unit

## Attributes

Inherited from:
  UIElement

def deafTo(ps: Publisher*): Unit

Installed reaction won't receive events from the given publisher anylonger.

Installed reaction won't receive events from the given publisher anylonger.

## Attributes

Inherited from:
  Reactor

def defaultButton: Option[Button]

## Attributes

Inherited from:
  Window

def defaultButton_=(b: Option[Button]): Unit

## Attributes

Inherited from:
  Window

def defaultButton_=(b: Button): Unit

## Attributes

Inherited from:
  Window

def displayable: Boolean

## Attributes

Inherited from:
  UIElement

def dispose(): Unit

## Attributes

Inherited from:
  Window

override def equals(that: Any): Boolean

Compares the receiver object (`this`) with the argument object (`that`) for equivalence.

Compares the receiver object (`this`) with the argument object (`that`) for equivalence.

Any implementation of this method should be an equivalence relation:

- It is reflexive: for any instance `x` of type `Any`, `x.equals(x)` should return `true`.
- It is symmetric: for any instances `x` and `y` of type `Any`, `x.equals(y)` should return `true` if and only if `y.equals(x)` returns `true`.
- It is transitive: for any instances `x`, `y`, and `z` of type `Any` if `x.equals(y)` returns `true` and `y.equals(z)` returns `true`, then `x.equals(z)` should return `true`.

If you override this method, you should verify that your implementation remains an equivalence relation. Additionally, when overriding this method it is usually necessary to override `hashCode` to ensure that objects which are "equal" (`o1.equals(o2)` returns `true`) hash to the same scala.Int. (`o1.hashCode.equals(o2.hashCode)`).

## Parameters

that

  the object to compare against this object for equality.

## Attributes

Returns

  `true` if the receiver object is equivalent to the argument; `false` otherwise.

Definition Classes
  Proxy -> Any
Inherited from:
  Proxy

def font: Font

## Attributes

Inherited from:
  UIElement

def font_=(f: Font): Unit

## Attributes

Inherited from:
  UIElement

def foreground: Color

## Attributes

Inherited from:
  UIElement

def foreground_=(c: Color): Unit

## Attributes

Inherited from:
  UIElement

override def hashCode(): Int

Calculate a hash code value for the object.

Calculate a hash code value for the object.

The default hashing algorithm is platform dependent.

Note that it is allowed for two objects to have identical hash codes (`o1.hashCode.equals(o2.hashCode)`) yet not be equal (`o1.equals(o2)` returns `false`). A degenerate implementation could always return `0`. However, it is required that if two objects are equal (`o1.equals(o2)` returns `true`) that they have identical hash codes (`o1.hashCode.equals(o2.hashCode)`). Therefore, when overriding this method, be sure to verify that the behavior is consistent with the `equals` method.

## Attributes

Returns

  the hash code value for this object.

Definition Classes
  Proxy -> Any
Inherited from:
  Proxy

def ignoreRepaint: Boolean

## Attributes

Inherited from:
  UIElement

def ignoreRepaint_=(b: Boolean): Unit

## Attributes

Inherited from:
  UIElement

def listenTo(ps: Publisher*): Unit

Listen to the given publisher as long as `deafTo` isn't called for them.

Listen to the given publisher as long as `deafTo` isn't called for them.

## Attributes

Inherited from:
  Reactor

def locale: Locale

## Attributes

Inherited from:
  UIElement

def location: Point

## Attributes

Inherited from:
  UIElement

def locationOnScreen: Point

## Attributes

Inherited from:
  UIElement

def location_=(p: Point): Unit

## Attributes

Inherited from:
  Window

def maximumSize: Dimension

## Attributes

Inherited from:
  UIElement

def maximumSize_=(x: Dimension): Unit

## Attributes

Inherited from:
  UIElement

def minimumSize: Dimension

## Attributes

Inherited from:
  UIElement

def minimumSize_=(x: Dimension): Unit

## Attributes

Inherited from:
  UIElement

def open(): Unit

## Attributes

Inherited from:
  Window

def owner: Window

## Attributes

Inherited from:
  Window

def pack(): Window.this.type

## Attributes

Inherited from:
  Window

def peer: Window & InterfaceMixin

The underlying Swing peer.

The underlying Swing peer.

## Attributes

Inherited from:
  Window

def preferredSize: Dimension

## Attributes

Inherited from:
  UIElement

def preferredSize_=(x: Dimension): Unit

## Attributes

Inherited from:
  UIElement

def publish(e: Event): Unit

Notify all registered reactions.

Notify all registered reactions.

## Attributes

Inherited from:
  Publisher

def repaint(rect: Rectangle): Unit

## Attributes

Inherited from:
  UIElement

def repaint(): Unit

## Attributes

Inherited from:
  UIElement

def self: Any

## Attributes

Inherited from:
  UIElement

def setLocationRelativeTo(c: UIElement): Unit

## Attributes

Inherited from:
  Window

def showing: Boolean

## Attributes

Inherited from:
  UIElement

def size: Dimension

## Attributes

Inherited from:
  UIElement

def size_=(size: Dimension): Unit

## Attributes

Inherited from:
  Window

override def subscribe(listener: Reaction): Unit

## Attributes

Definition Classes
  LazyPublisher -> Publisher
Inherited from:
  LazyPublisher (hidden)

override def toString(): String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

## Attributes

Returns

  a string representation of the object.

Definition Classes
  Proxy -> Any
Inherited from:
  Proxy

def toolkit: Toolkit

## Attributes

Inherited from:
  UIElement

override def unsubscribe(listener: Reaction): Unit

## Attributes

Definition Classes
  LazyPublisher -> Publisher
Inherited from:
  LazyPublisher (hidden)

def validate(): Unit

## Attributes

Inherited from:
  UIElement

def visible: Boolean

## Attributes

Inherited from:
  UIElement

def visible_=(b: Boolean): Unit

## Attributes

Inherited from:
  UIElement

#### Inherited fields

protected val listeners: RefSet[Reaction]

## Attributes

Inherited from:
  Publisher

val reactions: Reactions

All reactions of this reactor.

All reactions of this reactor.

## Attributes

Inherited from:
  Reactor