audacia/src/commands/GetInfoCommand.h

70 lines
2.2 KiB
C++

/**********************************************************************
Audacity - A Digital Audio Editor
Copyright 1999-2018 Audacity Team
License: wxWidgets
James Crook
******************************************************************//**
\file GetInfoCommand.h
\brief Contains declaration of GetInfoCommand class.
\class GetInfoCommand
\brief Command which outputs a list of available menu commands on the status
channel.
*//*******************************************************************/
#ifndef __GET_INFO_COMMAND__
#define __GET_INFO_COMMAND__
#include "Command.h"
#include "CommandType.h"
class wxMenuBar;
class wxPoint;
class GetInfoCommand : public AudacityCommand
{
public:
static const ComponentInterfaceSymbol Symbol;
// ComponentInterface overrides
ComponentInterfaceSymbol GetSymbol() override {return Symbol;};
TranslatableString GetDescription() override {return XO("Gets information in JSON format.");};
bool DefineParams( ShuttleParams & S ) override;
void PopulateOrExchange(ShuttleGui & S) override;
// AudacityCommand overrides
ManualPageID ManualPage() override {return L"Extra_Menu:_Scriptables_II#get_info";}
bool Apply(const CommandContext &context) override;
bool ApplyInner(const CommandContext &context);
public:
int mInfoType;
int mFormat;
private:
bool SendCommands(const CommandContext & context, int flags);
bool SendMenus(const CommandContext & context);
bool SendPreferences(const CommandContext & context);
bool SendTracks(const CommandContext & context);
bool SendLabels(const CommandContext & context);
bool SendClips(const CommandContext & context);
bool SendEnvelopes(const CommandContext & context);
bool SendBoxes(const CommandContext & context);
void ExploreMenu( const CommandContext &context, wxMenu * pMenu, int Id, int depth );
void ExploreTrackPanel( const CommandContext & context,
wxPoint P, wxWindow * pWin, int Id, int depth );
void ExploreAdornments( const CommandContext & context,
wxPoint P, wxWindow * pWin, int Id, int depth );
void ExploreWindows( const CommandContext & context,
wxPoint P, wxWindow * pWin, int Id, int depth );
};
#endif /* End of include guard: __GET_INFO_COMMAND__ */