24 #ifndef __EDITORVIEWPORT_H_80260F3F__
25 #define __EDITORVIEWPORT_H_80260F3F__
27 #include "../../JuceLibraryCode/JuceHeader.h"
28 #include "../Processors/ProcessorGraph.h"
29 #include "../Processors/Editors/GenericEditor.h"
30 #include "../Processors/Editors/SplitterEditor.h"
31 #include "../Processors/Editors/MergerEditor.h"
33 #include "../AccessClass.h"
34 #include "DataViewport.h"
53 public DragAndDropTarget,
55 public Button::Listener
63 void paint (Graphics& g);
69 void makeEditorVisible(
GenericEditor* e,
bool highlight =
true);
71 void refreshEditors();
73 void clearSignalChain();
75 void signalChainCanBeEdited(
bool t);
78 bool isInterestedInDragSource (
const String& , Component* );
79 void itemDragEnter (
const String& , Component* ,
int ,
int );
80 void itemDragMove (
const String& , Component* ,
int ,
int );
81 void itemDragExit (
const String& , Component* );
82 void itemDropped (
const String& sourceDescription, Component* ,
int ,
int );
85 void mouseDown(
const MouseEvent &e);
86 void mouseDrag(
const MouseEvent &e);
87 void mouseUp(
const MouseEvent &e);
88 void mouseExit(
const MouseEvent &e);
92 bool keyPressed (
const KeyPress &key);
93 void moveSelection(
const KeyPress &key);
94 void buttonClicked(Button* button);
96 Array<SignalChainTabButton*, CriticalSection> requestSignalChain() {
return signalChainArray;}
99 const String saveState();
100 const String loadState();
105 void checkScrollButtons(
int topTab);
107 bool isSignalChainEmpty();
116 bool somethingIsBeingDraggedOver;
125 Array<GenericEditor*, CriticalSection> editorArray;
126 Array<SignalChainTabButton*, CriticalSection> signalChainArray;
128 ScopedPointer<SignalChainManager> signalChainManager;
131 Image sourceDropImage;
134 void removeTab(
int tabIndex);
136 int borderSize, tabSize, tabButtonSize;
139 bool componentWantsToMove;
140 int indexOfMovingComponent;
144 enum actions {ADD, MOVE, REMOVE, ACTIVATE, UPDATE};
145 enum directions1 {LEFT, RIGHT};
146 enum directions2 {UP, DOWN};
169 void setNumber(
int n) {num = n;}
171 bool hasNewConnections() {
return configurationChanged;}
172 void hasNewConnections(
bool t) {configurationChanged = t;}
182 void paintButton(Graphics &g,
bool isMouseOver,
bool isButtonDown);
186 enum actions {ADD, MOVE, REMOVE, ACTIVATE};
189 bool configurationChanged;
195 #endif // __EDITORVIEWPORT_H_80260F3F__