org.gnu.glib
Class GObject

java.lang.Object
  extended by org.gnu.glib.Struct
      extended by org.gnu.glib.GObject
Direct Known Subclasses:
AccelGroup, AccelMap, Action, ActionGroup, AtkObject, CellEditable, Clipboard, Colormap, Context, CustomEvents, Device, Display, DragContext, Drawable, EntryCompletion, FileFilter, Font, FontFace, FontFamily, GC, GListString, GtkObject, Hyperlink, IconFactory, IconTheme, Image, IMContext, Keymap, Layout, ObjectFactory, Pixbuf, PixbufAnimation, PixbufAnimationIter, PixbufLoader, RcStyle, Registry, Relation, RelationSet, Screen, Settings, SizeGroup, StateSet, Style, TextBuffer, TextChildAnchor, TextMark, TextTag, TextTagTable, TreeModel, TreeSelection, TreeViewColumn, TypeInterface, UIManager, Visual, WindowGroup

public class GObject
extends org.gnu.glib.Struct

Base class for all objects that participate in the GLib object system.


Constructor Summary
GObject(org.gnu.glib.Handle handle)
          Create a new GObject with a handle to a native resource returned from a call to the native libraries.
GObject(Type type)
          Create a new GObject of the given type.
 
Method Summary
 int addEventHandler(java.lang.String name, java.lang.Object cbrecv)
          Connect an event to a callback method that has the same name as the event.
 int addEventHandler(java.lang.String name, java.lang.Object cbrecv, java.lang.Object data)
          Connect a event to a callback method that has the same name as the event.
 int addEventHandler(java.lang.String name, java.lang.String func, java.lang.Class cbrecv)
          Connect a event to a static callback method "func" in Class "cbrecv".
 int addEventHandler(java.lang.String name, java.lang.String func, java.lang.Class cbrecv, java.lang.Object data)
          Connect a event to a static callback method "func" in Class "cbrecv".
 int addEventHandler(java.lang.String name, java.lang.String func, java.lang.Object cbrecv)
          Connect a event to a callback method "func" in object "cbrecv".
 int addEventHandler(java.lang.String name, java.lang.String func, java.lang.Object cbrecv, boolean shouldCopyIfBoxed)
          Connect a event to a callback method "func" in object "cbrecv".
 int addEventHandler(java.lang.String name, java.lang.String func, java.lang.Object cbrecv, java.lang.Object data)
          Connect a event to a callback method "func" in object "cbrecv".
 void addListener(PropertyNotificationListener listen)
          Add a listener that will be activated when a property is updated updated ("notify" signal).
static void collect()
           
 void freezeNotify()
          Stops emission of "notify" signals on object.
 boolean getBooleanProperty(java.lang.String name)
          Convenience method for retrieving boolean properties.
 java.lang.Object getData(java.lang.String key)
          Gets the Java Object associated with the given key from this object's object association table.
 double getDoubleProperty(java.lang.String name)
          Convenience method for retrieving double properties.
 java.lang.Class getEventListenerClass(java.lang.String signal)
           
 EventType getEventType(java.lang.String signal)
           
 float getFloatProperty(java.lang.String name)
          Convenience method for retrieving float properties.
