⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 resorgmdiframewnd.cpp

📁 ResOrg 图形化管理Vc项目的资源ID的工具的源代码。 ResOrg - Manage and Renumber Resource Symbol IDs Introduction The
💻 CPP
📖 第 1 页 / 共 2 页
字号:
/************************************************************************
 *
 *                 Resource ID Organiser Core Library
 *
 * (c) Copyright 2000-2004 by Anna-Jayne Metcalfe (resorg@annasplace.me.uk)
 *                         All rights reserved.
 *
 ************************************************************************
 *                                                                       
 *  Filename    : ResOrgMDIFrameWnd.cpp
 *
 *  Description : CResOrgMDIFrameWnd - MDI main frame window class
 *
 *  Compiler    : Microsoft Visual C++ 6.0, Service Pack 3 or later
 *                Microsoft Visual C++ .NET 2002
 *                                                                       
 *  Target                                                               
 *  Environment : Windows 98/NT/2000/XP
 *
 *  NOTE:
 *
 *    This software is provided "as is" free for personal use. All
 *    title and copyrights in and to the software, including but not
 *    limited to any images, text, etc. incorporated into it, are
 *    owned by Anna-Jayne Metcalfe, except where acknowledged otherwise.
 *
 *    Your may freely to use this code in your own products, PROVIDED
 *    this notice is not removed or modified.
 *
 *
 *    Visit http://www.annasplace.me.uk/resorg for latest updates
 *
 ************************************************************************
 *
 *   MODIFICATION HISTORY:
 *
 *           This is a controlled document. See project configuration
 *           control tool for latest version and full version history.
 *
 *    $Archive: /Projects/AddIns/ResOrg/ResOrgCore/ResOrgMDIFrameWnd.cpp $
 *   $Revision: 10 $
 *       $Date: 11/07/04 16:23 $
 *     $Author: Anna $
 *
 *    $History: ResOrgMDIFrameWnd.cpp $
 * 
 * *****************  Version 10  *****************
 * User: Anna         Date: 11/07/04   Time: 16:23
 * Updated in $/Projects/AddIns/ResOrg/ResOrgCore
 * 1.  Added support for detection of out of range symbols
 * 2.  Double clicking Status Bar panes now does something vaguely
 * sensible...
 * 
 * *****************  Version 9  *****************
 * User: Anna         Date: 3/03/03    Time: 23:33
 * Updated in $/Projects/AddIns/ResOrg/ResOrgCore
 * Removed CResOrgMDIFrameWnd::OnUpdateFileSaveEtc() - it's no longer
 * needed as CResOrgHtmlDoc is a bit cleverer
 * 
 * *****************  Version 8  *****************
 * User: Anna         Date: 25/11/02   Time: 15:13
 * Updated in $/Projects/AddIns/ResOrg/ResOrgCore
 * Changed website address in banner
 * 
 * *****************  Version 7  *****************
 * User: Anna         Date: 22/10/02   Time: 13:24
 * Updated in $/Projects/AddIns/ResOrg/ResOrgCore
 * Changed name/mail address (at last!)
 * 
 * *****************  Version 6  *****************
 * User: Andy         Date: 7/06/02    Time: 17:04
 * Updated in $/Projects/AddIns/ResOrg/ResOrgCore
 * Renamed the ResOrgUtils module to ResOrgCore. Updated file banners
 * accordingly
 * 
 * *****************  Version 5  *****************
 * User: Andy         Date: 10/05/02   Time: 16:00
 * Updated in $/Projects/AddIns/ResOrg/ResOrgUtils
 * Added "Use Office XP style menus" option
 * 
 * *****************  Version 4  *****************
 * User: Andy         Date: 12/27/01   Time: 10:31p
 * Updated in $/Projects/AddIns/ResOrg/ResOrgUtils
 * Added the ability to show text on toolbars
 * 
 * *****************  Version 3  *****************
 * User: Andy         Date: 11/10/01   Time: 12:15p
 * Updated in $/Projects/AddIns/ResOrg/ResOrgUtils
 * Added a new pane to the status bar & removed the duff ones
 * 
 * *****************  Version 2  *****************
 * User: Andy         Date: 2/06/01    Time: 19:51
 * Updated in $/Projects/AddIns/ResOrg/ResOrgUtils
 * Comment changes only
 * 
 * *****************  Version 1  *****************
 * User: Andy         Date: 2/06/01    Time: 16:49
 * Created in $/Projects/AddIns/ResOrg/ResOrgUtils
 * 
 *
 * $Nokeywords: $
 *
 ************************************************************************/

#include "StdAfx.h"
#include "ResOrgCore_Priv.h"

#include "ResOrgSymbolsDoc.h"

#include "ResOrgMDIFrameWnd.h"
#include ".\resorgmdiframewnd.h"


#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif


/////////////////////////////////////////////////////////////////////////////
// CResOrgMDIFrameWnd

IMPLEMENT_DYNCREATE(CResOrgMDIFrameWnd, CResOrgMDIFrameWnd_BASE)

