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

27 commits

Author SHA1 Message Date
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
Julian Storer
d779fa9759 The first working check-in of an iPhone build! Added an iPhone project for the normal juce demo, which runs.. although it isn't exactly designed for a hand-held form factor!
Also in this check-in is support for creation of custom Mac MIDI input and output devices, and an option to load URLs with the QuickTimeComponent
2009-11-13 16:17:22 +00:00
Julian Storer
ca727ec2bb Improvements to path rendering and fix for PathStrokeType generating incorrect paths for some shapes. Added OSX10.4 compatibility for new new typeface classes. 2009-11-10 17:45:06 +00:00
Julian Storer
4d000ff593 Rewrote EdgeTable so that it now always renders in perfect quality - this makes the old oversampling quality options defunct and I've removed them. 2009-11-09 22:46:18 +00:00
Julian Storer
405d934e68 Massive, long-overdue spring-cleaning and refactoring of the LowLevelGraphicsContext, Typeface and Font classes. Functions such as glyph rendering can now be handled directly by a native graphics context (and glyph rendering is now implemented natively on the Mac). The Typeface class is now an abstract base class with much minimal functionality, and platform-specific subclasses are used for font loading. A new class CustomTypeface lets you load and save typefaces in the old juce binary typeface format. For most people, these changes probably won't require you to alter your code, but you might need to change a few classnames in your code if you're using typefaces directly. 2009-11-09 12:00:18 +00:00
Julian Storer
1e1c9944c9 Removed methods Graphics::getCurrentFont and Graphics::getCurrentColour, because these methods will become impossible for future native drawing contexts. This required a couple of minor tweaks to LookAndFeel and Drawable methods. Also fixed native CoreGraphics drawing of transparent windows. 2009-10-31 15:26:22 +00:00
Julian Storer
1fc8f483e2 Tweaked lots of code to help things compile on the iPhone (still work-in-progress). 2009-10-12 13:30:04 +01:00
jules
4d16424d9c Rearranged the layout of the source tree, giving it a slightly flatter directory structure. Also fixed a small bug with DragAndDropComponents that was stopping the toolbar customisation working properly. 2009-08-22 21:57:23 +00:00
Renamed from src/juce_appframework/gui/graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp (Browse further)