static GObject getGObjectFromHandle(org.gnu.glib.Handle hndl)
          Gets a GObject instance for the given Handle.
 int getIntProperty(java.lang.String name)
          Convenience method for retrieving int properties.
 java.lang.Object getJavaObjectProperty(java.lang.String name)
          Convenience method for retrieving Object properties.
 long getLongProperty(java.lang.String name)
          Convenience method for retrieving long properties.
 Pixbuf getPixbufProperty(java.lang.String name)
          Deprecated. As of libgtk-java 2.8.5, this method has been deprecated in favour of getJavaObjectProperty(String). Future major version releases will have this method removed. Please use with caution.
 Value getProperty(java.lang.String name)
          Get the Value of the given property (name).
 java.lang.String getStringProperty(java.lang.String name)
          Convenience method for retrieving String properties.
 boolean hasProperty(java.lang.String name)
          Determines if this object supports the given named property.
 void notify(java.lang.String property_name)
          Emits a "notify" signal for the given property.
 void removeEventHandler(int handler)
          Disconnect a event from its' callback method.
 void removeListener(PropertyNotificationListener listen)
          Remove the given listener from those activated when a property is updated.
 void setBooleanProperty(java.lang.String name, boolean value)
          Convenience method for setting boolean properties.
 void setData(java.lang.String key, java.lang.Object data)
          Sets an association from a String to a Java Object to be stored in the GTK object's table of associations.
 void setDoubleProperty(java.lang.String name, double value)
          Convenience method for setting double properties.
 void setFloatProperty(java.lang.String name, float value)
          Convenience method for setting float properties.
 void setIntProperty(java.lang.String name, int value)
          Convenience method for setting int properties.
 void setJavaObjectProperty(java.lang.String name, java.lang.Object value)
          Convenience method for setting Object properties.
 void setLongProperty(java.lang.String name, long value)
          Convenience method for setting long properties.
 void setPixbufProperty(java.lang.String name, Pixbuf value)
          Deprecated. As of libgtk-java 2.8.5, this method has been deprecated in favour of setJavaObjectProperty(String, Object). Future major version releases will have this method removed. Please use with caution.
 void setProperty(java.lang.String name, Value val)
          Set the given property (name) with the given Value on this object.
 void setStringProperty(java.lang.String name, java.lang.String value)
          Convenience method for setting String properties.
 void thawNotify()
          Reverts the effect of a previous call to freezeNotify.
 
Methods inherited from class org.gnu.glib.Struct
equals, getHandle, getNullHandle, hashCode
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GObject

public GObject(Type type)
Create a new GObject of the given type.


GObject

public GObject(org.gnu.glib.Handle handle)
Create a new GObject with a handle to a native resource returned from a call to the native libraries.

Parameters:
handle - The handle that represents a pointer to a native resource.
Method Detail

addEventHandler

public int addEventHandler(java.lang.String name,
                           java.lang.String func,
                           java.lang.Object cbrecv)
Connect a event to a callback method "func" in object "cbrecv".

Parameters:
name - The name of the event to map.
func - The name of the callback method.
cbrecv - The name of the object that is to recieve the event.
Returns:
The handle id of the event that can be used in a call to removeEventHandler.

addEventHandler

public int addEventHandler(java.lang.String name,
                           java.lang.Object cbrecv)
Connect an event to a callback method that has the same name as the event. For example, the event "clicked" will be mapped to a method "clicked()" in the object cbrecv.

Parameters:
name - The name of the event to map.
cbrecv - The name of the object that is to recieve the event.
Returns:
The handle id of the event that can be used in a call to removeEventHandler.

addEventHandler

public int addEventHandler(java.lang.String name,
                           java.lang.Object cbrecv,
                           java.lang.Object data)
Connect a event to a callback method that has the same name as the event. For example, the event "clicked" will be mapped to a method "clicked()" in the object cbrecv.

Parameters:
name - The name of the event to map.
cbrecv - The name of the object that is to recieve the event.
data - User defined data that will be passed to the callback.
Returns:
The handle id of the event that can be used in a call to removeEventHandler.

addEventHandler

public int addEventHandler(java.lang.String name,
                           java.lang.String func,
                           java.lang.Object cbrecv,
                           boolean shouldCopyIfBoxed)
Connect a event to a callback method "func" in object "cbrecv".

Parameters:
name - The name of the event to map.
func - The name of the callback method.
cbrecv - The name of the object that is to recieve the event.
shouldCopyIfBoxed - Should copy the incoming object associated with the signal. Only for type Boxed.
Returns:
The handle id of the event that can be used in a call to removeEventHandler.

addEventHandler

public int addEventHandler(java.lang.String name,
                           java.lang.String func,
                           java.lang.Object cbrecv,
                           java.lang.Object data)
Connect a event to a callback method "func" in object "cbrecv".

Parameters:
name - The name of the event to map.
func - The name of the callback method.
cbrecv - The name of the object that is to recieve the event.
data - User defined data that will be passed to the callback.
Returns:
The handle id of the event that can be used in a call to removeEventHandler.

