History of Changes in Version 3.x
Check the Migration Guide for a summary of
the important changes and how to proceed when migrating from version 2.x to
version 3.x.
- Fixed: VISIBLE attribute management.
IupZbox now will respect if a child has a VISIBLE attribute
set, and it will not change it. IupTabs now does not
depends on the VISIBLE attribute anymore.
- Fixed: VALUE attribute return in
IupItem on GTK.
- Fixed: IupList with
DROPDOWN=Yes and the last item is removed.
- New: NMARGIN and NGAP non-inheritable
attributes for IupHbox and IupVbox.
- New: "OTHER" status code for FILE_CB when
selecting an invalid file name or a directory in IupFileDlg.
- New: DLL_HINSTANCE global attribute in
Windows.
- Changed:
Added a workaround for TITLEFONTid for IupTree when
changing only the Bold style in Windows.
- Changed:
the RENAMENODE_CB callback in IupTree is not supported
anymore.
- Changed:
improved compatibility of IupFileDlg when DIALOGTYPE=DIR
and CoInitializeEx was initialized with COINIT_MULTITHREADED prior to IupOpen
in Windows.
- Changed:
IupFrame can now has a color background when not using
TITLE, and BGCOLOR is set before map.
- Fixed: memory leak in IupPPlot.
- Fixed: invalid memory access in set
ALIGNMENT attribute for IupLabel, IupButton
and IupToggle, and in set MARK for IupTree.
- Fixed: invalid layout computation when
using the old IupSpin element.
- Fixed: STATE attribute for
IupTree in Windows when branch has no child.
- Fixed: invalid redraw of some controls
when dialog is resized in Windows.
- Fixed: invalid memory access for
SYSTEMVERSION global attribute in Linux. Thanks to David Given.
- Fixed: missing convertion to UTF-8 in
IupButton when handling TITLE at map in the GTK driver.
- Fixed: image branch update when branch
STATE is changed in IupTree in Windows.
- Fixed: SHOWRENAME_CB callback when
renaming is started clicking twice in IupTree.
- Fixed: invalid limit check in VALUE
attribute of IupList in the GTK driver. Thanks to Paul
Gregory.
- Fixed: invalid memory access when
setting VALUE to NULL in IupTree.
- Fixed: ACTION callback called when an
item is set on a IupList when DROPDOWN=Yes.
- Fixed: dialog decoration size when menu
is associated during the map process.
- Fixed: K_ANY callback called twice for
IupTabs in the GTK driver.
- Fixed: invalid memory access when
destroying some of the additional controls that use CD.
- Fixed: incomplete redraw of the
IupCanvas in Windows XP when a window moves over the canvas.
- Fixed: missing call to ACTION when an
item that was replaced is clicked in IupList.
- Fixed: switch of a complete menu in
IupDialog was not working.
- Fixed: button press feedback when
FOCUSONCLICK=NO in IupButton on Windows.
- Fixed: VISIBLE attribute for non native
containers. It affected IupZbox.
- Fixed: IupMatrix with
EXPAND=NO was behaving as EXPAND=YES.
- New: MOVE_CB callback for
IupDialog in Windows and GTK.
- New: SPINNING attribute for
IupGetParam when the callback is activated by a spin.
- New: KEYPRESS, KEYRELEASE and KEY global
attributes.
- New: MAXSIZE and MINSIZE attributes for
all controls.
- New:
NODEREMOVED_CB callback for IupTree.
- New: SORT attribute for IupList.
- New: function IupSaveImageAsText.
- New: function IupLoadBuffer.
- New: parameter in the EDITION_CB callback
of IupMatrix to indicate if the value will be updated.
- New: auxiliary functions
IupGLUseFont and IupGLWait for the
IupGLCanvas. attribute REFRESHCONTEXT in Windows.
- New: VALUECHANGED_CB
callback for IupVal, IupDial,
IupColorBrowser, IupToggle,
IupText and IupList.
- New: element
IupClipboard.
- New: functions
IupGetNativeHandleImage
and IupGetImageNativeHandle for the Iup-IM library.
- Changed:
now the iup.image constructor also accepts parameters in
the same format as iup.imagergb and iup.imagergba.
- Changed:
return value to boolean of iup.GLIsCurrent, iup.GetParam,
iup.SaveImage, iup.isshift, iup.iscontrol, iup.isbutton1, iup.isbutton2,
iup.isbutton3, iup.isbutton4, iup.isbutton5, iup.isdouble, iup.issys,
iup.isalt, iup.isSysXkey, iup.isAltXkey, iup.isCtrlXkey, iup.isShiftXkey
and iup.isXkey in Lua.
- Changed:
the function iup.key_open is now obsolete and not necessary
anymore.
- Changed:
improved transparency for 8bpp images in Windows.
- Changed:
in IupMatrix since the selection is made only using the
mouse, by pressing a key will NOT clear the selection anymore. You can still
do that setting MARKED=NULL in the K_ANY callback. Improved MARKL:C to be
more flexible for other MARKMODE options.
- Changed:
updated the IupTreeUtil contributed utility.
- Changed:
CHANGEVALUE_CB callback renamed to VALUECHANGED_CB in IupVal.
- Changed:
internal reorganization of the abstract layout methods of the Ihandle class
to allow more flexibility and control of the layout process.
- Changed:
LAYERED and LAYERALPHA attributes are now condensed in the OPACITY
attribute. The OPACITY is available in Windows and GTK.
- Fixed: the functions
IupPreviousField and IupNextField to respect the
dialog hierarchy order.
- Fixed: NUMCOL and NUMLIN when set to 0
in IupMatrix. Double click in a title cell was entering in
edit mode at the focus cell. Marks were processed after ENTERCELL_CB when
the user single click a cell. Enter key processed also for the next cell
when MULTIPLE=YES after editing ended.
- Fixed: STARTFOCUS in Motif and Win32 for
IupDialog where not working. Now STARTFOCUS is set only if
SHOW_CB did not changed the current focus.
- Fixed: DLGBGCOLOR in Motif where
incorrectly set.
- Fixed: IupToggle redraw
inside an
IupFrame in Windows XP where disapearing.
- Fixed: background color of the edit box
of IupTree in Windows XP where black.
- Fixed: release of stock images in
IupClose caused the application to crash.
- Fixed: auxiliar function
iup.TreeSetUserId in Lua when releasing the previous reference.
- Fixed: ACTION callback of
IupButton in Windows when FOCUSONCLICK=NO was not being called.
- Fixed: return value of
IupSaveImage was inverted.
- Fixed: export of image in Lua at the
IupView application.
- Fixed:
IupGetParam when specifying full intervals without the step
parameter.
- Fixed:
DEFAULTENTER and DEFAULTESC in Windows when focus is inside an
IupTabs. Also in Windows they were processed before K_ANY, so K_ANY
could not abort them by returning IUP_IGNORE.
- Fixed:
K_ANY called twice for K_CR when IupText has multiple lines
in Windows.
- Fixed: in
Windows when a pre-defined system dialog was closed with Enter or Esc, the
key was propagated to the dialog that open it.
- Fixed:
keyboard navigation in the dialog now respects the order of
IupNextField
and IupPreviousField for all drivers. Those functions were
also improved.
- Fixed:
in GTK the VISIBLE attribute returned invalid result when child is hidden by
its parent.
- Fixed:
in Windows the text color of a selected item of an IupTree
was not inverted.
- Fixed:
in Windows the VALUE attribute of a inactive IupItem was
always OFF.
- Fixed:
ENTERWINDOW_CB and LEAVEWINDOW_CB for IupCanvas in Windows
were not being called.
- Fixed:
HELP_CB was not working for IupVal, IupTabs
and IupTree in Motif.
- Fixed:
USETITLESIZE attribute logic in IupMatrix.
- Fixed:
DELNODE attribute when value is CHILDREN in IupTree. It was
not working for the root node.
- New:
MONITORSINFO and VIRTUALSCREEN global attributes now also available in GTK.
- New:
USETITLESIZE attribute for IupMatrix.
- New: DEFAULTFONTSIZE global attribute.
- New: IupSetAtt auxiliar
function.
- Changed:
the default alignment for IupButton (Text and Image) and
IupToggle (Image) to "ACENTER:ACENTER".
- Changed:
improved decoration size computation for IupDialog in GTK.
- Fixed: IupItem in GTK
when compiled in versions older than 2.14, but run in newer versions.
- Fixed: alignment of
buttons in IupAlarm.
- Fixed: IupZbox
visible child management and VISILBE attribute update after mapping an
element.
- Fixed: X and Y
attributes for GTK.
- Fixed: IupTree
TITLE with non UTF-8 characters.
- Fixed: IupClose
in loop when removing names.
- Fixed: CONTEXT and
VISUAL in IupGLCanvas.
- Fixed: SHOWTICKS in
IupVal.
- Fixed: in
IupMatrix.
default cell alignment. BGCOLOR and FGCOLOR to use the global default colors
instead of "255 255 255" and "0 0 0". drawing details. misbehavior of the
scrollbar in GTK. improved IUP 2 compatibility when calling VALUE_CB and
when consulting titles to compute cell size.
- Fixed: VALUE management
in IupZbox.
- Fixed: removed "cannot
add non scrollable widget" warning message when creating a
IupCanvas in GTK.
- Fixed: ADDEXPANDED in
IupTree.
- Fixed: SIZE
consideration in layout computation for
IupDialog.
- Fixed:
DIALOGTYPE=MESSAGE for IupMessageDlg in GTK.
- Fixed:
IupButton with no text and no image, but with BGCOLOR
defined will properly show the color.
Version 3.0 RC 1 (26/Jun/2009)
General
- New: checked for memory leaks using
VLD in Windows and
Valgrind in Linux.
- New:
PREVIEWGLCANVAS attribute for IupFileDlg.
- New:
auxiliary functions IupTextConvertLinColToPos and
IupTextConvertPosToLinCol for IupText.
- New:
basic tutorial for IupLua. (Thanks to Steve Donovan)
- New:
IupTree now uses native controls and was moved to the
standard controls. The old implementation is not available. Images for nodes
are not limited to 16x16 anymore. BGCOLOR now follows the same default as
IupText and IupList, and can be changed. New
TITLEFONT, FGCOLOR, USERDATA, FINDUSERID, COUNT, CHILDCOUNT, EXPANDALL,
INDENTATION, HIDEBUTTONS, HIDELINES, COPYNODE, MOVENODE,
SPACING, TOPITEM, INSERTLEAF and INSERTBRANCH attributes. New BUTTON_CB,
MOTION_CB and DROPFILES_CB callbacks. Attributes SCROLLBAR and REDRAW are
not supported anymore. VALUE attribute split in VALUE and MARK attributes,
set MARK using VALUE is still possible fro backward compatibility. STARTING
renamed to MARKSTART, and CTRL/SHIFT attributes replaced by MARKMODE (old
names kept working for compatibility). Now if DRAGDROP_CB returns
IUP_CONTINUE or if it is not defined but SHOWDRAGDROP=Yes then the node will
be automatically moved to the new position.
ATTENTION
- DEPTH is now a read-only attribute, use the INSERT* attributes
to properly add nodes. NAMEid attribute renamed to TITLE, old attribute
still works but will be removed in future versions since it conflicts with
the common NAME attribute. The SELECTION_CB and MULTISELECTION_CB callbacks
now ignore their return value. The rename action is now activated by two
clicks instead of a double click.
- Changed:
removed "lua5.1.so" dependency in UNIX.
- Changed:
In IupLua the Lua function iup.TreeSetValue now also
accepts node decoration in the initialization table and can add a subtree to
any node. (Thanks to Tomas Gorham)
- Changed:
In IupLua attributes that are pointers to Ihandle are now returned as
ihandle instead of userdata.
- Changed:
replaced "[]" in function declarations by a simple "*". None of those
functions needed it.
- Changed: the default value of the
Windows attribute COMPOSITED is back to NO to improve backward compatibility
and to avoid side effects of the attribute.
- Changed: the auxiliary functions
IupTextConvertXYToChar and IupListConvertXYToItem
where replaced by IupConvertXYToPos, that also works for
IupTree.
- Changed: added support for WHEEL_CB in
GTK for IupCanvas.
- Fixed: IupLua initialization when
retrieving the argc/argv arguments for IupOpen. (Thanks to
Ross Berteig)
- Fixed: Arg initialization for all
controls in Motif driver.
- Fixed: update of the POSX and POSY
attributes for the IupCanvas.
- Fixed: FONT size round when converting
from pixels to points in Windows. (Thanks to Devin Smith)
- Fixed: button disappearing after mouse
over in Windows XP.
- Fixed: IupMatrix when
NUMCOL/NUMLIN were less than NUMCOL_VISIBLE/NUMLIN_VISIBLE. Also fixed when
NUMCOL/NUMLIN were 0 and changed to 1, and when removed 1. CURSOR attribute
when RESIZEMATRIX=Yes. (Thanks to Jeremy Cowgar)
- Fixed: action callback return value in
Lua for the IupGetParam dialog. (Thanks to Zhiwei)
- Fixed: EXPAND attribute for
IupCanvas.
Version 3.0 BETA 3 (04/Apr/2009)
- New:
MARKL:C, READONLY, NUMLIN_VISIBLE_LAST, NUMCOL_VISIBLE_LAST, and SHOW
attributes for
IupMatrix. When scrolling the matrix using the scrollbar
the focus is not changed anymore. The last cells at right and bottom are now
drawn as incomplete cells if they do not fit in the visible area. New
FONT_CB callback. CHECKFRAMECOLOR is not necessary anymore, just set
FRAMEVERTCOLOR or FRAMEHORIZCOLOR. Internal code reorganization. AREA and
MULTIPLE renamed to MARKAREA and MARKMULTIPLE, old names as still supported.
New MULTILINE attribute to edit text in multiple lines, valid only before
mapped.
- New:
IupRedraw and IupSetClassDefaultAttribute
functions.
- Changed:
Added package registration code to IupLua that allows it to be statically
linked and require"iuplua" does not abort if the iuplua_open function was
called.
- Changed:
the IupOleControl in Lua will not automatically initialize
LuaCOM anymore. The application must manually call "elem:CreateLuaCOM()".
The previous initialization was incorrect (thanks to Ross Berteig).
- Changed:
the declaration of function IupGetClassAttributes to use
the class name instead of a control handle.
- Fixed: Fixed button, toggle and list sizes
for GTK driver when using the Hildon Framework. Thanks to Otfried Cheong.
- Fixed: some IupLua dynamic libraries in
Linux where incorrectly linking with Motif (libiuplua + pplot, cd, controls,
gl, im and imglib + 51.so)
- Fixed: HOMOGENEOUS attribute for
IupVbox and
IupHbox.
- Fixed: CARET attribute in GTK driver was
not correctly scrolling the multiline text when not visible.
- Fixed: parameter checking and the return
value in Lua for
IupListDialog when type=2.
- Fixed: the return value for
IupGetText when the user canceled. (Thanks to Xu Wang)
- Fixed: IupGetClassAttributes
and
IupGetAllAttributes
were not implemented in IupLua.
- Fixed: The 32 bits version of the IupLua
console in Windows XP64 was not working.
- Fixed: CARET_CB and
IupTextConvertXYToChar in IupText when
MULTILINE=YES and FORMATTING=NO.
Version 3.0 BETA 2 (26/Dec/2008)
- Changed:
ATTENTION
- the following headers were deprecated iupcb.h, iupcells.h,
iupcolorbar.h, iupdial.h, iupgauge.h, iupmatrix.h, iuptree.h - use
iupcontrols.h only
- Changed:
ATTENTION
- the following headers were deprecated iupgetparam.h, iupspin.h,
iuptabs.h, iupval.h - use iup.h only
- Fixed: set VALUE attribute for IupText in
Windows when formatting is used.
- Fixed:
IupHide when dialog was maximized in Windows.
- Fixed: get VALUE attribute for
IupText in all drivers, after the element is mapped it must return
the empty string "" when there is no text.
- Fixed:
IupGetParam when specifying partial intervals.
- Fixed: K_Esc key callback processing in
Windows.
- Fixed:
PLACEMENT and FULLSCREEN for IupPopup.
Version 3.0 BETA 1 (15/Dec/2008)
General
- New:
GTK driver, available in UNIX and Windows.
- New:
internal code reorganization. More clear and simple to create controls and
drivers. All comments are now in English.
- New:
internal documentation and Guide to create new controls. Now all the
controls use the same architecture using the same base class.
- New:
IUP_ASSERT compile flag.
- New:
IupMainLoopLevel function.
- New:
support for the HILDON framework that runs on top of GTK on the
Maemo
platform used by the Nokia Internet Tablets. Thanks to Otfried Cheong.
- Changed:
all dialogs, and all elements that have names, are now automatically
destroyed in IupClose.
- Changed:
ATTENTION
- the following headers were deprecated iupcbox.h, iupsbox.h - use
iup.h only
- Changed:
ATTENTION
- the headers iupcompat.h and iupcpi.h were removed. They are not
supported anymore.
Common Attributes
- New:
CHARSIZE convertion factor used by the SIZE attribute.
- New:
NAME used by IupGetDialogChild.
- New:
font face name mappings for Courier, Times and Helvetica.
- New:
functions IupGetClassAttributes, IupGetIntInt.
- New:
CLIENTSIZE returns the size of containers excluding their decoration.
- New:
TIP additional attributes (Motif and Windows): TIPFONT, TIPDELAY,
TIPBGCOLOR, TIPFGCOLOR, TIPBALLON (Windows Only), TIPBALLONTITLE (Windows
Only), TIPBALLONTITLEICON (Windows Only), TIPVISIBLE. Not available in GTK.
- New:
TIPRECT auxiliary attribute for the TIP common attribute.
- Changed:
attribute FONT now uses a common a more flexible definition for all drivers,
old format is still supported. The default FONT in Motif is now "Fixed, 10".
- Changed:
ATTENTION
- Now attributes are stored in the internal hash table only if not
processed or allowed by the element class implementation.
- Changed:
IupGetAttribute, IupSetAttribute
and IupStoreAttribute can also be used to access global attributes
using NULL as element.
- Changed:
TIP and ZORDER attributes are now non inheritable.
- Changed:
ATTENTION
- the BGCOLOR is now ignored in IupLabel,
IupFrame, IupToggle
(for the text) and IupVal. They will use the background
color of the native parent.
Global Attributes
- New:
APPSHELL, XDISPLAY, XSCREEN, XSERVERVENDOR, XVENDORRELEASE in Motif.
- New:
VIRTUALSCREEN and MONITORSINFO in Windows.
- Changed:
LANGUAGE default from PORTUGUESE to ENGLISH.
- Changed:
TRUECOLORCANVAS and SYSTEMLANGUAGE are now available in all drivers.
Common Callbacks
- New:
IUP_IGNORE return code accepted for IDLE_ACTION
callback to automatically remove the callback.
- New:
UNMAP_CB for all controls
- Changed:
MAP_CB, ENTERWINDOW_CB, LEAVEWINDOW_CB for all controls.
Layout
- New:
functions IupGetDialogChild,
IupUnmap, IupReparent, IupInsert,
IupUpdateChildren, IupGetClassType,
IupGetChildPos and
IupGetChildCount..
- New:
FLOATING attribute to control the inclusion of the element in layout
processing for IupHbox, IupVbox
and IupZbox.
- New:
HOMOGENEOUS attribute to control the spacing in layout processing for
IupHbox
and IupVbox.
- New:
EXPANDCHILDREN attribute to control the expansion in layout processing for
IupHbox and IupVbox.
- New:
NORMALIZESIZE attribute to control the natural size in layout processing for
IupHbox and IupVbox.
- New:
element IupNormalizer.
- New:
CGAP and CMARGIN for IupVbox and IupHbox
that use SIZE units.
- New:
VALUEPOS and VALUE_HANDLE attributes for IupZbox.
- Changed:
default value for ALIGNMENT in IupZbox is now "NW".
- Changed:
IupAppend and IupDetach can now be used for dynamic creation
of menus or containers, even after the element is mapped.
- Changed:
IupDetach will now automatically unmap the element.
- Changed:
IupAppend will now return the actual parent.
- Changed:
IupUpdate now only mark the control to be redraw instead of
redrawing at the function call.
Dialogs
- New:
MINSIZE and MAXSIZE attributes. In Windows MINSIZE is ignored for systems
with multiple monitors. The Windowing system may impose a minimum default
limit for the dialog that includes the title bar with all it buttons.
- New:
DROPFILES_CB and RESIZE_CB callbacks.
- New:
IUP_CURRENT and IUP_CENTERPARENT positions for IupShowXY
and IupPopup.
- New:
IUP_HIDE and IUP_MAXIMIZE flags for SHOW_CB callback.
- New:
MODAL attribute to check if the dialog was shown with IupShow
or IupPopup.
- New:
IupColorDlg, IupFontDlg and
IupMessageDlg native pre-defined dialog as elements.
- New:
SHOWHIDDEN attribute for IupFileDLg. Preview canvas support for the
Motif driver.
- New:
tip string for each param in IupGetParam. And a new "c"
param to show a RGB color string with extra controls to show the color and
open the color selection dialog.
- Changed:
SAVEUNDER dialog attribute now is also available in Motif.
- Changed:
DROPFILES_CB callback is now available for all controls. It is only
activated using DRAGDROP attribute. It is active by default only for
IupCanvas
and IupDialog.
- Changed: the default value of the
Windows attribute COMPOSITED is now YES, except in Windows Vista.
- Changed:
IupDestroy is now automatically called for child dialogs when the parent
is destroyed.
Canvas
- New:
LINEX, LINEY, XAUTOHIDE and YAUTOHIDE attributes for the scrollbar.
- New:
CLIPRECT attribute, a rectangle that has its region invalidated for paiting.
- Changed:
if ACTION is defined nothing is painted in the canvas, now also in Motif.
- Changed:
BORDER is now also supported in Motif.
- Changed:
ATTENTION
- now scrollbar parameters min, max, page size and line size are
updated when DX/DY are updated. POSX and POSY will only update the position
of the scrollbar. Automatic hide of the scrollbar now works also in Motif.
Label, Button and Toggle
- New:
attributes PADDING, ELLIPSIS, WORDWRAP and MARKUP for IupLabel.
- New:
IMPRESSBORDER, PADDING, MARKUP, FOCUSONCLICK and ALIGNMENT attributes for
IupButton.
- New:
support for image and text simultaneous in IupButton.
- New:
support for mnemonics in IupLabel, IupButton
and IupToggle.
- New:
RADIO attribute for IupToggle.
- Changed:
ALIGNMENT attribute now includes vertical alignment values.
- Changed:
IupButton now supports text with more than one line.
Text and Multiline
- New:
APPENDNEWLINE and PADDING attributes. CUEBANNER and FILTER attributes in
Windows.
- New:
MASK attribute for IupText, IupMultiline,
IupList and IupMatrix. The iupmask
functions are now obsolete, autofill option and MATCH_CB callback are not
supported anymore.
- New:
text formatting using FORMATTING and ADDFORMATTAG attributes in Windows and
GTK. New attribute OVERWRITE when using text formatting.
- New:
ALL and NONE values for SELECTION attribute.
- New:
SCROLLTO attribute. New attributes SCROLLTOPOS, CARETPOS and SELECTIONPOS
using 0 based character position. New function
IupTextConvertXYToChar
to convert (x,y) coordinates in (lin, col, pos) character positioning.
- New:
SPIN, SPINVALUE, SPINMIN, SPINMAX, SPININC, SPINALIGN and SPINWRAP
attributes. New SPIN_CB callback. The IupSpin
control is now obsolete.
- New:
VISIBLECOLUMNS, VISIBLELINES attributes gives much better control
over size than the SIZE attribute.
- Changed:
IupMultiline is now implemented as IupText
with MULTILINE=YES.
- Changed:
ATTENTION
- VERY IMPORTANT -
the ACTION callback in IupText now does NOT process
extended keys anymore. It is called only if the text is edited, and key=0 if
it is not a valid character. The callback now is called before the text is
updated on screen.
- Changed:
the SELECTION and CARET attribute in Windows do NOT change the focus
anymore. The NC attribute now only restricts keyboard input.
- Changed:
added support for BUTTON_CB and MOTION_CB callbacks. BUTON_CB can return
IUP_IGNORE so the default processing will be ignored.
- Changed:
CARET_CB now includes 0 based character position.
- Changed:
ATTENTION
- the Natural Size does not uses the text contents anymore. To
control the Natural Size use the SIZE/RASTERSIZE attributes, or
VISIBLECOLUMNS/VISIBLELINES attributes, or EXPAND.
List
- New:
APPENDVALUE, CANFOCUS, COUNT, DRAGDROP, INSERTITEMn, REMOVEITEM,
TOPITEM, SPACING, VISIBLECOLUMNS, VISIBLELINES attributes.
- New:
BUTTON_CB, DBLCLICK_CB, DROPDOWN_CB, DROPFILES_CB, MOTION_CB
callbacks.
- New:
IupListConvertXYToItem function.
Other Standard Controls
- New:
INVERTED and TICKSPOS attributes for IupVal.
- New:
PADDING, VALUE_HANDLE, VALUEPOS, MULTILINE and TABIMAGE attributes for
IupTabs.
- New:
control IupProgressBar, similar to IupGauge
but with the text.
- Changed:
IupFrames now are native parents of their children.
- Changed:
IupVal implemented as a native control. Attributes
HANDLER_IMAGE and HANDLER_IMAGE_INACTIVE are not supported anymore.
- Changed:
IupCbox is not based on IupCanvas
anymore.
- Changed:
IupTabs implemented as a native control. Attributes
ALIGNMENT, FONT_ACTIVE, FONT_INACTIVE, TABSIZE and REPAINT are not supported
anymore.
Additional Controls
- New:
focus feedback and keyboard control for IupColorbar.
- Changed:
IupControlsClose is now deprecated. Declaration still
remains for compatibility, actual function does nothing.
- Changed:
the NO_COLOR attribute is deprecated, now it simply sets the BGCOLOR
attribute in IupCells.
- Changed:
in IupColorBrowser moved from HLS to HSI, added support for
resize, anti-aliasing, support for BGCOLOR attribute, feedback for ACTIVE
attribute, and feedback for focus. New HSI attribute. New support for mouse
wheel to change Hue. New support for PgDn and PgUp keys to change Hue.
- Changed:
IupTabs and IupVal
are NOT part of the additional controls anymore. They are now standard
controls using native elements.
- Changed:
renamed MARGIN attribute to PADDING in IupGauge.
IupGauge is deprecated in favor of IupProgressBar.
- Changed:
An IupGLCanvas when inside an IupFrame
in Win32 will now work normally. But the dialog COMPOSITE attribute must be
NO for hardware acceleration in Windows.
Menus
- New:
HIDEMARK, AUTOTOGGLE and TITLEIMAGE attributes for IupItem.
- New:
BGCOLOR support for IupMenu.
- New:
Submenu now supports the IMAGE attribute.
- New:
RADIO attribute for IupMenu.
- Changed:
In GTK to have a menu item that can be marked you must set the VALUE
attribute to ON or OFF, or set HIDEMARK=NO, before mapping the control.
- Changed:
The HIGHLIGHT_CB, OPEN_CB and MENUCLOSE_CB callbacks now work normally for
popup menus. HIGHLIGHT_CB is called for items and submenus.
- Changed:
OPEN_CB and MENUCLOSE_CB are defined for menus, but it is
checked at the parent submenu for backward compatibility with IUP 2.x.
- Changed:
TITLE for submenus can now be changed after the element is mapped.
- Changed:
Children can be added or removed from menus even after the menu is mapped.
- Changed:
menus can now be dynamically changed even after mapped.
Images
- New:
support for 24 and 32 bpp images using IupImageRGB
and IupImageRGBA constructors.
- New:
"UPARROW" cursor in Motif. New cursors "RESIZE_NS" and "RESIZE_WE". Updated
cursor documentation with pictures of all pre-defined cursors.
- Changed:
the automatic generation of inactive images for a more smooth one, still
using a modified version of the background color to create the disabled
effect.
- Changed:
IupImageLibOpen will now only register names, but will not load the
images. New 32bpp images for Windows. GTK aliases are also available. Many
new images. IupImageLibClose
removed, loaded images will now be automatically unloaded.
Keyboard
- New:
MODKEYSTATE global attribute in all drivers.
- New:
key definitions: K_acute, K_ccedilla, K_Print, K_Menu.
- New:
key definitions for the system key modifier K_y*. In Windows this is the
Windows key and in Mac this is the Apple key.
- New:
CANFOCUS attribute for IupButton, IupTogle,
IupText, IupCanvas
and IupVal.
- Changed:
SHIFTKEY and CONTROLKEY are now available in all drivers.
- Changed:
Removed the conflicts: K_BS=K_cH, K_TAB=K_cI and K_CR=K_cM. New key code
macros iup_isShiftXkey, iup_isCtrlXkey,
iup_isAltXkey and iup_isSysXkey.