static const UINT uToolBarTextMsg = ::RegisterWindowMessage(OPTION_DISPLAY_TOOLBAR_TEXT);
static const UINT uXpMenuStyleMsg = ::RegisterWindowMessage(OPTION_DISPLAY_XP_MENUS);


BEGIN_MESSAGE_MAP(CResOrgMDIFrameWnd, CResOrgMDIFrameWnd_BASE)

	ON_WM_CREATE()
	ON_WM_DROPFILES()
	ON_WM_CLOSE()
	ON_WM_LBUTTONDBLCLK()
	ON_UPDATE_COMMAND_UI(	ID_FILE_CLOSE,					OnUpdateFileClose)
	ON_UPDATE_COMMAND_UI(	ID_INDICATOR_NEXT_SYMBOLS,		OnUpdateNextSymbolIndicator)
	ON_UPDATE_COMMAND_UI(	ID_INDICATOR_SYM_COUNT,			OnUpdateSymbolCount)
	ON_UPDATE_COMMAND_UI(	ID_INDICATOR_SYM_PROBLEMS,		OnUpdateProblemSymbolCount)
	ON_REGISTERED_MESSAGE(	uToolBarTextMsg,				OnMsgToolBarTextOptionChanged)
	ON_REGISTERED_MESSAGE(	uXpMenuStyleMsg,				OnMsgXpStyleMenuOptionChanged)

END_MESSAGE_MAP()


static UINT indicators[] =
{
	ID_SEPARATOR,           // status line indicator
	ID_INDICATOR_SYM_COUNT,
	ID_INDICATOR_SYM_PROBLEMS,
	ID_INDICATOR_NEXT_SYMBOLS
};


/////////////////////////////////////////////////////////////////////////////
// CResOrgMDIFrameWnd construction/destruction

CResOrgMDIFrameWnd::CResOrgMDIFrameWnd(void)
{
}


CResOrgMDIFrameWnd::~CResOrgMDIFrameWnd(void)
{
}


/////////////////////////////////////////////////////////////////////////////
// CResOrgMDIFrameWnd virtual overrides

BOOL CResOrgMDIFrameWnd::OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo) 
{
	if (Options.OnCmdMsg(nID, nCode, pExtra, pHandlerInfo) )
	{
		return TRUE;
	}
	return CResOrgMDIFrameWnd_BASE::OnCmdMsg(nID, nCode, pExtra, pHandlerInfo);
}


/////////////////////////////////////////////////////////////////////////////
// CResOrgMDIFrameWnd diagnostics

#ifdef _DEBUG
void CResOrgMDIFrameWnd::AssertValid(void) const
{
	CResOrgMDIFrameWnd_BASE::AssertValid();
}


void CResOrgMDIFrameWnd::Dump(CDumpContext& dc) const
{
	CResOrgMDIFrameWnd_BASE::Dump(dc);
}

#endif //_DEBUG


/////////////////////////////////////////////////////////////////////////////
// CResOrgMDIFrameWnd operations

CDocument* CResOrgMDIFrameWnd::MDIGetActiveDocument(void) const
{
	CDocument* pDoc = NULL;

	CMDIChildWnd * pwndChild = MDIGetActive();

	if (NULL != pwndChild)
	{
		pDoc = pwndChild->GetActiveDocument();
	}
	return pDoc;
} 


/////////////////////////////////////////////////////////////////////////////
// CResOrgMDIFrameWnd implementation
// (none)


/////////////////////////////////////////////////////////////////////////////
// CResOrgMDIFrameWnd message handlers

int CResOrgMDIFrameWnd::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
	if (CResOrgMDIFrameWnd_BASE::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	if (!m_wndToolBar.Create(this, Options.ShowTextOnToolbars() ) )
	{
		TRACE0("Failed to create toolbar\n");
		return -1;      // fail to create
	}
//	RecalcLayout();

	if (!m_wndStatusBar.CreateStatusBar(this,
											indicators,
											sizeof(indicators)/sizeof(UINT) ) )
	{
		TRACE0("Failed to create status bar\n");
		return -1;      // fail to create
	}

	// Resize the status bar panes
	UINT uID = 0;
	UINT eStyle = 0;
	int nWidth = 0;
	m_wndStatusBar.GetPaneInfo(	m_wndStatusBar.CommandToIndex(ID_INDICATOR_SYM_COUNT),
								uID,
								eStyle,
								nWidth);

	m_wndStatusBar.SetPaneInfo(	m_wndStatusBar.CommandToIndex(ID_INDICATOR_SYM_COUNT),
								uID,
								eStyle,
								nWidth * 2);

	m_wndStatusBar.GetPaneInfo(	m_wndStatusBar.CommandToIndex(ID_INDICATOR_SYM_PROBLEMS),
								uID,
								eStyle,
								nWidth);

	m_wndStatusBar.SetPaneInfo(	m_wndStatusBar.CommandToIndex(ID_INDICATOR_SYM_PROBLEMS),
								uID,
								eStyle,
								nWidth * 2);

	m_wndStatusBar.GetPaneInfo(	m_wndStatusBar.CommandToIndex(ID_INDICATOR_NEXT_SYMBOLS),
								uID,
								eStyle,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -