@@ -34,11 +34,6 @@ namespace AiffFileHelpers | |||
#if JUCE_MSVC | |||
#pragma pack (push, 1) | |||
#define PACKED | |||
#elif JUCE_GCC | |||
#define PACKED __attribute__((packed)) | |||
#else | |||
#define PACKED | |||
#endif | |||
//============================================================================== | |||
@@ -49,7 +44,7 @@ namespace AiffFileHelpers | |||
uint16 type; // these are different in AIFF and WAV | |||
uint16 startIdentifier; | |||
uint16 endIdentifier; | |||
} PACKED; | |||
} JUCE_PACKED; | |||
int8 baseNote; | |||
int8 detune; | |||
@@ -106,14 +101,12 @@ namespace AiffFileHelpers | |||
} | |||
} | |||
} PACKED; | |||
} JUCE_PACKED; | |||
#if JUCE_MSVC | |||
#pragma pack (pop) | |||
#endif | |||
#undef PACKED | |||
//============================================================================== | |||
namespace MarkChunk | |||
{ | |||
@@ -64,11 +64,6 @@ namespace WavFileHelpers | |||
#if JUCE_MSVC | |||
#pragma pack (push, 1) | |||
#define PACKED | |||
#elif JUCE_GCC | |||
#define PACKED __attribute__((packed)) | |||
#else | |||
#define PACKED | |||
#endif | |||
struct BWAVChunk | |||
@@ -137,7 +132,7 @@ namespace WavFileHelpers | |||
return MemoryBlock(); | |||
} | |||
} PACKED; | |||
} JUCE_PACKED; | |||
//============================================================================== | |||
@@ -151,7 +146,7 @@ namespace WavFileHelpers | |||
uint32 end; | |||
uint32 fraction; | |||
uint32 playCount; | |||
} PACKED; | |||
} JUCE_PACKED; | |||
uint32 manufacturer; | |||
uint32 product; | |||
@@ -227,7 +222,7 @@ namespace WavFileHelpers | |||
return data; | |||
} | |||
} PACKED; | |||
} JUCE_PACKED; | |||
//============================================================================== | |||
struct InstChunk | |||
@@ -272,7 +267,7 @@ namespace WavFileHelpers | |||
return data; | |||
} | |||
} PACKED; | |||
} JUCE_PACKED; | |||
//============================================================================== | |||
struct CueChunk | |||
@@ -285,7 +280,7 @@ namespace WavFileHelpers | |||
uint32 chunkStart; | |||
uint32 blockStart; | |||
uint32 offset; | |||
} PACKED; | |||
} JUCE_PACKED; | |||
uint32 numCues; | |||
Cue cues[1]; | |||
@@ -354,7 +349,7 @@ namespace WavFileHelpers | |||
} | |||
} | |||
} PACKED; | |||
} JUCE_PACKED; | |||
//============================================================================== | |||
namespace ListChunk | |||
@@ -427,7 +422,7 @@ namespace WavFileHelpers | |||
uint16 data2; | |||
uint16 data3; | |||
uint8 data4[8]; | |||
} PACKED; | |||
} JUCE_PACKED; | |||
struct DataSize64Chunk // chunk ID = 'ds64' if data size > 0xffffffff, 'JUNK' otherwise | |||
{ | |||
@@ -438,14 +433,12 @@ namespace WavFileHelpers | |||
uint32 sampleCountLow; // low 4 byte sample count of fact chunk | |||
uint32 sampleCountHigh; // high 4 byte sample count of fact chunk | |||
uint32 tableLength; // number of valid entries in array 'table' | |||
} PACKED; | |||
} JUCE_PACKED; | |||
#if JUCE_MSVC | |||
#pragma pack (pop) | |||
#endif | |||
#undef PACKED | |||
} | |||
//============================================================================== | |||
@@ -128,7 +128,8 @@ private: | |||
private: | |||
JUCE_LEAK_DETECTOR (MyClass); | |||
};@endcode | |||
}; | |||
@endcode | |||
@see JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR, LeakedObjectDetector | |||
*/ | |||
@@ -278,6 +278,13 @@ namespace juce | |||
#define JUCE_MODAL_LOOPS_PERMITTED 1 | |||
#endif | |||
//============================================================================== | |||
#if JUCE_GCC | |||
#define JUCE_PACKED __attribute__((packed)) | |||
#elif ! DOXYGEN | |||
#define JUCE_PACKED | |||
#endif | |||
//============================================================================== | |||
// Here, we'll check for C++11 compiler support, and if it's not available, define | |||
// a few workarounds, so that we can still use some of the newer language features. | |||
@@ -28,15 +28,8 @@ | |||
//============================================================================== | |||
#ifndef DOXYGEN | |||
#if JUCE_MSVC | |||
#pragma pack (push, 1) | |||
#define PACKED | |||
#elif JUCE_GCC | |||
#define PACKED __attribute__((packed)) | |||
#else | |||
#define PACKED | |||
#endif | |||
#if JUCE_MSVC | |||
#pragma pack (push, 1) | |||
#endif | |||
class PixelRGB; | |||
@@ -84,6 +77,11 @@ public: | |||
forcedinline uint8 getGreen() const noexcept { return components.g; } | |||
forcedinline uint8 getBlue() const noexcept { return components.b; } | |||
forcedinline uint8& getAlpha() noexcept { return components.a; } | |||
forcedinline uint8& getRed() noexcept { return components.r; } | |||
forcedinline uint8& getGreen() noexcept { return components.g; } | |||
forcedinline uint8& getBlue() noexcept { return components.b; } | |||
/** Blends another pixel onto this one. | |||
This takes into account the opacity of the pixel being overlaid, and blends | |||
@@ -275,7 +273,7 @@ private: | |||
#else | |||
uint8 b, g, r, a; | |||
#endif | |||
} PACKED; | |||
} JUCE_PACKED; | |||
union | |||
{ | |||
@@ -284,7 +282,7 @@ private: | |||
}; | |||
} | |||
#ifndef DOXYGEN | |||
PACKED | |||
JUCE_PACKED | |||
#endif | |||
; | |||
@@ -326,6 +324,10 @@ public: | |||
forcedinline uint8 getGreen() const noexcept { return g; } | |||
forcedinline uint8 getBlue() const noexcept { return b; } | |||
forcedinline uint8& getRed() noexcept { return r; } | |||
forcedinline uint8& getGreen() noexcept { return g; } | |||
forcedinline uint8& getBlue() noexcept { return b; } | |||
/** Blends another pixel onto this one. | |||
This takes into account the opacity of the pixel being overlaid, and blends | |||
@@ -450,7 +452,7 @@ private: | |||
} | |||
#ifndef DOXYGEN | |||
PACKED | |||
JUCE_PACKED | |||
#endif | |||
; | |||
@@ -490,6 +492,8 @@ public: | |||
forcedinline uint32 getAG() const noexcept { return (((uint32) a) << 16) | a; } | |||
forcedinline uint8 getAlpha() const noexcept { return a; } | |||
forcedinline uint8& getAlpha() noexcept { return a; } | |||
forcedinline uint8 getRed() const noexcept { return 0; } | |||
forcedinline uint8 getGreen() const noexcept { return 0; } | |||
forcedinline uint8 getBlue() const noexcept { return 0; } | |||
@@ -576,10 +580,10 @@ public: | |||
private: | |||
//============================================================================== | |||
uint8 a : 8; | |||
uint8 a; | |||
} | |||
#ifndef DOXYGEN | |||
PACKED | |||
JUCE_PACKED | |||
#endif | |||
; | |||
@@ -587,6 +591,4 @@ private: | |||
#pragma pack (pop) | |||
#endif | |||
#undef PACKED | |||
#endif // __JUCE_PIXELFORMATS_JUCEHEADER__ |
@@ -56,9 +56,7 @@ class JUCE_API ScrollBar : public Component, | |||
public: | |||
//============================================================================== | |||
/** Creates a Scrollbar. | |||
@param isVertical whether it should be a vertical or horizontal bar | |||
@param buttonsAreVisible whether to show the up/down or left/right buttons | |||
@param isVertical specifies whether the bar should be a vertical or horizontal | |||
*/ | |||
ScrollBar (bool isVertical); | |||