Visual Basic | |
---|---|
Function CreateCommand( _ ByVal ApiUuid As System.String, _ ByVal CmdName As System.String, _ ByRef Error As dsCreateCommandError_e _ ) As Command |
C# | |
---|---|
Command CreateCommand( System.string ApiUuid, System.string CmdName, out dsCreateCommandError_e Error ) |
JavaScript | |
---|---|
CreateCommand( ApiUuid : String, CmdName : String ) : { Error : String, Cmd : dsCommand } |
COM native C++ | |
---|---|
HRESULT CreateCommand( BSTR ApiUuid, BSTR CmdName, dsCreateCommandError_e* Error, ICommand** Cmd ) |
C++ | |
---|---|
DSRESULT CreateCommand( const dsString& ApiUuid, const dsString& CmdName, dsCreateCommandError_e* Error, dsCommand** Cmd ) |
Parameters
- ApiUuid
UUID of the add-in or non add-in application
- CmdName
- Unique name for the command (see Remarks)
- Error[out]
- Status of creating the command as defined in dsCreateCommandError_e
- Cmd[out] or Return Value
- Command
The following code snippets show how to add a command for the command window:
- COM native C++ (from the DraftSight API COM native C++ template files DsAddinConnection.cpp and DsAddinUserCommand.cpp)
- C++ (from the DraftSight API C++ template file dsAddinConnection.cpp)
COM native C++
DsAddinConnection.cpp
DsAddinUserCommand pNotepad(m_sApiUuid, L"Notepad", L"^C^CNotepad", L"Opens Notepad", L"path_and_file_name.bmp", L"path_and_file_name.png");
DsAddinUserCommand.cpp
DsAddinUserCommand::DsAddinUserCommand( _bstr_t ApiUuid, _bstr_t UserCmdName, _bstr_t CmdString, _bstr_t Description, _bstr_t SmallIcon, _bstr_t LargeIcon )
{
CDsAddinConnection *dsConnection = getMyApp();
dsCreateCommandError_e commandErr;
// User command dependent on pre-defined command
ICommand* pCommand = dsConnection->m_DsApp->CreateCommand( ApiUuid, UserCmdName, &commandErr );
m_DsUserCommand = dsConnection->m_DsApp->CreateUserCommand( ApiUuid, UserCmdName, CmdString, Description, SmallIcon, LargeIcon, &commandErr );
DsAddinCommand *dsAddCom = new DsAddinCommand(pCommand);
}
C++
bool
myApplication::CreateUserInterfaceAndCommands(){
"";dsString emptyStr = L
dsString UserCommandName = L
"qAddin1_Notepad";dsString Description = L
"Opens Notepad";dsString UserCmdString = L
"^C^CqAddin1_Notepad";
const int MENU_POSITION = 9; //Menu should be between "Modify" and "Tools" menus
dsApplication_c *dsApp = getDsApp();
dsCreateCommandError_e Error;
// User command dependent on pre-defined command
dsApp->CreateCommand(myApplication::appID, UserCommandName, &Error, &pCmd );
if(( Error == 0 ) ){
"path_and_file_name.bmp", L"path_and_file_name.png", dsUIState_Document, &Error, &pUserCmd );RegisterCommandExecuteNotifyHook( pCmd );
dsUserCommand_ptr pUserCmd;
dsApp->CreateUserCommand( myApplication::appID, UserCommandName, UserCmdString, Description, L
If CmdName already exists, then dsCreateCommand_e.dsCreateCommandError_CommandNameExisted is returned for Error.
Use the string specified for CmdName for IApplication::CreateUserCommand's UserCmdName parameter; e.g.; apiCmd.
To see a list of existing commands:
- Right-click a toolbar in the user interface.
- Select Customize Interface.
- Click Commands on the left side of the dialog.
- Use the scroll bar to see the list of existing commands.
- To quickly locate a command that you've added:
- Type the name of the command in Find.
- Click the name of the command in the Name column.
- Examine the information at the bottom of the dialog.
IApplication Members
IApplication::GetRunningCommand Method
IApplication::RunCommand Method
IApplication::AbortRunningCommand Method