48#include <wx/tooltip.h>
54#include "../ProjectSettings.h"
55#include "../ProjectWindow.h"
56#include "../tracks/ui/Scrubbing.h"
58#include "../widgets/AButton.h"
85 bool multiToolActive =
false;
86 gPrefs->Read(wxT(
"/GUI/ToolBars/Tools/MultiToolActive"), &multiToolActive);
93 project.Bind(EVT_PROJECT_SETTINGS_CHANGE,
101 "mismatch in number of tools" );
143 static const struct Entry {
148 {
selectTool, wxT(
"SelectTool"),
XO(
"Selection Tool") },
150 {
drawTool, wxT(
"DrawTool"),
XO(
"Draw Tool") },
154 for (
const auto &
entry : table) {
178 bmpRecoloredDownSmall,
179 bmpRecoloredUpHiliteSmall,
180 bmpRecoloredDownSmall,
183 wxDefaultPosition,
true,
214 auto pButton =
mTool[iTool];
215 if (pButton->IsDown())
242 gPrefs->Write(wxT(
"/GUI/ToolBars/Tools/MultiToolActive"),
268#include "../TrackPanel.h"
318 auto &project = context.
project;
324 trackPanel.Refresh(
false);
329 auto &project = context.
project;
334 trackPanel.Refresh(
false);
346#define FN(X) (& ToolActions::Handler :: X)
353 Menu( wxT(
"Tools"),
XXO(
"T&ools"),
354 Command( wxT(
"SelectTool"),
XXO(
"&Selection Tool"),
FN(OnSelectTool),
356 Command( wxT(
"EnvelopeTool"),
XXO(
"&Envelope Tool"),
358 Command( wxT(
"DrawTool"),
XXO(
"&Draw Tool"),
FN(OnDrawTool),
360 Command( wxT(
"MultiTool"),
XXO(
"&Multi Tool"),
FN(OnMultiTool),
362 Command( wxT(
"PrevTool"),
XXO(
"&Previous Tool"),
FN(OnPrevTool),
364 Command( wxT(
"NextTool"),
XXO(
"&Next Tool"),
FN(OnNextTool),
373 wxT(
"Optional/Extra/Part1"),
wxEVT_COMMAND_BUTTON_CLICKED
constexpr CommandFlag AlwaysEnabledFlag
wxEvtHandler CommandHandlerObject
static ProjectFileIORegistry::AttributeWriterEntry entry
static Settings & settings()
The top-level handle to an Audacity project. It serves as a source of events that other objects can b...
CommandContext provides additional information to an 'Apply()' command. It provides the project,...
AudacityProject & project
ComponentInterfaceSymbol pairs a persistent string identifier used internally with an optional,...
virtual bool Flush(bool bCurrentOnly=false) wxOVERRIDE
static ProjectSettings & Get(AudacityProject &project)
static ProjectWindow & Get(AudacityProject &project)
void RedrawProject(const bool bForceWaveTracks=false)
wxColour & Colour(int iIndex)
wxSize ImageSize(int iIndex)
void Refresh(bool eraseBackground=true, const wxRect *rect=(const wxRect *) NULL) override
static TrackPanel & Get(AudacityProject &project)
Holds a msgid for the translation catalog; may also bind format arguments.
std::shared_ptr< BaseItem > BaseItemSharedPtr