1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-13 00:04:19 +00:00
Commit graph

57 commits

Author SHA1 Message Date
Julian Storer
a5cf4030f5 New class LeakedObjectDetector, and JUCE_LEAK_DETECTOR macros for spotting leakages in a neat, cross-platform way. Used these to replace all the old juce_UseDebuggingNewOperator stuff in all the classes. Also some drawable and component transform fixes. 2010-11-29 12:24:55 +00:00
Julian Storer
1629f9f66a Created a new method Graphics::beginTransparencyLayer(), to help with compositing semi-transparent rendering. 2010-11-26 17:29:27 +00:00
Julian Storer
b952084419 Workarounds for VC6. 2010-11-17 14:01:14 +00:00
Julian Storer
aef3203a28 Fixed an image resizing bug. Tweaked a couple of methods in KeyMappingEditorComponent and TableListBox to return references instead of pointers. Changed Component::contains() to take a Point rather than raw coordinates. Modernised some UI classes internally. Extended some internal graphics classes to handle affine transforms. 2010-11-15 14:04:01 +00:00
Julian Storer
8b92a43b27 Added platform-specific data to AudioPluginInstance. Fixed an image rendering problem in the software renderer. Added a minimum scale setting to TabbedButtonBar. 2010-11-10 20:39:34 +00:00
Julian Storer
377b9ff2c4 Added a couple of useful constructors to some stream classes. Replaced some old static functions with anonymous namespaces. 2010-10-26 16:46:19 +01:00
Julian Storer
4e1c66b02e Added an alpha setting to Components with Component::setAlpha(). Removed Component::fadeOutComponent method and instead refactored the ComponentAnimator class to provide fading in and out of the alpha level. Added a method Desktop::getAnimator() that provides a global instance of a ComponentAnimator so that there's no need to create your own. 2010-10-23 21:05:21 +01:00
Julian Storer
b161c0f437 Minor code clean-ups. 2010-09-01 19:15:20 +01:00
Julian Storer
ccd8566e96 Fix for iOS launching. Tweak for win32 font rendering. Added a File::hostApplicationPath flag. 2010-07-23 12:33:27 -05:00
Julian Storer
9f0c91196f Added method Image::getClippedImage(), which allows the use of images that refer to subsections of another image. This means that the the parameters to a couple of Graphics methods no longer need a clipping rectangle. Also dded a static Image::null object and another constructor for Image::BitmapData. 2010-07-09 13:35:50 +01:00
Julian Storer
2df522076b Improvements to mouse wheel response on the mac, allowing much better smooth-scrolling, and also mouse-wheel improvements in the Viewport class to make it respond more fluidly. Also misc small fixes and tweaks. 2010-06-15 19:57:55 +01:00
Julian Storer
0e59a56a51 Couple of minor changes to Line and Graphics methods. Small fix for mouse event handling. 2010-06-08 19:11:26 +01:00
Julian Storer
00b082caf6 New arrowhead and polygon methods for Path and PathStrokeType. Tweaked a few Path methods to take Line and Point objects instead of loose coordinate parameters. Various new geometric methods and more refactoring of Drawables. Misc fixes for CoreGraphics, AudioFormat. 2010-06-08 10:39:46 +01:00
Julian Storer
24673283eb Major change to the way the Image class works, making it use value semantics and internally shared data (see the forum notes for more info on this). Also minor changes to win32 browser plugin object ref counting and linux millisecond timers. 2010-06-01 18:01:13 +01:00
Julian Storer
1baaa016bd Tidied up some linux messaging code. Fixed a couple of small graphic bugs. 2010-05-30 12:56:29 +01:00
Julian Storer
8ff6737261 Major changes to the way Drawables are converted to ValueTrees (with more changes still to come in this area). Important fix to DirectoryIterator. Minor fix for ASIO. Jucer development. 2010-05-21 22:29:31 +01:00
Julian Storer
3f68ec0b84 Improved software glyph rendering. Misc fixes. 2010-05-15 22:30:43 +01:00
Julian Storer
1751beed57 Code clean-ups. Jucer development. 2010-05-12 23:42:49 +01:00
Julian Storer
f4a7a709ae Minor graphics speed optimisations. 2010-05-10 12:00:49 +01:00
Julian Storer
42666db484 Some win32 clean-ups. 2010-05-10 11:16:00 +01:00
Julian Storer
9a55b0291e Rewrite of software renderer to improve vertical line drawing speed. 2010-05-09 20:52:21 +01:00
Julian Storer
266494a1b9 Minor code clean-ups. 2010-05-08 18:16:09 +01:00
Julian Storer
082dff25dd Refactored the Line class to be templated (to update old code, just replace "Line" with "Line<float>"). Corrected a mac ppc build problem. 2010-04-26 15:47:21 +01:00
Julian Storer
27506c2120 Copyright notice update. 2010-04-23 09:37:13 +01:00
Julian Storer
61252d75c6 Added some compiler optimisations to the win32 graphics code in debug mode. 2010-04-14 11:40:25 +01:00
Julian Storer
b67c077f0d Minor code clean-ups. 2010-03-27 18:29:09 +00:00
Julian Storer
605e06946f MD5 fix. 2010-03-12 10:19:33 +00:00
Julian Storer
bc5a7a6b7e Updated VC6 project. Removed some unsafe templated casts from MemoryBlock and HeapBlock. 2010-02-25 18:31:06 +00:00
Julian Storer
9657241c10 Internal refactoring of mouse-event classes, as the first step towards multi-touch support. 2010-02-24 13:19:10 +00:00
Julian Storer
08eb852103 Minor code clean-ups. 2010-02-22 15:28:18 +00:00
Julian Storer
7bc24ae42a The Point and Rectangle classes are now templated, so can be used for either float or int co-ordinates. This means that wherever you've used these classes, you'll need to replace them with Rectangle<int> or Point<float> in your code. A couple of methods in Path have changed to take advantage of the new ability. 2010-02-07 00:52:30 +00:00
Julian Storer
b2e5ef2bd6 Minor code modernisations. 2010-02-03 19:05:03 +00:00
Julian Storer
63d3d8a77e New class: NamedValueSet, which is a simple container for named var objects. Removed the clunky get/setComponentProperty methods and replaced them a single method Component::getProperties(), which returns a NamedValueSet for that component - if you've used component properties in your code you might need to change your syntax, but this is a cleaner solution, and using var objects for the data is more powerful than the old, string-based implementation. Also fixed a Mac image rendering bug. 2010-01-29 10:31:12 +00:00
Julian Storer
e61e8f6775 Changed some 'int's to 'size_t's, to improve 64-bit compatibility. Also changed jmin and jmax to use templates, so they can take any type. These changes might mean that you'll need to add some more explicit casts to get your existing code to compile, but this is actually a good thing - it brought to light a few dodgy implicit casts in my code, and may do the same in yours. Also added a function roundToInt(), which replaces roundDoubleToInt() and roundFloatToInt(), but takes any size of floating point number (I've left the old roundDoubleToInt() and roundFloatToInt() functions there for convenience, but will probably remove them in the future). 2010-01-14 14:49:25 +00:00
Julian Storer
97035bb3a1 Removed the (rather pointless) granularity value from the array objects. Converted a few macros into functions and other misc code clean-ups. 2010-01-13 18:58:40 +00:00
Julian Storer
8bf4d88d97 Minor clean-ups. 2010-01-04 15:24:13 +00:00
Julian Storer
c22c06c80c New class: ScopedPointer, which auto-releases a pointer when it goes out of scope. I've used this extensively to replace a lot of pointer deletions with more RAII-style patterns. 2010-01-02 23:01:18 +00:00
Julian Storer
4ed1d791e5 New class HeapBlock, which provides a safe and object-oriented way to allocate heap space. I've used HeapBlocks to replace almost all uses of malloc/free throughout the codebase. 2010-01-02 14:55:44 +00:00
Julian Storer
8c988319ec Added ability for the File::hasFileExtension() to accept lists of extensions. Made rendering complex clip regions more efficient on Windows. Fixed the look and feel for some uses of popup menus. 2009-12-30 16:11:10 +00:00
Julian Storer
af7d523f4f Fixed stack allocation bug in optimised win32 builds 2009-12-21 11:49:38 +00:00
Julian Storer
80753f4c03 Lots of minor changes to prevent warnings. Small fixes to Path, AudioThumbnail, ValueTree, OutputStreams. Tweaks to convert Drawables to/from ValueTrees. New method to write XML to a stream. 2009-12-16 21:13:46 +00:00
Julian Storer
ce7def1f9d Changes for VC6 comptibility. Fixed a typo in BitArray::toString. 2009-12-11 10:57:31 +00:00
Julian Storer
9a39433405 Fixed a couple of tiny inaccuracies in the graphics code. 2009-12-03 22:52:35 +00:00
Julian Storer
4c31b704ed Fix for Graphics::drawImage and small change to the parameters of Graphics::drawImageTransformed - if you were using subregions of images, note that this method now treats them slightly differently. Previously, the transform was relative to the origin of the image, but now it's relative to the origin of the subregion. 2009-12-03 12:14:21 +00:00
Julian Storer
d6e3576234 Fixes for iPhone build and mac/iPhone CoreGraphics. Added ability to remove specified jobs from a ThreadPool 2009-12-02 14:21:33 +00:00
Julian Storer
ded840d456 Updated the demo to have a new graphics rendering test page - this tests a lot of the new graphics features and lets you swap between software/OS rendering engines. Also fixed a mac menu bug, and mac mouse event timestamps. 2009-12-01 22:25:38 +00:00
Julian Storer
01f109e857 More graphics updates - new class FillType, which is now used by DrawablePath to specify its colours. New methods Graphics::clipToPath and Graphics::clipToImageAlpha. Added dynamic Xinerama loading. 2009-11-30 12:02:51 +00:00
Julian Storer
f6a088961f Removed the Brush classes - everything they used to do can still be done by other methods in the Graphics class. Also did more optimising of the graphics contexts, both software and CoreGraphics. 2009-11-28 20:09:56 +00:00
Julian Storer
537b90de53 Fixed broken RGB colours in loaded images on PC. 2009-11-27 17:33:51 +00:00
Julian Storer
6fdde63a63 Big rewrite of the LowLevelGraphicsSoftwareRenderer class, adding internal support for complex clipping regions - this will temporarily make font rendering quite slow, until it gets re-optimised for this new design. Changed the Image class to remove the lockPixelData methods, and replaced these with an object Image::BitmapData, which is easier to use. 2009-11-26 21:36:45 +00:00