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

📄 resorgsymbolslistctrl.h

📁 ResOrg 图形化管理Vc项目的资源ID的工具的源代码。 ResOrg - Manage and Renumber Resource Symbol IDs Introduction The
💻 H
字号:
/************************************************************************
 *
 *                 Resource ID Organiser Core Library
 *
 * (c) Copyright 2000-2004 by Riverblade Limited (UK). All rights reserved.
 *
 ************************************************************************
 *                                                                       
 *  Description : CResOrgSymbolsListCtrl - list control class for a
 *                resource symbol file
 *                                                                       
 *  Target                                                               
 *  Environment : Windows 98/NT/2000/XP
 *
 *  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.
 *
 *    For support and updates please visit http://www.riverblade.co.uk/products/resorg
 *    or email support@riverblade.co.uk  
 *
 ************************************************************************
 *
 *   MODIFICATION HISTORY:
 *
 *           This is a controlled document. See project configuration
 *           control tool for latest version and full version history.
 *
 *    $Archive: /Projects/AddIns/ResOrg/ResOrgCore/ResOrgSymbolsListCtrl.h $
 *   $Revision: 14 $
 *       $Date: 13/12/04 3:56 $
 *     $Author: Anna $
 *
 *    $History: ResOrgSymbolsListCtrl.h $
 * 
 * *****************  Version 14  *****************
 * User: Anna         Date: 13/12/04   Time: 3:56
 * Updated in $/Projects/AddIns/ResOrg/ResOrgCore
 * 1.  Modifications fo compatibility with dynamic splitters
 * 2.  Updated file banners
 * 
 * *****************  Version 13  *****************
 * User: Anna         Date: 11/07/04   Time: 16:16
 * Updated in $/Projects/AddIns/ResOrg/ResOrgCore
 * Added support for detection of out of range symbols
 * 
 * *****************  Version 12  *****************
 * User: Anna         Date: 15/04/03   Time: 20:37
 * Updated in $/Projects/AddIns/ResOrg/ResOrgCore
 * 1.  Removed unnecessary file guards (#pragma once works well enough)
 * 2.  Updated file banners
 * 
 * *****************  Version 11  *****************
 * User: Anna         Date: 3/01/03    Time: 7:36
 * Updated in $/Projects/AddIns/ResOrg/ResOrgCore
 * Added an option to filter multi-file Symbols Displays by default
 * 
 * *****************  Version 10  *****************
 * User: Anna         Date: 2/01/03    Time: 23:54
 * Updated in $/Projects/AddIns/ResOrg/ResOrgCore
 * Added filtering to the Symbols Display
 * 
 * *****************  Version 9  *****************
 * User: Anna         Date: 25/11/02   Time: 15:14
 * Updated in $/Projects/AddIns/ResOrg/ResOrgCore
 * Changed website address in banner
 * 
 * *****************  Version 8  *****************
 * User: Anna         Date: 22/10/02   Time: 13:24
 * Updated in $/Projects/AddIns/ResOrg/ResOrgCore
 * Changed name/mail address (at last!)
 * 
 * *****************  Version 7  *****************
 * 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 6  *****************
 * User: Andy         Date: 27/05/02   Time: 14:50
 * Updated in $/Projects/AddIns/ResOrg/ResOrgUtils
 * Knock on changes from CResourceSymbolBuffer (now
 * CResourceSymbolManager)
 * 
 * *****************  Version 5  *****************
 * User: Andy         Date: 12/28/01   Time: 4:34p
 * Updated in $/Projects/AddIns/ResOrg/ResOrgUtils
 * Added a new override of CResOrgSymbolsListCtrl::AddSymbols()
 * 
 * *****************  Version 4  *****************
 * User: Andy         Date: 12/27/01   Time: 11:20p
 * Updated in $/Projects/AddIns/ResOrg/ResOrgUtils
 * 1.  Added "Original ID" column
 * 2.  Added CResOrgSymbolsListCtrl::SetSymbolManager(),
 * UpdateAllSymbols() and GetSymbol()
 * 3.  Renamed CResOrgSymbolsListCtrl::LookupSelection() to GetSelection()
 * and added an overload which works with multiple selections
 * 
 * *****************  Version 3  *****************
 * User: Andy         Date: 22/06/01   Time: 9:50
 * Updated in $/Projects/AddIns/ResOrg/ResOrgUtils
 * Made class declaration "Rose friendly"
 * 
 * *****************  Version 2  *****************
 * User: Andy         Date: 27/03/01   Time: 15:23
 * Updated in $/Projects/AddIns/ResOrg/ResOrgUtils
 * 1.  Made the "Status" column optional
 * 2.  Modifications to allow use in the "Symbol Conflicts" property page
 * 
 * *****************  Version 1  *****************
 * User: Andy         Date: 17/02/01   Time: 6:47
 * Created in $/Projects/AddIns/ResOrg/ResOrgUtils
 * 
 * *****************  Version 3  *****************
 * User: Andy         Date: 29/11/00   Time: 18:38
 * Updated in $/Projects/AddIns/ResOrg/ResOrgUtils
 *  Added file banners
 *
 * $Nokeywords: $
 *
 ************************************************************************/

#pragma once



/////////////////////////////////////////////////////////////////////////////
// CResOrgSymbolsListCtrl window

#define	CResOrgSymbolsListCtrl_BASE							CCJListCtrl

class RESORGCORE_EXT_CLASS	CResOrgSymbolsListCtrl : public	CCJListCtrl
{
// Construction/Destruction
public:
			CResOrgSymbolsListCtrl(void);

	virtual ~CResOrgSymbolsListCtrl(void);

// Attributes
public:
			int						m_nSortColumn;
			bool					m_bSortAscending;
			CResourceSymbolManager* m_pResourceSymbolManager;
			CNGImageList			m_ctrlImages;

			bool					m_bShowStatusColumn;
			bool					m_bShowProblemSymbolsOnly;

// Operations
public:
			CResourceSymbolManager* GetSymbolManager(void) const
										{ return m_pResourceSymbolManager; }

			bool					SetSymbolManager(CResourceSymbolManager* pResourceSymbolManager);
			
			void					Initialise(	bool bFlatHeader = false,
												bool bShowStatusColumn = true);

			bool					ShowProblemSymbolsOnly(void) const
										{ return m_bShowProblemSymbolsOnly; }

			bool					ShowProblemSymbolsOnly(bool bShow);

			bool					IsVisible(CResourceSymbol* pSymbol) const;

			void					AddSymbols(CResourceSymbolManager* pResourceSymbolManager);
			
			void					AddSymbols(const CResourceSymbolList& listSymbols);

			bool					AddSymbol(CResourceSymbol* pSymbol);

			bool					UpdateSymbol(CResourceSymbol* pSymbol);
			
			bool					UpdateAllSymbols(void);

			bool					RemoveSymbol(CResourceSymbol* pSymbol);

			void					RemoveAllSymbols(void);

			bool					Sort(void);

			int						FindSymbol(CResourceSymbol* pSymbol) const;

			CResourceSymbol*		GetSelection(void) const;

			CResourceSymbol*		GetSymbol(int nItem) const;

			int						GetSelection(CResourceSymbolList& rlistSymbols) const;

// Virtual Overrides
protected:
	virtual void					PreSubclassWindow(void);

public:
	virtual	bool					SortList(int nColumn, bool bAscending);


// Implementation
protected:


	// Generated message map functions
protected:
	afx_msg int						OnCreate(LPCREATESTRUCT lpCreateStruct);
	afx_msg	void					OnCustomDraw(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void					OnNcCalcSize(BOOL bCalcValidRects, NCCALCSIZE_PARAMS FAR* lpncsp);
	afx_msg void					OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);

	DECLARE_MESSAGE_MAP()
};

⌨️ 快捷键说明

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