📄 optionscommandhandler.cpp
字号:
/************************************************************************
*
* Resource ID Organiser Add-In for Visual C++ .NET
*
* (c) Copyright 2000-2005 by Riverblade Limited (UK). All rights reserved.
*
************************************************************************
*
* Description : COptionsCommandHandler - Handles the ResOrg "Options"
* command.
*
* Compiler : Microsoft Visual C++ .NET 2003
*
* Target
* Environment : Windows 2000/XP/Vista;
* Visual Studio 2002, 2003 or 2005
*
* NOTE:
*
* This software is provided "as is". All title and copyrights in and
* to the software, including but not limited to any images, text etc.
* etc. incorporated into it, are the property of Anna-Jayne Metcalfe
* and Riverblade Limited, except where acknowledged otherwise.
*
* Your may freely use this code in your own products, PROVIDED
* this notice is not removed or modified.
*
* Please visit http://www.riverblade.co.uk/products/resorg or email
* support@riverblade.co.uk for latest updates and product support
*
************************************************************************
*
* MODIFICATION HISTORY:
*
* This is a controlled document. See project configuration
* control tool for latest version and full version history.
*
* $Archive: /Projects/AddIns/ResOrg/ResOrgNETAddIn/OptionsCommandHandler.cpp $
* $Revision: 2 $
* $Date: 22/10/05 11:56 $
* $Author: Anna $
*
* $History: OptionsCommandHandler.cpp $
*
* ***************** Version 2 *****************
* User: Anna Date: 22/10/05 Time: 11:56
* Updated in $/Projects/AddIns/ResOrg/ResOrgNETAddIn
* Integrated ATL CMainToolWindowCtrl, which replaces the original MFC OLE
* Control [IMS ID 125]
*
* ***************** Version 1 *****************
* User: Anna Date: 16/10/05 Time: 17:23
* Created in $/Projects/AddIns/ResOrg/ResOrgNETAddIn
*
* $Nokeywords: $
*
************************************************************************/
#include "StdAfx.h"
#include "OptionsCommandHandler.h"
/////////////////////////////////////////////////////////////////////////////
// COptionsCommandHandler construction/destruction
COptionsCommandHandler::COptionsCommandHandler( const CComPtr<EnvDTE::_DTE>& pDTE,
const _bstr_t& bsCommandName) :
CAddInCommandHandler(pDTE, bsCommandName)
{
ATLASSERT(m_pDTE != NULL);
ATLASSERT(m_bsCommandName.length() > 0);
}
COptionsCommandHandler::~COptionsCommandHandler(void)
{
m_pDTE = NULL;
}
/////////////////////////////////////////////////////////////////////////////
// COptionsCommandHandler operations
// (none)
/////////////////////////////////////////////////////////////////////////////
// COptionsCommandHandler virtual overrides
HRESULT COptionsCommandHandler::QueryStatus( BSTR bstrCmdName,
EnvDTE::vsCommandStatusTextWanted NeededText,
EnvDTE::vsCommandStatus* pStatusOption,
VARIANT* pvarCommandText)
{
UNREFERENCED_PARAMETER(bstrCmdName);
UNREFERENCED_PARAMETER(NeededText);
UNREFERENCED_PARAMETER(pvarCommandText);
//lint -save -e655 (Warning -- bit-wise operation uses (compatible) enum's)
*pStatusOption = (EnvDTE::vsCommandStatus)(EnvDTE::vsCommandStatusEnabled | EnvDTE::vsCommandStatusSupported);
//lint -restore
return S_OK;
}
HRESULT COptionsCommandHandler::Exec( BSTR bstrCmdName,
EnvDTE::vsCommandExecOption ExecuteOption,
VARIANT* pvarVariantIn,
VARIANT* pvarVariantOut,
VARIANT_BOOL* pvbHandled)
{
AFX_MANAGE_STATE( ::AfxGetStaticModuleState() );
UNREFERENCED_PARAMETER(bstrCmdName);
UNREFERENCED_PARAMETER(ExecuteOption);
UNREFERENCED_PARAMETER(pvarVariantIn);
UNREFERENCED_PARAMETER(pvarVariantOut);
// Because this add-in is implemented as a Regular DLL with a
// mainframe window the usual trick of calling EnableModeless()
// isn't enough to ensure that modal dialogs behave correctly -
// we also have to ensure that any dialogs are parented by
// DevStudio's main window rather than our own...
HWND hWndDevStudio = _Module.FindVisualStudioMainWnd();
CWnd* pWnd = CWnd::FromHandle(hWndDevStudio);
Options.Configure(pWnd);
*pvbHandled = VARIANT_TRUE;
return S_OK;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -