Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 91213ddcfbe7f54821d42c2d9e091326 > files > 3057

gap-system-packages-4.4.12-5mdv2010.0.i586.rpm

<html><head><title>[xgap] 10.3 Where code has to be changed</title></head>
<body text="#000000" bgcolor="#ffffff">
[<a href = "C010S000.htm">Up</a>] [<a href ="C010S002.htm">Previous</a>] [<a href = "theindex.htm">Index</a>]
<h1>10.3 Where code has to be changed</h1><p>
<p>
All <font face="Gill Sans,Helvetica,Arial">GAP</font> objects corresponding to graphic sheets and graphic objects are
no longer records but component objects. This means that the programmer can 
no longer mess around in the data structures. If you want to add new
fields, then you have to use inheritance and define new categories. This
means also that the (internal) data structures of sheets has changed
massively. Programs that try to access record components of old XGAP
structures will no longer work!
<p>
The operation <code>InstallGSMethod</code> is no longer present. It is replaced by the 
``callback'' mechanism with the operations <code>InstallCallback</code>,
<code>RemoveCallback</code> and <code>Callback</code> (see <a href="C006S001.htm#SSEC1">GraphicSheet</a> for details). This
means, that mouse events are handled differently. This was changed
deliberately because there is a big difference: In XGAP4 you can install 
more than one function for one type of mouse event. All such callback
functions are called one after the other. There was only one graphic sheet
method for each event in XGAP3. So you can <strong>not</strong> just change the name of 
the operation to install the callback. You have to think about this
difference! 
<p>
See the section <a href="C006S004.htm">Operations for Graphic Objects</a> for an overview
which operations exist now for which graphic objects. The main difference
is the introduction of <code>Revive</code>, <code>ViewObj</code> and <code>WindowId</code> together with the 
concept of the <code>IsAlive</code> filter.
<p>
There was a bug in XGAP3 in the creation of menus: If an entry starts
with a minus sign, it will become a separating line instead of a real menu
entry. This disturbed the numbering of the menu entries, such that <code>Enable</code> 
and <code>Check</code> did not work on the correct entry. This bug is fixed in
XGAP4 so code which contained a workaround for this bug has to be
changed. <code>Enable</code> and <code>Check</code> behave now like expected and documented in
<a href="C007S001.htm#SSEC3">Enable</a> and <a href="C007S001.htm#SSEC2">Check</a>.
<p>
<p>
[<a href = "C010S000.htm">Up</a>] [<a href ="C010S002.htm">Previous</a>] [<a href = "theindex.htm">Index</a>]
<P>
<address>xgap manual<br>Mai 2003
</address></body></html>