addEventHandler

public int addEventHandler(java.lang.String name,
                           java.lang.String func,
                           java.lang.Class cbrecv)
Connect a event to a static callback method "func" in Class "cbrecv".

Parameters:
name - The name of the event to map.
func - The name of the static callback method.
cbrecv - The name of the class that is to recieve the event.
Returns:
The handle id of the event that can be used in a call to removeEventHandler.

addEventHandler

public int addEventHandler(java.lang.String name,
                           java.lang.String func,
                           java.lang.Class cbrecv,
                           java.lang.Object data)
Connect a event to a static callback method "func" in Class "cbrecv".

Parameters:
name - The name of the event to map.
func - The name of the static callback method.
cbrecv - The name of the class that is to recieve the event.
data - User defined data that will be passed to the callback.
Returns:
The handle id of the event that can be used in a call to removeEventHandler.

removeEventHandler

public void removeEventHandler(int handler)
Disconnect a event from its' callback method.

Parameters:
handler - The handler id of the event. This is the value returned from a call to addEventHandler().

getData

public java.lang.Object getData(java.lang.String key)
Gets the Java Object associated with the given key from this object's object association table.

Parameters:
key - The association key.
Returns:
The Java Object associated with this key or null if the named association key does not exist.
See Also:
setData(String,Object)

setData

public void setData(java.lang.String key,
                    java.lang.Object data)
Sets an association from a String to a Java Object to be stored in the GTK object's table of associations. If the object already had an association with the given key, the old association will be destroyed.

Parameters:
key - The association key.
data - The Java Object to associate with the given key.
See Also:
getData(String)

getEventListenerClass

public java.lang.Class getEventListenerClass(java.lang.String signal)

getEventType

public EventType getEventType(java.lang.String signal)

setProperty

public void setProperty(java.lang.String name,
                        Value val)
Set the given property (name) with the given Value on this object. If there is a GTK property with this name, the GTK property will be set. Otherwise, a Java-side property will be set.

NOTE: Prefer using one of the convenience methods over using this method directly.

Parameters:
name - The name of the property to set.
val - The value to set in the property.

setIntProperty

public void setIntProperty(java.lang.String name,
                           int value)
Convenience method for setting int properties.

Parameters:
name - The name of the property to set.
value - The value to set in the property.
See Also:
setProperty( String, Value )

setStringProperty

public void setStringProperty(java.lang.String name,
                              java.lang.String value)
Convenience method for setting String properties.

Parameters:
name - The name of the property to set.
value - The value to set in the property.
See Also:
setProperty( String, Value )

setBooleanProperty

public void setBooleanProperty(java.lang.String name,
                               boolean value)
Convenience method for setting boolean properties.

Parameters:
name - The name of the property to set.
value - The value to set in the property.
See Also:
setProperty( String, Value )

setFloatProperty

public void setFloatProperty(java.lang.String name,
                             float value)
Convenience method for setting float properties.

Parameters:
name - The name of the property to set.
value - The value to set in the property.
See Also:
setProperty( String, Value )

setLongProperty

public void setLongProperty(java.lang.String name,
                            long value)
Convenience method for setting long properties.

Parameters:
name - The name of the property to set.
value - The value to set in the property.
See Also:
setProperty( String, Value )

setDoubleProperty

public void setDoubleProperty(java.lang.String name,
                              double value)
Convenience method for setting double properties.

Parameters:
name - The name of the property to set.
value - The value to set in the property.
See Also:
setProperty( String, Value )

setPixbufProperty

public void setPixbufProperty(java.lang.String name,
                              Pixbuf value)
Deprecated. As of libgtk-java 2.8.5, this method has been deprecated in favour of setJavaObjectProperty(String, Object). Future major version releases will have this method removed. Please use with caution.

Convenience method for setting Pixbuf properties.

Parameters:
name - The name of the property to set.
value - The value to set in the property.
See Also:
setProperty( String, Value )

setJavaObjectProperty

public void setJavaObjectProperty(java.lang.String name,
                                  java.lang.Object value)
Convenience method for setting Object properties.

Parameters:
name - The name of the property to set.
value - The value to set in the property.

