11namespace tracktion {
inline namespace engine
26 int getNumObjectsSelected()
const;
27 Selectable* getSelectedObject (
int index)
const;
37 void select (
Selectable*,
bool addToCurrentSelection);
48 template <
typename SelectableClass>
49 bool containsType()
const
54 template <
typename SelectableClass>
55 int getNumObjectsSelectedOfType()
const
59 for (
auto s : selected)
66 template <
typename SelectableClass>
71 for (
auto s : selected)
78 template <
typename SelectableClass>
81 for (
auto s : selected)
89 void deleteSelected();
101 void refreshPropertyPanel();
102 static void refreshAllPropertyPanels();
103 static void refreshAllPropertyPanelsShowing (
Selectable&);
105 static void deselectAllFromAllWindows();
113 int lastSelectionChangeCount = 0;
117 int selectionChangeCount = 0;
134 void selectableObjectChanged (
Selectable*)
override;
135 void selectableObjectAboutToBeDeleted (
Selectable*)
override;
167 Edit* getEdit()
const;
184 void selectionChanged();
void add(const ElementType &newElement)
An EditInsertPoint is like a "paste location".
The Tracktion Edit class!
The Engine is the central class for all tracktion sessions.
Holds a pointer to some type of Selectable, which automatically becomes null if the selectable is del...
Represents a type of object that can be selected.
Base class for things that can be selected, and whose properties can appear in the properties panel.
Manages a list of items that are currently selected.
SafeSelectable< Edit > edit
If this SelectionManager is being used to represent items inside a particular view of an edit,...
void selectOtherObjects(SelectableClass::Relationship, bool keepOldItemsSelected)
Selects related objects, e.g.
bool pasteSelected()
Offers the selected things the chance to paste the contents of the clipboard onto themselves,...
void keepSelectedObjectsOnScreen()
Scrolls whatever is necessary to keep the selected stuff visible.
A list of Selectables, similar to a juce::Array but contains a cached list of the SelectableClasses f...