| @@ -496,19 +496,15 @@ void ComponentTypeHandler::fillInGeneratedCode (Component* component, GeneratedC | |||||
| void ComponentTypeHandler::fillInMemberVariableDeclarations (GeneratedCode& code, Component* component, const String& memberVariableName) | void ComponentTypeHandler::fillInMemberVariableDeclarations (GeneratedCode& code, Component* component, const String& memberVariableName) | ||||
| { | { | ||||
| const String virtualName (component->getProperties() ["virtualName"].toString()); | |||||
| String clsName (component->getProperties() ["virtualName"].toString()); | |||||
| if (virtualName.isNotEmpty()) | |||||
| code.privateMemberDeclarations | |||||
| << CodeHelpers::makeValidIdentifier (virtualName, false, false, true); | |||||
| if (clsName.isNotEmpty()) | |||||
| clsName = CodeHelpers::makeValidIdentifier (clsName, false, false, true); | |||||
| else | else | ||||
| code.privateMemberDeclarations | |||||
| << getClassName (component); | |||||
| clsName = getClassName (component); | |||||
| code.privateMemberDeclarations | code.privateMemberDeclarations | ||||
| << "* " << memberVariableName << ";\n"; | |||||
| code.initialisers.add (memberVariableName + " (0)"); | |||||
| << "ScopedPointer<" << clsName << "> " << memberVariableName << ";\n"; | |||||
| } | } | ||||
| void ComponentTypeHandler::fillInResizeCode (GeneratedCode& code, Component* component, const String& memberVariableName) | void ComponentTypeHandler::fillInResizeCode (GeneratedCode& code, Component* component, const String& memberVariableName) | ||||
| @@ -579,5 +575,5 @@ void ComponentTypeHandler::fillInDeletionCode (GeneratedCode& code, Component*, | |||||
| const String& memberVariableName) | const String& memberVariableName) | ||||
| { | { | ||||
| code.destructorCode | code.destructorCode | ||||
| << "deleteAndZero (" << memberVariableName << ");\n"; | |||||
| << memberVariableName << " = nullptr;\n"; | |||||
| } | } | ||||
| @@ -90,22 +90,12 @@ void GeneratedCode::removeCallback (const String& returnType, const String& prot | |||||
| void GeneratedCode::addImageResourceLoader (const String& imageMemberName, const String& resourceName) | void GeneratedCode::addImageResourceLoader (const String& imageMemberName, const String& resourceName) | ||||
| { | { | ||||
| const String initialiser (imageMemberName + " (0)"); | |||||
| privateMemberDeclarations | |||||
| << "Image " << imageMemberName << ";\n"; | |||||
| if (! initialisers.contains (initialiser, false)) | |||||
| { | |||||
| initialisers.add (initialiser); | |||||
| privateMemberDeclarations | |||||
| << "Image " << imageMemberName << ";\n"; | |||||
| if (resourceName.isNotEmpty()) | |||||
| { | |||||
| constructorCode | |||||
| << imageMemberName << " = ImageCache::getFromMemory (" | |||||
| << resourceName << ", " << resourceName << "Size);\n"; | |||||
| } | |||||
| } | |||||
| if (resourceName.isNotEmpty()) | |||||
| constructorCode << imageMemberName << " = ImageCache::getFromMemory (" | |||||
| << resourceName << ", " << resourceName << "Size);\n"; | |||||
| } | } | ||||
| StringArray GeneratedCode::getExtraParentClasses() const | StringArray GeneratedCode::getExtraParentClasses() const | ||||
| @@ -144,14 +144,14 @@ public: | |||||
| const String imageVariable ("drawable" + String (code.getUniqueSuffix())); | const String imageVariable ("drawable" + String (code.getUniqueSuffix())); | ||||
| code.privateMemberDeclarations | code.privateMemberDeclarations | ||||
| << "Drawable* " << imageVariable << ";\n"; | |||||
| << "ScopedPointer<Drawable> " << imageVariable << ";\n"; | |||||
| code.constructorCode | code.constructorCode | ||||
| << imageVariable << " = Drawable::createFromImageData (" | << imageVariable << " = Drawable::createFromImageData (" | ||||
| << resourceName << ", " << resourceName << "Size);\n"; | << resourceName << ", " << resourceName << "Size);\n"; | ||||
| code.destructorCode | code.destructorCode | ||||
| << "deleteAndZero (" << imageVariable << ");\n"; | |||||
| << imageVariable << " = nullptr;\n"; | |||||
| if (opacity >= 254.0 / 255.0) | if (opacity >= 254.0 / 255.0) | ||||
| r << "g.setColour (Colours::black);\n"; | r << "g.setColour (Colours::black);\n"; | ||||
| @@ -291,18 +291,19 @@ public: | |||||
| void resetToImageSize() | void resetToImageSize() | ||||
| { | { | ||||
| const Drawable* const image = getDrawable(); | |||||
| if (image != nullptr && getParentComponent() != nullptr) | |||||
| if (const Drawable* const image = getDrawable()) | |||||
| { | { | ||||
| const Rectangle<int> parentArea (((PaintRoutineEditor*) getParentComponent())->getComponentArea()); | |||||
| if (PaintRoutineEditor* ed = dynamic_cast <PaintRoutineEditor*> (getParentComponent())) | |||||
| { | |||||
| const Rectangle<int> parentArea (ed->getComponentArea()); | |||||
| Rectangle<int> r (getCurrentBounds (parentArea)); | |||||
| Rectangle<float> bounds (image->getDrawableBounds()); | |||||
| Rectangle<int> r (getCurrentBounds (parentArea)); | |||||
| Rectangle<float> bounds (image->getDrawableBounds()); | |||||
| r.setSize ((int) (bounds.getWidth() + 0.999f), (int) (bounds.getHeight() + 0.999f)); | |||||
| r.setSize ((int) (bounds.getWidth() + 0.999f), (int) (bounds.getHeight() + 0.999f)); | |||||
| setCurrentBounds (r, parentArea, true); | |||||
| setCurrentBounds (r, parentArea, true); | |||||
| } | |||||
| } | } | ||||
| } | } | ||||
| @@ -279,10 +279,7 @@ private: | |||||
| //============================================================================== | //============================================================================== | ||||
| AudioDemoLatencyPage::AudioDemoLatencyPage (AudioDeviceManager& deviceManager_) | AudioDemoLatencyPage::AudioDemoLatencyPage (AudioDeviceManager& deviceManager_) | ||||
| : deviceManager (deviceManager_), | |||||
| liveAudioDisplayComp (0), | |||||
| startTestButton (0), | |||||
| testResultsBox (0) | |||||
| : deviceManager (deviceManager_) | |||||
| { | { | ||||
| addAndMakeVisible (liveAudioDisplayComp = new LiveAudioInputDisplayComp()); | addAndMakeVisible (liveAudioDisplayComp = new LiveAudioInputDisplayComp()); | ||||
| @@ -325,9 +322,9 @@ AudioDemoLatencyPage::~AudioDemoLatencyPage() | |||||
| deviceManager.removeAudioCallback (latencyTester); | deviceManager.removeAudioCallback (latencyTester); | ||||
| //[/Destructor_pre] | //[/Destructor_pre] | ||||
| deleteAndZero (liveAudioDisplayComp); | |||||
| deleteAndZero (startTestButton); | |||||
| deleteAndZero (testResultsBox); | |||||
| liveAudioDisplayComp = nullptr; | |||||
| startTestButton = nullptr; | |||||
| testResultsBox = nullptr; | |||||
| //[Destructor]. You can add your own custom destruction code here.. | //[Destructor]. You can add your own custom destruction code here.. | ||||
| @@ -61,9 +61,9 @@ private: | |||||
| //[/UserVariables] | //[/UserVariables] | ||||
| //============================================================================== | //============================================================================== | ||||
| LiveAudioInputDisplayComp* liveAudioDisplayComp; | |||||
| TextButton* startTestButton; | |||||
| TextEditor* testResultsBox; | |||||
| ScopedPointer<LiveAudioInputDisplayComp> liveAudioDisplayComp; | |||||
| ScopedPointer<TextButton> startTestButton; | |||||
| ScopedPointer<TextEditor> testResultsBox; | |||||
| //============================================================================== | //============================================================================== | ||||
| @@ -173,13 +173,7 @@ private: | |||||
| AudioDemoPlaybackPage::AudioDemoPlaybackPage (AudioDeviceManager& deviceManager_) | AudioDemoPlaybackPage::AudioDemoPlaybackPage (AudioDeviceManager& deviceManager_) | ||||
| : deviceManager (deviceManager_), | : deviceManager (deviceManager_), | ||||
| thread ("audio file preview"), | thread ("audio file preview"), | ||||
| directoryList (0, thread), | |||||
| zoomLabel (0), | |||||
| explanation (0), | |||||
| zoomSlider (0), | |||||
| thumbnail (0), | |||||
| startStopButton (0), | |||||
| fileTreeComp (0) | |||||
| directoryList (nullptr, thread) | |||||
| { | { | ||||
| addAndMakeVisible (zoomLabel = new Label (String::empty, | addAndMakeVisible (zoomLabel = new Label (String::empty, | ||||
| "zoom:")); | "zoom:")); | ||||
| @@ -244,12 +238,12 @@ AudioDemoPlaybackPage::~AudioDemoPlaybackPage() | |||||
| fileTreeComp->removeListener (this); | fileTreeComp->removeListener (this); | ||||
| //[/Destructor_pre] | //[/Destructor_pre] | ||||
| deleteAndZero (zoomLabel); | |||||
| deleteAndZero (explanation); | |||||
| deleteAndZero (zoomSlider); | |||||
| deleteAndZero (thumbnail); | |||||
| deleteAndZero (startStopButton); | |||||
| deleteAndZero (fileTreeComp); | |||||
| zoomLabel = nullptr; | |||||
| explanation = nullptr; | |||||
| zoomSlider = nullptr; | |||||
| thumbnail = nullptr; | |||||
| startStopButton = nullptr; | |||||
| fileTreeComp = nullptr; | |||||
| //[Destructor]. You can add your own custom destruction code here.. | //[Destructor]. You can add your own custom destruction code here.. | ||||
| @@ -379,7 +373,7 @@ BEGIN_JUCER_METADATA | |||||
| <JUCER_COMPONENT documentType="Component" className="AudioDemoPlaybackPage" componentName="" | <JUCER_COMPONENT documentType="Component" className="AudioDemoPlaybackPage" componentName="" | ||||
| parentClasses="public Component, public FileBrowserListener" | parentClasses="public Component, public FileBrowserListener" | ||||
| constructorParams="AudioDeviceManager& deviceManager_" variableInitialisers="deviceManager (deviceManager_), thread ("audio file preview"), directoryList (0, thread)" | |||||
| constructorParams="AudioDeviceManager& deviceManager_" variableInitialisers="deviceManager (deviceManager_), thread ("audio file preview"), directoryList (nullptr, thread)" | |||||
| snapPixels="8" snapActive="1" snapShown="1" overlayOpacity="0.330000013" | snapPixels="8" snapActive="1" snapShown="1" overlayOpacity="0.330000013" | ||||
| fixedSize="0" initialWidth="600" initialHeight="400"> | fixedSize="0" initialWidth="600" initialHeight="400"> | ||||
| <BACKGROUND backgroundColour="ffd3d3d3"/> | <BACKGROUND backgroundColour="ffd3d3d3"/> | ||||
| @@ -78,12 +78,12 @@ private: | |||||
| //[/UserVariables] | //[/UserVariables] | ||||
| //============================================================================== | //============================================================================== | ||||
| Label* zoomLabel; | |||||
| Label* explanation; | |||||
| Slider* zoomSlider; | |||||
| DemoThumbnailComp* thumbnail; | |||||
| TextButton* startStopButton; | |||||
| FileTreeComponent* fileTreeComp; | |||||
| ScopedPointer<Label> zoomLabel; | |||||
| ScopedPointer<Label> explanation; | |||||
| ScopedPointer<Slider> zoomSlider; | |||||
| ScopedPointer<DemoThumbnailComp> thumbnail; | |||||
| ScopedPointer<TextButton> startStopButton; | |||||
| ScopedPointer<FileTreeComponent> fileTreeComp; | |||||
| //============================================================================== | //============================================================================== | ||||
| @@ -136,10 +136,7 @@ private: | |||||
| //============================================================================== | //============================================================================== | ||||
| AudioDemoRecordPage::AudioDemoRecordPage (AudioDeviceManager& deviceManager_) | AudioDemoRecordPage::AudioDemoRecordPage (AudioDeviceManager& deviceManager_) | ||||
| : deviceManager (deviceManager_), | |||||
| liveAudioDisplayComp (0), | |||||
| explanationLabel (0), | |||||
| recordButton (0) | |||||
| : deviceManager (deviceManager_) | |||||
| { | { | ||||
| addAndMakeVisible (liveAudioDisplayComp = new LiveAudioInputDisplayComp()); | addAndMakeVisible (liveAudioDisplayComp = new LiveAudioInputDisplayComp()); | ||||
| @@ -179,9 +176,9 @@ AudioDemoRecordPage::~AudioDemoRecordPage() | |||||
| recorder = 0; | recorder = 0; | ||||
| //[/Destructor_pre] | //[/Destructor_pre] | ||||
| deleteAndZero (liveAudioDisplayComp); | |||||
| deleteAndZero (explanationLabel); | |||||
| deleteAndZero (recordButton); | |||||
| liveAudioDisplayComp = nullptr; | |||||
| explanationLabel = nullptr; | |||||
| recordButton = nullptr; | |||||
| //[Destructor]. You can add your own custom destruction code here.. | //[Destructor]. You can add your own custom destruction code here.. | ||||
| @@ -62,9 +62,9 @@ private: | |||||
| //[/UserVariables] | //[/UserVariables] | ||||
| //============================================================================== | //============================================================================== | ||||
| LiveAudioInputDisplayComp* liveAudioDisplayComp; | |||||
| Label* explanationLabel; | |||||
| TextButton* recordButton; | |||||
| ScopedPointer<LiveAudioInputDisplayComp> liveAudioDisplayComp; | |||||
| ScopedPointer<Label> explanationLabel; | |||||
| ScopedPointer<TextButton> recordButton; | |||||
| //============================================================================== | //============================================================================== | ||||
| @@ -28,8 +28,7 @@ | |||||
| //============================================================================== | //============================================================================== | ||||
| AudioDemoSetupPage::AudioDemoSetupPage (AudioDeviceManager& deviceManager_) | AudioDemoSetupPage::AudioDemoSetupPage (AudioDeviceManager& deviceManager_) | ||||
| : deviceManager (deviceManager_), | |||||
| deviceSelector (0) | |||||
| : deviceManager (deviceManager_) | |||||
| { | { | ||||
| addAndMakeVisible (deviceSelector = new AudioDeviceSelectorComponent (deviceManager, 0, 2, 0, 2, true, true, true, false)); | addAndMakeVisible (deviceSelector = new AudioDeviceSelectorComponent (deviceManager, 0, 2, 0, 2, true, true, true, false)); | ||||
| @@ -49,7 +48,7 @@ AudioDemoSetupPage::~AudioDemoSetupPage() | |||||
| //[Destructor_pre]. You can add your own custom destruction code here.. | //[Destructor_pre]. You can add your own custom destruction code here.. | ||||
| //[/Destructor_pre] | //[/Destructor_pre] | ||||
| deleteAndZero (deviceSelector); | |||||
| deviceSelector = nullptr; | |||||
| //[Destructor]. You can add your own custom destruction code here.. | //[Destructor]. You can add your own custom destruction code here.. | ||||
| @@ -56,7 +56,7 @@ private: | |||||
| //[/UserVariables] | //[/UserVariables] | ||||
| //============================================================================== | //============================================================================== | ||||
| AudioDeviceSelectorComponent* deviceSelector; | |||||
| ScopedPointer<AudioDeviceSelectorComponent> deviceSelector; | |||||
| //============================================================================== | //============================================================================== | ||||
| @@ -246,11 +246,7 @@ public: | |||||
| //============================================================================== | //============================================================================== | ||||
| AudioDemoSynthPage::AudioDemoSynthPage (AudioDeviceManager& deviceManager_) | AudioDemoSynthPage::AudioDemoSynthPage (AudioDeviceManager& deviceManager_) | ||||
| : deviceManager (deviceManager_), | |||||
| keyboardComponent (0), | |||||
| sineButton (0), | |||||
| sampledButton (0), | |||||
| liveAudioDisplayComp (0) | |||||
| : deviceManager (deviceManager_) | |||||
| { | { | ||||
| addAndMakeVisible (keyboardComponent = new MidiKeyboardComponent (keyboardState, MidiKeyboardComponent::horizontalKeyboard)); | addAndMakeVisible (keyboardComponent = new MidiKeyboardComponent (keyboardState, MidiKeyboardComponent::horizontalKeyboard)); | ||||
| @@ -294,10 +290,10 @@ AudioDemoSynthPage::~AudioDemoSynthPage() | |||||
| deviceManager.removeAudioCallback (liveAudioDisplayComp); | deviceManager.removeAudioCallback (liveAudioDisplayComp); | ||||
| //[/Destructor_pre] | //[/Destructor_pre] | ||||
| deleteAndZero (keyboardComponent); | |||||
| deleteAndZero (sineButton); | |||||
| deleteAndZero (sampledButton); | |||||
| deleteAndZero (liveAudioDisplayComp); | |||||
| keyboardComponent = nullptr; | |||||
| sineButton = nullptr; | |||||
| sampledButton = nullptr; | |||||
| liveAudioDisplayComp = nullptr; | |||||
| //[Destructor]. You can add your own custom destruction code here.. | //[Destructor]. You can add your own custom destruction code here.. | ||||
| @@ -63,10 +63,10 @@ private: | |||||
| //[/UserVariables] | //[/UserVariables] | ||||
| //============================================================================== | //============================================================================== | ||||
| MidiKeyboardComponent* keyboardComponent; | |||||
| ToggleButton* sineButton; | |||||
| ToggleButton* sampledButton; | |||||
| LiveAudioInputDisplayComp* liveAudioDisplayComp; | |||||
| ScopedPointer<MidiKeyboardComponent> keyboardComponent; | |||||
| ScopedPointer<ToggleButton> sineButton; | |||||
| ScopedPointer<ToggleButton> sampledButton; | |||||
| ScopedPointer<LiveAudioInputDisplayComp> liveAudioDisplayComp; | |||||
| //============================================================================== | //============================================================================== | ||||
| @@ -110,7 +110,6 @@ void LiveAudioInputDisplayComp::audioDeviceIOCallback (const float** inputChanne | |||||
| //============================================================================== | //============================================================================== | ||||
| AudioDemoTabComponent::AudioDemoTabComponent () | AudioDemoTabComponent::AudioDemoTabComponent () | ||||
| : tabbedComponent (0) | |||||
| { | { | ||||
| addAndMakeVisible (tabbedComponent = new TabbedComponent (TabbedButtonBar::TabsAtTop)); | addAndMakeVisible (tabbedComponent = new TabbedComponent (TabbedButtonBar::TabsAtTop)); | ||||
| tabbedComponent->setTabBarDepth (30); | tabbedComponent->setTabBarDepth (30); | ||||
| @@ -138,7 +137,7 @@ AudioDemoTabComponent::~AudioDemoTabComponent() | |||||
| //[Destructor_pre]. You can add your own custom destruction code here.. | //[Destructor_pre]. You can add your own custom destruction code here.. | ||||
| //[/Destructor_pre] | //[/Destructor_pre] | ||||
| deleteAndZero (tabbedComponent); | |||||
| tabbedComponent = nullptr; | |||||
| //[Destructor]. You can add your own custom destruction code here.. | //[Destructor]. You can add your own custom destruction code here.. | ||||
| @@ -86,7 +86,7 @@ private: | |||||
| //[/UserVariables] | //[/UserVariables] | ||||
| //============================================================================== | //============================================================================== | ||||
| TabbedComponent* tabbedComponent; | |||||
| ScopedPointer<TabbedComponent> tabbedComponent; | |||||
| //============================================================================== | //============================================================================== | ||||
| @@ -377,28 +377,6 @@ Component* createRenderingDemo() | |||||
| //============================================================================== | //============================================================================== | ||||
| RenderingTestComponent::RenderingTestComponent () | RenderingTestComponent::RenderingTestComponent () | ||||
| : testTypeComboBox (0), | |||||
| testTypeLabel (0), | |||||
| speedLabel (0), | |||||
| testCanvas (0), | |||||
| opacitySlider (0), | |||||
| highQualityToggle (0), | |||||
| animateSizeToggle (0), | |||||
| animateRotationToggle (0), | |||||
| animatePositionToggle (0), | |||||
| animateFillToggle (0), | |||||
| opacityLabel (0), | |||||
| xSlider (0), | |||||
| ySlider (0), | |||||
| sizeSlider (0), | |||||
| angleSlider (0), | |||||
| xSliderLabel (0), | |||||
| ySliderLabel (0), | |||||
| sizeSliderLabel (0), | |||||
| angleSliderLabel (0), | |||||
| clipToRectangleToggle (0), | |||||
| clipToPathToggle (0), | |||||
| clipToImageToggle (0) | |||||
| { | { | ||||
| addAndMakeVisible (testTypeComboBox = new ComboBox (String::empty)); | addAndMakeVisible (testTypeComboBox = new ComboBox (String::empty)); | ||||
| testTypeComboBox->setEditableText (false); | testTypeComboBox->setEditableText (false); | ||||
| @@ -551,28 +529,28 @@ RenderingTestComponent::~RenderingTestComponent() | |||||
| //[Destructor_pre]. You can add your own custom destruction code here.. | //[Destructor_pre]. You can add your own custom destruction code here.. | ||||
| //[/Destructor_pre] | //[/Destructor_pre] | ||||
| deleteAndZero (testTypeComboBox); | |||||
| deleteAndZero (testTypeLabel); | |||||
| deleteAndZero (speedLabel); | |||||
| deleteAndZero (testCanvas); | |||||
| deleteAndZero (opacitySlider); | |||||
| deleteAndZero (highQualityToggle); | |||||
| deleteAndZero (animateSizeToggle); | |||||
| deleteAndZero (animateRotationToggle); | |||||
| deleteAndZero (animatePositionToggle); | |||||
| deleteAndZero (animateFillToggle); | |||||
| deleteAndZero (opacityLabel); | |||||
| deleteAndZero (xSlider); | |||||
| deleteAndZero (ySlider); | |||||
| deleteAndZero (sizeSlider); | |||||
| deleteAndZero (angleSlider); | |||||
| deleteAndZero (xSliderLabel); | |||||
| deleteAndZero (ySliderLabel); | |||||
| deleteAndZero (sizeSliderLabel); | |||||
| deleteAndZero (angleSliderLabel); | |||||
| deleteAndZero (clipToRectangleToggle); | |||||
| deleteAndZero (clipToPathToggle); | |||||
| deleteAndZero (clipToImageToggle); | |||||
| testTypeComboBox = nullptr; | |||||
| testTypeLabel = nullptr; | |||||
| speedLabel = nullptr; | |||||
| testCanvas = nullptr; | |||||
| opacitySlider = nullptr; | |||||
| highQualityToggle = nullptr; | |||||
| animateSizeToggle = nullptr; | |||||
| animateRotationToggle = nullptr; | |||||
| animatePositionToggle = nullptr; | |||||
| animateFillToggle = nullptr; | |||||
| opacityLabel = nullptr; | |||||
| xSlider = nullptr; | |||||
| ySlider = nullptr; | |||||
| sizeSlider = nullptr; | |||||
| angleSlider = nullptr; | |||||
| xSliderLabel = nullptr; | |||||
| ySliderLabel = nullptr; | |||||
| sizeSliderLabel = nullptr; | |||||
| angleSliderLabel = nullptr; | |||||
| clipToRectangleToggle = nullptr; | |||||
| clipToPathToggle = nullptr; | |||||
| clipToImageToggle = nullptr; | |||||
| //[Destructor]. You can add your own custom destruction code here.. | //[Destructor]. You can add your own custom destruction code here.. | ||||
| @@ -66,28 +66,28 @@ private: | |||||
| //[/UserVariables] | //[/UserVariables] | ||||
| //============================================================================== | //============================================================================== | ||||
| ComboBox* testTypeComboBox; | |||||
| Label* testTypeLabel; | |||||
| Label* speedLabel; | |||||
| RenderingTestCanvas* testCanvas; | |||||
| Slider* opacitySlider; | |||||
| ToggleButton* highQualityToggle; | |||||
| ToggleButton* animateSizeToggle; | |||||
| ToggleButton* animateRotationToggle; | |||||
| ToggleButton* animatePositionToggle; | |||||
| ToggleButton* animateFillToggle; | |||||
| Label* opacityLabel; | |||||
| Slider* xSlider; | |||||
| Slider* ySlider; | |||||
| Slider* sizeSlider; | |||||
| Slider* angleSlider; | |||||
| Label* xSliderLabel; | |||||
| Label* ySliderLabel; | |||||
| Label* sizeSliderLabel; | |||||
| Label* angleSliderLabel; | |||||
| ToggleButton* clipToRectangleToggle; | |||||
| ToggleButton* clipToPathToggle; | |||||
| ToggleButton* clipToImageToggle; | |||||
| ScopedPointer<ComboBox> testTypeComboBox; | |||||
| ScopedPointer<Label> testTypeLabel; | |||||
| ScopedPointer<Label> speedLabel; | |||||
| ScopedPointer<RenderingTestCanvas> testCanvas; | |||||
| ScopedPointer<Slider> opacitySlider; | |||||
| ScopedPointer<ToggleButton> highQualityToggle; | |||||
| ScopedPointer<ToggleButton> animateSizeToggle; | |||||
| ScopedPointer<ToggleButton> animateRotationToggle; | |||||
| ScopedPointer<ToggleButton> animatePositionToggle; | |||||
| ScopedPointer<ToggleButton> animateFillToggle; | |||||
| ScopedPointer<Label> opacityLabel; | |||||
| ScopedPointer<Slider> xSlider; | |||||
| ScopedPointer<Slider> ySlider; | |||||
| ScopedPointer<Slider> sizeSlider; | |||||
| ScopedPointer<Slider> angleSlider; | |||||
| ScopedPointer<Label> xSliderLabel; | |||||
| ScopedPointer<Label> ySliderLabel; | |||||
| ScopedPointer<Label> sizeSliderLabel; | |||||
| ScopedPointer<Label> angleSliderLabel; | |||||
| ScopedPointer<ToggleButton> clipToRectangleToggle; | |||||
| ScopedPointer<ToggleButton> clipToPathToggle; | |||||
| ScopedPointer<ToggleButton> clipToImageToggle; | |||||
| //============================================================================== | //============================================================================== | ||||