U++ / News: Recent posts

U++ 2017.2 released

2017.2 (rev 11540) (Dec 2017)

Core
New AsyncWork class - U++ future-alike tool
CoWork: Exception propagation from worker threads, job cancellation support.
Bits class optimized, it is now possible to set multiple bits (count parameter)
WebSocket refactored for asynchronous operation
UTF-32 support functions, UnicodeCompose and UnicodeDecompose functions, support for UTF16 surrogate pairs
DeleteFolderDeep now deletes symlinks
MakeOne function (alternative to One::Create)
LoadFromFile, StoreToFile - Event variant
ReverseRange and SortedRange
Server Name Indicator support in Socket and HttpRequest
SSL1.1 API support
RegisterGlobalSerialize... read more

Posted by Mirek Fidler 2017-12-14

U++ 2017.2rc1 released

2017.2 (rev 11427) (Nov 2017)

U++ now requires C++14 compatible compiler.

Core
New AsyncWork class - U++ future-alike tool
CoWork: Exception propagation from worker threads, job cancellation support.
Bits class optimized, it is now possible to set multiple bits (count parameter)
WebSocket refactored for asynchronous operation
UTF-32 support functions, UnicodeCompose and UnicodeDecompose functions, support for UTF16 surrogate pairs
DeleteFolderDeep now deletes symlinks
MakeOne function (alternative to One::Create)
LoadFromFile, StoreToFile - Event variant
ReverseRange and SortedRange
Server Name Indicator support in Socket and HttpRequest
SSL1.1 API support
RegisterGlobalSerialize... read more

Posted by Mirek Fidler 2017-11-05

U++ 2017.1 released

U++ 2017.1 (rev 10804) (Jan 2017)

This is the first release of U++ that requires C++11 compatible compiler. The main focus was Core, adding many enhancements allowed by C++11 and improving parallel programming support. We, also didn't forget about Android as we ported Core library on that platform.

Changelog

Core

  • Original U++ Callbacks are deprecated and replaced with Function with better lambda support.
    Begin/End methods are now renamed / deprecated in favor of (standard) begin/end.... read more
Posted by Mirek Fidler 2017-01-31

U++ 2015.2 (rev 9251) released

The main focus of this release was C++ parser and Assist++ features and Android applications builder in TheIDE (library does not yet support Android though).

Core

Improved C++11 support.
Leap second of 2015 added to time routines.

GUI programming & graphics

Improved support of UHD displays.
PdfDraw now supports urls (e.g. when converting QTF/RichText to PDF).
RichText/QTF now support round borders for table cells.
ScatterCtrl: new features.... read more

Posted by Mirek Fidler 2015-12-01

U++ 2015.1 (rev 8227) released

U++ is BSD licensed C++ cross-platform rapid application development framework focused on programmers productivity without sacrificing runtime performance.

Overview

New features for release 2015.1 (rev 8227)

Core

  • U++ abandoned "default pick" semantics for containers. The transfer semantics now has to be specified explicitly, either as 'pick' or 'clone' (this is enforced in C++11 mode, in legacy mode old behaviour is maintained and pick/clone are optional).... read more
Posted by Mirek Fidler 2015-03-04

U++ 5485 released

This is hotfix release, fixing several minor issues of 5431.

Posted by Mirek Fidler 2012-10-28

U++ 5431 released

What is new in version 5431:

The focus of this release was server programming. The main new feature is "Skylark", lean and mean U++ based web development framework.

Core
- String class has been further optimized for improved Cat performance.
- Id class was refactored to better support multithreded programming.
- STATIC_ASSERT introduced for compile-time checks.
- TCP/IP and HTTP was refactored and integrated into Core, providing new TcpSocket, IpAddrInfo, HttpHeader and HttpRequest classed (effectively obsoleting Web package).
- Value was refactored and optimized, now using small value optimization technique.
- Value got Xmlize (conversion to/from XML) and Jsonize (conversion to/from JSON) support.
- Date now has operator++/--.
- Exit is now equivalent of C exit function, implemented using exception trow to *_APP_MAIN and C++ friendly.
- Thread now has AtExit support.
- .ini parameters now can be optionally encapsulated using INI_* helpers.
- Sort algorithm was refactored, works about 10% faster.
- LOGHEX and DUMPHEX logging macros provided for logging Strings in hexadecimal form.
- LoadFromJsonFile and StoreToJsonFile jsonize object from/to files.... read more

Posted by Koldo 2012-10-22

U++ 4193 released

What is new in version 4193:

- "Rainbow" technology decouples U++ GUI from host platform. It is now possible to develop new GUI implementation without changing core U++ files. "Framebuffer" package uses Rainbow to implement GUI for trivial RGBA framebuffer (with keyboard and mouse inputs).
- New command line utility "umk" - GUI independent, U++ package builder: umk.
- Docking package was adopted to main source tree.... read more

Posted by Koldo 2011-11-28

U++ 3211 released

What is new in version 3211:

TheIDE
- SSE2 as Option in main config, templates now include SSE2 as default
(RM #9).
- new function - convert selection to ASCII.
- Main package configuration editor shows structured flags accepted by
packages.
- Replaced QuickTabs with TabBar, reorganized Environment dialog.
- Allow conditional breakpoints.
- Support for CLOB columns in .sch file (#14).

Library... read more

Posted by Koldo 2011-02-18

U++ 2791 released

What is new in version 2791:

Core
- There are now new templates Tuple2 - Tuple4.
- Stream class got new methods Peek and PutPtr intended for optional
optimizations.
- In Vector and Array template classes, interface was changed so that all
Add methods are now returning the reference to the element inserted.
- String and WString has new Replace method.

Draw
- plugin/gif now has support for animated gifs, Raster and Raster encoder
have new GetDPI and SetDPI methods. DPI information handling for png, tif
and jpg was fixed.
- AttrText utility class has new NormalInk method and supports conversion
from Value.... read more

Posted by Koldo 2010-10-18

U++ 2467 released

What is new in version 2467:

Core
* [W]String got new variant of ReverseFind method.

CtrlCore
* There is a new static method Ctrl::GetEventId to help identify individual
GUI events, intended for use in caching schemes.

CtrlLib
* Update system was parametrised.
* Handling of active file type in FileSel was improved.
* Splitter now has WhenSplitFinish.

PdfDraw
* Got support for fill patterns. ... read more

Posted by Koldo 2010-06-09

U++ 2361 released

What is new in version 2361:

theide:
* Packages now sorted by directory closeness to main package directory,
names later - puts main package nest or main package subpackages first
in the list

ArrayIndex:
* Added Detach, PopDetach

CtrlLib:
* Added ArrayCtrl WhenScroll
* ColumnList: AutoHideSb
* FileSel: list is autohide
* EditField ReadOnly Ctrl+C fix
* DocEdit: NoEofLine
* RichEdit now supports dropping Image files ... read more

Posted by Koldo 2010-05-04

U++ 2232 released

What is new in version 2232:

theide:
* Sorting of package has been improved, placing project packages first
* Insert menu now has typedef ... CLASSNAME entry.
* FileSel was improved by adding Places with common directories.

Core:
* XmlRpc has improved error handling.
* Xmlize now supports all Core Value types and has got support for Value
serialization.
* XmlParser has got new Peek methods. Socket has new GetPeerAddr method.
* CParser now provides the information about current column.... read more

Posted by Koldo 2010-03-16

U++ 2070 released

TheIDE:
* User interface for Find and Replace was significantly reworked
* Current editor line is now highlighted in the left bar.

Core:
* Support for Win32 .lnk files (GetSymLinkPath function,
FindFile::IsSymLink method) - same interface as for Posix symlinks.
* ConvertDate has new Truncate option (truncates Time to Date),
corresponding StdConvertDateTruncate global Convert added.

CtrlLib:
* SliderCtrl widget, has new Jump method.
* ArrayCtrl class has new WhenMouseMove Callback.
* EditField has new WhenEnter callback.
* TabCtrl has new NoAccept option... read more

Posted by Koldo 2010-02-15

U++ 1952 released

What is new in version 1952:

TheIDE:
* Improved installation in Win32 with support for the latest Win32 SDK.
* Helpsystem has vastly improved searching capabilities.
* Build process now supports new link options - Posix releases now use
"gc-sections" linker option to dramatically reduce the size of resulting
binaries (up to 40%).

CtrlLib:
* File selector (FileSel class) got networking support in Win32.
* TrayIcon in X11 now supports notifications.
* TopWindow in X11 now supports SetAlphs. ... read more

Posted by Koldo 2010-01-26

U++ 1824 released

What is new in version 1824:

Core:
* XmlRpc package adds support for XML-RPC based webservices.
* LanguageInfo in Core is was completely refactored.

TheIDE:
* Autosetup now recognizes Win32 SDK 7.0.

Bazaar:
* GoogleTranslator: New version.
* Functions4U: New package with additional functions to complement Core and CtrlLib.
* Controls4U: New package with additional graphic controls.
* SysInfo: Improved Unicode support.

Posted by Koldo 2009-12-21

U++ 1713 released

What is new in version 1713:

theide:
* .t files are now saved with strings converted by escaping >127 characters
(and back on loading). This fixes venerable problem of UTF-8 string literals
in CJK Windows and MSC compiler.

CtrlLib:
* TreeCtrl InsertDrop now returns ids of inserted nodes.
* A new set of utility functions that simplify selecting files introduced
(see http://www.ultimatepp.org/src$CtrlLib$FileSelUtil$en-us.html)
* HeaderCtrl columns now can have a tooltip
* SliderCtrl now allows reversed orientation (thanks avpavp!)... read more

Posted by Koldo 2009-11-25

U++ 1659 released

What is new in version 1659:

Library
* Core: GetUtcTime
* Core: New Split variant with String delimiter
* PostgreSQL: GetInsertedId now supported for tables with primary key 'id'
* Core, CtrlLib: ConvertDate, ConvertTime now have Default method -> propagates to date/time widgets as well...
* Core: ConvertTime Min, Max
* CtrlLib: MenuBar WhenOpenSubMenu, WhenCloseSubMenu callbacks
* Sql, SqlExp: Sql::InsertNoKey(Fields) ommits first column - intended for key with autoincrement... read more

Posted by Koldo 2009-10-26

U++ 1607 released

What is new in version 1607:

Library
* Draw: DisplayWithIcon (Display that adds an icon to any other Display)
* Draw: AttrText now has 'SetImage' (places the icon to the left of text)
* CtrlLib: DropTree widget
* Web: void AttachSocket(Socket& socket, SOCKET s, bool blocking)
* MSSQL: IdentityInsert helper (bypass of IDENTITY column insertion)
* CtrlCore: RegisterSystemHotKey (system-wide hotkey)

Posted by Koldo 2009-10-05

U++ 1579 released

What is new in version 1579:

Library
* Core: Added support for many various 8-bit encodings
* Geom: Added new Computational Geometry algorithm: 2D convex hull
calculation (ConvexHullOrder)
* Sql: SqlExp, SqlSelect AsTable, Joins accept SqlSet
* RichText: Optimized by caching paragraph data and layout
* Draw, plugin/tif: Added GetActivePage support
* Fixed a lot of minor bugs

Posted by Koldo 2009-09-22

U++ 1517 released

U++ is BSD licensed C++ cross-platform rapid application development
suite focused on programmers productivity without sacrificing
runtime performance.

What is new in version 1517:

* Major overhaul graphics infrastructure is finished, U++ is
now capable of headless drawing operations (e.g. drawing graphics
and text into .png files in console applications, without X11)
(example: http://www.ultimatepp.org/reference$ConsoleDraw.html)... read more

Posted by Koldo 2009-08-18

U++ 1314 released

U++ is BSD licensed C++ cross-platform rapid application development
suite focused on programmers productivity without sacrificing
runtime performance.

What is new in version 1314:

Library:
CtrlCore:
Fixed several X11/Compiz/SCIM compatibility issues

RichText:
QTF: Added text-type rich object format

GridCtrl:
Added WhenMoveRow, CancelMove
Improved search results highlighting

theide:
Import directory source tree into package
Support for multiline svn commit messages
Assist++ now supports SQL schema files
FileTabs now persistent
Non-fixed pitch fonts allowed in editor (used as fixed...)

Posted by Koldo 2009-06-17

U++ 1254 released

U++ is BSD licensed C++ cross-platform rapid application development
suite focused on programmers productivity without sacrificing
runtime performance.

What is new in version 1254:

Library:

- Various improvements in SQL related stuff (SqlPerformScript,
SqlBinary enable for PGSQL)

TheIDE:

- Highlighting of .sch and .sql files
- Find in files now has separate output console
- Select package dialog 'All' option replaced by the selection of more
understandable options, main packages now displayed bold

Posted by Koldo 2009-06-01

U++ 1205 released

U++ is BSD licensed C++ cross-platform rapid application development
suite focused on programmers productivity without sacrificing
runtime performance.

Version 1205 includes:

Library:

- New GUI multithreading architecture

TheIDE:

- Layout designer: option to resize dialog without springs
- No more confusing switches of .lay, .iml to text mode (instead designer)
- One more redesign of code navigator
- Ctrl+Click onto symbol jumps to its definition
- Package selector now shows the nest

Posted by Koldo 2009-05-18

U++ 1124 released

- Refactored CodeNavigator, search symbol (Ctrl+Q) now copies current id search field
- Change in SetDateFilter format, cleanup in related docs
- Improved translation docs
- Added runtime check for serializing RichValue with missing Register
- Docking: CreateDockable<T> now returns type T
- mrjt's MultiList now merged into ColumnList
- TabBar: Tab Stacking and sorting added. Other changes.
- Drawing refactored

Posted by Koldo 2009-05-04