SPAOP
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PluginEditor.h
Go to the documentation of this file.
1 /*
2  ==============================================================================
3 
4  This is an automatically generated GUI class created by the Introjucer!
5 
6  Be careful when adding custom code to these files, as only the code within
7  the "//[xyz]" and "//[/xyz]" sections will be retained when the file is loaded
8  and re-saved.
9 
10  Created with Introjucer version: 3.1.0
11 
12  ------------------------------------------------------------------------------
13 
14  The Introjucer is part of the JUCE library - "Jules' Utility Class Extensions"
15  Copyright 2004-13 by Raw Material Software Ltd.
16 
17  ==============================================================================
18 */
19 
20 #ifndef __JUCE_HEADER_BFAA1FA6C119914A__
21 #define __JUCE_HEADER_BFAA1FA6C119914A__
22 
23 //[Headers] -- You can add your own extra header files here --
24 #include "JuceHeader.h"
25 #include "PluginProcessor.h"
26 #include "SourceZoomPort.h"
27 #include "Source.h"
28 #include "WonderHeader.h"
29 #include "ConnectionComponent.h"
30 #include "SourceParamComponent.h"
31 
32 #ifndef GUI_REFRESH_TIME
33 #define GUI_REFRESH_TIME 100
34 #endif
35 
36 #define COLOUR_SELECTOR_SIZE 200
38 #ifndef INITIAL_ZOOM_FACTOR
39 #define INITIAL_ZOOM_FACTOR ((COORD_MAX) > 10.0 ? (COORD_MAX) / 10.0 : 1.0)
40 
41 #endif
42 //[/Headers]
43 
44 
45 
46 //==============================================================================
60 class SpaopAudioProcessorEditor : public AudioProcessorEditor,
61  public Timer,
63  public SliderListener,
64  public ButtonListener
65 {
66 public:
67  //==============================================================================
70 
71  //==============================================================================
72  //[UserMethods] -- You can add your own custom methods in this section.
73 
74 private:
75  void timerCallback();
76 
77  void sourcePanelDragStarted (wonderjuce::SourcePanel*);
78 
79  void sourcePanelValuesChanged (wonderjuce::SourcePanel* panel);
80 
81  void sourcePanelDragEnded (wonderjuce::SourcePanel*);
82 
84  SpaopAudioProcessor* getProcessor() const;
85 
87  wonder::SourceController* getSourceController() const;
88 
89 public:
91  static double normalizedValue(Slider* slider);
92 
94  static double normalizedValue(Button* button);
95 
97  static juce::Colour juceColour(wonder::Colour colour);
98 
100  static wonder::Colour wonderColour(juce::Colour colour);
101 
102  //[/UserMethods]
103 
104  void paint (Graphics& g);
105  void resized();
106  void sliderValueChanged (Slider* sliderThatWasMoved);
107  void buttonClicked (Button* buttonThatWasClicked);
108 
109 
110 
111 private:
112  //[UserVariables] -- You can add your own custom variables in this section.
113  //[/UserVariables]
114 
115  //==============================================================================
116  ScopedPointer<GroupComponent> displayGroup;
117  ScopedPointer<Slider> xSlider;
118  ScopedPointer<Slider> ySlider;
119  ScopedPointer<Slider> zoomSlider;
120  ScopedPointer<Label> yPosLabel;
121  ScopedPointer<Label> xPosLabel;
122  ScopedPointer<Label> zoomLabel;
123  ScopedPointer<ToggleButton> showOthersButton;
124  ScopedPointer<wonderjuce::SourceZoomPort> sourceZoomPort;
125  ScopedPointer<ToggleButton> showNamesButton;
126  ScopedPointer<TabbedComponent> tabbedComponent;
127 
128 
129  //==============================================================================
130  JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (SpaopAudioProcessorEditor)
131 };
132 
133 //[EndFile] You can add extra defines here...
134 //[/EndFile]
135 
136 #endif // __JUCE_HEADER_BFAA1FA6C119914A__
void paint(Graphics &g)
Definition: PluginEditor.cpp:143
void sliderValueChanged(Slider *sliderThatWasMoved)
Definition: PluginEditor.cpp:171
~SpaopAudioProcessorEditor()
Definition: PluginEditor.cpp:120
[Comments]
Definition: PluginEditor.h:60
A struct representing a (RGB) colour.
Definition: Colours.h:28
A GUI component that displays a two-dimensional view of a source's position and allows the re-positio...
Definition: SourcePanel.h:41
static wonder::Colour wonderColour(juce::Colour colour)
Converts a juce::Colour to a wonder::Colour.
Definition: PluginEditor.cpp:321
A class for receiving callbacks from a SourcePanel.
Definition: SourcePanel.h:84
The SPAOP-plugin's processor class.
Definition: PluginProcessor.h:42
void resized()
Definition: PluginEditor.cpp:154
void buttonClicked(Button *buttonThatWasClicked)
Definition: PluginEditor.cpp:201
SpaopAudioProcessorEditor(SpaopAudioProcessor *ownerFilter)
Definition: PluginEditor.cpp:30
static double normalizedValue(Slider *slider)
Normalizes a slider's value to the range of [0.0 ; 1.0].
Definition: PluginEditor.cpp:306
The main communication node that keeps track of all virtual sources and enables the host DAW to contr...
Definition: SourceController.h:42
static juce::Colour juceColour(wonder::Colour colour)
Converts a wonder::Colour to a juce::Colour.
Definition: PluginEditor.cpp:316