1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
/* SPDX-License-Identifier: GPL-2.0-or-later */
/*!********************************************************************
Audacity: A Digital Audio Editor
ShareAudioToolbar.h
Dmitry Vedenko
**********************************************************************/
#pragma once
#include "toolbars/ToolBar.h"
class AudacityProject;
namespace audacity::cloud
{
class ShareAudioToolbar final : public ToolBar
{
public:
static Identifier ID();
explicit ShareAudioToolbar(AudacityProject& project);
~ShareAudioToolbar() override;
static ShareAudioToolbar& Get(AudacityProject& project);
static const ShareAudioToolbar& Get(const AudacityProject& project);
private:
void Create(wxWindow* parent) override;
void RegenerateTooltips() override;
void Populate() override;
void Repaint(wxDC* dc) override;
void EnableDisableButtons() override;
void ReCreateButtons() override;
AButton* MakeButton(int id, const TranslatableString& label, const wxImage& icon);
void MakeShareAudioButton();
void MakeGetEffectsButton();
void ArrangeButtons();
AButton* mShareAudioButton {};
AButton* mGetEffectsButton {};
enum
{
ID_SHARE_AUDIO_BUTTON = 14000,
ID_GET_EFFECTS_BUTTON = 14001,
BUTTON_COUNT,
};
DECLARE_CLASS(ShareAudioToolbar)
}; // class ShareAudioToolbar
} // namespace audacity::cloud
|