getProperty

public Value getProperty(java.lang.String name)
Get the Value of the given property (name). If there is a GTK property with this name, the GTK property will be retrived. Otherwise, a Java-side property will be returned.

NOTE: Prefer using one of the convenience methods over using this method directly.

Parameters:
name - The name of the property to retrieve.
Returns:
The value of the given property.

getIntProperty

public int getIntProperty(java.lang.String name)
Convenience method for retrieving int properties.

Parameters:
name - The name of the property to retrieve.
Returns:
The value of the given property.

getStringProperty

public java.lang.String getStringProperty(java.lang.String name)
Convenience method for retrieving String properties.

Parameters:
name - The name of the property to retrieve.
Returns:
The value of the given property.

getBooleanProperty

public boolean getBooleanProperty(java.lang.String name)
Convenience method for retrieving boolean properties.

Parameters:
name - The name of the property to retrieve.
Returns:
The value of the given property.

getFloatProperty

public float getFloatProperty(java.lang.String name)
Convenience method for retrieving float properties.

Parameters:
name - The name of the property to retrieve.
Returns:
The value of the given property.

getLongProperty

public long getLongProperty(java.lang.String name)
Convenience method for retrieving long properties.

Parameters:
name - The name of the property to retrieve.
Returns:
The value of the given property.

getDoubleProperty

public double getDoubleProperty(java.lang.String name)
Convenience method for retrieving double properties.

Parameters:
name - The name of the property to retrieve.
Returns:
The value of the given property.

getPixbufProperty

public Pixbuf getPixbufProperty(java.lang.String name)
Deprecated. As of libgtk-java 2.8.5, this method has been deprecated in favour of getJavaObjectProperty(String). Future major version releases will have this method removed. Please use with caution.

Convenience method for retrieving Pixbuf properties.

Parameters:
name - The name of the property to retrieve.
Returns:
The value of the given property.

getJavaObjectProperty

public java.lang.Object getJavaObjectProperty(java.lang.String name)
Convenience method for retrieving Object properties.

Parameters:
name - The name of the property to retrieve.
Returns:
The value of the given property.

hasProperty

public boolean hasProperty(java.lang.String name)
Determines if this object supports the given named property. First the GTK properties are checked, then, if no property with this name is found, the Java-side properties are checked.

Parameters:
name - The property to verify.
Returns:
True if the given name is a property of this object, false otherwise.

addListener

public void addListener(PropertyNotificationListener listen)
Add a listener that will be activated when a property is updated updated ("notify" signal). The notify signal is emitted on an object when one of its properties has been changed. Note that getting this signal doesn't guarantee that the value of the property has actually changed, it may also be emitted when the setter for the property is called to reinstate the previous value.


removeListener

public void removeListener(PropertyNotificationListener listen)
Remove the given listener from those activated when a property is updated.


freezeNotify

public void freezeNotify()
Stops emission of "notify" signals on object. The signals are queued until thawNotify() is called.

This is necessary for accessors that modify multiple properties to prevent premature notification while the object is still being modified.


notify

public void notify(java.lang.String property_name)
Emits a "notify" signal for the given property. The property can be a GTK native property or a Java-side property. If no property exist by the given name, this method does nothing.

Parameters:
property_name - The name of a property installed on the class of this object.

thawNotify

public void thawNotify()
Reverts the effect of a previous call to freezeNotify. This causes all queued "notify" signals on object to be emitted.


getGObjectFromHandle

public static GObject getGObjectFromHandle(org.gnu.glib.Handle hndl)
Gets a GObject instance for the given Handle. If no Java object currently exists for the given Handle, this method will return null. You should then instantiate the required Java class using the class' handle-constructor. For example:
 // Get a Handle from somewhere (typically as a parameter to a method
 // used as a callback and invoked from the C JNI side).
 SomeGtkClass finalobj = null;
 GObject obj = GObject.getGObjectFromHandle(handle);
 if (obj == null) {
     finalobj = new SomeGtkClass(handle);
 } else {
     finalobj = (SomeGtkClass) obj;
 }
 
NOTE: This is for internal use only and should never need to be used in application code.


collect

public static final void collect()