Lazarus 0.9.28 release notes
From Lazarus wiki
Lazarus 0.9.28 is not yet released. This page is under construction!
- commits: xxx
- log: svn log -r xxxx:xxxx
- resolved bug tracker issues: xxx
LCL Interfaces major changes
- Gtk2 is now default widgetset on linux
- Windows CE: Implemented TCalendar, TFloatSpinEdit, TOpenDialog and TSaveDialog.
- Windows Vista, Window 7: reimplemented TBitBtn, TPopupMenu, TMainMenu drawing, fixed problems with auro snap feature.
LCL major changes
- TFrame was added
- TPen: cosmetic/geometric, Join Style, End Cap Style. For more information, see blog.
- Most of component properties now have default values => smaller .lfm files.
- TMonitor class: multi-monitor support.
- Refactoring of LCL-Interface interface interoperability => size of empty form application was reduced by 17-18% (qt, win32)and 15-16% for Gtk applications.
- TreeView component got editing support and misc visual enhancements.
- new properties: TBitBtn.GlyphShowMode, TApplication.ShowButtonGlyphs which turn visibility of glyphs on buttons for every single button or for whole application. For more information, see blog.
- New components: TShellTreeView - A TreeView that shows drives and directories and/or files, TShellListView - A ListView to show directories and/or files and TFilterComboBox - A ComboBox specialized in file name filters. Easy to use properties are provided to connect these components together.
LCL minor changes
- TColorBox, TColorListBox has been rewritten. Now they are more delphi compatible.
- TColorDialog.CustomColors has been added.
- Added support for os/2 bitmap format
- TCanvas.LineTo and TCanvas.MoveTo are no longer virtual. Override DoLineTo and DoMoveTo instead.
- TMouseButtons added mbExtra1, mbExtra2. Support for 5 Button Mouse (Windows only)
- New IDE options dialog combines environments, editor, codetools, code explorer, debugger and help options. A new api is introduced to add custom IDE settings into IDE options dialog.
- The deprecated jitform were removed. They used a dirty trick to create methods at design time. This trick is no longer needed.
- Project enhancements:
- Application icon has been added to the Project Options.
- Application icon, Version information and XP manifest are merged into one .rc file which has the same name as project main file (.lpi)
- .lrs files can now be saved/auto created in the project output directory (disable in Project / Project Options / Miscellaneous / save .lrs file in the output directory). This way you no longer need to store the .lrs files in the svn/cvs repository.
- more compiler options can be tuned using compiler options dialog:
- warnings and hints to be shown by compiler
- use external debug symbols file (-Xg)
- generate dwarf debug information (-gw)
- Editor enhancements:
- Display of "double width" fonts (Eastern, Japanese, Chinese, Arabic, ...)
- adjustable gutter
- showing line changes on gutter
- customizable colors for more elements
- code folding:
- support for $region
- more structures can be folded
- Copy and Paste folded text
- Saving fold info to session
- Configurable Mouse behaviour
- Highlighting of Begin/End pairs and "all occurrences of word under caret"
- code-templates have $param() macro. Allow editing several inputs for a template. See here
- Syncro-Edit mode: Edit several occurrences of the same word simultaneously. See here
- Persistent Blocks
- Option to Hide Mouse-Cursor, when typing
- Object inspector enhancements:
- customizable colors for more elements
- non-default values can be shown bold, better detection of default/non-default values
- information box
- show events for nested properties
- Form designer enhancements:
- non-visual components can be drawn with captions
- copy/paste component now includes events
- Jedi code formatter has been integrated (without an ability to customize settings at moment): use Ctrl+D to format your source code
- Codetools enhancements:
- empty published methods (event handlers) can be removed automatically on unit save
- renaming of some unit will update references in other project units
- remove unused units tool
- new code macro ofall. See the demo here.
- automatic block completion. For example adding end; after typing begin
- Code explorer enhancements:
- Code Observer section (misc notes about code), turn on in code explorer options
- Assembler window
- Call stack dialog improvements: icons for entries, сlicking on valid source line can be used to toggle breakpoint for that line, for those stack entries which have no source line an address is shown.
- Lines which are present in executable are shown as dots in the source editor gutter.
- New debugger exception notification dialog with ability to turn off notification for this exception and continue execution is shown instead of old exception dialog
- EAbort exception is added to the default list of exceptions to skip (all new projects skips this exception by default)
- Breakpoint properties dialog
- TNewIDEItemCategory is no longer abstract. RegisterNewItemCategory now expects a real category class, which is needed for localization. You can use instead: RegisterNewItemCategory(TNewIDEItemCategory.Create('Name of your category'));
- Most of dialogs were reviewed to support multi-monitor systems
- Glyphs are not visibile by default on all command buttons in Windows (can be changed in IDE options -> Desktop)
- new macros ProjOutDir and Env, see IDE Macros in paths and filenames
- Design-time series editor
- Marks for all types of series
- Function series
- "Chart sources", allowing, among other things, DB-aware series
- Initial implementation of 3D-look and multiple axises charts
- Many minor improvements and bugfixes
- Images in column titles