API reference - Class Observer

Notation used in Ruby API documentation

Description: This class implements an event handler for use with 'observer' interfaces

Class hierarchy: Observer

Some classes provide callbacks by attaching 'observer' objects to certain events. Specific actions can be implemented by reimplementing the 'signal...' methods of this class or by attaching code to the 'on_signal' or 'on_signal_int' event.

Here is some sample code:

  observer = RBA::Observer::new
  def observer.signal
    puts "A new view has been opened"
  end
  RBA::Application::instance.main_window.add_new_view_observer(observer)

Using the event this code looks like this:

  observer = RBA::Observer::new
  observer.on_signal do
    puts "A new view has been opened"
  end
  RBA::Application::instance.main_window.add_new_view_observer(observer)

Public constructors

ObservernewCreates a new object of this class

Public methods

[const]voidassign(const Observer other)Assign the contents of another object to self
voidcreateEnsures the C++ object is created
voiddestroyExplicitly destroy the object
[const]booldestroyed?Returns a value indicating whether the object was already destroyed
[const]ObserverdupCreates a copy of self
[const]boolis_const_object?Returns a value indicating whether the reference is a const reference
[event]voidon_signalThis event is called if the observer signals it's condition
[event]voidon_signal_int(int arg1)This event is called if the observer signals it's condition with an integer argument
[virtual]voidsignalThis method is called when the event without value is issued
[virtual]voidsignal_int(int value)This method is called when an event associated with an integer is issued

Detailed description

[const] void assign(const Observer other)

Description: Assign the contents of another object to self

This method assigns the contents of another object to self. This is a deep copy that does not only copy the reference but the actual content.

void create

Description: Ensures the C++ object is created

Use this method to ensure the C++ object is created, for example to ensure that resources are allocated. Usually C++ objects are created on demand and not necessarily when the script object is created.

void destroy

Description: Explicitly destroy the object

Explicitly destroy the object on C++ side if it was owned by the Ruby interpreter. Subsequent access to this object will throw an exception. If the object is not owned by Ruby, this method will do nothing.

[const] bool destroyed?

Description: Returns a value indicating whether the object was already destroyed

This method returns true, if the object was destroyed, either explicitly or by the C++ side. The latter may happen, if the object is owned by a C++ object which got destroyed itself.

[const] Observer dup

Description: Creates a copy of self

[const] bool is_const_object?

Description: Returns a value indicating whether the reference is a const reference

This method returns true, if self is a const reference. In that case, only const methods may be called on self.

[static] Observer new

Description: Creates a new object of this class

[event] void on_signal

Description: This event is called if the observer signals it's condition

This event has been introduced in version 0.23.

[event] void on_signal_int(int arg1)

Description: This event is called if the observer signals it's condition with an integer argument

This event has been introduced in version 0.23.

[virtual] void signal

Description: This method is called when the event without value is issued

[virtual] void signal_int(int value)

Description: This method is called when an event associated with an integer is issued