WDL (whittle)
old versions
WDL is a free and open source C++ library that is designed to be easily used by other code.
Latest version:
Old versions:
WDL v2009.07.04
- WDL_SharedPool optimizations
- SWELL: Fixes to carbon window hosting
- SWELL: drop list tweaks
- WDL_PtrList: fixed FindSorted() compilation on VC2008
- Added VC2010 projects for LICE etc
WDL v2009.07.02
- SWELL: mouse positioning updates (with synergy2 detection)
- SWELL: WM_CTLCOLOR*, WM_DISPLAYCHANGE support
- SWELL: BS_LEFTTEXT support for checkboxes
- SWELL: Fixed menu item updating for top level submenus
- SWELL: Implemented TreeView_HitTest
- SWELL: Exposed API for SetOpaque
- SWELL: nifty child window debug/diagnostic mode
- SWELL: (default) options to use non-round buttons etc
- SWELL: Fixed BitBltAlpha() for LICE sysbitmaps
- SWELL: Carbon hosted window updates (no menu, activation fixes for BFD2, etc)
- LICE: 8-bit PNG loading, JPG load from resource support
- LICE: optimized source alpha w/ constalpha=1.0, other cases
- virtwnd: listbox text drawing updates
- LICE: LICE_CachedFont fixes when using both cached fonts and OS rendering
- WDL_FileRead: support for synchronous unbuffered reads
- WDL_FileRead/Write: OS X native open()/pread/mmap support (large files and unbuffered reads etc)
- WDL_String: safer Get() for empty strings (returns read-write pointer)
- WDL_PtrList: FindSorted / InsertSorted, EmptySafe()
- WDL_Queue: optimized Compact() to autodetect pointless compacts
- WDL_MergeSort: optimized for in-order data (stays in place)
- EEL: safer locking of RAM
- IPlug: better bitmap caching, jpg loading, x64 support, OS X udpates
- AudioBufferContainer: supports wet/dry
- UTF8 support fixes
- Added WDL_AssocArray
WDL v2009.04.16
- UTF-8 support, win32_utf8.cpp for Win32 support (SWELL gets it automatically)
- LICE: line and circle updates for fractional coordinates
- LICE: preliminary SVG stuff
- LICE: CachedFont updates (can render natively if possible and desired, better owned font support)
- LICE: scaled blitting downsizing uses special filtering
- LICE: disabled experimental GL extensions by default
- LICE: better bezier stuff
- IPlug: OSX URL update, VST parameter index validation, other updates
- virtwnd: listbox improvements (horizontal mode etc)
- SWELL: preliminary WM_CTLCOLORDLG support, dialog background updates
- SWELL: better default button sizing
- PtrList: InsertSorted() and FindSorted() methods
- wndsize: margin querying api
- LAME support handles mono signals better, better search paths
- added basic blowfish implementation
- added basic IRC line parsing/formatting functions
- added incomplete non-working SHM datapipe class
- convolution engine updates
WDL v2009.01.18
- restored LICE bitmap ABI for compatability with older WDL versions
- Convolution engine optimizations and bugfixes, slightly updated impulse API
- simple reusable pitch shifter/time stretcher added
- WDL_Queue autocompact optimizations
- ADPCM decoder (IMA + MSADPCM + cADPCM), IMA/cADPCM encoder
- virtwnd comboboxes support SUB tags
- Vorbis encoder supports multichannel encoding
- Added LICE_DashedLine
- LICE_LoadPNGFromNamedResource() for OSX
- iPlug: added images for example
- LICE: Preliminary work for allowing LICE operations to be GL accelerated
- LICE: added effect names to test application
- LICE: added preliminary SVG support
- SWELL: Imagelists no longer free their bitmaps (to match win)
- WDL_WndSizer: reduced chance of HDWP leaks when invalid windows are stored
- Virtwnd: grayed state for buttons
- SWELL fixes for BitBlt/StretchBlt() with certain coordinates
- LICE HSV combining blend modes
- Plush2 multitexture fixes, fixed source-alpha modes
- Virtwnd: improved ordering of notification calls to allow deleting a vwnd from a command message
- WDL_String optimizations for empty strings
- LICE: line drawing improvements (changed signature of LICE_Line to use integers)
- SWELL: start on GTK implementations, far away from useful though
- EEL2 fixes for recent GCC versions on Linux, constness
- Added WDL_HeapBuf copy constructors
- LICE: RGB/HSV colorspace conversions
- LICE: overlay blend modes
- LICE: Better bezier drawing
- LICE: improved circle/arc drawing routes
WDL v2008.11.15
- LICE JPEG loading fixes, JPEG writing, PNG writing byteorder fixes
- LICE_FillCircle() (needs optimizing)
- LICE_LoadImage, LICE_GetImageExtensoinList(),and LICE_CmpBitmap()
- LICE test app has new "fly" demo
- LICE: fixed bug in LICE_SubBitmap
- JNetLib: optional interface modes so you can easily reuse jnetlib across modules
- LICE: bitmaps no longer flipped on OS X, made isFlipped() non-virtual to enable better compile-time optimization
- LICE: reduced image resize heap thrashing
- virtwnd detects at load whether backgrounds have alphachannel info in each section
- virtwnd backgrounds disable filtering when not stretching
- LICE: optimizations for 50/50 fills, fast unfiltered stretchblt, etc
- virtwnd overhauls (removing HICON use)
- LICE: .ico loading overhaul, support for OS X
- SWELL: faster BitBlt() support
- LICE_CachedText OS X fixes
- LICE: LICE_LoadBMP() OS X support
- SWELL: GetObject() API subset
- LICE_MultiplyAddRect updated documentation and internals
- LICE_IFonts can own/destroy HFONTs
- LICE: Fixed a lot of small accuracy bugs
- LICE: PCX reading support
- Plush2: fixed singletexture mode when only multitexture compiled in
- Plush2: fixed repeating textures in bilinear mode
WDL v2008.10.30
- Wndsizer: margin support
- Virtwnd: now uses LICE almost exclusively to draw controls
- Added Plush2: a port of the old 8bpp 3D rendering engine to a C++, 24 bit, LICE-combining multitexture capable colored lighting rendering engine
- Added LICE_FillTriangle(), LICE_HalveBlitAA(), fixed bug in LICE_StretchedBlit()
- Added iplug, a VST/AU plug-in framework
- LICE: LICE_SubBitmap for easy clipped rendering
- LICE: Added LICE_DrawRect(), LICE_DrawGlyph(), fast tiny circle drawing (glyph based), optimizations to internals
- LICE: Added LICE_IFont and LICE_CachedFont() for quick drawing and drawing to non-sysbitmaps. Also has certain useful other effects.
- LICE: Added LICE_DrawBezier
- Virtwnd: item backgrounds can now specify (with 255,255,0,255) outside-areas for some controls
- Added mergesort.h
- Added fast sinewave genereator (sinewavegen.h)
- SWELL: Keyboard fixes
- SWELL: Changed the way ScrollWindow() is implemented (scrolls children)
- Virtwnd: fixes for large canvas drawing
- Tweaks all around to reduce memory use (WDL_String gets WDL_HeapBuf granularity options etc in constructor)
- SWELL: Fixed MK_* VK_* bugs
- Win32_Curses updates, better OS X compatability, block cursor
- SWELL: ShowWindow(SW_HIDE) DestroyWindow() deal with focus better now
- Virtwnd: support for querying painter info, etc
- audiobuffercontainer fixes, optimizations
- Virtwnd sliders can optionally always send notifications on first click
- Overhauled pooling classes to be more general and reusable
- SWELL: Improved EndDialog() processing
- SWELL: Default menu for windows, modal windows
- SWELL: made GDI pooling threadsafe (Rosetta on 10.5 requires it)
- SWELL: fixed shift+mousewheel being sent correctly
- Fixed issues with Vorbis encoding-EOF-ness for NINJAM, added Vorbis comment support
- Cleaned up WDL_Queue's endian-converting functions
- Fixed WDL_String::Ellipsize()
- Added EEL2, a fast expression evaluator/code compiler that supports x86, x64 and PPC, MSVC and GCC.
- WDL v2008.07.27
-
- SWELL: fixed an issue with OS X hanging on fractional window positions
- Added WDL_String::Ellipsize()
- Win64 compatability, wdl_types.h has GetClassLongPtr() etc defines for MSVC6/OSX
- SWELL: GDI object pooling to reduce heap thrashing
- wndsize: fixed window positioning bug when used in SWELL.
- SWELL: LVNI_SELECTED support
- SWELL: better support for 64 bit OS X 10.5.
- VirtWnd slider mousewheel fixes
- SWELL: Treeview API improvements
- Added WDL_DLGRET for DLGPROC return type to ease compiler differences (use instead of BOOL CALLBACK or UINT_PTR CALLBACK)
- added win32_curses super-basic curses emulation for windows GUI
- LICE bitmap allocation changes (safer failures)
- SWELL: fixed GetCursorPos()/SetCursorPos() relationships
- SWELL: WM_MBUTTON* support
- Heapbuf can have optional small pre-allocations, heapbuf trace mode (to monitor heap use)
- LICE: Better bezierness
- SWELL: BitBltAlpha() and BitBltAlphaFromMem()
- WDL_FileWrite: fixed GetSize() at eof before flushing
- SWELL: many more bugfixes, initial work on 64 bit support, more
- Virtwnd: userdata for all virtwnd support
- WDL v2008.05.05
- SWELL updates (HUGE update including php to convert dialog resources too)
- LICE: support for quadratic nurbs (yay schwa)
- fileread: better handling of errors in async mode
- WDL v2008.02.09
- lineparser improvements
- slightly faster drawtext, text cleanups
- virtwnd buttons only refresh on changes of button images
- virtwnd buttons support overlay outlines
- SWELL: php converter for menus: .rc to cpp
- SWELL: cursor hiding support
- wndsize: fix for when no window set
- lice: png write support (thanks cryptomail)
- shoutcast source: better encoder reinitialization, IRC channel support
- FFT: more define options
- convolution engine: fixed some bugs, added test app, _Div mode which allows high-cpu ZL operation
- LICE: flipped surface support for arcs
- WDL v2007.12.18
- SWELL: BM_SETCHECK support for buttons, basic FindWindowEx() emulation, better control font size selection
- SWELL: Basic ScrollWindow() emulation
- LICE: Updated LICE_IBitmap to include getDC()
- SWELL: GetDC(), GetWindowDC() improvements, GetSystemMetrics()
- SWELL: better WM_MOUSEWHEEL, WM_CONTEXTMENU message propagation
- SWELL: WM_NCCALCSIZE, WM_NCHITTEST etc support
- SWELL: basic _controlfp() support for rounding control (on x86)
- WDL v2007.12.09
- SWELL: updated documentation in swell.h, GlobalAlloc supports GMEM_FIXED
- WDL v2007.12.03
- SWELL: GetProp API support, GetDC/GetWindowDC now usable during WM_PAINT/NCPAINT (they get the same HDC as BeginPaint)
- SWELL: dialogs can now have their window procedures subclassed, WM_NCPAINT support
- SWELL: fixed EnumClipboardFormats sometimes getting in an infinite loop
- SWELL: big DrawText overhaul (now uses NSAttributedString to draw)
- SWELL: added a bunch more compatibility defines to swell.h
- WDL v2007.11.23
- SWELL: tons of menu fixes, dialog fixes, API extensions, more. too much to list.
- LICE: LICE_line supports flipped surfaces
- SWELL: Owned window support, tons of updates
- Virtwnd: support for controls eating mousedowns without capturing
- WDL v2007.11.09
- Fixed distribution making to include more docs/etc
- LICE: Test app now uses SWELL to run on OS X, included OS X example test project
- SWELL: Extensive updates for child dialogs, modal/modeless dialogs (mouse messages, painting, etc etc)
- SWELL: Modal/Modeless windows now support having their own menus (via GetMenu/SetMenu)
- SWELL: Added user-defined control classes for dialog template loading
- Updated GIFlib config.h for OS X support
- WDL v2007.10.30
- LICE: Added bezier drawing (schwa)
- LICE: GIF, JPEG loading (included JPEG library and GifLib)
- SWELL: WM_PAINT/BeginPaint/EndPaint emulation for child dialogs
- SWELL: SendMessage for windows that support it, made virtwnd use sendmessage
- SWELL: 3-state checkboxes, SetWindowLong improvements, fake *Capture, more
- SWELL: DialogBox/CreateDialog emulation, timer fixes, tons more
- WDL v2007.10.24
- SWELL: DialogBox emulation, timer fixes, more
- LICE: scwha added LICE_ClipLine()
- WDL v2007.09.18
- virtual window system cleanups, sliders have mouse-hiding ctrl+ modifier mode
- virtual window system listbox custom drawing
- virtual window system, other improvements
- filewrite recovers from asynchronous failures from threads quitting
- pcmfmtcvt: corrected non-standard pcm format conversion
- LICE: fixed circle drawing with vc6 (template bug)
- LICE: faster rotating blit (fixed point)
- WDL v2007.09.01
- virtwnd: sliders can have centerline color defined in their skininfo
- LICE: faster more-fixed-point mode for LICE_ScaledBlit
- LICE: LICE_ScaledBlit properly obeys using a subimage source (and wont filter from outside)
- added db2val.h for easy dB<-->linear scale conversion
- virtwnd: stuff to let control bgs and window bg images have pink lines to define unstretched edges
- virtwnd: added listbox control
- LICE: defines for disabling Dodge, Add blend modes
- LICE: updated deltablit, added transformblit
- LICE: made LICE_FillRect support LICE_MODE_USE_ALPHA
- WDL v2007.08.21
- LICE: added LICE_BLIT_MODE_DODGE (thx schwa)
- LICE: added LICE_Blur, overloaded LICE_Blit() with better parameters
- LICE: added LICE_FillRect()
- filewrite: fixed GetSize() after flushed and unflushed writes in async mode
- virtwnd: made static text labels not refresh if text did not change
- WDL v2007.08.01
- WDL v2007.07.23
- WDL v2007.07.09
- WDL v2007.07.08
- WDL v2007.07.03
- WDL v2007.06.30
- WDL v2007.06.27
- WDL v2007.06.17
- WDL v2007.05.09
|
|