45 lines
1.2 KiB
C++
45 lines
1.2 KiB
C++
/**********************************************************************
|
|
|
|
Audacity - A Digital Audio Editor
|
|
Copyright 1999-2009 Audacity Team
|
|
License: wxWidgets
|
|
|
|
Dan Horgan
|
|
|
|
******************************************************************//**
|
|
|
|
\file ExecMenuCommand.cpp
|
|
\brief Contains definitions for ExecMenuCommand class.
|
|
|
|
*//*******************************************************************/
|
|
|
|
#include "ExecMenuCommand.h"
|
|
#include "CommandManager.h"
|
|
#include "../Project.h"
|
|
|
|
wxString ExecMenuCommandType::BuildName()
|
|
{
|
|
return wxT("MenuCommand");
|
|
}
|
|
|
|
void ExecMenuCommandType::BuildSignature(CommandSignature &signature)
|
|
{
|
|
Validator *menuCommandValidator(new DefaultValidator());
|
|
signature.AddParameter(wxT("CommandName"), wxT(""), menuCommandValidator);
|
|
}
|
|
|
|
CommandHolder ExecMenuCommandType::Create(std::unique_ptr<CommandOutputTarget> &&target)
|
|
{
|
|
return std::make_shared<ExecMenuCommand>(*this, std::move(target));
|
|
}
|
|
|
|
bool ExecMenuCommand::Apply(CommandExecutionContext context)
|
|
{
|
|
CommandManager *cmdManager = context.GetProject()->GetCommandManager();
|
|
|
|
wxString cmdName = GetString(wxT("CommandName"));
|
|
wxUint32 cmdFlags = 0; // TODO ?
|
|
wxUint32 cmdMask = 0;
|
|
return cmdManager->HandleTextualCommand(cmdName, cmdFlags, cmdMask);
|
|
}
|