/[eiffelstudio]/trunk/Delivery/newdocs/libraries/vision2/content/0-_revisions/index.html
ViewVC logotype

Diff of /trunk/Delivery/newdocs/libraries/vision2/content/0-_revisions/index.html

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 37647 by rogers, Tue May 13 00:07:43 2003 UTC revision 37648 by rogers, Mon Jun 9 17:47:52 2003 UTC
# Line 12  Line 12 
12          </head>          </head>
13          <body>          <body>
14                  <h1>Revisions and bug fixes</h1>                  <h1>Revisions and bug fixes</h1>
15                  <p>This document contains details of modifications and bug fixes to the vision2                  <p>This document contains details of modifications and bug fixes to the vision2
16                          library listed by the release version of EiffelStudio. All bug fixes and                          library listed by the release version of EiffelStudio. All bug fixes and
17                          modifications are relative to the previously released version.</p>                          modifications are relative to the previously released version.</p>
18                  <h2>Eiffel Studio 5.4</h2>                  <h2>Eiffel Studio 5.4</h2>
19                  <p><b>Interface modifications</b></p>                  <p><b>Interface modifications</b></p>
20                  <ul class="circle">                  <ul class="circle">
21                          <li>                          <li>
22                                  <b>EV_ITEM_PIXMAP_SCALER</b>                                  <b>EV_ITEM_PIXMAP_SCALER</b>
23                          - New class added which provides no new functionality, but is a clean                          - New class added which provides no new functionality, but is a clean
24                          abstraction of `pixmaps_width', `pixmaps_height' and `set_pixmaps_size' which                          abstraction of `pixmaps_width', `pixmaps_height' and `set_pixmaps_size' which
25                          were all defined independently in EV_TREE, EV_LIST, EV_MULTI_COLUMN_LIST and                          were all defined independently in EV_TREE, EV_LIST, EV_MULTI_COLUMN_LIST and
26                          EV_COMBO_BOX. Your code will not be affected by this change.                          EV_COMBO_BOX. Your code will not be affected by this change.
27                          <li>                          <li>
28                                  <b>EV_TOOL_BAR</b>                                  <b>EV_TOOL_BAR</b>
29                          - Added three new features `has_vertical_button_style',                          - Added three new features `has_vertical_button_style',
30                          `enable_vertical_button_style' and `disable_vertical_button_style'. The default                          `enable_vertical_button_style' and `disable_vertical_button_style'. The default
31                          style for buttons is vertical and was the only style previously available, in                          style for buttons is vertical and was the only style previously available, in
32                          which the `pixmap' is displayed above `text'. When vertical style is disabled,                          which the `pixmap' is displayed above `text'. When vertical style is disabled,
33                          the `pixmap' of a button will be displayed to the left of its `text'.                          the `pixmap' of a button will be displayed to the left of its `text'.
34                          <LI>                          <LI>
35                                  <B>EV_TREE</B>                                  <B>EV_TREE</B>
36                          - No longer inherits EV_TREE_NODE_CONTAINER which is now obsolete. Made                          - No longer inherits EV_TREE_NODE_CONTAINER which is now obsolete. Made
37                          `selected' obsolete, use selected_item /= Void instead.                          `selected' obsolete, use selected_item /= Void instead.
38                          <LI>                          <LI>
39                                  <B>EV_TREE_NODE</B>                                  <B>EV_TREE_NODE</B>
40                          - Now inherits EV_TREE_NODE_LIST instead of EV_TREE_NODE_CONTAINER. This                          - Now inherits EV_TREE_NODE_LIST instead of EV_TREE_NODE_CONTAINER. This
41                          provides more functionality at the level of the node, but does not change the                          provides more functionality at the level of the node, but does not change the
42                          features available in non deferred descendents, as they all previously                          features available in non deferred descendents, as they all previously
43                          inherited EV_TREE_NODE_LIST. Changed type of `parent' to EV_TREE_NODE_LIST from                          inherited EV_TREE_NODE_LIST. Changed type of `parent' to EV_TREE_NODE_LIST from
44                          EV_TREE_NODE_CONTAINER. Removed three obsolete features - `align_text_left',                          EV_TREE_NODE_CONTAINER. Removed three obsolete features - `align_text_left',
45                          align_text_center' and `align_text_right'.                          align_text_center' and `align_text_right'.
46                          <LI>                          <LI>
47                                  <B>EV_TREE_ITEM</B>                                  <B>EV_TREE_ITEM</B>
48                          - Strengthened `is_expandable' so that it checks `parent_tree' is not Void,                          - Strengthened `is_expandable' so that it checks `parent_tree' is not Void,
49                          this brings it into line with the preconditions of `expand'.                          this brings it into line with the preconditions of `expand'.
50                          <LI>                          <LI>
51                                  <B>EV_DYNAMIC_TREE_ITEM</B>                                  <B>EV_DYNAMIC_TREE_ITEM</B>
52                          - Strengthened `is_expandable' to check `parent_tree', in line with                          - Strengthened `is_expandable' to check `parent_tree', in line with
53                          preconditions of `expand'. Added "valid_operands" precondition to                          preconditions of `expand'. Added "valid_operands" precondition to
54                          `set_subtree_function' which ensures that you only pass a function with valid                          `set_subtree_function' which ensures that you only pass a function with valid
55                          operands.                          operands.
56                          <LI>                          <LI>
57                                  <B>EV_TREE_NODE_CONTAINER</B>                                  <B>EV_TREE_NODE_CONTAINER</B>
58                          - Now obsolete, you should use EV_TREE_NODE_LIST instead.                          - Now obsolete, you should use EV_TREE_NODE_LIST instead.
59                          <LI>                          <LI>
60                                  <B>EV_MULTI_COLUMN_LIST</B> - Added missing postconditions to                                  <B>EV_MULTI_COLUMN_LIST</B> - Added missing postconditions to
61                                  `align_text_left', `align_text_right', `align_text_center' and other                                  `align_text_left', `align_text_right', `align_text_center' and other
62                                  miscellaneous features that were missing relevent postconditions.</LI>                                  miscellaneous features that were missing relevent postconditions.</LI>
63                            <LI>
64                                    <B>EV_MENU</B> - Tightened preconditions of `show' and `show_at' to ensure that the menu is not parented.</LI>
65  <LI><B>EV_TEXT</B> Added `has_word_wrapping', `enable_word_wrapping' and `disable_word_wrapping'. These features allow you to switch between horizontal word wrapping, in which lines too long to be displayed will be wrapped, and no word wrapping, in which horizontal scroll bars will be displayed, allowing you to view the complete contents of each line. Previously EV_TEXT would always wrap lines, and the default beaviour is `has_word_wrapping' as it was before these changes.</LI>  <LI><B>EV_TEXT</B> Added `has_word_wrapping', `enable_word_wrapping' and `disable_word_wrapping'. These features allow you to switch between horizontal word wrapping, in which lines too long to be displayed will be wrapped, and no word wrapping, in which horizontal scroll bars will be displayed, allowing you to view the complete contents of each line. Previously EV_TEXT would always wrap lines, and the default beaviour is `has_word_wrapping' as it was before these changes.</LI>
66                  <LI><B>EV_TEXT_COMPONENT</B> - Added `has_selection' precondition to `selected_text' which requires that `has_selection' must be True for you to call `selected_text'.</LI>                  <LI><B>EV_TEXT_COMPONENT</B> - Added `has_selection' precondition to `selected_text' which requires that `has_selection' must be True for you to call `selected_text'.</LI>
67                  <LI><B>EV_FILE_DIALOG</B> - Added `valid_file_title' for validation of a file name excluding the path.</LI>                  <LI><B>EV_FILE_DIALOG</B> - Added `valid_file_title' for validation of a file name excluding the path.</LI>
# Line 67  Line 69 
69                  <P><b>Breaking changes</b></P>                  <P><b>Breaking changes</b></P>
70                  <UL>                  <UL>
71                          <LI>                          <LI>
72                                  <B>EV_TREE_NODE_CONTAINER</B> - This class is no longer used in EiffelVision2,                                  <B>EV_TREE_NODE_CONTAINER</B> - This class is no longer used in EiffelVision2,
73                                  and if you were relying on it, you should use EV_TREE_NODE_LIST instead. The                                  and if you were relying on it, you should use EV_TREE_NODE_LIST instead. The
74                                  type of `parent' for tree nodes has been changed from EV_TREE_NODE_CONTAINER to                                  type of `parent' for tree nodes has been changed from EV_TREE_NODE_CONTAINER to
75                                  EV_TREE_NODE_LIST, so if you retrieve the `parent' and then attempt to iterate,                                  EV_TREE_NODE_LIST, so if you retrieve the `parent' and then attempt to iterate,
76                                  you may have declared an instance of EV_TREE_NODE_CONTAINER. In this situation,                                  you may have declared an instance of EV_TREE_NODE_CONTAINER. In this situation,
77                                  you should simply change the definition to EV_TREE_NODE_LIST instead.                                  you should simply change the definition to EV_TREE_NODE_LIST instead.
78                          </LI>                          </LI>
79                  </UL>                  </UL>
# Line 87  Line 89 
89                                  <ul>                                  <ul>
90                                          <LI>                                          <LI>
91                                                  <B>EV_TEXT_COMPONENT</B>                                                  <B>EV_TEXT_COMPONENT</B>
92                                          - fixed bug in `select_region' which would fail if `start_pos' was greater than                                          - fixed bug in `select_region' which would fail if `start_pos' was greater than
93                                          `end_pos'.                                          `end_pos'.
94                                          <LI>                                          <LI>
95                                                  <B>EV_PIXMAP</B>                                                  <B>EV_PIXMAP</B>
96                                          - `expose_actions' previously had a feature contained related to the                                          - `expose_actions' previously had a feature contained related to the
97                                          implementation, and calling `wipe_out' on `expose_actions' would stop the image                                          implementation, and calling `wipe_out' on `expose_actions' would stop the image
98                                          from being redrawn. There are now no side effects related to `expose_actions'.                                          from being redrawn. There are now no side effects related to `expose_actions'.
99                                          <LI>                                          <LI>
100                                                  <B>EV_LIST</B> - Calling `disable_sensitive' when already non sensitive would                                                  <B>EV_LIST</B> - Calling `disable_sensitive' when already non sensitive would
101                                                  loose the original selection, and calling `enable_sensitive' when already                                                  loose the original selection, and calling `enable_sensitive' when already
102                                                  sensitive would alter the selected item. The features will no longer alter the                                                  sensitive would alter the selected item. The features will no longer alter the
103                                                  selection if called twice.</LI>                                                  selection if called twice.</LI>
104                                          <LI><B>EV_CELL</B> - If you removed the item, the minimum size was not updated to reflect this, thereby retaining the minimum size as constrained by the minimum size of the now removed item.</li>                                          <LI><B>EV_CELL</B> - If you removed the item, the minimum size was not updated to reflect this, thereby retaining the minimum size as constrained by the minimum size of the now removed item.</li>
105                                          <LI><B>EV_TREE_ITEM</B>/<B>EV_TREE</B> - A call to `disable_select' on an EV_TREE_ITEM will now actually remove the selection from the tree. Previously, the style of the item was changed, but a call to `selected_item' on the tree would still return the item.</LI>                                          <LI><B>EV_TREE_ITEM</B>/<B>EV_TREE</B> - A call to `disable_select' on an EV_TREE_ITEM will now actually remove the selection from the tree. Previously, the style of the item was changed, but a call to `selected_item' on the tree would still return the item.</LI>
# Line 108  Line 110 
110                                  <b>Gtk</b></li>                                  <b>Gtk</b></li>
111                          <UL>                          <UL>
112                                  <LI>                                  <LI>
113                                          <STRONG>EV_TREE_NODE</STRONG> - Now expansion state remains the same when                                          <STRONG>EV_TREE_NODE</STRONG> - Now expansion state remains the same when
114                                          'set_pixmap' is called.</LI></UL>                                          'set_pixmap' is called.</LI></UL>
115                  </UL>                  </UL>
116                  <h2>Eiffel Studio 5.3</h2>                  <h2>Eiffel Studio 5.3</h2>
# Line 116  Line 118 
118                  <ul class="circle">                  <ul class="circle">
119                          <li>                          <li>
120                                  <B>EV_TITLED_WINDOW_ACTION_SEQUENCES</B>                                  <B>EV_TITLED_WINDOW_ACTION_SEQUENCES</B>
121                          added which is inherited only by EV_TITLED_WINDOW and provides three new action                          added which is inherited only by EV_TITLED_WINDOW and provides three new action
122                          sequences :- `minimize_actions', `maximize_actions' and `restore_actions'.                          sequences :- `minimize_actions', `maximize_actions' and `restore_actions'.
123                          <li>                          <li>
124                                  <b>EV_TITLED_WINDOW</b>                                  <b>EV_TITLED_WINDOW</b>
# Line 131  Line 133 
133                          now inherits EV_FONTABLE, allowing you to modify the font displayed.                          now inherits EV_FONTABLE, allowing you to modify the font displayed.
134                          <li>                          <li>
135                                  <B>EV_DYNAMIC_LIST_ITEM</B>                                  <B>EV_DYNAMIC_LIST_ITEM</B>
136                          - Corrected `off' which was using the version inherited from EV_TREE_NODE when                          - Corrected `off' which was using the version inherited from EV_TREE_NODE when
137                          it should have been using the version from EV_TREE_NODE_LIST instead.                          it should have been using the version from EV_TREE_NODE_LIST instead.
138                          <li>                          <li>
139                                  <B>EV_RECTANGLE</B>                                  <B>EV_RECTANGLE</B>
140                          - Added precondition to `intersects' which stops a Void rectangle being passed                          - Added precondition to `intersects' which stops a Void rectangle being passed
141                          as an argument.                          as an argument.
142                          <li>                          <li>
143                                  <B>EV_TOOL_BAR_SEPARATOR</B>                                  <B>EV_TOOL_BAR_SEPARATOR</B>
144                          - Now export many inherited features to {ANY} instead of {NONE}, including                          - Now export many inherited features to {ANY} instead of {NONE}, including
145                          `parent'.                          `parent'.
146                          <li>                          <li>
147                                  <B>EV_ENVIRONMENT</B>                                  <B>EV_ENVIRONMENT</B>
148                          - Added `supported_image_formats' which returns a LINEAR [STRING] containing                          - Added `supported_image_formats' which returns a LINEAR [STRING] containing
149                          all valid formats by their three letter extension.                          all valid formats by their three letter extension.
150                          <li>                          <li>
151                                  <B>EV_CHECKABLE_LIST</B>                                  <B>EV_CHECKABLE_LIST</B>
152                          - New class added which behaves as an EV_LIST, except that for each                          - New class added which behaves as an EV_LIST, except that for each
153                          EV_LIST_ITEM contained, an associated check box is displayed.                          EV_LIST_ITEM contained, an associated check box is displayed.
154                          <li>                          <li>
155                                  <B>EV_MESSAGE_DIALOG</B>                                  <B>EV_MESSAGE_DIALOG</B>
156                          - No longer deferred, and has two creation procedures `default_create' and                          - No longer deferred, and has two creation procedures `default_create' and
157                          `make_with_text'.                          `make_with_text'.
158                          <li>                          <li>
159                                  <B>EV_STANDARD_DIALOG</B>                                  <B>EV_STANDARD_DIALOG</B>
160                          - All descendents now have `make_with_text' as a creation procedure'.                          - All descendents now have `make_with_text' as a creation procedure'.
161                          <li>                          <li>
162                                  <B>EV_TABLE</B> - Now inherits CHAIN instead of ARRAY. This is a breaking                                  <B>EV_TABLE</B> - Now inherits CHAIN instead of ARRAY. This is a breaking
163                                  change, and may require some modification to your code. The inheritence from                                  change, and may require some modification to your code. The inheritence from
164                                  ARRAY was seriously flawed. For example, if you were to call `extend' on an                                  ARRAY was seriously flawed. For example, if you were to call `extend' on an
165                                  EV_CONTAINER object that was currently referencing an EV_TABLE, then this would                                  EV_CONTAINER object that was currently referencing an EV_TABLE, then this would
166                                  fail. Now that we inherit CHAIN, this problem, among others of a similar nature                                  fail. Now that we inherit CHAIN, this problem, among others of a similar nature
167                                  are fixed. Another advantage of inheriting CHAIN, is that the table may now be                                  are fixed. Another advantage of inheriting CHAIN, is that the table may now be
168                                  iterated which allows for greater flexibility.<br>                                  iterated which allows for greater flexibility.<br>
169                                  <br>                                  <br>
170                                  The following list details some of the breaking changes, and how to fix them:                                  The following list details some of the breaking changes, and how to fix them:
171                                  <ul>                                  <ul>
172                                          <li>                                          <li>
173                                                  <B>item</B>                                                  <B>item</B>
174                                          - If you were using `item', you should change this to `item_at_position'. A                                          - If you were using `item', you should change this to `item_at_position'. A
175                                          call to `item' will now return the current item.                                          call to `item' will now return the current item.
176                                          <li>                                          <li>
177                                                  <B>put</B>                                                  <B>put</B>
# Line 179  Line 181 
181                                          - These are now both exported, as before, they were exported to {NONE}.                                          - These are now both exported, as before, they were exported to {NONE}.
182                                          <li>                                          <li>
183                                                  features inherited from <B>ARRAY</B>                                                  features inherited from <B>ARRAY</B>
184                                          - These are no longer available but you may use the feature `to_array', which                                          - These are no longer available but you may use the feature `to_array', which
185                                          returns the contents of the table represented as an ARRAY [EV_WIDGET]. This                                          returns the contents of the table represented as an ARRAY [EV_WIDGET]. This
186                                          feature is marked as obsolete, as it is temporary, to simplify the transition                                          feature is marked as obsolete, as it is temporary, to simplify the transition
187                                          to the new inheritence structure of EV_TABLE.                                          to the new inheritence structure of EV_TABLE.
188                                          <li>                                          <li>
189                                                  <B>count</B>                                                  <B>count</B>
190                                          - The previous version of `count' was the one from ARRAY, which returned the                                          - The previous version of `count' was the one from ARRAY, which returned the
191                                          number of available (not empty) cells in the table. We now use the version of                                          number of available (not empty) cells in the table. We now use the version of
192                                          `count' inherited from EV_CONTAINER which returns the number of widgets                                          `count' inherited from EV_CONTAINER which returns the number of widgets
193                                          currently contained. Previously, the feature `widget_count' was used to return                                          currently contained. Previously, the feature `widget_count' was used to return
194                                          the number of items, but this feature has now been made obsolete. Therefore, if                                          the number of items, but this feature has now been made obsolete. Therefore, if
195                                          you were previously using `count', replace this with `rows' * `columns', and if                                          you were previously using `count', replace this with `rows' * `columns', and if
196                                          you were using `widget_count', replace this with a call to `count'.                                          you were using `widget_count', replace this with a call to `count'.
197                                          <li>                                          <li>
198                                                  <B>item_list</B> - This is now obsolete. You may use `linear_representation' to                                                  <B>item_list</B> - This is now obsolete. You may use `linear_representation' to
199                                                  retrieve the contents of the table, or simply traverse the table.</li>                                                  retrieve the contents of the table, or simply traverse the table.</li>
200                                  </ul>                                  </ul>
201                          <li>                          <li>
# Line 204  Line 206 
206                          - No longer inherits DOUBLE_MATH.                          - No longer inherits DOUBLE_MATH.
207                          <li>                          <li>
208                                  <B>EV_TEXT</B>                                  <B>EV_TEXT</B>
209                          - `line_count' now returns the number of lines actually displayed, and not just                          - `line_count' now returns the number of lines actually displayed, and not just
210                          the newline characters, as an EV_TEXT will wrap the text when necessary. The                          the newline characters, as an EV_TEXT will wrap the text when necessary. The
211                          postcondition of `linecount' has been updated to reflect this change.                          postcondition of `linecount' has been updated to reflect this change.
212                          <li>                          <li>
213                                  <B>EV_FILE_DIALOG</B> Added "valid_file_name" precondition to `set_file_name'                                  <B>EV_FILE_DIALOG</B> Added "valid_file_name" precondition to `set_file_name'
214                                  and a new feature `valid_file_name' which checks that a file name is valid on                                  and a new feature `valid_file_name' which checks that a file name is valid on
215                                  the current platform.</li>                                  the current platform.</li>
216                  </ul>                  </ul>
217                  <p><b>Bug fixes</b></p>                  <p><b>Bug fixes</b></p>
# Line 224  Line 226 
226                                                  <B>EV_FIGURE_RECTANGLE</B>                                                  <B>EV_FIGURE_RECTANGLE</B>
227                                                  <ul class="square">                                                  <ul class="square">
228                                                          <li>                                                          <li>
229                                                          Corrected `bounding_box' which was previously computed incorrectly when the                                                          Corrected `bounding_box' which was previously computed incorrectly when the
230                                                          rectangle was rotated.                                                          rectangle was rotated.
231                                                          <li>                                                          <li>
232                                                                  Fixed `width' and `height' which were always returning one less pixel than they                                                                  Fixed `width' and `height' which were always returning one less pixel than they
233                                                                  should have.</li>                                                                  should have.</li>
234                                                  </ul>                                                  </ul>
235                                          </li>                                          </li>
# Line 237  Line 239 
239                                  <ul>                                  <ul>
240                                          <li>                                          <li>
241                                                  <b>EV_PIXMAP</b>                                                  <b>EV_PIXMAP</b>
242                                          - Setting a tile with `set_tile' followed by a call to a fill routine would                                          - Setting a tile with `set_tile' followed by a call to a fill routine would
243                                          crash the implementation.                                          crash the implementation.
244                                          <li>                                          <li>
245                                                  <b>EV_COMBO_BOX</b>                                                  <b>EV_COMBO_BOX</b>
# Line 253  Line 255 
255                                                          <li>                                                          <li>
256                                                          Implemented pick and drop.                                                          Implemented pick and drop.
257                                                          <li>                                                          <li>
258                                                          If not `is_editable' and a `background_color' had been set, it was only used on                                                          If not `is_editable' and a `background_color' had been set, it was only used on
259                                                          lines containing text. The `background_color' is now correctly displayed                                                          lines containing text. The `background_color' is now correctly displayed
260                                                          throughout the whole control when not `is_editable'.                                                          throughout the whole control when not `is_editable'.
261                                                          <li>                                                          <li>
262                                                          Fixed `select_region' which was selecting an incorrect region starting on any                                                          Fixed `select_region' which was selecting an incorrect region starting on any
263                                                          line except the first, when the `text' spanned multiple lines.                                                          line except the first, when the `text' spanned multiple lines.
264                                                          <li>                                                          <li>
265                                                          Fixed `selection_start' and `selection_end' which were incorrect when the                                                          Fixed `selection_start' and `selection_end' which were incorrect when the
266                                                          selection was not completely contained on the first line.                                                          selection was not completely contained on the first line.
267                                                          <li>                                                          <li>
268                                                          Fixed `first_position_from_line_number' and `last_position_from_line_number'                                                          Fixed `first_position_from_line_number' and `last_position_from_line_number'
269                                                          which were returning incorrect values when the text was wrapped.                                                          which were returning incorrect values when the text was wrapped.
270                                                          <li>                                                          <li>
271                                                          Fixed `caret_position' and `set_caret_position' which were incorrect when the                                                          Fixed `caret_position' and `set_caret_position' which were incorrect when the
272                                                          text spanned multiple lines, and the caret was not on the first line.                                                          text spanned multiple lines, and the caret was not on the first line.
273                                                          <li>                                                          <li>
274                                                          `line_count' now returns the number of lines actually displayed, and not simply                                                          `line_count' now returns the number of lines actually displayed, and not simply
275                                                          the number of newline characters. To query the number of new line characters do                                                          the number of newline characters. To query the number of new line characters do
276                                                          :- text.occurrences ('%N')                                                          :- text.occurrences ('%N')
277                                                          <li>                                                          <li>
278                                                                  Fixed bug in `search' which was returning -1 instead of 0 when the text was not                                                                  Fixed bug in `search' which was returning -1 instead of 0 when the text was not
279                                                                  found.</li>                                                                  found.</li>
280                                                  </ul>                                                  </ul>
281                                          <li>                                          <li>
282                                                  <b>EV_DRAWABLE</b>                                                  <b>EV_DRAWABLE</b>
283                                          - Fixed bug when you performed the following: drew a filled shape, called                                          - Fixed bug when you performed the following: drew a filled shape, called
284                                          `set_tile' and then drew another filled shape. The tile would not be used on                                          `set_tile' and then drew another filled shape. The tile would not be used on
285                                          the second fill.                                          the second fill.
286                                          <li>                                          <li>
287                                                  <b>EV_COLOR_DIALOG</b>                                                  <b>EV_COLOR_DIALOG</b>
288                                          - Querying `color' after a user had cancelled the dialog would previously crash                                          - Querying `color' after a user had cancelled the dialog would previously crash
289                                          a system, if `set_color' had never been called.                                          a system, if `set_color' had never been called.
290                                          <li>                                          <li>
291                                                  <b>EV_COLOR</b>                                                  <b>EV_COLOR</b>
292                                          - Fixed `set_rgb_with_24_bit' which would fail when called.                                          - Fixed `set_rgb_with_24_bit' which would fail when called.
293                                          <li>                                          <li>
294                                                  <b>EV_BUTTON, EV_TOGGLE_BUTTON</b>                                                  <b>EV_BUTTON, EV_TOGGLE_BUTTON</b>
295                                          - The buttons now correctly display a text, pixmap and background color                                          - The buttons now correctly display a text, pixmap and background color
296                                          simultaneously. Previously, the background color was never displayed, and                                          simultaneously. Previously, the background color was never displayed, and
297                                          either the pixmap or text would be displayed, not both.                                          either the pixmap or text would be displayed, not both.
298                                          <li>                                          <li>
299                                                  <b>EV_PRINT_DIALOG</b>                                                  <b>EV_PRINT_DIALOG</b>
300                                          - Fixed `set_from_page' and `set_to_page' which were previously not                                          - Fixed `set_from_page' and `set_to_page' which were previously not
301                                          implemented.                                          implemented.
302                                          <li>                                          <li>
303                                                  <b>EV_LIST</b><ul>                                                  <b>EV_LIST</b><ul>
304                                                          <li>                                                          <li>
305                                                          Fixed a graphical glitch when using `wipe_out' when items were contained that                                                          Fixed a graphical glitch when using `wipe_out' when items were contained that
306                                                          required the horizontal scroll bar to be visible. The scroll bar was not                                                          required the horizontal scroll bar to be visible. The scroll bar was not
307                                                          hidden, even though there were no longer any items in the list.                                                          hidden, even though there were no longer any items in the list.
308                                                          <li>                                                          <li>
309                                                                  Changing the selection behaviour between multiple and single selection would                                                                  Changing the selection behaviour between multiple and single selection would
310                                                                  cause the scroll bars to become hidden, even if they were necessary. Changing                                                                  cause the scroll bars to become hidden, even if they were necessary. Changing
311                                                                  this status will no longer hide the scroll bars if they are required.</li>                                                                  this status will no longer hide the scroll bars if they are required.</li>
312                                                  </ul>                                                  </ul>
313                                          <li>                                          <li>
314                                                  <b>EV_TOOL_BAR</b><ul>                                                  <b>EV_TOOL_BAR</b><ul>
315                                                          <li>                                                          <li>
316                                                          Items that were disabled would sometimes become enabled when other properties                                                          Items that were disabled would sometimes become enabled when other properties
317                                                          of the item were set. For example, performing                                                          of the item were set. For example, performing
318                                                          "my_tool_bar_button.disable_sensitive" followed by "my_tool_bar_button.set_text                                                          "my_tool_bar_button.disable_sensitive" followed by "my_tool_bar_button.set_text
319                                                          ("Disabled")" while the button was parented, would result in a sensitive tool                                                          ("Disabled")" while the button was parented, would result in a sensitive tool
320                                                          bar button. This is now fixed.                                                          bar button. This is now fixed.
321                                                          <li>                                                          <li>
322                                                                  If you changed the `text' of a tool bar toggle button during the firing of the                                                                  If you changed the `text' of a tool bar toggle button during the firing of the
323                                                                  `select_actions' of the toggle button, the button would become unchecked as a                                                                  `select_actions' of the toggle button, the button would become unchecked as a
324                                                                  result. This is now fixed, and changing the text will not stop the button from                                                                  result. This is now fixed, and changing the text will not stop the button from
325                                                                  becoming selected.</li></ul>                                                                  becoming selected.</li></ul>
326                                          <li>                                          <li>
327                                                  <b>EV_MULTI_COLUMN_LIST</b>                                                  <b>EV_MULTI_COLUMN_LIST</b>
328                                          - Changing the selection behaviour between multiple and single selection would                                          - Changing the selection behaviour between multiple and single selection would
329                                          cause the scroll bars to become hidden, even if they were necessary. Changing                                          cause the scroll bars to become hidden, even if they were necessary. Changing
330                                          this status will no longer hide the scroll bars if they are required.                                          this status will no longer hide the scroll bars if they are required.
331                                          <li>                                          <li>
332                                                  <b>EV_DYNAMIC_TREE_ITEM</b>                                                  <b>EV_DYNAMIC_TREE_ITEM</b>
333                                          - Calling `set_tooltip' failed and has now been fixed.                                          - Calling `set_tooltip' failed and has now been fixed.
334                                          <li>                                          <li>
335                                                  <b>EV_TIMEOUT</b>                                                  <b>EV_TIMEOUT</b>
336                                          - Calling `destroy' more than once on a timeout, caused the implementation to                                          - Calling `destroy' more than once on a timeout, caused the implementation to
337                                          crash, and has now been fixed.</B>                                          crash, and has now been fixed.</B>
338                                          <li>                                          <li>
339                                                  <b>EV_TOOLTIPABLE</b> - Tooltips on primitives were not supporting multiple                                                  <b>EV_TOOLTIPABLE</b> - Tooltips on primitives were not supporting multiple
340                                                  lines and this has now been fixed. Use %N for a line break.</li>                                                  lines and this has now been fixed. Use %N for a line break.</li>
341                                  </ul>                                  </ul>
342                          <LI>                          <LI>
# Line 358  Line 360 
360                                          - Cancelling via Enter key is now handled correctly.                                          - Cancelling via Enter key is now handled correctly.
361                                          <LI>                                          <LI>
362                                                  <STRONG>EV_LIST</STRONG>                                                  <STRONG>EV_LIST</STRONG>
363                                          - Fixed selection of selected item when changing from multiple selection to                                          - Fixed selection of selected item when changing from multiple selection to
364                                          single selection.                                          single selection.
365                                          <LI>                                          <LI>
366                                                  <STRONG>EV_MULTI_COLUMN_LIST</STRONG>                                                  <STRONG>EV_MULTI_COLUMN_LIST</STRONG>
367                                                  <UL>                                                  <UL>
368                                                          <LI>                                                          <LI>
369                                                          Row height now incorporates spacing pixel to match the implementation of                                                          Row height now incorporates spacing pixel to match the implementation of
370                                                          Windows.                                                          Windows.
371                                                          <LI>                                                          <LI>
372                                                                  Default row height is now slightly larger to be more aesthetically pleasing                                                                  Default row height is now slightly larger to be more aesthetically pleasing
373                                                                  with smaller fonts sizes.</LI></UL>                                                                  with smaller fonts sizes.</LI></UL>
374                                          <LI>                                          <LI>
375                                                  <STRONG>EV_CONTAINER</STRONG>                                                  <STRONG>EV_CONTAINER</STRONG>
# Line 378  Line 380 
380                                                                  Radio group unmerging is now handled correctly.</LI></UL>                                                                  Radio group unmerging is now handled correctly.</LI></UL>
381                                          <LI>                                          <LI>
382                                                  <STRONG>EV_TEXT_FIELD </STRONG>                                                  <STRONG>EV_TEXT_FIELD </STRONG>
383                                          - Now vertical alignment is identical to that on Windows, including that for                                          - Now vertical alignment is identical to that on Windows, including that for
384                                          text field descendants.                                          text field descendants.
385                                          <LI>                                          <LI>
386                                                  <STRONG>EV_RANGE </STRONG>                                                  <STRONG>EV_RANGE </STRONG>
387                                          - Now motions events are passing consistent pointer values instead of sometimes                                          - Now motions events are passing consistent pointer values instead of sometimes
388                                          skewed ones.                                          skewed ones.
389                                          <LI>                                          <LI>
390                                                  <STRONG>EV_DRAWING_AREA</STRONG>                                                  <STRONG>EV_DRAWING_AREA</STRONG>
# Line 393  Line 395 
395                                                          <LI>                                                          <LI>
396                                                          `scroll_to_line' is now implemented.                                                          `scroll_to_line' is now implemented.
397                                                          <LI>                                                          <LI>
398                                                                  `line_count' and `current_line_number' now handle lines in text widget and not                                                                  `line_count' and `current_line_number' now handle lines in text widget and not
399                                                                  the text itself.</LI></UL>                                                                  the text itself.</LI></UL>
400                                          <LI>                                          <LI>
401                                                  <STRONG>EV_FIXED</STRONG>                                                  <STRONG>EV_FIXED</STRONG>
# Line 405  Line 407 
407                                                  <STRONG>EV_MENU_SEPARATOR&nbsp; </STRONG>                                                  <STRONG>EV_MENU_SEPARATOR&nbsp; </STRONG>
408                                          - Menu Separators are now more prominent.                                          - Menu Separators are now more prominent.
409                                          <LI>                                          <LI>
410                                                  <STRONG>EV_TOOLBAR_SEPARATOR - </STRONG>Toolbar Separators are now more                                                  <STRONG>EV_TOOLBAR_SEPARATOR - </STRONG>Toolbar Separators are now more
411                                                  prominent.</LI></UL>                                                  prominent.</LI></UL>
412                          </LI>                          </LI>
413                  </UL>                  </UL>
# Line 416  Line 418 
418                  <ul class="circle">                  <ul class="circle">
419                          <li>                          <li>
420                                  <b>EV_TEXTABLE</b>                                  <b>EV_TEXTABLE</b>
421                          - `align_text_left', `align_text_right' and `align_text_center' have been                          - `align_text_left', `align_text_right' and `align_text_center' have been
422                          extracted into a new class, EV_TEXT_ALIGNABLE which inherits EV_TEXTABLE. All                          extracted into a new class, EV_TEXT_ALIGNABLE which inherits EV_TEXTABLE. All
423                          previous descendents of EV_TEXTABLE now inherit EV_TEXT_ALIGNABLE, except                          previous descendents of EV_TEXTABLE now inherit EV_TEXT_ALIGNABLE, except
424                          EV_TREE_NODE, EV_MENU_ITEM, EV_LIST_ITEM and EV_TOOL_BAR_BUTTON                          EV_TREE_NODE, EV_MENU_ITEM, EV_LIST_ITEM and EV_TOOL_BAR_BUTTON
425                          <li>                          <li>
426                                  <b>EV_TEXT_COMPONENT</b>                                  <b>EV_TEXT_COMPONENT</b>
# Line 428  Line 430 
430                          - New class added to support EV_TEXT_ALIGNABLE.                          - New class added to support EV_TEXT_ALIGNABLE.
431                          <li>                          <li>
432                                  <b>EV_MENU_ITEM_LIST</b>                                  <b>EV_MENU_ITEM_LIST</b>
433                          - `parent' is now of type EV_ANY, instead of EV_MENU_ITEM_LIST as it did not                          - `parent' is now of type EV_ANY, instead of EV_MENU_ITEM_LIST as it did not
434                          hold for EV_MENU_BAR. The renaming of `parent' to `old_parent' in EV_MENU_BAR                          hold for EV_MENU_BAR. The renaming of `parent' to `old_parent' in EV_MENU_BAR
435                          has now been removed.                          has now been removed.
436                          <li>                          <li>
437                                  <b>EV_VIEWPORT</b>                                  <b>EV_VIEWPORT</b>
# Line 440  Line 442 
442                                          <li>                                          <li>
443                                          redefined `prunable' to `True' and implemented `prune'.                                          redefined `prunable' to `True' and implemented `prune'.
444                                          <li>                                          <li>
445                                                  Added the following features - `set_item_span', `set_item_position',                                                  Added the following features - `set_item_span', `set_item_position',
446                                                  `set_item_span_and_position', `area_clear_excluding_widget', `item_row_span',                                                  `set_item_span_and_position', `area_clear_excluding_widget', `item_row_span',
447                                                  `item_column_span', `item_row_position' and `item_column_position'.</li>                                                  `item_column_span', `item_row_position' and `item_column_position'.</li>
448                                  </ul>                                  </ul>
449                          <li>                          <li>
450                                  <b>EV_WIDGET</b>                                  <b>EV_WIDGET</b>
451                          - Changed type of `focus_in_actions' and `focus_out_actions' from                          - Changed type of `focus_in_actions' and `focus_out_actions' from
452                          EV_FOCUS_ACTION_SEQUENCE to EV_NOTIFY_ACTION_SEQUENCE. `is_parent_recursive' is                          EV_FOCUS_ACTION_SEQUENCE to EV_NOTIFY_ACTION_SEQUENCE. `is_parent_recursive' is
453                          no longer available. It has been moved to EV_CONTAINER. This was necessary to                          no longer available. It has been moved to EV_CONTAINER. This was necessary to
454                          fix a catcall encountered using vision2 under .NET. The problem manifested with                          fix a catcall encountered using vision2 under .NET. The problem manifested with
455                          widgets that held items.                          widgets that held items.
456                          <li>                          <li>
457                                  <b>EV_FIGURE</b>                                  <b>EV_FIGURE</b>
# Line 459  Line 461 
461                          - `set_font' now sets a copy of the font internally.                          - `set_font' now sets a copy of the font internally.
462                          <LI>                          <LI>
463                                  <b>EV_TREE</b>                                  <b>EV_TREE</b>
464                          - `ensure_item_visible' and `has_recursively' now take an EV_TREE_NODE as                          - `ensure_item_visible' and `has_recursively' now take an EV_TREE_NODE as
465                          arguments, instead of an EV_TREE_ITEM.                          arguments, instead of an EV_TREE_ITEM.
466                          <li>                          <li>
467                                  <b>EV_TEXT</b>                                  <b>EV_TEXT</b>
468                          - `put_new_line' is now obsolete. Use `set_text ("%N") instead."                          - `put_new_line' is now obsolete. Use `set_text ("%N") instead."
469                          <li>                          <li>
470                                  <b>EV_APPLICATION_ACTION_SEQUENCES</b>                                  <b>EV_APPLICATION_ACTION_SEQUENCES</b>
471                          - Added `cancel_actions', fired when a pick and drop is cancelled, and                          - Added `cancel_actions', fired when a pick and drop is cancelled, and
472                          `pnd_motion_actions' fired while the pointer moves during a pick and drop.                          `pnd_motion_actions' fired while the pointer moves during a pick and drop.
473                          <li>                          <li>
474                                  <b>EV_TREE_NODE_LIST</b>                                  <b>EV_TREE_NODE_LIST</b>
475                                  <ul class="square">                                  <ul class="square">
476                                          <li>                                          <li>
477                                          `find_item_recursively_by_data', `has_recursively' and `recursive_do_all' are                                          `find_item_recursively_by_data', `has_recursively' and `recursive_do_all' are
478                                          now implemented in this class, instead of both EV_TREE and EV_TREE_NODE which                                          now implemented in this class, instead of both EV_TREE and EV_TREE_NODE which
479                                          are descendents.                                          are descendents.
480                                          <li>                                          <li>
481                                                  Added `retrive_items_recursively_by_data' and                                                  Added `retrive_items_recursively_by_data' and
482                                                  `retrieve_item_recursively_by_data' which allow you to specify a comparison                                                  `retrieve_item_recursively_by_data' which allow you to specify a comparison
483                                                  criterion, and due to this addition, `find_item_recursively_by_data' has now                                                  criterion, and due to this addition, `find_item_recursively_by_data' has now
484                                                  been made obsolete.</li>                                                  been made obsolete.</li>
485                                  </ul>                                  </ul>
486                          <li>                          <li>
# Line 486  Line 488 
488                          - Added `retrieve_item_by_data' and `retrieve_items_by_data'.                          - Added `retrieve_item_by_data' and `retrieve_items_by_data'.
489                          <li>                          <li>
490                                  <b>EV_ITEM_LIST</b>                                  <b>EV_ITEM_LIST</b>
491                          - Made `item_by_data' obsolete, as you should now use `retrieve_item_by_data'                          - Made `item_by_data' obsolete, as you should now use `retrieve_item_by_data'
492                          added in EV_DYNAMIC_LIST.                          added in EV_DYNAMIC_LIST.
493                          <li>                          <li>
494                                  <b>EV_DIALOG</b> - Added `is_relative' and defined `is_modal' in this class,                                  <b>EV_DIALOG</b> - Added `is_relative' and defined `is_modal' in this class,
495                                  instead of inheriting it from EV_WINDOW.</li>                                  instead of inheriting it from EV_WINDOW.</li>
496                  </ul>                  </ul>
497                  <p><b>Bug fixes</b>                  <p><b>Bug fixes</b>
# Line 499  Line 501 
501                                          <ul>                                          <ul>
502                                                  <li>                                                  <li>
503                                                          <b>EV_FIGURE_POLYLINE</b>                                                          <b>EV_FIGURE_POLYLINE</b>
504                                                  - Fixed `start_angle' and `end_angle' so that they are computed relative to the                                                  - Fixed `start_angle' and `end_angle' so that they are computed relative to the
505                                                  first and last polyline segments. This also fixes the start and end arrows, so                                                  first and last polyline segments. This also fixes the start and end arrows, so
506                                                  that when displayed, they now actually point in the direction of their                                                  that when displayed, they now actually point in the direction of their
507                                                  respective line segments.                                                  respective line segments.
508                                                  <li>                                                  <li>
509                                                          <b>EV_TREE and EV_TREE_NODE</b>                                                          <b>EV_TREE and EV_TREE_NODE</b>
510                                                  - Fixed `find_item_recursively_by_data' which failed on the `index_not_changed'                                                  - Fixed `find_item_recursively_by_data' which failed on the `index_not_changed'
511                                                  postcondition. Note that these features are now defined in EV_TREE_NODE_LIST.                                                  postcondition. Note that these features are now defined in EV_TREE_NODE_LIST.
512                                                  <li>                                                  <li>
513                                                          <b>EV_DYNAMIC_TREE_ITEM</b> - Fixed invariant violation from EV_ITEM_LIST, when                                                          <b>EV_DYNAMIC_TREE_ITEM</b> - Fixed invariant violation from EV_ITEM_LIST, when
514                                                          created with `default_create'.</li>                                                          created with `default_create'.</li>
515                                          </ul>                                          </ul>
516                                  <li>                                  <li>
# Line 516  Line 518 
518                                          <ul>                                          <ul>
519                                                  <li>                                                  <li>
520                                                          <b>EV_RADIO_BUTTON</b>                                                          <b>EV_RADIO_BUTTON</b>
521                                                  - The default minimum height after `default_create' is now enough to display                                                  - The default minimum height after `default_create' is now enough to display
522                                                  the widget correctly.                                                  the widget correctly.
523                                                  <li>                                                  <li>
524                                                          <b>EV_CHECK_BUTTON</b>                                                          <b>EV_CHECK_BUTTON</b>
525                                                  - The default minimum height after `default_create' is now enough to display                                                  - The default minimum height after `default_create' is now enough to display
526                                                  the widget correctly.                                                  the widget correctly.
527                                                  <li>                                                  <li>
528                                                          <b>EV_NOTEBOOK</b>                                                          <b>EV_NOTEBOOK</b>
529                                                  - When removing a widget from a notebook, it is now visible. Previously, the                                                  - When removing a widget from a notebook, it is now visible. Previously, the
530                                                  widget would be hidden.                                                  widget would be hidden.
531                                                  <li>                                                  <li>
532                                                          <b>EV_LIST, EV_MULTI_COLUMN_LIST, EV_TREE</b>                                                          <b>EV_LIST, EV_MULTI_COLUMN_LIST, EV_TREE</b>
533                                                  - Fixed `set_foreground_color' and `set_background_color'. Previously, calling                                                  - Fixed `set_foreground_color' and `set_background_color'. Previously, calling
534                                                  these features did nothing.                                                  these features did nothing.
535                                                  <li>                                                  <li>
536                                                          <b>EV_BOX</b>                                                          <b>EV_BOX</b>
537                                                  - If a widget was not`is_item_expanded', then adding a new widget to the box                                                  - If a widget was not`is_item_expanded', then adding a new widget to the box
538                                                  before that widget would sometimes cause a different widget to become                                                  before that widget would sometimes cause a different widget to become
539                                                  `is_item_expanded'.                                                  `is_item_expanded'.
540                                                  <li>                                                  <li>
541                                                          <b>EV_TOOL_BAR_RADIO_BUTTON</b>                                                          <b>EV_TOOL_BAR_RADIO_BUTTON</b>
542                                                  - The currently selected button in `peers' was unselected when the button was                                                  - The currently selected button in `peers' was unselected when the button was
543                                                  pressed, and not when it was really selected. This bug made it possible to make                                                  pressed, and not when it was really selected. This bug made it possible to make
544                                                  `selected_peer' Void, which caused an invariant to fail.                                                  `selected_peer' Void, which caused an invariant to fail.
545                                                  <li>                                                  <li>
546                                                          <b>EV_LIST_ITEM</b>                                                          <b>EV_LIST_ITEM</b>
547                                                  - Calling `enable_select' when parented in an EV_LIST now also sets the item as                                                  - Calling `enable_select' when parented in an EV_LIST now also sets the item as
548                                                  focused in the parent. This corrects bugs in keyboard navigation when selecting                                                  focused in the parent. This corrects bugs in keyboard navigation when selecting
549                                                  an item programatically.                                                  an item programatically.
550                                                  <li>                                                  <li>
551                                                          <b>EV_FIXED</b>                                                          <b>EV_FIXED</b>
552                                                  - The minimum size is constrained by the positions and sizes of the children                                                  - The minimum size is constrained by the positions and sizes of the children
553                                                  (They must be completely displayed), although when the positions of the                                                  (They must be completely displayed), although when the positions of the
554                                                  children were reduced, the minimum allowable size was not recomputed. This                                                  children were reduced, the minimum allowable size was not recomputed. This
555                                                  meant that the widget would be enlarged when the positions of the children                                                  meant that the widget would be enlarged when the positions of the children
556                                                  increased, but could never be reduced in size when the positions of the                                                  increased, but could never be reduced in size when the positions of the
557                                                  children were decreased.                                                  children were decreased.
558                                                  <li>                                                  <li>
559                                                          <b>EV_MENU and EV_MENU_ITEM</b>                                                          <b>EV_MENU and EV_MENU_ITEM</b>
560                                                  - `set_pixmap' has been implemented as previously, it did nothing.                                                  - `set_pixmap' has been implemented as previously, it did nothing.
561                                                  <li>                                                  <li>
562                                                          <b>EV_TABLE</b>                                                          <b>EV_TABLE</b>
563                                                  - re-implemented resizing calculations to fix numerous problems when children                                                  - re-implemented resizing calculations to fix numerous problems when children
564                                                  had minimum sizes. The minimum size now also includes the border width when                                                  had minimum sizes. The minimum size now also includes the border width when
565                                                  empty.                                                  empty.
566                                                  <li>                                                  <li>
567                                                          <b>EV_NOTEBOOK</b>                                                          <b>EV_NOTEBOOK</b>
568                                                  - `selection_actions' were called when you selected an item through                                                  - `selection_actions' were called when you selected an item through
569                                                  `select_item', even if the item was already selected. `selection_actions' are                                                  `select_item', even if the item was already selected. `selection_actions' are
570                                                  now only fired when the selection changes.                                                  now only fired when the selection changes.
571                                                  <li>                                                  <li>
572                                                          <b>EV_TREE_ITEM</b>                                                          <b>EV_TREE_ITEM</b>
573                                                  - calling `set_pixmap' twice successively with the same EV_PIXMAP caused a                                                  - calling `set_pixmap' twice successively with the same EV_PIXMAP caused a
574                                                  postcondition failure.                                                  postcondition failure.
575                                                  <li>                                                  <li>
576                                                          <b>EV_TEXT</b>                                                          <b>EV_TEXT</b>
577                                                  - Fixed `put_new_line', although it has been made obsolete, as you should just                                                  - Fixed `put_new_line', although it has been made obsolete, as you should just
578                                                  use `append_text ("%N") instead.                                                  use `append_text ("%N") instead.
579                                                  <li>                                                  <li>
580                                                          <b>EV_SPLIT_AREA</b>                                                          <b>EV_SPLIT_AREA</b>
581                                                  - Fixed crash reproducable by inserting an EV_PIXMAP directly into the split                                                  - Fixed crash reproducable by inserting an EV_PIXMAP directly into the split
582                                                  area.                                                  area.
583                                                  <li>                                                  <li>
584                                                          <b>EV_CONTAINER</b>                                                          <b>EV_CONTAINER</b>
585                                                  - Fixed `propagate_foreground_color' and `propagate_background_color' which                                                  - Fixed `propagate_foreground_color' and `propagate_background_color' which
586                                                  failed when one of the children was a descendent of EV_CELL.                                                  failed when one of the children was a descendent of EV_CELL.
587                                                  <li>                                                  <li>
588                                                          <b>EV_APPLICATION_ACTION_SEQUENCES</b>                                                          <b>EV_APPLICATION_ACTION_SEQUENCES</b>
589                                                  - `drop_actions' was being fired even when the pick and drop was cancelled.                                                  - `drop_actions' was being fired even when the pick and drop was cancelled.
590                                                  <li>                                                  <li>
591                                                          <b>EV_PIXMAP</b>                                                          <b>EV_PIXMAP</b>
592                                                  - Previously, if you were to add an agent to an action sequence of the pixmap,                                                  - Previously, if you were to add an agent to an action sequence of the pixmap,
593                                                  before it was parented, the agent would be removed during the parenting.                                                  before it was parented, the agent would be removed during the parenting.
594                                                  <li>                                                  <li>
595                                                          <b>EV_MENU</b>                                                          <b>EV_MENU</b>
596                                                          <ul>                                                          <ul>
597                                                                  <li>                                                                  <li>
598                                                                  Pruning an EV_MENU_SEPARATOR when one or more EV_RADIO_MENU_ITEM were still                                                                  Pruning an EV_MENU_SEPARATOR when one or more EV_RADIO_MENU_ITEM were still
599                                                                  contained in the menu would cause occasional crashes.                                                                  contained in the menu would cause occasional crashes.
600                                                                  <li>                                                                  <li>
601                                                                  Previously, when adding an EV_MENU_SEPARATOR, followed by multiple                                                                  Previously, when adding an EV_MENU_SEPARATOR, followed by multiple
602                                                                  EV_RADIO_MENU_ITEMS, all the items were being selected.                                                                  EV_RADIO_MENU_ITEMS, all the items were being selected.
603                                                                  <li>                                                                  <li>
604                                                                          Fixed bug in `destroy' which was causing postcondition failures.</li>                                                                          Fixed bug in `destroy' which was causing postcondition failures.</li>
# Line 610  Line 612 
612                                                                  <li>                                                                  <li>
613                                                                  Fixed `is_modal' which was previously always returned `False'.                                                                  Fixed `is_modal' which was previously always returned `False'.
614                                                                  <li>                                                                  <li>
615                                                                  Fixed bug with `background_color' and `foreground_color' which was not taken                                                                  Fixed bug with `background_color' and `foreground_color' which was not taken
616                                                                  into account if the dialog was shown relative or modally to another window.                                                                  into account if the dialog was shown relative or modally to another window.
617                                                                  <li>                                                                  <li>
618                                                                  If a dialog with a default cancel button was displayed using `show', then                                                                  If a dialog with a default cancel button was displayed using `show', then
619                                                                  minimizing the dialog would cause the system to fail internally.                                                                  minimizing the dialog would cause the system to fail internally.
620                                                                  <li>                                                                  <li>
621                                                                  Fix bug in `show_relative_to_window' which would cause any associated menus to                                                                  Fix bug in `show_relative_to_window' which would cause any associated menus to
622                                                                  be removed.                                                                  be removed.
623                                                                  <li>                                                                  <li>
624                                                                  Fixed bug in `show', as if the dialog had already been shown modelessly to a                                                                  Fixed bug in `show', as if the dialog had already been shown modelessly to a
625                                                                  window, then calling `show' did not show it independently, but still                                                                  window, then calling `show' did not show it independently, but still
626                                                                  modelessly.                                                                  modelessly.
627                                                                  <LI>                                                                  <LI>
628                                                                  Fixed bug with `show_actions' which would be wiped out if you called                                                                  Fixed bug with `show_actions' which would be wiped out if you called
629                                                                  `show_modal_to_window' and then `hide'.                                                                  `show_modal_to_window' and then `hide'.
630                                                                  <LI>                                                                  <LI>
631                                                                          `set_pixmap' will now actually display the pixmap, whereas before, no pixmap                                                                          `set_pixmap' will now actually display the pixmap, whereas before, no pixmap
632                                                                          was displayed.</LI>                                                                          was displayed.</LI>
633                                                          </ul>                                                          </ul>
634                                                  <li>                                                  <li>
# Line 637  Line 639 
639                                                  - Fixed `line_count' which was previously returning the correct result + 1.                                                  - Fixed `line_count' which was previously returning the correct result + 1.
640                                                  <li>                                                  <li>
641                                                          <b>EV_SCROLLABLE_AREA</b>                                                          <b>EV_SCROLLABLE_AREA</b>
642                                                  - Fixed crash which occurred when you attempted to use `set_x_offset' or                                                  - Fixed crash which occurred when you attempted to use `set_x_offset' or
643                                                  `set_y_offset' before the area had been parented or displayed.                                                  `set_y_offset' before the area had been parented or displayed.
644                                                  <li>                                                  <li>
645                                                          <b>EV_FONTABLE</b>                                                          <b>EV_FONTABLE</b>
646                                                  - Fixed bug when `font' was queried, `preferred_families' was not returned                                                  - Fixed bug when `font' was queried, `preferred_families' was not returned
647                                                  correctly, and would always be empty.                                                  correctly, and would always be empty.
648                                                  <li>                                                  <li>
649                                                          <b>EV_CONTAINER</b> - `set_background_pixmap' was not correctly cloning the                                                          <b>EV_CONTAINER</b> - `set_background_pixmap' was not correctly cloning the
650                                                          image of the pixmap, and the displayed image could then be modified after                                                          image of the pixmap, and the displayed image could then be modified after
651                                                          setting, by changing the image of the original pixmap.</li>                                                          setting, by changing the image of the original pixmap.</li>
652                                          </ul>                                          </ul>
653                                  <LI>                                  <LI>
# Line 654  Line 656 
656                                                  <LI>                                                  <LI>
657                                                  Remaining EV_WIDGET memory leaks have been fixed.                                                  Remaining EV_WIDGET memory leaks have been fixed.
658                                                  <li>                                                  <li>
659                                                          <strong>EV_WIDGET</strong>&nbsp;- Focus in/out actions are now correctly                                                          <strong>EV_WIDGET</strong>&nbsp;- Focus in/out actions are now correctly
660                                                  called for widgets that do not occupy their entire space allocation such as                                                  called for widgets that do not occupy their entire space allocation such as
661                                                  EV_TEXT_FIELD.                                                  EV_TEXT_FIELD.
662                                                  <li>                                                  <li>
663                                                          <strong>EV_DRAWABLE_IMP</strong>                                                          <strong>EV_DRAWABLE_IMP</strong>
# Line 664  Line 666 
666                                                          <STRONG>EV_KEY</STRONG>                                                          <STRONG>EV_KEY</STRONG>
667                                                          <UL>                                                          <UL>
668                                                                  <LI>                                                                  <LI>
669                                                                  `out' is now correct for all keys (previously Quote and Backquote were                                                                  `out' is now correct for all keys (previously Quote and Backquote were
670                                                                  incorrect).                                                                  incorrect).
671                                                                  <LI>                                                                  <LI>
672                                                                          The events for all keys are now fired when Shift is held down.</LI></UL>                                                                          The events for all keys are now fired when Shift is held down.</LI></UL>
# Line 734  Line 736 
736                                                          <STRONG>EV_TEXT_FIELD</STRONG>                                                          <STRONG>EV_TEXT_FIELD</STRONG>
737                                                          <UL>                                                          <UL>
738                                                                  <LI>                                                                  <LI>
739                                                                  Now default `minimum_width' is reasonable (before 148, now same as Windows                                                                  Now default `minimum_width' is reasonable (before 148, now same as Windows
740                                                                  being 4 characters wide)                                                                  being 4 characters wide)
741                                                                  <LI>                                                                  <LI>
742                                                                          Fixed `caret_position' when queried in change actions</LI></UL>                                                                          Fixed `caret_position' when queried in change actions</LI></UL>
# Line 754  Line 756 
756                          - `title' no longer returns `Void' when empty.                          - `title' no longer returns `Void' when empty.
757                          <li>                          <li>
758                                  <b>EV_TOOLTIPABLE</b>                                  <b>EV_TOOLTIPABLE</b>
759                          - `tooltip' no longer returns `Void' when empty. If empty, no tooltip is                          - `tooltip' no longer returns `Void' when empty. If empty, no tooltip is
760                          displayed.                          displayed.
761                          <li>                          <li>
762                                  <b>EV_TITLED_WINDOW</b>                                  <b>EV_TITLED_WINDOW</b>
# Line 767  Line 769 
769                          - `text' no longer returns `Void' when empty.                          - `text' no longer returns `Void' when empty.
770                          <li>                          <li>
771                                  <b>EV_FILE_DIALOG</b>                                  <b>EV_FILE_DIALOG</b>
772                          - `file_name' no longer returns `Void' when the "Cancel" button was pressed,                          - `file_name' no longer returns `Void' when the "Cancel" button was pressed,
773                          `Result' is empty instead.                          `Result' is empty instead.
774                          <li>                          <li>
775                                  <b>EV_DIRECTORY_DIALOG</b>                                  <b>EV_DIRECTORY_DIALOG</b>
776                          - `directory' no longer returns `Void when the "Cancel" button was pressed,                          - `directory' no longer returns `Void when the "Cancel" button was pressed,
777                          `Result' is empty instead.                          `Result' is empty instead.
778                          <li>                          <li>
779                                  <b>EV_CONTAINER</b>                                  <b>EV_CONTAINER</b>
780                          - has three new features `set_background_pixmap', `background_pixmap' and                          - has three new features `set_background_pixmap', `background_pixmap' and
781                          `remove_background_pixmap'. `background_pixmap' will be tessellated to cover                          `remove_background_pixmap'. `background_pixmap' will be tessellated to cover
782                          complete background area.                          complete background area.
783                          <li>                          <li>
784                                  <b>EV_TREE and EV_TREE_NODE</b>                                  <b>EV_TREE and EV_TREE_NODE</b>
# Line 785  Line 787 
787                                  <b>EV_STANDARD_DIALOGS</b>                                  <b>EV_STANDARD_DIALOGS</b>
788                                  <ul class="square">                                  <ul class="square">
789                                          <li>                                          <li>
790                                          `ok_actions' have been renamed in descendents where appropriate. e.g. in                                          `ok_actions' have been renamed in descendents where appropriate. e.g. in
791                                          EV_PRINT_DIALOG, they are renamed to `print_actions' to match the texts of the                                          EV_PRINT_DIALOG, they are renamed to `print_actions' to match the texts of the
792                                          associated buttons. Where renamed, `ok_actions' are still available but                                          associated buttons. Where renamed, `ok_actions' are still available but
793                                          obsolete.                                          obsolete.
794                                          <li>                                          <li>
795                                                  Selected button now also returns the correct text of the button (Previously it                                                  Selected button now also returns the correct text of the button (Previously it
796                                                  was always "Ok").</li>                                                  was always "Ok").</li>
797                                  </ul>                                  </ul>
798                          <li>                          <li>
# Line 798  Line 800 
800                          - Added new constants required for the above change to EV_STANDARD_DIALOGS.                          - Added new constants required for the above change to EV_STANDARD_DIALOGS.
801                          <li>                          <li>
802                                  <b>EV_DRAWABLE</b>                                  <b>EV_DRAWABLE</b>
803                          - `draw_straight_line' now has a precondition to ensure the points are not                          - `draw_straight_line' now has a precondition to ensure the points are not
804                          identical.                          identical.
805                          <li>                          <li>
806                                  <b>EV_SPLIT_AREA</b>                                  <b>EV_SPLIT_AREA</b>
807                          - seperated `put' from `extend'. They were defined as synonyms, but have                          - seperated `put' from `extend'. They were defined as synonyms, but have
808                          different behaviour.                          different behaviour.
809                          <li>                          <li>
810                                  <b>EV_DYNAMIC_TREE_ITEM</b>                                  <b>EV_DYNAMIC_TREE_ITEM</b>
811                          - Added `remove_subtree_function'. Item now only shows as expandable if there                          - Added `remove_subtree_function'. Item now only shows as expandable if there
812                          is a subtree function.                          is a subtree function.
813                          <li>                          <li>
814                                  <b>EV_WINDOW</b>                                  <b>EV_WINDOW</b>
815                          - Added `maximum_dimension' which is the greatest value allowed for `width' and                          - Added `maximum_dimension' which is the greatest value allowed for `width' and
816                          `height'. This is also the default value for `width' and `height'.                          `height'. This is also the default value for `width' and `height'.
817                          <li>                          <li>
818                                  <b>EV_OPTION_BUTTON</b>                                  <b>EV_OPTION_BUTTON</b>
# Line 820  Line 822 
822                          - Added `pick_ended_actions' which are called when a pick ends.                          - Added `pick_ended_actions' which are called when a pick ends.
823                          <li>                          <li>
824                                  <b>EV_WIDGET</b>                                  <b>EV_WIDGET</b>
825                          - `set_minimum_height', `set_minimum_width' and `set_minimum_size' now all                          - `set_minimum_height', `set_minimum_width' and `set_minimum_size' now all
826                          allow 0 as an argument. Previously, 1 was the minimum valid dimension.                          allow 0 as an argument. Previously, 1 was the minimum valid dimension.
827                          <li>                          <li>
828                                  <b>EV_MULTI_COLUMN_LIST</b> - `clear_selection' is now obsolete. Use                                  <b>EV_MULTI_COLUMN_LIST</b> - `clear_selection' is now obsolete. Use
829                                  `remove_selection' instead.</li>                                  `remove_selection' instead.</li>
830                  </ul>                  </ul>
831                  <p><b>Bug fixes</b>                  <p><b>Bug fixes</b>
# Line 838  Line 840 
840                                                          <b>EV_SELECTABLE</b>                                                          <b>EV_SELECTABLE</b>
841                                                  - Corrected postcondition of `is_selected'.                                                  - Corrected postcondition of `is_selected'.
842                                                  <li>                                                  <li>
843                                                          <b>EV_PND_ACTION_SEQUENCE</b> -- `veto_pebble_function' is now only called when                                                          <b>EV_PND_ACTION_SEQUENCE</b> -- `veto_pebble_function' is now only called when
844                                                          its argument conforms to the transported pebble.</li>                                                          its argument conforms to the transported pebble.</li>
845                                          </ul>                                          </ul>
846                                  <li>                                  <li>
# Line 846  Line 848 
848                                          <ul>                                          <ul>
849                                                  <li>                                                  <li>
850                                                          <b>EV_RANGE</b>                                                          <b>EV_RANGE</b>
851                                                  - The `maximum_value' could not be set greater than 32,000. The full range of                                                  - The `maximum_value' could not be set greater than 32,000. The full range of
852                                                  an INTEGER may now be set.                                                  an INTEGER may now be set.
853                                                  <li>                                                  <li>
854                                                          <b>`focused_widget' from `EV_APPLICATION'</b>                                                          <b>`focused_widget' from `EV_APPLICATION'</b>
# Line 855  Line 857 
857                                                          <b>EV_PICK_AND_DROPABLE</b>                                                          <b>EV_PICK_AND_DROPABLE</b>
858                                                          <ul>                                                          <ul>
859                                                                  <li>                                                                  <li>
860                                                                  Ending a pick and drop on an EV_TOOL_BAR_BUTTON which has a non `void' pebble                                                                  Ending a pick and drop on an EV_TOOL_BAR_BUTTON which has a non `void' pebble
861                                                                  no longer starts a transport from the button.                                                                  no longer starts a transport from the button.
862                                                                  <li>                                                                  <li>
863                                                                  Reduced flicker on cursor when picking from an EV_TREE_ITEM or EV_LIST_ITEM.                                                                  Reduced flicker on cursor when picking from an EV_TREE_ITEM or EV_LIST_ITEM.
# Line 869  Line 871 
871                                                          <b>EV_DRAWABLE</b>                                                          <b>EV_DRAWABLE</b>
872                                                          <ul>                                                          <ul>
873                                                                  <li>                                                                  <li>
874                                                                  `Remove_clip_area' did not remove the clip_area correctly, but set it to the                                                                  `Remove_clip_area' did not remove the clip_area correctly, but set it to the
875                                                                  current size. This meant that if you then enlarged the widget, clipping would                                                                  current size. This meant that if you then enlarged the widget, clipping would
876                                                                  be applied.                                                                  be applied.
877                                                                  <li>                                                                  <li>
878                                                                  Fixed problems with ordering of calls to certain features which would cause                                                                  Fixed problems with ordering of calls to certain features which would cause
879                                                                  postcondition violations in the implementation.                                                                  postcondition violations in the implementation.
880                                                                  <li>                                                                  <li>
881                                                                          `draw_pie_slice', `fill_pie_slice' and `draw_arc' now have divide by 0                                                                          `draw_pie_slice', `fill_pie_slice' and `draw_arc' now have divide by 0
882                                                                          protection in the implementation.</li>                                                                          protection in the implementation.</li>
883                                                          </ul>                                                          </ul>
884                                                  <li>                                                  <li>
885                                                          <b>EV_TEXT</b>                                                          <b>EV_TEXT</b>
886                                                  - `set_background_color' now correctly sets the color of the whole background.                                                  - `set_background_color' now correctly sets the color of the whole background.
887                                                  Previously only the area containing text was modified.                                                  Previously only the area containing text was modified.
888                                                  <li>                                                  <li>
889                                                          <b>EV_CLIPBOARD</b>                                                          <b>EV_CLIPBOARD</b>
890                                                  - Our implementation would sometimes query `text' when not allowed by Windows,                                                  - Our implementation would sometimes query `text' when not allowed by Windows,
891                                                  thus causing postcondition failures.                                                  thus causing postcondition failures.
892                                                  <li>                                                  <li>
893                                                          <b>EV_BUTTON</b> - The result of `text_alignment' after default_create was                                                          <b>EV_BUTTON</b> - The result of `text_alignment' after default_create was
894                                                          incorrect.</li>                                                          incorrect.</li>
895                                          </ul>                                          </ul>
896                                  <li>                                  <li>

Legend:
Removed from v.37647  
changed lines
  Added in v.37648

  ViewVC Help
Powered by ViewVC 1.1.23