Sophie

Sophie

distrib > Fedora > 15 > x86_64 > by-pkgid > 0d2c760c00774fa1d350bb3c66520f68 > files > 192

GtkAda-doc-2.14.1-4.fc15.noarch.rpm

<?xml version='1.0' encoding='utf-8' />
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html><head>
 <title>GtkAda: Glib.Types</title>
 <link rel='stylesheet' href='gtkada_rm.css' type='text/css'>
 <script src='gtkada_rm.js' type='text/javascript'></script>
</head><body>
<div id='objectName'>
 <span><a href='index.html'><img src='home.png' alt='Toc' title='Table of Contents'/></a> <a href='gallery.html'><img src='gallery.png' alt='Gallery' title='Widgets gallery'/></a>
 <a href='entities.html'><img src='entities.png' alt='Index' title='Global Index'/></a>
 <a href='tree.html'><img src='tree.png' alt='Tree' title='Widgets Inheritance Tree'/></a>
  </span>
Glib.Types
</div> <!--  objectName -->

<div id='leftSide'>
  <div id='navigation'>
   <h2>Navigation</h2>
   <ul>
     <li><a href='#Description' onclick='return switchPage("page1")'>Description</a></li>
     <li><a href='#Types' onclick='return switchPage("page1")'>Types</a></li>
     <li><a href='#Subprograms' onclick='return switchPage("page1")'>Subprograms</a>
       <ul>
        <li><a href='#Subprograms__General' onclick='return switchPage("page1")'>General</a></li>
        <li><a href='#Subprograms__Interfaces' onclick='return switchPage("page1")'>Interfaces</a></li>
       </ul>
   </li>
   </ul>
  </div> <!--  navigation -->

</div>  <!--  leftSide -->

<div id='documentation'>
  <ul id='notebook'>
   <li id='tab_page1' class='current'><a href='' onclick='return !switchPage("page1")'>Entities</a></li>
  </ul>  <!-- notebook --> 

  <div id='notebook_page1' class='notebookPage'>
  <a name='Description'></a>
  <div class='description'>
   <h2>Description</h2>
This package provides an interface to the type system in <a href='glib.html'>Glib</a>. These types
provide an object-oriented framework (through inheritance and interfaces),
as well as reference-counting, signals and properties on these types.
<p>
Most of the time, you DO NOT need to use this package, only when you are
working with the introspection capabilities of glib.
<p>
See the other glib packages for more subprograms to manipulate these types.
In particular, <a href='glib-properties.html'>Glib.Properties</a> describes the properties system, that
provide the base for dynamic introspection. See also <a href='glib.html'>Glib</a> itself, which
contains several general subprograms, and <a href='glib-object.html'>Glib.Object</a> that provides the
root object for any type hierarchy based on glib.
  </div> <!-- description -->

  <a name='Types'></a>
  <div id='types'>
   <h2>Types</h2>
   <ul>
     <li><a name='GType_Interface_'></a>
         <div class='profile'><b>type</b> GType_Interface <b>is</b> <b>private</b>;</div>
         <div class='comment'></div></li>
   </ul>
  </div> <!-- types -->

  <a name='Subprograms'> </a>
  <a name='Subprograms__General'> </a>
  <div id='subprograms'>
   <h2>Subprograms</h2>
   <ul>
     <li><a name='Class_Peek_1_'></a>
<div class='profile'><b>function</b> <span class='name'>Class_Peek</span> (T : GType) <b>return</b> <a href='glib.html'>Glib.GType_Class</a>;</div>
<a name='Class_Ref_2_'></a>
<div class='profile'><b>function</b> <span class='name'>Class_Ref</span>  (T : GType) <b>return</b> <a href='glib.html'>Glib.GType_Class</a>;</div>
<div class='comment'>Return the class structure encapsulated in <tt>T</tt>.
<a href='glib-types.html#Class_Ref_2_'>Class_Ref</a> will create the class on-demand if it doesn't exist yet, but
<a href='glib-types.html#Class_Peek_1_'>Class_Peek</a> might return null if the class hasn't been referenced before.
<a href='glib-types.html#Class_Ref_2_'>Class_Ref</a> also increments the reference counting for the returned value
</div></li>
     <li><a name='Class_Unref_3_'></a>
<div class='profile'><b>procedure</b> <span class='name'>Class_Unref</span> (T : GType);</div>
<div class='comment'>Decrement the reference counting on the associated class. When it
reaches 0, the class may be finalized by the type system.
</div></li>
     <li><a name='Depth_4_'></a>
<div class='profile'><b>function</b> <span class='name'>Depth</span> (T : GType) <b>return</b> Guint;</div>
<div class='comment'>Returns the length of the ancestry of the passed in type. This includes
the type itself, so that e.g. a fundamental type has depth 1.
</div></li>
     <li><a name='Is_A_5_'></a>
<div class='profile'><b>function</b> <span class='name'>Is_A</span> (T : GType; Is_A_Type : GType) <b>return</b> Boolean;</div>
<div class='comment'>If <tt>Is_A_Type</tt> is a derivable type, check whether type is a descendant of
<tt>Is_A_Type</tt>. If <tt>Is_A_Type</tt> is an interface, check whether type conforms to
it.
</div></li>
  <a name='Subprograms__Interfaces'></a>
  <h3>Interfaces</h3>
  <div class='description'><a href='glib-types.html#Interfaces_7_'>Interfaces</a> are similar, in concept, to those found in Ada 2005 or in
Java. They define a set of subprograms that any type implementing the
interface must also define. They are different from standard inheritance
since no implementation of these subprograms can be provided in the
interface itself.
</div>

     <li><a name='To_Object_6_'></a>
<div class='profile'><b>function</b> <span class='name'>To_Object</span>
  (Interf : GType_Interface) <b>return</b> <a href='glib-object.html'>Glib.Object.GObject</a>;</div>
<div class='comment'>Return the object that the interface represents. This is slightly
different from using Implements.To_Object, in the case when the object
wasn't created through Ada. In such a case, GtkAda needs to create an
Ada wrapper around the object, and will choose a different tagged type:
   - Implements.To_Object creates a tagged type of type Object_Type.
   - This function creates a GObject, which you cannot cast easily
     to some other tagged type afterward.
Both behave the same when the object was created from Ada.
</div></li>
     <li><a name='Interfaces_7_'></a>
<div class='profile'><b>function</b> <span class='name'>Interfaces</span> (T : GType) <b>return</b> GType_Array;</div>
<div class='comment'>Return the list of interfaces implemented by objects of a given type.
</div></li>
     <li><a name='Is_Interface_8_'></a>
<div class='profile'><b>function</b> <span class='name'>Is_Interface</span> (T : GType) <b>return</b> Boolean;</div>
<div class='comment'>Whether <tt>T</tt> represents an interface type description
</div></li>
     <li><a name='Default_Interface_Peek_9_'></a>
<div class='profile'><b>function</b> <span class='name'>Default_Interface_Peek</span>
  (T : GType) <b>return</b> <a href='glib-object.html'>Glib.Object.Interface_Vtable</a>;</div>
<a name='Default_Interface_Ref_10_'></a>
<div class='profile'><b>function</b> <span class='name'>Default_Interface_Ref</span>
  (T : GType) <b>return</b> <a href='glib-object.html'>Glib.Object.Interface_Vtable</a>;</div>
<div class='comment'>If the interface type <tt>T</tt> is currently in use, returns its default
interface vtable.
<a href='glib-types.html#Default_Interface_Ref_10_'>Default_Interface_Ref</a> will create the default vtable for the type if the
type is not currently in use. This is useful when you want to make sure
that signals and properties for an interface have been installed.
</div></li>
    </ul>
   </div> <!--  subprograms -->

  </div> <!--  notebook_page1 --> 
  <div id='notebook_page3' class='notebookPage'>
  </div> <!-- notebook_page3 -->

</div> <!-- documentation -->

<div id='rightSide'>
 <div id='Index'>
  <h2>Alphabetical Index</h2>
  <ul>
   <li><a href='#Class_Peek_1_' onclick='return switchPage("page1")'>Class_Peek</a></li>
   <li><a href='#Class_Ref_2_' onclick='return switchPage("page1")'>Class_Ref</a></li>
   <li><a href='#Class_Unref_3_' onclick='return switchPage("page1")'>Class_Unref</a></li>
   <li><a href='#Default_Interface_Peek_9_' onclick='return switchPage("page1")'>Default_Interface_Peek</a></li>
   <li><a href='#Default_Interface_Ref_10_' onclick='return switchPage("page1")'>Default_Interface_Ref</a></li>
   <li><a href='#Depth_4_' onclick='return switchPage("page1")'>Depth</a></li>
   <li><a href='#Interfaces_7_' onclick='return switchPage("page1")'>Interfaces</a></li>
   <li><a href='#Is_A_5_' onclick='return switchPage("page1")'>Is_A</a></li>
   <li><a href='#Is_Interface_8_' onclick='return switchPage("page1")'>Is_Interface</a></li>
   <li><a href='#To_Object_6_' onclick='return switchPage("page1")'>To_Object</a></li>
  </ul>
 </div> <!-- Index -->
</div> <!-- rightSide -->

   <script language='javascript'>switchPage('page1');
adjust_height()</script>
 </body>
</html>