1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-08-05 22:59:29 +02:00
audacity/src/toolbars/ToolsToolBar.h
James Crook fa49d94530 Script work
Add Envelope script
Add Clips and Boundaries Scripts.
Add docimages_oddments.py for the weirder cases.
Add make html script.
Add more spectral images
Add Dark versions of spectrograms (paul's comment)
Clean up oddments script.

- This commit also adds an option NOT to bring Audacity to the top when screenshotting.
-- That's because QuickPlay will disappear if you do -because you lose mouse capture.
- Also allow negative window IDs in the drag command.

- Registration names of align commands sorted.  They had &, : and / in them.
- Fixed bug in SetTrackInfo where bFocused was being ignored
- Fixed bug where command manager ignored multi-commands.
- Commit docimages_oddments.py again, to fix line endings.
2018-02-24 14:20:29 -05:00

90 lines
1.6 KiB
C++

/**********************************************************************
Audacity: A Digital Audio Editor
ToolsToolBar.h
Dominic Mazzoni
Shane T. Mueller
Leland Lucius
**********************************************************************/
#ifndef __AUDACITY_TOOLS_TOOLBAR__
#define __AUDACITY_TOOLS_TOOLBAR__
#include <wx/defs.h>
#include "ToolBar.h"
#include "../Theme.h"
class wxCommandEvent;
class wxDC;
class wxGridSizer;
class wxImage;
class wxWindow;
class AButton;
// Code duplication warning: these apparently need to be in the
// same order as the enum in ToolsToolBar.cpp
enum {
selectTool,
envelopeTool,
drawTool,
zoomTool,
slideTool,
multiTool,
numTools,
firstTool = selectTool,
lastTool = multiTool,
};
const int FirstToolID = 11200;
class ToolsToolBar final : public ToolBar {
public:
ToolsToolBar();
virtual ~ToolsToolBar();
void UpdatePrefs() override;
void OnTool(wxCommandEvent & evt);
void SetCurrentTool(int tool);
//These interrogate the state of the buttons or controls.
int GetCurrentTool() const;
bool IsDown(int tool) const;
int GetDownTool();
void Populate() override;
void Repaint(wxDC * WXUNUSED(dc)) override {};
void EnableDisableButtons() override {};
private:
void RegenerateTooltips() override;
wxImage *MakeToolImage(wxImage *tool, wxImage *mask, int style);
static AButton *MakeTool(
ToolsToolBar *pBar, teBmps eTool, int id, const wxChar *label);
AButton *mTool[numTools];
wxGridSizer *mToolSizer;
int mCurrentTool;
public:
DECLARE_CLASS(ToolsToolBar)
DECLARE_EVENT_TABLE()
};
#endif