diff --git a/.gitignore b/.gitignore index e5d76c2423..0dc5f2b3fc 100644 --- a/.gitignore +++ b/.gitignore @@ -16,6 +16,8 @@ *.o *.d extras/juce demo/build/macosx/build +extras/juce demo/build/iphone/build +extras/juce demo/build/linux/build extras/juce demo/build/win32_vc8/Debug extras/juce demo/build/win32_vc8/Release extras/the jucer/build/mac/build diff --git a/juce_amalgamated.cpp b/juce_amalgamated.cpp index b3b02c1b77..cb266f2927 100644 --- a/juce_amalgamated.cpp +++ b/juce_amalgamated.cpp @@ -406,6 +406,17 @@ #define JUCE_STRINGS_ARE_UNICODE 1 #endif +// If only building the core classes, we can explicitly turn off some features to avoid including them: +#if JUCE_ONLY_BUILD_CORE_LIBRARY + #define JUCE_QUICKTIME 0 + #define JUCE_OPENGL 0 + #define JUCE_USE_CDBURNER 0 + #define JUCE_USE_CDREADER 0 + #define JUCE_WEB_BROWSER 0 + #define JUCE_PLUGINHOST_AU 0 + #define JUCE_PLUGINHOST_VST 0 +#endif + #endif /********* End of inlined file: juce_Config.h *********/ @@ -65456,7 +65467,7 @@ void LookAndFeel::drawPropertyPanelSectionHeader (Graphics& g, const String& nam const int buttonSize = (height * 3) / 4; const int buttonIndent = (height - buttonSize) / 2; - drawTreeviewPlusMinusBox (g, buttonIndent, buttonIndent, buttonSize, buttonSize, ! isOpen); + drawTreeviewPlusMinusBox (g, buttonIndent, buttonIndent, buttonSize, buttonSize, ! isOpen, false); const int textX = buttonIndent * 2 + buttonSize + 2; @@ -274651,7 +274662,7 @@ END_JUCE_NAMESPACE fromConnection: (QTCaptureConnection*) connection { if (firstRecordedTime == 0) - firstRecordedTime = new Time (Time::getCurrentTime()); + firstRecordedTime = new Time (Time::getCurrentTime() - RelativeTime::milliseconds (50)); } @end diff --git a/juce_amalgamated.h b/juce_amalgamated.h index 7647f51f1c..e7f4a766cb 100644 --- a/juce_amalgamated.h +++ b/juce_amalgamated.h @@ -440,6 +440,17 @@ #define JUCE_STRINGS_ARE_UNICODE 1 #endif +// If only building the core classes, we can explicitly turn off some features to avoid including them: +#if JUCE_ONLY_BUILD_CORE_LIBRARY + #define JUCE_QUICKTIME 0 + #define JUCE_OPENGL 0 + #define JUCE_USE_CDBURNER 0 + #define JUCE_USE_CDREADER 0 + #define JUCE_WEB_BROWSER 0 + #define JUCE_PLUGINHOST_AU 0 + #define JUCE_PLUGINHOST_VST 0 +#endif + #endif /********* End of inlined file: juce_Config.h *********/ @@ -30410,6 +30421,61 @@ private: class EditableProperty; +/********* Start of inlined file: juce_TooltipClient.h *********/ +#ifndef __JUCE_TOOLTIPCLIENT_JUCEHEADER__ +#define __JUCE_TOOLTIPCLIENT_JUCEHEADER__ + +/** + Components that want to use pop-up tooltips should implement this interface. + + A TooltipWindow will wait for the mouse to hover over a component that + implements the TooltipClient interface, and when it finds one, it will display + the tooltip returned by its getTooltip() method. + + @see TooltipWindow, SettableTooltipClient +*/ +class JUCE_API TooltipClient +{ +public: + /** Destructor. */ + virtual ~TooltipClient() {} + + /** Returns the string that this object wants to show as its tooltip. */ + virtual const String getTooltip() = 0; +}; + +/** + An implementation of TooltipClient that stores the tooltip string and a method + for changing it. + + This makes it easy to add a tooltip to a custom component, by simply adding this + as a base class and calling setTooltip(). + + Many of the Juce widgets already use this as a base class to implement their + tooltips. + + @see TooltipClient, TooltipWindow +*/ +class JUCE_API SettableTooltipClient : public TooltipClient +{ +public: + + /** Destructor. */ + virtual ~SettableTooltipClient() {} + + virtual void setTooltip (const String& newTooltip) { tooltipString = newTooltip; } + + virtual const String getTooltip() { return tooltipString; } + + juce_UseDebuggingNewOperator + +protected: + String tooltipString; +}; + +#endif // __JUCE_TOOLTIPCLIENT_JUCEHEADER__ +/********* End of inlined file: juce_TooltipClient.h *********/ + /** A base class for a component that goes in a PropertyPanel and displays one of an item's properties. @@ -30425,7 +30491,8 @@ class EditableProperty; @see PropertyPanel, TextPropertyComponent, SliderPropertyComponent, ChoicePropertyComponent, ButtonPropertyComponent, BooleanPropertyComponent */ -class JUCE_API PropertyComponent : public Component +class JUCE_API PropertyComponent : public Component, + public SettableTooltipClient { public: @@ -30509,61 +30576,6 @@ protected: #ifndef __JUCE_TOOLTIPWINDOW_JUCEHEADER__ #define __JUCE_TOOLTIPWINDOW_JUCEHEADER__ -/********* Start of inlined file: juce_TooltipClient.h *********/ -#ifndef __JUCE_TOOLTIPCLIENT_JUCEHEADER__ -#define __JUCE_TOOLTIPCLIENT_JUCEHEADER__ - -/** - Components that want to use pop-up tooltips should implement this interface. - - A TooltipWindow will wait for the mouse to hover over a component that - implements the TooltipClient interface, and when it finds one, it will display - the tooltip returned by its getTooltip() method. - - @see TooltipWindow, SettableTooltipClient -*/ -class JUCE_API TooltipClient -{ -public: - /** Destructor. */ - virtual ~TooltipClient() {} - - /** Returns the string that this object wants to show as its tooltip. */ - virtual const String getTooltip() = 0; -}; - -/** - An implementation of TooltipClient that stores the tooltip string and a method - for changing it. - - This makes it easy to add a tooltip to a custom component, by simply adding this - as a base class and calling setTooltip(). - - Many of the Juce widgets already use this as a base class to implement their - tooltips. - - @see TooltipClient, TooltipWindow -*/ -class JUCE_API SettableTooltipClient : public TooltipClient -{ -public: - - /** Destructor. */ - virtual ~SettableTooltipClient() {} - - virtual void setTooltip (const String& newTooltip) { tooltipString = newTooltip; } - - virtual const String getTooltip() { return tooltipString; } - - juce_UseDebuggingNewOperator - -protected: - String tooltipString; -}; - -#endif // __JUCE_TOOLTIPCLIENT_JUCEHEADER__ -/********* End of inlined file: juce_TooltipClient.h *********/ - /** A window that displays a pop-up tooltip when the mouse hovers over another component. @@ -30841,9 +30853,7 @@ public: The button registers itself with its top-level parent component for keypresses. Note that a different way of linking buttons to keypresses is by using the - setKeyPressToTrigger() method to invoke a command - the difference being that - setting a shortcut allows the button to be temporarily linked to a keypress - only while it's on-screen. + setCommandToTrigger() method to invoke a command. @see clearShortcuts */ @@ -54456,7 +54466,7 @@ public: component isn't visible can cause problems, because QuickTime needs a window handle to do its stuff. - @param movieFile the .mov file to open + @param movieURL the .mov file to open @param isControllerVisible whether to show a controller bar at the bottom @returns true if the movie opens successfully */ diff --git a/src/gui/components/properties/juce_PropertyComponent.h b/src/gui/components/properties/juce_PropertyComponent.h index 9cdeaff479..92dd8fed28 100644 --- a/src/gui/components/properties/juce_PropertyComponent.h +++ b/src/gui/components/properties/juce_PropertyComponent.h @@ -47,7 +47,7 @@ class EditableProperty; @see PropertyPanel, TextPropertyComponent, SliderPropertyComponent, ChoicePropertyComponent, ButtonPropertyComponent, BooleanPropertyComponent */ -class JUCE_API PropertyComponent : public Component, +class JUCE_API PropertyComponent : public Component, public SettableTooltipClient { public: