46 Commits (0e59a56a513cec92009d9eaf8aae450d1edd3ff2)

Author SHA1 Message Date
  Julian Storer 0e59a56a51 Couple of minor changes to Line and Graphics methods. Small fix for mouse event handling. 15 years ago
  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. 15 years ago
  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. 15 years ago
  Julian Storer 1baaa016bd Tidied up some linux messaging code. Fixed a couple of small graphic bugs. 15 years ago
  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. 15 years ago
  Julian Storer 3f68ec0b84 Improved software glyph rendering. Misc fixes. 15 years ago
  Julian Storer 1751beed57 Code clean-ups. Jucer development. 15 years ago
  Julian Storer f4a7a709ae Minor graphics speed optimisations. 15 years ago
  Julian Storer 42666db484 Some win32 clean-ups. 15 years ago
  Julian Storer 9a55b0291e Rewrite of software renderer to improve vertical line drawing speed. 15 years ago
  Julian Storer 266494a1b9 Minor code clean-ups. 15 years ago
  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. 15 years ago
  Julian Storer 27506c2120 Copyright notice update. 15 years ago
  Julian Storer 61252d75c6 Added some compiler optimisations to the win32 graphics code in debug mode. 15 years ago
  Julian Storer b67c077f0d Minor code clean-ups. 15 years ago
  Julian Storer 605e06946f MD5 fix. 15 years ago
  Julian Storer bc5a7a6b7e Updated VC6 project. Removed some unsafe templated casts from MemoryBlock and HeapBlock. 15 years ago
  Julian Storer 9657241c10 Internal refactoring of mouse-event classes, as the first step towards multi-touch support. 15 years ago
  Julian Storer 08eb852103 Minor code clean-ups. 15 years ago
  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. 15 years ago
  Julian Storer b2e5ef2bd6 Minor code modernisations. 15 years ago
  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. 15 years ago
  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). 15 years ago
  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. 15 years ago
  Julian Storer 8bf4d88d97 Minor clean-ups. 15 years ago
  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. 15 years ago
  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. 15 years ago
  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. 15 years ago
  Julian Storer af7d523f4f Fixed stack allocation bug in optimised win32 builds 15 years ago
  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. 15 years ago
  Julian Storer ce7def1f9d Changes for VC6 comptibility. Fixed a typo in BitArray::toString. 15 years ago
  Julian Storer 9a39433405 Fixed a couple of tiny inaccuracies in the graphics code. 15 years ago
  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. 15 years ago
  Julian Storer d6e3576234 Fixes for iPhone build and mac/iPhone CoreGraphics. Added ability to remove specified jobs from a ThreadPool 15 years ago
  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. 15 years ago
  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. 15 years ago
  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. 15 years ago
  Julian Storer 537b90de53 Fixed broken RGB colours in loaded images on PC. 15 years ago
  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. 15 years ago
  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! 15 years ago
  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. 15 years ago
  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. 15 years ago
  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. 15 years ago
  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. 15 years ago
  Julian Storer 1fc8f483e2 Tweaked lots of code to help things compile on the iPhone (still work-in-progress). 15 years ago
  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. 16 years ago
  jules eb32240e95 Updated the text of the copyright/license blurb at the top of each source file. 16 years ago
  jules 53fa161c1f fixed the return value from showNativeMessageBox on the Mac; added support for reading the SMPL block of a Wav file through the metadata; added a couple of missing JUCE_API declarations; optimised the low-quality image rescaling. 16 years ago
  jules 7dd28c93e2 linux window z-order fix; small change to make audio plugin host demo compile; fix for assembly language in graphics rendering on gcc. 16 years ago
  jules 47cf2369e5 16 years ago