The Lazarus team is glad to announce the 0.9.22 release. This release is based on fpc 2.0.4.
This release can be downloaded from the sourceforge download page: http://sourceforge.net/project/showfiles.php?group_id=89339 Detailed list of changes: LazDaemon: a package providing components and IDE items to easily create windows services and linux daemons from Michael Van Canneyt Large improvements in LCL interfaces for carbon, gtk, gtk2, qt, wince and win32 converted iso translations to utf-8 and removed all non utf-8 translations Updated translations: brazilian: Antônio Galvão finnish: from Seppo Suutarla german: from Joerg Braun indonesian: from Zaenal Mutaqin italian: from Mario Bonati japanese: from Haruyuki Fujimaki polish: from Pawel russian: from Maxim Ganetsky slovak: from OI and helix84 spanish: from Jean Solis All interfaces: implementing setting global cursors (Screen.Cursor), loading custom cursors (from .cur files or from resources) and handling changing cursor while drag operation (DragCursor). Added shapes (as .cur and .lrs files) for missed system cursors (crDrag, crNoDrag, crMultyDrag, ...) gtk interface: omitting TComboBoxBox LM_CHANGED events during popup using default when gdk does not know the physical screen size, fixing crash on some laptops added menu items short cut labels, popup sub menu of menu bar font for TListBox items from sergkam gtk2 interface: fixed compilation for non X based display gtk2: improved synedit speed carbon interface: Improved fonts, key handling, modal forms, Carbon TTimer from Tom Gregorovic and Giulio Bernardi Removed fpcmacosall.pas, it is now part of FPC. win32 interface: Fixed openfiledialogs on windows 98 and earlier Use GetWindowLongW and SetWindowLongW for UnicodeEnabledOS (bug 8403) made LCLIntf.Rectangle and TCanvas.Rectangle compatible with Windows.Rectangle winapi function (bug 8342) Do not show designer windows in the taskbar Fixed focus after restoring a minimized window (bug 7946) Qt interface: Message box implementation by Philip Hess wince interface: several improvements from Roozbeh Added TTimer. Error dialogs now appear. Events are now working. Reverted all changes to make X button close the application: In wince X button should just minimize application, you have to manually add a feature to exit program. components: TAChart: from Philippe Martinole and Luis Rodrigues (bug 8269) trayicon: added support for qt added tootip and popup menu support for qt from Felipe h2paswizard: added tool to automatically add named types for implicit types multiple C header files can now be merged into one unit SimpleIDEIntf: for easy testing IDE plugins outside IDE IDE printing package from Darius macosx installer: include gtk2 widgetset, based on X for now rpm: using relative paths for desktop menu item, supporting more distributions lazbuild: implemented overriding global compiler filename codetools: local variable assignment completion: checking for Self and Result implemented include directives with sub paths code completion: implemented adding method declaration for method body at cursor (reverse class completion) added heuristic to scan the Makefile.fpc files of the FPC sources for better finding sources of FPC units added MacPAS mode specials: IFC, ELSEC, ELIFC, ENDC, defined identifier, undefined identifier, SETC, SETC name := value, out as parameter name, property as parameter name LCL: lots of test programs LCL: Form.RestoredLeft/Top is now read from Left/Top while the form is in wsNormal state. LCL: added property TCustomListBox.Count for Delphi compatability LCL: FileListBox mask defaults to '*' on windows too, so directories without . in the name can be found too. LCL: TCustomComboBox: do not fire OnSelect if ItemIndex is changed to -1 LCL: added TPointerToPointerTree.Remove LCL: TSpeedButton: moving glyph right, down when down LCL: TBitmap: freeing savestream on setting handle, added faster function to set handles: TBitmap.SetHandles LCL: published Borderspacing for DB controls (bug 8472) LCL: fixed FileUtil.FileIsExecutable to return false for directories (bug 8454) IDE: don't save existing unit to the test directory, even if it is part of the project (bug 8271) IDE: added file browse button in edit tool dialog (bug 8353) from David Guadagnini IDE: when adding a package for dragging a component onto a form, try the unit owner of the class first, before the package IDE: fixed check of FPC source directory, it doesn't require the compile sources anymore IDE: check if debugger path name is an executable to prevent problems like bug 8454 LCL: made TPopupMenu.Popup virtual (Delphi compatible, #8395) LCL: Added canvas gradientfill based on patch from David Guadagnini IDE: formeditor patch from Yury Sidorov show Exception message text is displayed when exception occurs in component's constructor. fixed AV when destroying component when its creation failed. LCL: published dragging related properties for TDBxxx components LCL: published TListbox.OnDragDrop and OnDragOver IDEIntf: improve checkgroup editor (patch from Salvatore Coppola) LCL: checkbox, radiobutton have ParentColor true by default (bug 8284) LCL: enable descendant grids to override DrawCellGrid LCL: made TGraphicControl.OnPaint proteced, TShape.OnPaint and TPaintPox.OnPaint public and fixed firing TShape.OnPaint (bug 8246) LCL: TTreeView: DisplayXXX functions now contain scrolledleft LCL: TCanvas.CreateBrush now uses TRANSPARENT and OPAQUE depending on Brush.Style=bsSolid LCL: implement calling TSpeedButton.Click for accelerator key (issue #7911, patch by Boguslaw Brandys) IDE: the first unit of a project is now automaticallly the main unit, if you dont want this: use MainUnitID:=-1 LCL: published T(DB)CheckBox.Color and ParentColor (bug 8185) LCL: removed RadialPie, renamed RadialPieWithAngles to RadialPie LCL: don't call OnHide/OnShow after minimizing/restoring (bug 7255) LCL: dbgrid: update active row if active record changed (bug 7934) LCL: changed TControl.ControlAtPos to use Flags IDE: message window: improved accesing treeview as list LCL: TTreeView: accelerated TTreeNode.GetNodeFromIndex accessing last nodes and accelerated TTreeNode.GetIndex, making it possible to use TTreeView as list with 100.000 items IDE: message window: replaced TListBox with TTreeView LCL: also published TDBComboBox.Color and ParentColor LCL: Application.MainForm is now set before form handle is created LCL: default value of TComboBox.ParentColor is false. LCL: published TComboBox.Color and TComboBox.ParentColor IDE: you can now register your own base classes for designer classes. Default registered classes are TForm and TDataModule. IDE: delete revision.inc from svn: it is recreated by svn2revisioninc anyway IDE: checking lfm files now check used units first IDE: .po files: auto removing double values IDE: generating .po files sorted and faster IDE: now searching designer ancestor class in units without .lfm files too IDE: packages: enabled auto generating .po files IDE: added Close Project menu item IDE: implemented loading .po files of packages IDEIntf: moved .po files to ideintf/languages IDE: code explorer doesn't expand treenode when you double click it (bug 8042) IDE: New tool for browsing all identifiers of whole packages and projects: View > Code Browser Note: The scanning is done in small steps on idle, so you have to create some events, like moving the mouse. Warning: When scanning with packages it will need a lot of memory IDE: added resourcestrings for IDE short cuts IDE: implemented auto creation .po files from .rst files after package/project compilation LCL: wrap AppProcessMessage in ShowModal in try .. except block to catch exceptions in event handlers like is done for Application.Run too (fixes 7207) IDE: updating source editor when highlighter file extensions have changed LCL: Added property TApplication.Active (#8083) IDE: added "Insert modified LGPL notice" (#7995) IDE: closing the Run Parameters Dialog with OK sets the modified flag of the project (bug 7692) LCL: OnResize and OnChangeBounds are now suspended until after OnCreate event IDE: project definitions are now automatically added to all directories in the unit search path (same for packages) LCL: added Delphi compatible TGraphic.Progress LCL: moved MouseEnter,MouseLeave from private to protected section for TCustomSpeedButton LCL: published TForm.OnClick (bug 8005) IDE: accelerated writing compiler output to terminal LCL: fix freezing app upon exception in modal form (issue #7207) LCL: TCustomEdit.AutoSelect, TCustomComboBox.AutoSelect/CharCase from Funky Beast LCL: improved stream of large objects (issue 7270) IDE: LazDoc: lazdoc paths can now be relative and can contain global macros for projects and packages LCL: made TCustomForm.IsShortcut virtual (bug 7921) LCL: TCanvas: added line methods with TPoint IDE: auto start of identifier completion now checks range operator .. and string constants IDE: added Find in files to the Find context menu in the source editor (bug 7683) LCL: moved TTranslateString to lcltype.pp LCL: added OnSelectEditor for dbgrid IDE: implemented auto adding package when setting TPicture property with TPicturePropertyEditor LCL: published TStaticText.TabStop IDE: environment option fpc path gives compiler name as example, not as prescription (bug 7812) LCL: published TStaticText.TabOrder IDE: fixed opening lpi as regular file (bug 7890) IDE: component palette: aligning buttons in multiple rows if there is enough space IDE: changed lazarus to use the widgetset it is compiled with as the default when building projects LCL: added WidgetSetName function to TWidgetSet. LCL: added TApplication.ApplicationType from Christian Ulrich IDE: give errormessages if renaming new Lazarus executable doesn't succeed from Yury And several hundred fixes and minor improvements. Mattias _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal