Sfoglia il codice sorgente

采用对话框形式处理,不使用多文档,因为Ribbon中无日期控件。

Jeff 3 anni fa
parent
commit
5303bc353e
67 ha cambiato i file con 263 aggiunte e 3719 eliminazioni
  1. 5 5
      Source/OGCAssistTool/OGCAssistTool.sln
  2. 0 153
      Source/OGCAssistTool/OGCAssistTool/CalendarBar.cpp
  3. 0 44
      Source/OGCAssistTool/OGCAssistTool/CalendarBar.h
  4. 0 332
      Source/OGCAssistTool/OGCAssistTool/ClassView.cpp
  5. 0 64
      Source/OGCAssistTool/OGCAssistTool/ClassView.h
  6. 0 266
      Source/OGCAssistTool/OGCAssistTool/FileView.cpp
  7. 0 65
      Source/OGCAssistTool/OGCAssistTool/FileView.h
  8. 0 618
      Source/OGCAssistTool/OGCAssistTool/MainFrm.cpp
  9. 0 97
      Source/OGCAssistTool/OGCAssistTool/MainFrm.h
  10. 20 136
      Source/OGCAssistTool/OGCAssistTool/OGCAssistTool.cpp
  11. 5 22
      Source/OGCAssistTool/OGCAssistTool/OGCAssistTool.h
  12. 30 462
      Source/OGCAssistTool/OGCAssistTool/OGCAssistTool.rc
  13. 7 219
      Source/OGCAssistTool/OGCAssistTool/OGCAssistTool.vcproj
  14. 153 0
      Source/OGCAssistTool/OGCAssistTool/OGCAssistToolDlg.cpp
  15. 32 0
      Source/OGCAssistTool/OGCAssistTool/OGCAssistToolDlg.h
  16. 0 89
      Source/OGCAssistTool/OGCAssistTool/OGCAssistToolDoc.cpp
  17. 0 51
      Source/OGCAssistTool/OGCAssistTool/OGCAssistToolDoc.h
  18. 0 127
      Source/OGCAssistTool/OGCAssistTool/OGCAssistToolView.cpp
  19. 0 63
      Source/OGCAssistTool/OGCAssistTool/OGCAssistToolView.h
  20. 0 208
      Source/OGCAssistTool/OGCAssistTool/OutputWnd.cpp
  21. 0 69
      Source/OGCAssistTool/OGCAssistTool/OutputWnd.h
  22. 0 279
      Source/OGCAssistTool/OGCAssistTool/PropertiesWnd.cpp
  23. 0 70
      Source/OGCAssistTool/OGCAssistTool/PropertiesWnd.h
  24. 3 21
      Source/OGCAssistTool/OGCAssistTool/ReadMe.txt
  25. 0 51
      Source/OGCAssistTool/OGCAssistTool/ViewTree.cpp
  26. 0 33
      Source/OGCAssistTool/OGCAssistTool/ViewTree.h
  27. BIN
      Source/OGCAssistTool/OGCAssistTool/res/OGCAssistTool.ico
  28. BIN
      Source/OGCAssistTool/OGCAssistTool/res/OGCAssistToolDoc.ico
  29. BIN
      Source/OGCAssistTool/OGCAssistTool/res/Toolbar.bmp
  30. BIN
      Source/OGCAssistTool/OGCAssistTool/res/Toolbar256.bmp
  31. BIN
      Source/OGCAssistTool/OGCAssistTool/res/buttons.bmp
  32. BIN
      Source/OGCAssistTool/OGCAssistTool/res/class_view.ico
  33. BIN
      Source/OGCAssistTool/OGCAssistTool/res/class_view_hc.ico
  34. BIN
      Source/OGCAssistTool/OGCAssistTool/res/classview.bmp
  35. BIN
      Source/OGCAssistTool/OGCAssistTool/res/classview_hc.bmp
  36. BIN
      Source/OGCAssistTool/OGCAssistTool/res/explorer.bmp
  37. BIN
      Source/OGCAssistTool/OGCAssistTool/res/explorer_hc.bmp
  38. BIN
      Source/OGCAssistTool/OGCAssistTool/res/file_view.ico
  39. BIN
      Source/OGCAssistTool/OGCAssistTool/res/file_view_hc.ico
  40. BIN
      Source/OGCAssistTool/OGCAssistTool/res/filelarge.bmp
  41. BIN
      Source/OGCAssistTool/OGCAssistTool/res/filesmall.bmp
  42. BIN
      Source/OGCAssistTool/OGCAssistTool/res/fileview.bmp
  43. BIN
      Source/OGCAssistTool/OGCAssistTool/res/fileview_hc.bmp
  44. BIN
      Source/OGCAssistTool/OGCAssistTool/res/info.bmp
  45. BIN
      Source/OGCAssistTool/OGCAssistTool/res/main.bmp
  46. BIN
      Source/OGCAssistTool/OGCAssistTool/res/menuimages.bmp
  47. BIN
      Source/OGCAssistTool/OGCAssistTool/res/menuimages_hc.bmp
  48. BIN
      Source/OGCAssistTool/OGCAssistTool/res/nav_large.bmp
  49. BIN
      Source/OGCAssistTool/OGCAssistTool/res/nav_large_hc.bmp
  50. BIN
      Source/OGCAssistTool/OGCAssistTool/res/output_wnd.ico
  51. BIN
      Source/OGCAssistTool/OGCAssistTool/res/output_wnd_hc.ico
  52. BIN
      Source/OGCAssistTool/OGCAssistTool/res/pages.bmp
  53. BIN
      Source/OGCAssistTool/OGCAssistTool/res/pages_hc.bmp
  54. BIN
      Source/OGCAssistTool/OGCAssistTool/res/pages_small.bmp
  55. BIN
      Source/OGCAssistTool/OGCAssistTool/res/pages_small_hc.bmp
  56. BIN
      Source/OGCAssistTool/OGCAssistTool/res/properties.bmp
  57. BIN
      Source/OGCAssistTool/OGCAssistTool/res/properties_hc.bmp
  58. BIN
      Source/OGCAssistTool/OGCAssistTool/res/properties_wnd.ico
  59. BIN
      Source/OGCAssistTool/OGCAssistTool/res/properties_wnd_hc.ico
  60. BIN
      Source/OGCAssistTool/OGCAssistTool/res/sort.bmp
  61. BIN
      Source/OGCAssistTool/OGCAssistTool/res/sort_hc.bmp
  62. BIN
      Source/OGCAssistTool/OGCAssistTool/res/writelarge.bmp
  63. BIN
      Source/OGCAssistTool/OGCAssistTool/res/writesmall.bmp
  64. 7 137
      Source/OGCAssistTool/OGCAssistTool/resource.h
  65. 0 10
      Source/OGCAssistTool/OGCAssistTool/stdafx.cpp
  66. 1 18
      Source/OGCAssistTool/OGCAssistTool/stdafx.h
  67. 0 10
      Source/OGCAssistTool/OGCAssistTool/targetver.h

+ 5 - 5
Source/OGCAssistTool/OGCAssistTool.sln

@@ -1,7 +1,7 @@
 
 Microsoft Visual Studio Solution File, Format Version 10.00
 # Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OGCAssistTool", "OGCAssistTool\OGCAssistTool.vcproj", "{01D481C5-7859-43F9-B224-219E8AD4A10C}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OGCAssistTool", "OGCAssistTool\OGCAssistTool.vcproj", "{0B8CE487-8311-4878-902B-15813A89DB90}"
 EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -9,10 +9,10 @@ Global
 		Release|Win32 = Release|Win32
 	EndGlobalSection
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{01D481C5-7859-43F9-B224-219E8AD4A10C}.Debug|Win32.ActiveCfg = Debug|Win32
-		{01D481C5-7859-43F9-B224-219E8AD4A10C}.Debug|Win32.Build.0 = Debug|Win32
-		{01D481C5-7859-43F9-B224-219E8AD4A10C}.Release|Win32.ActiveCfg = Release|Win32
-		{01D481C5-7859-43F9-B224-219E8AD4A10C}.Release|Win32.Build.0 = Release|Win32
+		{0B8CE487-8311-4878-902B-15813A89DB90}.Debug|Win32.ActiveCfg = Debug|Win32
+		{0B8CE487-8311-4878-902B-15813A89DB90}.Debug|Win32.Build.0 = Debug|Win32
+		{0B8CE487-8311-4878-902B-15813A89DB90}.Release|Win32.ActiveCfg = Release|Win32
+		{0B8CE487-8311-4878-902B-15813A89DB90}.Release|Win32.Build.0 = Release|Win32
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE

+ 0 - 153
Source/OGCAssistTool/OGCAssistTool/CalendarBar.cpp

@@ -1,153 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-#include "stdafx.h"
-#include "CalendarBar.h"
-#include "OGCAssistTool.h"
-
-#ifdef _DEBUG
-#define new DEBUG_NEW
-#undef THIS_FILE
-static char THIS_FILE[] = __FILE__;
-#endif
-
-const int nBorderSize = 10;
-
-/////////////////////////////////////////////////////////////////////////////
-// CCalendarBar
-
-CCalendarBar::CCalendarBar()
-{
-	m_nMyCalendarsY = 0;
-}
-
-CCalendarBar::~CCalendarBar()
-{
-}
-
-BEGIN_MESSAGE_MAP(CCalendarBar, CWnd)
-	ON_WM_CREATE()
-	ON_WM_ERASEBKGND()
-	ON_WM_SIZE()
-	ON_WM_PAINT()
-	ON_WM_SETTINGCHANGE()
-END_MESSAGE_MAP()
-
-/////////////////////////////////////////////////////////////////////////////
-// CCalendarBar 消息处理程序
-
-int CCalendarBar::OnCreate(LPCREATESTRUCT lpCreateStruct)
-{
-	if (CWnd::OnCreate(lpCreateStruct) == -1)
-		return -1;
-
-	CRect rectDummy(0, 0, 0, 0);
-	m_wndCalendar.Create(WS_CHILD | WS_VISIBLE, rectDummy, this, 1);
-
-	CBitmap bmp;
-	bmp.LoadBitmap(IDB_PAGES_SMALL_HC);
-
-	m_Images.Create(16, 16, ILC_COLOR24 | ILC_MASK, 0, 0);
-	m_Images.Add(&bmp, RGB(255, 0, 255));
-
-	return 0;
-}
-
-BOOL CCalendarBar::OnEraseBkgnd(CDC* /*pDC*/)
-{
-	return TRUE;
-}
-
-void CCalendarBar::OnSize(UINT nType, int cx, int cy)
-{
-	CWnd::OnSize(nType, cx, cy);
-
-	int nMyCalendarsHeight = 70;
-
-	if (m_wndCalendar.GetSafeHwnd() != NULL)
-	{
-		m_wndCalendar.SetWindowPos(NULL, nBorderSize, nBorderSize, cx - 2 * nBorderSize, cy - 2 * nBorderSize - nMyCalendarsHeight - 10, SWP_NOZORDER | SWP_NOACTIVATE);
-	}
-
-	m_nMyCalendarsY = cy - nMyCalendarsHeight;
-}
-
-BOOL CCalendarBar::Create(const RECT& rect, CWnd* pParentWnd, UINT nID)
-{
-	return CWnd::Create(NULL, _T(""), WS_CHILD | WS_VISIBLE, rect, pParentWnd, nID);
-}
-
-void CCalendarBar::OnPaint()
-{
-	CPaintDC dc(this); // 用于绘制的设备上下文
-
-	CRect rectClient;
-	GetClientRect(rectClient);
-
-	dc.FillRect(rectClient, &afxGlobalData.brWindow);
-
-	if (rectClient.bottom - m_nMyCalendarsY > 0)
-	{
-		CRect rectMyCalendarsCaption = rectClient;
-		rectMyCalendarsCaption.top = m_nMyCalendarsY;
-		rectMyCalendarsCaption.bottom = rectMyCalendarsCaption.top + afxGlobalData.GetTextHeight(TRUE) * 3 / 2;
-
-		COLORREF clrText = CMFCVisualManager::GetInstance()->OnDrawPaneCaption(&dc, NULL, FALSE, rectMyCalendarsCaption, CRect(0, 0, 0, 0));
-
-		CPen* pOldPen = dc.SelectObject(&afxGlobalData.penBarShadow);
-
-		dc.MoveTo(rectMyCalendarsCaption.left - 1, rectMyCalendarsCaption.top);
-		dc.LineTo(rectMyCalendarsCaption.right, rectMyCalendarsCaption.top);
-
-		dc.SelectStockObject(BLACK_PEN);
-
-		dc.MoveTo(rectMyCalendarsCaption.left - 1, rectMyCalendarsCaption.bottom);
-		dc.LineTo(rectMyCalendarsCaption.right, rectMyCalendarsCaption.bottom);
-
-		dc.SelectObject(pOldPen);
-
-		CRect rectText = rectMyCalendarsCaption;
-		rectText.DeflateRect(10, 0);
-
-		dc.SetBkMode(TRANSPARENT);
-		dc.SetTextColor(clrText);
-
-		CFont* pOldFont = dc.SelectObject(&afxGlobalData.fontRegular);
-
-		BOOL bNameValid;
-		CString str;
-
-		bNameValid = str.LoadString(IDS_MYCALENDARS);
-		ASSERT(bNameValid);
-		dc.DrawText(str, rectText, DT_VCENTER | DT_LEFT | DT_SINGLELINE);
-
-		CRect rectCalendar = rectClient;
-		rectCalendar.top = rectMyCalendarsCaption.bottom + 5;
-		rectCalendar.bottom = rectCalendar.top + afxGlobalData.GetTextHeight(TRUE) * 3 / 2 - 5;
-
-		dc.FillSolidRect(rectCalendar, RGB(255, 255, 213));
-
-		rectCalendar.DeflateRect(20, 0);
-		m_Images.Draw(&dc, 3, rectCalendar.TopLeft(), 0);
-
-		rectCalendar.left += 20;
-
-		bNameValid = str.LoadString(IDS_CALENDAR);
-		ASSERT(bNameValid);
-
-		dc.SetTextColor(afxGlobalData.clrHotLinkNormalText);
-		dc.DrawText(str, rectCalendar, DT_VCENTER | DT_LEFT | DT_SINGLELINE);
-
-		dc.SelectObject(pOldFont);
-	}
-}
-
-

+ 0 - 44
Source/OGCAssistTool/OGCAssistTool/CalendarBar.h

@@ -1,44 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-#pragma once
-
-/////////////////////////////////////////////////////////////////////////////
-// CCalendarBar 窗口
-
-class CCalendarBar : public CWnd
-{
-// 构造
-public:
-	CCalendarBar();
-
-// 属性
-protected:
-	CMonthCalCtrl m_wndCalendar;
-	int m_nMyCalendarsY;
-	CImageList m_Images;
-
-// 重写
-public:
-	virtual BOOL Create(const RECT& rect, CWnd* pParentWnd, UINT nID = (UINT)-1);
-
-// 实现
-public:
-	virtual ~CCalendarBar();
-
-protected:
-	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
-	afx_msg BOOL OnEraseBkgnd(CDC* pDC);
-	afx_msg void OnSize(UINT nType, int cx, int cy);
-	afx_msg void OnPaint();
-
-	DECLARE_MESSAGE_MAP()
-};

+ 0 - 332
Source/OGCAssistTool/OGCAssistTool/ClassView.cpp

@@ -1,332 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-#include "stdafx.h"
-#include "MainFrm.h"
-#include "ClassView.h"
-#include "Resource.h"
-#include "OGCAssistTool.h"
-
-class CClassViewMenuButton : public CMFCToolBarMenuButton
-{
-	friend class CClassView;
-
-	DECLARE_SERIAL(CClassViewMenuButton)
-
-public:
-	CClassViewMenuButton(HMENU hMenu = NULL) : CMFCToolBarMenuButton((UINT)-1, hMenu, -1)
-	{
-	}
-
-	virtual void OnDraw(CDC* pDC, const CRect& rect, CMFCToolBarImages* pImages, BOOL bHorz = TRUE,
-		BOOL bCustomizeMode = FALSE, BOOL bHighlight = FALSE, BOOL bDrawBorder = TRUE, BOOL bGrayDisabledButtons = TRUE)
-	{
-		pImages = CMFCToolBar::GetImages();
-
-		CAfxDrawState ds;
-		pImages->PrepareDrawImage(ds);
-
-		CMFCToolBarMenuButton::OnDraw(pDC, rect, pImages, bHorz, bCustomizeMode, bHighlight, bDrawBorder, bGrayDisabledButtons);
-
-		pImages->EndDrawImage(ds);
-	}
-};
-
-IMPLEMENT_SERIAL(CClassViewMenuButton, CMFCToolBarMenuButton, 1)
-
-//////////////////////////////////////////////////////////////////////
-// 构造/析构
-//////////////////////////////////////////////////////////////////////
-
-CClassView::CClassView()
-{
-	m_nCurrSort = ID_SORTING_GROUPBYTYPE;
-}
-
-CClassView::~CClassView()
-{
-}
-
-BEGIN_MESSAGE_MAP(CClassView, CDockablePane)
-	ON_WM_CREATE()
-	ON_WM_SIZE()
-	ON_WM_CONTEXTMENU()
-	ON_COMMAND(ID_CLASS_ADD_MEMBER_FUNCTION, OnClassAddMemberFunction)
-	ON_COMMAND(ID_CLASS_ADD_MEMBER_VARIABLE, OnClassAddMemberVariable)
-	ON_COMMAND(ID_CLASS_DEFINITION, OnClassDefinition)
-	ON_COMMAND(ID_CLASS_PROPERTIES, OnClassProperties)
-	ON_COMMAND(ID_NEW_FOLDER, OnNewFolder)
-	ON_WM_PAINT()
-	ON_WM_SETFOCUS()
-	ON_COMMAND_RANGE(ID_SORTING_GROUPBYTYPE, ID_SORTING_SORTBYACCESS, OnSort)
-	ON_UPDATE_COMMAND_UI_RANGE(ID_SORTING_GROUPBYTYPE, ID_SORTING_SORTBYACCESS, OnUpdateSort)
-END_MESSAGE_MAP()
-
-/////////////////////////////////////////////////////////////////////////////
-// CClassView 消息处理程序
-
-int CClassView::OnCreate(LPCREATESTRUCT lpCreateStruct)
-{
-	if (CDockablePane::OnCreate(lpCreateStruct) == -1)
-		return -1;
-
-	CRect rectDummy;
-	rectDummy.SetRectEmpty();
-
-	// 创建视图:
-	const DWORD dwViewStyle = WS_CHILD | WS_VISIBLE | TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
-
-	if (!m_wndClassView.Create(dwViewStyle, rectDummy, this, 2))
-	{
-		TRACE0("未能创建类视图\n");
-		return -1;      // 未能创建
-	}
-
-	// 加载图像:
-	m_wndToolBar.Create(this, AFX_DEFAULT_TOOLBAR_STYLE, IDR_SORT);
-	m_wndToolBar.LoadToolBar(IDR_SORT, 0, 0, TRUE /* 已锁定*/);
-
-	OnChangeVisualStyle();
-
-	m_wndToolBar.SetPaneStyle(m_wndToolBar.GetPaneStyle() | CBRS_TOOLTIPS | CBRS_FLYBY);
-	m_wndToolBar.SetPaneStyle(m_wndToolBar.GetPaneStyle() & ~(CBRS_GRIPPER | CBRS_SIZE_DYNAMIC | CBRS_BORDER_TOP | CBRS_BORDER_BOTTOM | CBRS_BORDER_LEFT | CBRS_BORDER_RIGHT));
-
-	m_wndToolBar.SetOwner(this);
-
-	// 所有命令将通过此控件路由,而不是通过主框架路由:
-	m_wndToolBar.SetRouteCommandsViaFrame(FALSE);
-
-	CMenu menuSort;
-	menuSort.LoadMenu(IDR_POPUP_SORT);
-
-	m_wndToolBar.ReplaceButton(ID_SORT_MENU, CClassViewMenuButton(menuSort.GetSubMenu(0)->GetSafeHmenu()));
-
-	CClassViewMenuButton* pButton =  DYNAMIC_DOWNCAST(CClassViewMenuButton, m_wndToolBar.GetButton(0));
-
-	if (pButton != NULL)
-	{
-		pButton->m_bText = FALSE;
-		pButton->m_bImage = TRUE;
-		pButton->SetImage(GetCmdMgr()->GetCmdImage(m_nCurrSort));
-		pButton->SetMessageWnd(this);
-	}
-
-	// 填入一些静态树视图数据(此处只需填入虚拟代码,而不是复杂的数据)
-	FillClassView();
-
-	return 0;
-}
-
-void CClassView::OnSize(UINT nType, int cx, int cy)
-{
-	CDockablePane::OnSize(nType, cx, cy);
-	AdjustLayout();
-}
-
-void CClassView::FillClassView()
-{
-	HTREEITEM hRoot = m_wndClassView.InsertItem(_T("FakeApp 类"), 0, 0);
-	m_wndClassView.SetItemState(hRoot, TVIS_BOLD, TVIS_BOLD);
-
-	HTREEITEM hClass = m_wndClassView.InsertItem(_T("CFakeAboutDlg"), 1, 1, hRoot);
-	m_wndClassView.InsertItem(_T("CFakeAboutDlg()"), 3, 3, hClass);
-
-	m_wndClassView.Expand(hRoot, TVE_EXPAND);
-
-	hClass = m_wndClassView.InsertItem(_T("CFakeApp"), 1, 1, hRoot);
-	m_wndClassView.InsertItem(_T("CFakeApp()"), 3, 3, hClass);
-	m_wndClassView.InsertItem(_T("InitInstance()"), 3, 3, hClass);
-	m_wndClassView.InsertItem(_T("OnAppAbout()"), 3, 3, hClass);
-
-	hClass = m_wndClassView.InsertItem(_T("CFakeAppDoc"), 1, 1, hRoot);
-	m_wndClassView.InsertItem(_T("CFakeAppDoc()"), 4, 4, hClass);
-	m_wndClassView.InsertItem(_T("~CFakeAppDoc()"), 3, 3, hClass);
-	m_wndClassView.InsertItem(_T("OnNewDocument()"), 3, 3, hClass);
-
-	hClass = m_wndClassView.InsertItem(_T("CFakeAppView"), 1, 1, hRoot);
-	m_wndClassView.InsertItem(_T("CFakeAppView()"), 4, 4, hClass);
-	m_wndClassView.InsertItem(_T("~CFakeAppView()"), 3, 3, hClass);
-	m_wndClassView.InsertItem(_T("GetDocument()"), 3, 3, hClass);
-	m_wndClassView.Expand(hClass, TVE_EXPAND);
-
-	hClass = m_wndClassView.InsertItem(_T("CFakeAppFrame"), 1, 1, hRoot);
-	m_wndClassView.InsertItem(_T("CFakeAppFrame()"), 3, 3, hClass);
-	m_wndClassView.InsertItem(_T("~CFakeAppFrame()"), 3, 3, hClass);
-	m_wndClassView.InsertItem(_T("m_wndMenuBar"), 6, 6, hClass);
-	m_wndClassView.InsertItem(_T("m_wndToolBar"), 6, 6, hClass);
-	m_wndClassView.InsertItem(_T("m_wndStatusBar"), 6, 6, hClass);
-
-	hClass = m_wndClassView.InsertItem(_T("Globals"), 2, 2, hRoot);
-	m_wndClassView.InsertItem(_T("theFakeApp"), 5, 5, hClass);
-	m_wndClassView.Expand(hClass, TVE_EXPAND);
-}
-
-void CClassView::OnContextMenu(CWnd* pWnd, CPoint point)
-{
-	CTreeCtrl* pWndTree = (CTreeCtrl*)&m_wndClassView;
-	ASSERT_VALID(pWndTree);
-
-	if (pWnd != pWndTree)
-	{
-		CDockablePane::OnContextMenu(pWnd, point);
-		return;
-	}
-
-	if (point != CPoint(-1, -1))
-	{
-		// 选择已单击的项:
-		CPoint ptTree = point;
-		pWndTree->ScreenToClient(&ptTree);
-
-		UINT flags = 0;
-		HTREEITEM hTreeItem = pWndTree->HitTest(ptTree, &flags);
-		if (hTreeItem != NULL)
-		{
-			pWndTree->SelectItem(hTreeItem);
-		}
-	}
-
-	pWndTree->SetFocus();
-	CMenu menu;
-	menu.LoadMenu(IDR_POPUP_SORT);
-
-	CMenu* pSumMenu = menu.GetSubMenu(0);
-
-	if (AfxGetMainWnd()->IsKindOf(RUNTIME_CLASS(CMDIFrameWndEx)))
-	{
-		CMFCPopupMenu* pPopupMenu = new CMFCPopupMenu;
-
-		if (!pPopupMenu->Create(this, point.x, point.y, (HMENU)pSumMenu->m_hMenu, FALSE, TRUE))
-			return;
-
-		((CMDIFrameWndEx*)AfxGetMainWnd())->OnShowPopupMenu(pPopupMenu);
-		UpdateDialogControls(this, FALSE);
-	}
-}
-
-void CClassView::AdjustLayout()
-{
-	if (GetSafeHwnd() == NULL)
-	{
-		return;
-	}
-
-	CRect rectClient;
-	GetClientRect(rectClient);
-
-	int cyTlb = m_wndToolBar.CalcFixedLayout(FALSE, TRUE).cy;
-
-	m_wndToolBar.SetWindowPos(NULL, rectClient.left, rectClient.top, rectClient.Width(), cyTlb, SWP_NOACTIVATE | SWP_NOZORDER);
-	m_wndClassView.SetWindowPos(NULL, rectClient.left + 1, rectClient.top + cyTlb + 1, rectClient.Width() - 2, rectClient.Height() - cyTlb - 2, SWP_NOACTIVATE | SWP_NOZORDER);
-}
-
-BOOL CClassView::PreTranslateMessage(MSG* pMsg)
-{
-	return CDockablePane::PreTranslateMessage(pMsg);
-}
-
-void CClassView::OnSort(UINT id)
-{
-	if (m_nCurrSort == id)
-	{
-		return;
-	}
-
-	m_nCurrSort = id;
-
-	CClassViewMenuButton* pButton =  DYNAMIC_DOWNCAST(CClassViewMenuButton, m_wndToolBar.GetButton(0));
-
-	if (pButton != NULL)
-	{
-		pButton->SetImage(GetCmdMgr()->GetCmdImage(id));
-		m_wndToolBar.Invalidate();
-		m_wndToolBar.UpdateWindow();
-	}
-}
-
-void CClassView::OnUpdateSort(CCmdUI* pCmdUI)
-{
-	pCmdUI->SetCheck(pCmdUI->m_nID == m_nCurrSort);
-}
-
-void CClassView::OnClassAddMemberFunction()
-{
-	AfxMessageBox(_T("添加成员函数..."));
-}
-
-void CClassView::OnClassAddMemberVariable()
-{
-	// TODO: 在此处添加命令处理程序代码
-}
-
-void CClassView::OnClassDefinition()
-{
-	// TODO: 在此处添加命令处理程序代码
-}
-
-void CClassView::OnClassProperties()
-{
-	// TODO: 在此处添加命令处理程序代码
-}
-
-void CClassView::OnNewFolder()
-{
-	AfxMessageBox(_T("新建文件夹..."));
-}
-
-void CClassView::OnPaint()
-{
-	CPaintDC dc(this); // 用于绘制的设备上下文
-
-	CRect rectTree;
-	m_wndClassView.GetWindowRect(rectTree);
-	ScreenToClient(rectTree);
-
-	rectTree.InflateRect(1, 1);
-	dc.Draw3dRect(rectTree, ::GetSysColor(COLOR_3DSHADOW), ::GetSysColor(COLOR_3DSHADOW));
-}
-
-void CClassView::OnSetFocus(CWnd* pOldWnd)
-{
-	CDockablePane::OnSetFocus(pOldWnd);
-
-	m_wndClassView.SetFocus();
-}
-
-void CClassView::OnChangeVisualStyle()
-{
-	m_ClassViewImages.DeleteImageList();
-
-	UINT uiBmpId = theApp.m_bHiColorIcons ? IDB_CLASS_VIEW_24 : IDB_CLASS_VIEW;
-
-	CBitmap bmp;
-	if (!bmp.LoadBitmap(uiBmpId))
-	{
-		TRACE(_T("无法加载位图: %x\n"), uiBmpId);
-		ASSERT(FALSE);
-		return;
-	}
-
-	BITMAP bmpObj;
-	bmp.GetBitmap(&bmpObj);
-
-	UINT nFlags = ILC_MASK;
-
-	nFlags |= (theApp.m_bHiColorIcons) ? ILC_COLOR24 : ILC_COLOR4;
-
-	m_ClassViewImages.Create(16, bmpObj.bmHeight, nFlags, 0, 0);
-	m_ClassViewImages.Add(&bmp, RGB(255, 0, 0));
-
-	m_wndClassView.SetImageList(&m_ClassViewImages, TVSIL_NORMAL);
-
-	m_wndToolBar.CleanUpLockedImages();
-	m_wndToolBar.LoadBitmap(theApp.m_bHiColorIcons ? IDB_SORT_24 : IDR_SORT, 0, 0, TRUE /* 锁定*/);
-}

+ 0 - 64
Source/OGCAssistTool/OGCAssistTool/ClassView.h

@@ -1,64 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-#pragma once
-
-#include "ViewTree.h"
-
-class CClassToolBar : public CMFCToolBar
-{
-	virtual void OnUpdateCmdUI(CFrameWnd* /*pTarget*/, BOOL bDisableIfNoHndler)
-	{
-		CMFCToolBar::OnUpdateCmdUI((CFrameWnd*) GetOwner(), bDisableIfNoHndler);
-	}
-
-	virtual BOOL AllowShowOnList() const { return FALSE; }
-};
-
-class CClassView : public CDockablePane
-{
-public:
-	CClassView();
-	virtual ~CClassView();
-
-	void AdjustLayout();
-	void OnChangeVisualStyle();
-
-protected:
-	CClassToolBar m_wndToolBar;
-	CViewTree m_wndClassView;
-	CImageList m_ClassViewImages;
-	UINT m_nCurrSort;
-
-	void FillClassView();
-
-// 重写
-public:
-	virtual BOOL PreTranslateMessage(MSG* pMsg);
-
-protected:
-	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
-	afx_msg void OnSize(UINT nType, int cx, int cy);
-	afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
-	afx_msg void OnClassAddMemberFunction();
-	afx_msg void OnClassAddMemberVariable();
-	afx_msg void OnClassDefinition();
-	afx_msg void OnClassProperties();
-	afx_msg void OnNewFolder();
-	afx_msg void OnPaint();
-	afx_msg void OnSetFocus(CWnd* pOldWnd);
-	afx_msg LRESULT OnChangeActiveTab(WPARAM, LPARAM);
-	afx_msg void OnSort(UINT id);
-	afx_msg void OnUpdateSort(CCmdUI* pCmdUI);
-
-	DECLARE_MESSAGE_MAP()
-};
-

+ 0 - 266
Source/OGCAssistTool/OGCAssistTool/FileView.cpp

@@ -1,266 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-#include "stdafx.h"
-#include "mainfrm.h"
-#include "FileView.h"
-#include "Resource.h"
-#include "OGCAssistTool.h"
-
-#ifdef _DEBUG
-#undef THIS_FILE
-static char THIS_FILE[]=__FILE__;
-#define new DEBUG_NEW
-#endif
-
-/////////////////////////////////////////////////////////////////////////////
-// CFileView
-
-CFileView::CFileView()
-{
-}
-
-CFileView::~CFileView()
-{
-}
-
-BEGIN_MESSAGE_MAP(CFileView, CDockablePane)
-	ON_WM_CREATE()
-	ON_WM_SIZE()
-	ON_WM_CONTEXTMENU()
-	ON_COMMAND(ID_PROPERTIES, OnProperties)
-	ON_COMMAND(ID_OPEN, OnFileOpen)
-	ON_COMMAND(ID_OPEN_WITH, OnFileOpenWith)
-	ON_COMMAND(ID_DUMMY_COMPILE, OnDummyCompile)
-	ON_COMMAND(ID_EDIT_CUT, OnEditCut)
-	ON_COMMAND(ID_EDIT_COPY, OnEditCopy)
-	ON_COMMAND(ID_EDIT_CLEAR, OnEditClear)
-	ON_WM_PAINT()
-	ON_WM_SETFOCUS()
-END_MESSAGE_MAP()
-
-/////////////////////////////////////////////////////////////////////////////
-// CWorkspaceBar 消息处理程序
-
-int CFileView::OnCreate(LPCREATESTRUCT lpCreateStruct)
-{
-	if (CDockablePane::OnCreate(lpCreateStruct) == -1)
-		return -1;
-
-	CRect rectDummy;
-	rectDummy.SetRectEmpty();
-
-	// 创建视图:
-	const DWORD dwViewStyle = WS_CHILD | WS_VISIBLE | TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS;
-
-	if (!m_wndFileView.Create(dwViewStyle, rectDummy, this, 4))
-	{
-		TRACE0("未能创建文件视图\n");
-		return -1;      // 未能创建
-	}
-
-	// 加载视图图像:
-	m_FileViewImages.Create(IDB_FILE_VIEW, 16, 0, RGB(255, 0, 255));
-	m_wndFileView.SetImageList(&m_FileViewImages, TVSIL_NORMAL);
-
-	m_wndToolBar.Create(this, AFX_DEFAULT_TOOLBAR_STYLE, IDR_EXPLORER);
-	m_wndToolBar.LoadToolBar(IDR_EXPLORER, 0, 0, TRUE /* 已锁定*/);
-
-	OnChangeVisualStyle();
-
-	m_wndToolBar.SetPaneStyle(m_wndToolBar.GetPaneStyle() | CBRS_TOOLTIPS | CBRS_FLYBY);
-
-	m_wndToolBar.SetPaneStyle(m_wndToolBar.GetPaneStyle() & ~(CBRS_GRIPPER | CBRS_SIZE_DYNAMIC | CBRS_BORDER_TOP | CBRS_BORDER_BOTTOM | CBRS_BORDER_LEFT | CBRS_BORDER_RIGHT));
-
-	m_wndToolBar.SetOwner(this);
-
-	// 所有命令将通过此控件路由,而不是通过主框架路由:
-	m_wndToolBar.SetRouteCommandsViaFrame(FALSE);
-
-	// 填入一些静态树视图数据(此处只需填入虚拟代码,而不是复杂的数据)
-	FillFileView();
-	AdjustLayout();
-
-	return 0;
-}
-
-void CFileView::OnSize(UINT nType, int cx, int cy)
-{
-	CDockablePane::OnSize(nType, cx, cy);
-	AdjustLayout();
-}
-
-void CFileView::FillFileView()
-{
-	HTREEITEM hRoot = m_wndFileView.InsertItem(_T("FakeApp 文件"), 0, 0);
-	m_wndFileView.SetItemState(hRoot, TVIS_BOLD, TVIS_BOLD);
-
-	HTREEITEM hSrc = m_wndFileView.InsertItem(_T("FakeApp 源文件"), 0, 0, hRoot);
-
-	m_wndFileView.InsertItem(_T("FakeApp.cpp"), 1, 1, hSrc);
-	m_wndFileView.InsertItem(_T("FakeApp.rc"), 1, 1, hSrc);
-	m_wndFileView.InsertItem(_T("FakeAppDoc.cpp"), 1, 1, hSrc);
-	m_wndFileView.InsertItem(_T("FakeAppView.cpp"), 1, 1, hSrc);
-	m_wndFileView.InsertItem(_T("MainFrm.cpp"), 1, 1, hSrc);
-	m_wndFileView.InsertItem(_T("StdAfx.cpp"), 1, 1, hSrc);
-
-	HTREEITEM hInc = m_wndFileView.InsertItem(_T("FakeApp 头文件"), 0, 0, hRoot);
-
-	m_wndFileView.InsertItem(_T("FakeApp.h"), 2, 2, hInc);
-	m_wndFileView.InsertItem(_T("FakeAppDoc.h"), 2, 2, hInc);
-	m_wndFileView.InsertItem(_T("FakeAppView.h"), 2, 2, hInc);
-	m_wndFileView.InsertItem(_T("Resource.h"), 2, 2, hInc);
-	m_wndFileView.InsertItem(_T("MainFrm.h"), 2, 2, hInc);
-	m_wndFileView.InsertItem(_T("StdAfx.h"), 2, 2, hInc);
-
-	HTREEITEM hRes = m_wndFileView.InsertItem(_T("FakeApp 资源文件"), 0, 0, hRoot);
-
-	m_wndFileView.InsertItem(_T("FakeApp.ico"), 2, 2, hRes);
-	m_wndFileView.InsertItem(_T("FakeApp.rc2"), 2, 2, hRes);
-	m_wndFileView.InsertItem(_T("FakeAppDoc.ico"), 2, 2, hRes);
-	m_wndFileView.InsertItem(_T("FakeToolbar.bmp"), 2, 2, hRes);
-
-	m_wndFileView.Expand(hRoot, TVE_EXPAND);
-	m_wndFileView.Expand(hSrc, TVE_EXPAND);
-	m_wndFileView.Expand(hInc, TVE_EXPAND);
-}
-
-void CFileView::OnContextMenu(CWnd* pWnd, CPoint point)
-{
-	CTreeCtrl* pWndTree = (CTreeCtrl*) &m_wndFileView;
-	ASSERT_VALID(pWndTree);
-
-	if (pWnd != pWndTree)
-	{
-		CDockablePane::OnContextMenu(pWnd, point);
-		return;
-	}
-
-	if (point != CPoint(-1, -1))
-	{
-		// 选择已单击的项:
-		CPoint ptTree = point;
-		pWndTree->ScreenToClient(&ptTree);
-
-		UINT flags = 0;
-		HTREEITEM hTreeItem = pWndTree->HitTest(ptTree, &flags);
-		if (hTreeItem != NULL)
-		{
-			pWndTree->SelectItem(hTreeItem);
-		}
-	}
-
-	pWndTree->SetFocus();
-	theApp.GetContextMenuManager()->ShowPopupMenu(IDR_POPUP_EXPLORER, point.x, point.y, this, TRUE);
-}
-
-void CFileView::AdjustLayout()
-{
-	if (GetSafeHwnd() == NULL)
-	{
-		return;
-	}
-
-	CRect rectClient;
-	GetClientRect(rectClient);
-
-	int cyTlb = m_wndToolBar.CalcFixedLayout(FALSE, TRUE).cy;
-
-	m_wndToolBar.SetWindowPos(NULL, rectClient.left, rectClient.top, rectClient.Width(), cyTlb, SWP_NOACTIVATE | SWP_NOZORDER);
-	m_wndFileView.SetWindowPos(NULL, rectClient.left + 1, rectClient.top + cyTlb + 1, rectClient.Width() - 2, rectClient.Height() - cyTlb - 2, SWP_NOACTIVATE | SWP_NOZORDER);
-}
-
-void CFileView::OnProperties()
-{
-	AfxMessageBox(_T("属性...."));
-
-}
-
-void CFileView::OnFileOpen()
-{
-	// TODO: 在此处添加命令处理程序代码
-}
-
-void CFileView::OnFileOpenWith()
-{
-	// TODO: 在此处添加命令处理程序代码
-}
-
-void CFileView::OnDummyCompile()
-{
-	// TODO: 在此处添加命令处理程序代码
-}
-
-void CFileView::OnEditCut()
-{
-	// TODO: 在此处添加命令处理程序代码
-}
-
-void CFileView::OnEditCopy()
-{
-	// TODO: 在此处添加命令处理程序代码
-}
-
-void CFileView::OnEditClear()
-{
-	// TODO: 在此处添加命令处理程序代码
-}
-
-void CFileView::OnPaint()
-{
-	CPaintDC dc(this); // 用于绘制的设备上下文
-
-	CRect rectTree;
-	m_wndFileView.GetWindowRect(rectTree);
-	ScreenToClient(rectTree);
-
-	rectTree.InflateRect(1, 1);
-	dc.Draw3dRect(rectTree, ::GetSysColor(COLOR_3DSHADOW), ::GetSysColor(COLOR_3DSHADOW));
-}
-
-void CFileView::OnSetFocus(CWnd* pOldWnd)
-{
-	CDockablePane::OnSetFocus(pOldWnd);
-
-	m_wndFileView.SetFocus();
-}
-
-void CFileView::OnChangeVisualStyle()
-{
-	m_wndToolBar.CleanUpLockedImages();
-	m_wndToolBar.LoadBitmap(theApp.m_bHiColorIcons ? IDB_EXPLORER_24 : IDR_EXPLORER, 0, 0, TRUE /* 锁定 */);
-
-	m_FileViewImages.DeleteImageList();
-
-	UINT uiBmpId = theApp.m_bHiColorIcons ? IDB_FILE_VIEW_24 : IDB_FILE_VIEW;
-
-	CBitmap bmp;
-	if (!bmp.LoadBitmap(uiBmpId))
-	{
-		TRACE(_T("无法加载位图: %x\n"), uiBmpId);
-		ASSERT(FALSE);
-		return;
-	}
-
-	BITMAP bmpObj;
-	bmp.GetBitmap(&bmpObj);
-
-	UINT nFlags = ILC_MASK;
-
-	nFlags |= (theApp.m_bHiColorIcons) ? ILC_COLOR24 : ILC_COLOR4;
-
-	m_FileViewImages.Create(16, bmpObj.bmHeight, nFlags, 0, 0);
-	m_FileViewImages.Add(&bmp, RGB(255, 0, 255));
-
-	m_wndFileView.SetImageList(&m_FileViewImages, TVSIL_NORMAL);
-}
-
-

+ 0 - 65
Source/OGCAssistTool/OGCAssistTool/FileView.h

@@ -1,65 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-#pragma once
-
-#include "ViewTree.h"
-
-class CFileViewToolBar : public CMFCToolBar
-{
-	virtual void OnUpdateCmdUI(CFrameWnd* /*pTarget*/, BOOL bDisableIfNoHndler)
-	{
-		CMFCToolBar::OnUpdateCmdUI((CFrameWnd*) GetOwner(), bDisableIfNoHndler);
-	}
-
-	virtual BOOL AllowShowOnList() const { return FALSE; }
-};
-
-class CFileView : public CDockablePane
-{
-// 构造
-public:
-	CFileView();
-
-	void AdjustLayout();
-	void OnChangeVisualStyle();
-
-// 属性
-protected:
-
-	CViewTree m_wndFileView;
-	CImageList m_FileViewImages;
-	CFileViewToolBar m_wndToolBar;
-
-protected:
-	void FillFileView();
-
-// 实现
-public:
-	virtual ~CFileView();
-
-protected:
-	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
-	afx_msg void OnSize(UINT nType, int cx, int cy);
-	afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
-	afx_msg void OnProperties();
-	afx_msg void OnFileOpen();
-	afx_msg void OnFileOpenWith();
-	afx_msg void OnDummyCompile();
-	afx_msg void OnEditCut();
-	afx_msg void OnEditCopy();
-	afx_msg void OnEditClear();
-	afx_msg void OnPaint();
-	afx_msg void OnSetFocus(CWnd* pOldWnd);
-
-	DECLARE_MESSAGE_MAP()
-};
-

+ 0 - 618
Source/OGCAssistTool/OGCAssistTool/MainFrm.cpp

@@ -1,618 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-// MainFrm.cpp : CMainFrame 类的实现
-//
-
-#include "stdafx.h"
-#include "OGCAssistTool.h"
-
-#include "MainFrm.h"
-
-#ifdef _DEBUG
-#define new DEBUG_NEW
-#endif
-
-// CMainFrame
-
-IMPLEMENT_DYNCREATE(CMainFrame, CFrameWndEx)
-
-BEGIN_MESSAGE_MAP(CMainFrame, CFrameWndEx)
-	ON_WM_CREATE()
-	ON_COMMAND_RANGE(ID_VIEW_APPLOOK_WIN_2000, ID_VIEW_APPLOOK_OFF_2007_AQUA, &CMainFrame::OnApplicationLook)
-	ON_UPDATE_COMMAND_UI_RANGE(ID_VIEW_APPLOOK_WIN_2000, ID_VIEW_APPLOOK_OFF_2007_AQUA, &CMainFrame::OnUpdateApplicationLook)
-#ifndef DISABLE_CAPTIONBAR
-	ON_COMMAND(ID_VIEW_CAPTION_BAR, &CMainFrame::OnViewCaptionBar)
-	ON_UPDATE_COMMAND_UI(ID_VIEW_CAPTION_BAR, &CMainFrame::OnUpdateViewCaptionBar)
-#endif
-	ON_COMMAND(ID_FILE_PRINT, &CMainFrame::OnFilePrint)
-	ON_COMMAND(ID_FILE_PRINT_DIRECT, &CMainFrame::OnFilePrint)
-	ON_COMMAND(ID_FILE_PRINT_PREVIEW, &CMainFrame::OnFilePrintPreview)
-	ON_UPDATE_COMMAND_UI(ID_FILE_PRINT_PREVIEW, &CMainFrame::OnUpdateFilePrintPreview)
-END_MESSAGE_MAP()
-
-// CMainFrame 构造/析构
-
-CMainFrame::CMainFrame()
-{
-	// TODO: 在此添加成员初始化代码
-	theApp.m_nAppLook = theApp.GetInt(_T("ApplicationLook"), ID_VIEW_APPLOOK_OFF_2007_BLUE);
-}
-
-CMainFrame::~CMainFrame()
-{
-}
-
-int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
-{
-	if (CFrameWndEx::OnCreate(lpCreateStruct) == -1)
-		return -1;
-
-	BOOL bNameValid;
-	// 基于持久值设置视觉管理器和样式
-	OnApplicationLook(theApp.m_nAppLook);
-
-	m_wndRibbonBar.Create(this);
-	InitializeRibbon();
-
-	if (!m_wndStatusBar.Create(this))
-	{
-		TRACE0("未能创建状态栏\n");
-		return -1;      // 未能创建
-	}
-
-	CString strTitlePane1;
-	CString strTitlePane2;
-	bNameValid = strTitlePane1.LoadString(IDS_STATUS_PANE1);
-	ASSERT(bNameValid);
-	bNameValid = strTitlePane2.LoadString(IDS_STATUS_PANE2);
-	ASSERT(bNameValid);
-	m_wndStatusBar.AddElement(new CMFCRibbonStatusBarPane(ID_STATUSBAR_PANE1, strTitlePane1, TRUE), strTitlePane1);
-	m_wndStatusBar.AddExtendedElement(new CMFCRibbonStatusBarPane(ID_STATUSBAR_PANE2, strTitlePane2, TRUE), strTitlePane2);
-
-	// 启用 Visual Studio 2005 样式停靠窗口行为
-	CDockingManager::SetDockingMode(DT_SMART);
-	// 启用 Visual Studio 2005 样式停靠窗口自动隐藏行为
-	EnableAutoHidePanes(CBRS_ALIGN_ANY);
-
-	// 导航窗格将创建在左侧,因此将暂时禁用左侧的停靠:
-	EnableDocking(CBRS_ALIGN_TOP | CBRS_ALIGN_BOTTOM | CBRS_ALIGN_RIGHT);
-
-#ifndef DISABLE_OUTLOOKBAR
-	// 创建并设置“Outlook”导航栏:
-	if (!CreateOutlookBar(m_wndNavigationBar, ID_VIEW_NAVIGATION, m_wndTree, m_wndCalendar, 250))
-	{
-		TRACE0("未能创建导航窗格\n");
-		return -1;      // 未能创建
-	}
-#endif
-
-#ifndef DISABLE_CAPTIONBAR
-	// 创建标题栏:
-	if (!CreateCaptionBar())
-	{
-		TRACE0("未能创建标题栏\n");
-		return -1;      // 未能创建
-	}
-#endif
-
-	// 已创建 Outlook 栏,应允许在左侧停靠。
-	EnableDocking(CBRS_ALIGN_LEFT);
-	EnableAutoHidePanes(CBRS_ALIGN_RIGHT);
-
-	// 加载菜单项图像(不在任何标准工具栏上):
-	CMFCToolBar::AddToolBarForImageCollection(IDR_MENU_IMAGES, theApp.m_bHiColorIcons ? IDB_MENU_IMAGES_24 : 0);
-
-	// 创建停靠窗口
-	if (!CreateDockingWindows())
-	{
-		TRACE0("未能创建停靠窗口\n");
-		return -1;
-	}
-
-	m_wndFileView.EnableDocking(CBRS_ALIGN_ANY);
-	m_wndClassView.EnableDocking(CBRS_ALIGN_ANY);
-	DockPane(&m_wndFileView);
-	CDockablePane* pTabbedBar = NULL;
-	m_wndClassView.AttachToTabWnd(&m_wndFileView, DM_SHOW, TRUE, &pTabbedBar);
-	m_wndOutput.EnableDocking(CBRS_ALIGN_ANY);
-	DockPane(&m_wndOutput);
-	m_wndProperties.EnableDocking(CBRS_ALIGN_ANY);
-	DockPane(&m_wndProperties);
-
-
-	return 0;
-}
-
-BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
-{
-	if( !CFrameWndEx::PreCreateWindow(cs) )
-		return FALSE;
-	// TODO: 在此处通过修改
-	//  CREATESTRUCT cs 来修改窗口类或样式
-
-	cs.cx = 800;
-	cs.cy = 600;
-
-	cs.style = WS_OVERLAPPED | WS_CAPTION | FWS_ADDTOTITLE
-		 | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_MAXIMIZE | WS_SYSMENU;
-
-	return TRUE;
-}
-
-void CMainFrame::InitializeRibbon()
-{
-	BOOL bNameValid;
-
-	CString strTemp;
-	bNameValid = strTemp.LoadString(IDS_RIBBON_FILE);
-	ASSERT(bNameValid);
-
-	// 加载面板图像:
-	m_PanelImages.SetImageSize(CSize(16, 16));
-	m_PanelImages.Load(IDB_BUTTONS);
-
-#pragma region 主按钮相关;
-	// 初始主按钮:
-	m_MainButton.SetImage(IDB_MAIN);
-	m_MainButton.SetText(_T("\nf"));
-	m_MainButton.SetToolTipText(strTemp);
-
-	m_wndRibbonBar.SetApplicationButton(&m_MainButton, CSize (45, 45));
-	CMFCRibbonMainPanel* pMainPanel = m_wndRibbonBar.AddMainCategory(strTemp, IDB_FILESMALL, IDB_FILELARGE);
-
-#if 0 // 禁用文档相关菜单;
-	bNameValid = strTemp.LoadString(IDS_RIBBON_NEW);
-	ASSERT(bNameValid);
-	pMainPanel->Add(new CMFCRibbonButton(ID_FILE_NEW, strTemp, 0, 0));
-	bNameValid = strTemp.LoadString(IDS_RIBBON_OPEN);
-	ASSERT(bNameValid);
-	pMainPanel->Add(new CMFCRibbonButton(ID_FILE_OPEN, strTemp, 1, 1));
-	bNameValid = strTemp.LoadString(IDS_RIBBON_SAVE);
-	ASSERT(bNameValid);
-	pMainPanel->Add(new CMFCRibbonButton(ID_FILE_SAVE, strTemp, 2, 2));
-	bNameValid = strTemp.LoadString(IDS_RIBBON_SAVEAS);
-	ASSERT(bNameValid);
-	pMainPanel->Add(new CMFCRibbonButton(ID_FILE_SAVE_AS, strTemp, 3, 3));
-#endif
-
-#if 0 // 禁用打印相关的菜单;
-	bNameValid = strTemp.LoadString(IDS_RIBBON_PRINT);
-	ASSERT(bNameValid);
-	CMFCRibbonButton* pBtnPrint = new CMFCRibbonButton(ID_FILE_PRINT, strTemp, 6, 6);
-	pBtnPrint->SetKeys(_T("p"), _T("w"));
-	bNameValid = strTemp.LoadString(IDS_RIBBON_PRINT_LABEL);
-	ASSERT(bNameValid);
-	pBtnPrint->AddSubItem(new CMFCRibbonLabel(strTemp));
-	bNameValid = strTemp.LoadString(IDS_RIBBON_PRINT_QUICK);
-	ASSERT(bNameValid);
-	pBtnPrint->AddSubItem(new CMFCRibbonButton(ID_FILE_PRINT_DIRECT, strTemp, 7, 7, TRUE));
-	bNameValid = strTemp.LoadString(IDS_RIBBON_PRINT_PREVIEW);
-	ASSERT(bNameValid);
-	pBtnPrint->AddSubItem(new CMFCRibbonButton(ID_FILE_PRINT_PREVIEW, strTemp, 8, 8, TRUE));
-	bNameValid = strTemp.LoadString(IDS_RIBBON_PRINT_SETUP);
-	ASSERT(bNameValid);
-	pBtnPrint->AddSubItem(new CMFCRibbonButton(ID_FILE_PRINT_SETUP, strTemp, 11, 11, TRUE));
-	pMainPanel->Add(pBtnPrint);
-	pMainPanel->Add(new CMFCRibbonSeparator(TRUE));
-#endif
-
-	bNameValid = strTemp.LoadString(IDS_RIBBON_CLOSE);
-	ASSERT(bNameValid);
-	pMainPanel->Add(new CMFCRibbonButton(ID_FILE_CLOSE, strTemp, 9, 9));
-
-#if 0 // 去掉最近打开的文档;
-	bNameValid = strTemp.LoadString(IDS_RIBBON_RECENT_DOCS);
-	ASSERT(bNameValid);
-	pMainPanel->AddRecentFilesList(strTemp);
-#endif
-
-	bNameValid = strTemp.LoadString(IDS_RIBBON_EXIT);
-	ASSERT(bNameValid);
-	pMainPanel->AddToBottom(new CMFCRibbonMainPanelButton(ID_APP_EXIT, strTemp, 15));
-#pragma endregion
-
-#pragma region 主页面板相关;
-	// 为“剪贴板”面板添加“主”类别:
-	bNameValid = strTemp.LoadString(IDS_RIBBON_HOME);
-	ASSERT(bNameValid);
-	CMFCRibbonCategory* pCategoryHome = m_wndRibbonBar.AddCategory(strTemp, IDB_WRITESMALL, IDB_WRITELARGE);
-
-	// 创建“剪贴板”面板:
-	bNameValid = strTemp.LoadString(IDS_RIBBON_CLIPBOARD);
-	ASSERT(bNameValid);
-	CMFCRibbonPanel* pPanelClipboard = pCategoryHome->AddPanel(strTemp, m_PanelImages.ExtractIcon(27));
-
-	bNameValid = strTemp.LoadString(IDS_RIBBON_PASTE);
-	ASSERT(bNameValid);
-	CMFCRibbonButton* pBtnPaste = new CMFCRibbonButton(ID_EDIT_PASTE, strTemp, 0, 0);
-	pPanelClipboard->Add(pBtnPaste);
-
-	bNameValid = strTemp.LoadString(IDS_RIBBON_CUT);
-	ASSERT(bNameValid);
-	pPanelClipboard->Add(new CMFCRibbonButton(ID_EDIT_CUT, strTemp, 1));
-	bNameValid = strTemp.LoadString(IDS_RIBBON_COPY);
-	ASSERT(bNameValid);
-	pPanelClipboard->Add(new CMFCRibbonButton(ID_EDIT_COPY, strTemp, 2));
-	bNameValid = strTemp.LoadString(IDS_RIBBON_SELECTALL);
-	ASSERT(bNameValid);
-	pPanelClipboard->Add(new CMFCRibbonButton(ID_EDIT_SELECT_ALL, strTemp, -1));
-
-	// 创建和添加“视图”面板:
-	bNameValid = strTemp.LoadString(IDS_RIBBON_VIEW);
-	ASSERT(bNameValid);
-	CMFCRibbonPanel* pPanelView = pCategoryHome->AddPanel(strTemp, m_PanelImages.ExtractIcon (7));
-
-	bNameValid = strTemp.LoadString(IDS_RIBBON_STATUSBAR);
-	ASSERT(bNameValid);
-	CMFCRibbonButton* pBtnStatusBar = new CMFCRibbonCheckBox(ID_VIEW_STATUS_BAR, strTemp);
-	pPanelView->Add(pBtnStatusBar);
-	bNameValid = strTemp.LoadString(IDS_RIBBON_CAPTIONBAR);
-	ASSERT(bNameValid);
-	CMFCRibbonButton* pBtnCaptionBar = new CMFCRibbonCheckBox(ID_VIEW_CAPTION_BAR, strTemp);
-	pPanelView->Add(pBtnCaptionBar);
-#pragma endregion
-
-#pragma region 调试栏目相关;
-	bNameValid = strTemp.LoadString(IDS_RIBBON_HOME);
-	ASSERT(bNameValid);
-	strTemp = _T("调试(&D)");
-	CMFCRibbonCategory* pCategoryDebug = m_wndRibbonBar.AddCategory(strTemp, IDB_WRITESMALL, IDB_WRITELARGE);
-
-	// 1、创建面板;
-	strTemp = _T("工站参数");
-	CMFCRibbonPanel* pPanelDebug = pCategoryDebug->AddPanel(strTemp, m_PanelImages.ExtractIcon(7));
-	// 排序面板按列垂直对齐元素;
-	pPanelDebug->SetCenterColumnVert(TRUE);
-	// 启用或禁用功能区元素的宽度调整在同一列的
-	pPanelDebug->SetJustifyColumns(TRUE);
-
-	// 2、往面板添加控件;
-	// 只有组的元素,才能水平对齐;
-	CMFCRibbonButtonsGroup* pGroupDebug = new CMFCRibbonButtonsGroup();
-	pPanelDebug->Add(pGroupDebug);
-
-	// 3、控件;
-	strTemp = _T("线体");
-	CMFCRibbonLabel* pCameraLable = new CMFCRibbonLabel(strTemp);
-	pGroupDebug->AddButton(pCameraLable);
-	pCameraLable->SetRect(CRect(0, 0, 150, 20));
-
-	strTemp = _T("线体");
-	CMFCRibbonEdit* pCameraEdit = new CMFCRibbonEdit(0, 100, strTemp);
-	pGroupDebug->AddButton(pCameraEdit);
-	pCameraEdit->SetRect(CRect(0, 0, 150, 20));
-#pragma endregion
-
-#pragma region 日志栏目相关;
-	bNameValid = strTemp.LoadString(IDS_RIBBON_HOME);
-	ASSERT(bNameValid);
-	strTemp = _T("日志(&L)");
-	CMFCRibbonCategory* pCategoryDebugLog = m_wndRibbonBar.AddCategory(strTemp, IDB_WRITESMALL, IDB_WRITELARGE);
-
-#pragma endregion
-
-#pragma region 统计栏目相关;
-	bNameValid = strTemp.LoadString(IDS_RIBBON_HOME);
-	ASSERT(bNameValid);
-	strTemp = _T("统计(&S)");
-	CMFCRibbonCategory* pCategoryStatistics = m_wndRibbonBar.AddCategory(strTemp, IDB_WRITESMALL, IDB_WRITELARGE);
-#pragma endregion
-
-#pragma region 设置栏目相关;
-	bNameValid = strTemp.LoadString(IDS_RIBBON_HOME);
-	ASSERT(bNameValid);
-	strTemp = _T("设置(&C)");
-	CMFCRibbonCategory* pCategoryConfig = m_wndRibbonBar.AddCategory(strTemp, IDB_WRITESMALL, IDB_WRITELARGE);
-#pragma endregion
-
-	// 将元素添加到选项卡右侧:
-	bNameValid = strTemp.LoadString(IDS_RIBBON_STYLE);
-	ASSERT(bNameValid);
-	CMFCRibbonButton* pVisualStyleButton = new CMFCRibbonButton(-1, strTemp, -1, -1);
-
-	pVisualStyleButton->SetMenu(IDR_THEME_MENU, FALSE /* 无默认命令*/, TRUE /* 右对齐*/);
-
-	bNameValid = strTemp.LoadString(IDS_RIBBON_STYLE_TIP);
-	ASSERT(bNameValid);
-	pVisualStyleButton->SetToolTipText(strTemp);
-	bNameValid = strTemp.LoadString(IDS_RIBBON_STYLE_DESC);
-	ASSERT(bNameValid);
-	pVisualStyleButton->SetDescription(strTemp);
-	m_wndRibbonBar.AddToTabs(pVisualStyleButton);
-
-#ifndef DISABLE_QUICKACCESS
-	// 添加快速访问工具栏命令:
-	CList<UINT, UINT> lstQATCmds;
-
-	lstQATCmds.AddTail(ID_FILE_NEW);
-	lstQATCmds.AddTail(ID_FILE_OPEN);
-	lstQATCmds.AddTail(ID_FILE_SAVE);
-	lstQATCmds.AddTail(ID_FILE_PRINT_DIRECT);
-
-	m_wndRibbonBar.SetQuickAccessCommands(lstQATCmds);
-#endif
-
-	m_wndRibbonBar.AddToTabs(new CMFCRibbonButton(ID_APP_ABOUT, _T("\na"), m_PanelImages.ExtractIcon (0)));
-}
-
-BOOL CMainFrame::CreateDockingWindows()
-{
-	BOOL bNameValid;
-
-	// 创建类视图
-	CString strClassView;
-	bNameValid = strClassView.LoadString(IDS_CLASS_VIEW);
-	ASSERT(bNameValid);
-	if (!m_wndClassView.Create(strClassView, this, CRect(0, 0, 200, 200), TRUE, ID_VIEW_CLASSVIEW, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_LEFT | CBRS_FLOAT_MULTI))
-	{
-		TRACE0("未能创建“类视图”窗口\n");
-		return FALSE; // 未能创建
-	}
-
-	// 创建文件视图
-	CString strFileView;
-	bNameValid = strFileView.LoadString(IDS_FILE_VIEW);
-	ASSERT(bNameValid);
-	if (!m_wndFileView.Create(strFileView, this, CRect(0, 0, 200, 200), TRUE, ID_VIEW_FILEVIEW, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_LEFT| CBRS_FLOAT_MULTI))
-	{
-		TRACE0("未能创建“文件视图”窗口\n");
-		return FALSE; // 未能创建
-	}
-
-	// 创建输出窗口
-	CString strOutputWnd;
-	bNameValid = strOutputWnd.LoadString(IDS_OUTPUT_WND);
-	ASSERT(bNameValid);
-	if (!m_wndOutput.Create(strOutputWnd, this, CRect(0, 0, 100, 100), TRUE, ID_VIEW_OUTPUTWND, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_BOTTOM | CBRS_FLOAT_MULTI))
-	{
-		TRACE0("未能创建输出窗口\n");
-		return FALSE; // 未能创建
-	}
-
-	// 创建属性窗口
-	CString strPropertiesWnd;
-	bNameValid = strPropertiesWnd.LoadString(IDS_PROPERTIES_WND);
-	ASSERT(bNameValid);
-	if (!m_wndProperties.Create(strPropertiesWnd, this, CRect(0, 0, 200, 200), TRUE, ID_VIEW_PROPERTIESWND, WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CBRS_RIGHT | CBRS_FLOAT_MULTI))
-	{
-		TRACE0("未能创建“属性”窗口\n");
-		return FALSE; // 未能创建
-	}
-
-	SetDockingWindowIcons(theApp.m_bHiColorIcons);
-	return TRUE;
-}
-
-void CMainFrame::SetDockingWindowIcons(BOOL bHiColorIcons)
-{
-	HICON hFileViewIcon = (HICON) ::LoadImage(::AfxGetResourceHandle(), MAKEINTRESOURCE(bHiColorIcons ? IDI_FILE_VIEW_HC : IDI_FILE_VIEW), IMAGE_ICON, ::GetSystemMetrics(SM_CXSMICON), ::GetSystemMetrics(SM_CYSMICON), 0);
-	m_wndFileView.SetIcon(hFileViewIcon, FALSE);
-
-	HICON hClassViewIcon = (HICON) ::LoadImage(::AfxGetResourceHandle(), MAKEINTRESOURCE(bHiColorIcons ? IDI_CLASS_VIEW_HC : IDI_CLASS_VIEW), IMAGE_ICON, ::GetSystemMetrics(SM_CXSMICON), ::GetSystemMetrics(SM_CYSMICON), 0);
-	m_wndClassView.SetIcon(hClassViewIcon, FALSE);
-
-	HICON hOutputBarIcon = (HICON) ::LoadImage(::AfxGetResourceHandle(), MAKEINTRESOURCE(bHiColorIcons ? IDI_OUTPUT_WND_HC : IDI_OUTPUT_WND), IMAGE_ICON, ::GetSystemMetrics(SM_CXSMICON), ::GetSystemMetrics(SM_CYSMICON), 0);
-	m_wndOutput.SetIcon(hOutputBarIcon, FALSE);
-
-	HICON hPropertiesBarIcon = (HICON) ::LoadImage(::AfxGetResourceHandle(), MAKEINTRESOURCE(bHiColorIcons ? IDI_PROPERTIES_WND_HC : IDI_PROPERTIES_WND), IMAGE_ICON, ::GetSystemMetrics(SM_CXSMICON), ::GetSystemMetrics(SM_CYSMICON), 0);
-	m_wndProperties.SetIcon(hPropertiesBarIcon, FALSE);
-
-}
-
-#ifndef DISABLE_OUTLOOKBAR
-BOOL CMainFrame::CreateOutlookBar(CMFCOutlookBar& bar, UINT uiID, CMFCShellTreeCtrl& tree, CCalendarBar& calendar, int nInitialWidth)
-{
-	CWindowDC dc(NULL);
-
-	bar.SetMode2003();
-
-	BOOL bNameValid;
-	CString strTemp;
-	bNameValid = strTemp.LoadString(IDS_SHORTCUTS);
-	ASSERT(bNameValid);
-	if (!bar.Create(strTemp, this, CRect(0, 0, nInitialWidth, 32000), uiID, WS_CHILD | WS_VISIBLE | CBRS_LEFT))
-	{
-		return FALSE; // 未能创建
-	}
-
-	CMFCOutlookBarTabCtrl* pOutlookBar = (CMFCOutlookBarTabCtrl*)bar.GetUnderlyingWindow();
-
-	if (pOutlookBar == NULL)
-	{
-		ASSERT(FALSE);
-		return FALSE;
-	}
-
-	pOutlookBar->EnableInPlaceEdit(TRUE);
-
-	static UINT uiPageID = 1;
-
-	DWORD dwPaneStyle = AFX_DEFAULT_TOOLBAR_STYLE | CBRS_FLOAT_MULTI;
-
-	// 可浮动,可自动隐藏,可调整大小,但不能关闭
-	DWORD dwStyle = AFX_CBRS_FLOAT | AFX_CBRS_AUTOHIDE | AFX_CBRS_RESIZE;
-
-	CRect rectDummy(0, 0, 0, 0);
-	const DWORD dwTreeStyle = WS_CHILD | WS_VISIBLE | TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS;
-
-	tree.Create(dwTreeStyle, rectDummy, &bar, 1200);
-	bNameValid = strTemp.LoadString(IDS_FOLDERS);
-	ASSERT(bNameValid);
-	pOutlookBar->AddControl(&tree, strTemp, 2, TRUE, dwStyle);
-
-	calendar.Create(rectDummy, &bar, 1201);
-	bNameValid = strTemp.LoadString(IDS_CALENDAR);
-	ASSERT(bNameValid);
-	pOutlookBar->AddControl(&calendar, strTemp, 3, TRUE, dwStyle);
-
-	bar.SetPaneStyle(bar.GetPaneStyle() | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC);
-
-	pOutlookBar->SetImageList(theApp.m_bHiColorIcons ? IDB_PAGES_HC : IDB_PAGES, 24);
-	pOutlookBar->SetToolbarImageList(theApp.m_bHiColorIcons ? IDB_PAGES_SMALL_HC : IDB_PAGES_SMALL, 16);
-	pOutlookBar->RecalcLayout();
-
-	BOOL bAnimation = theApp.GetInt(_T("OutlookAnimation"), TRUE);
-	CMFCOutlookBarTabCtrl::EnableAnimation(bAnimation);
-
-	bar.SetButtonsFont(&afxGlobalData.fontBold);
-
-	return TRUE;
-}
-
-BOOL CMainFrame::CreateCaptionBar()
-{
-	if (!m_wndCaptionBar.Create(WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS, this, ID_VIEW_CAPTION_BAR, -1, TRUE))
-	{
-		TRACE0("未能创建标题栏\n");
-		return FALSE;
-	}
-
-	BOOL bNameValid;
-
-	CString strTemp, strTemp2;
-	bNameValid = strTemp.LoadString(IDS_CAPTION_BUTTON);
-	ASSERT(bNameValid);
-	m_wndCaptionBar.SetButton(strTemp, ID_TOOLS_OPTIONS, CMFCCaptionBar::ALIGN_LEFT, FALSE);
-	bNameValid = strTemp.LoadString(IDS_CAPTION_BUTTON_TIP);
-	ASSERT(bNameValid);
-	m_wndCaptionBar.SetButtonToolTip(strTemp);
-
-	bNameValid = strTemp.LoadString(IDS_CAPTION_TEXT);
-	ASSERT(bNameValid);
-	m_wndCaptionBar.SetText(strTemp, CMFCCaptionBar::ALIGN_LEFT);
-
-	m_wndCaptionBar.SetBitmap(IDB_INFO, RGB(255, 255, 255), FALSE, CMFCCaptionBar::ALIGN_LEFT);
-	bNameValid = strTemp.LoadString(IDS_CAPTION_IMAGE_TIP);
-	ASSERT(bNameValid);
-	bNameValid = strTemp2.LoadString(IDS_CAPTION_IMAGE_TEXT);
-	ASSERT(bNameValid);
-	m_wndCaptionBar.SetImageToolTip(strTemp, strTemp2);
-
-	return TRUE;
-}
-#endif
-
-// CMainFrame 诊断
-
-#ifdef _DEBUG
-void CMainFrame::AssertValid() const
-{
-	CFrameWndEx::AssertValid();
-}
-
-void CMainFrame::Dump(CDumpContext& dc) const
-{
-	CFrameWndEx::Dump(dc);
-}
-#endif //_DEBUG
-
-
-// CMainFrame 消息处理程序
-
-void CMainFrame::OnApplicationLook(UINT id)
-{
-	CWaitCursor wait;
-
-	theApp.m_nAppLook = id;
-
-	switch (theApp.m_nAppLook)
-	{
-	case ID_VIEW_APPLOOK_WIN_2000:
-		CMFCVisualManager::SetDefaultManager(RUNTIME_CLASS(CMFCVisualManager));
-		break;
-
-	case ID_VIEW_APPLOOK_OFF_XP:
-		CMFCVisualManager::SetDefaultManager(RUNTIME_CLASS(CMFCVisualManagerOfficeXP));
-		break;
-
-	case ID_VIEW_APPLOOK_WIN_XP:
-		CMFCVisualManagerWindows::m_b3DTabsXPTheme = TRUE;
-		CMFCVisualManager::SetDefaultManager(RUNTIME_CLASS(CMFCVisualManagerWindows));
-		break;
-
-	case ID_VIEW_APPLOOK_OFF_2003:
-		CMFCVisualManager::SetDefaultManager(RUNTIME_CLASS(CMFCVisualManagerOffice2003));
-		CDockingManager::SetDockingMode(DT_SMART);
-		break;
-
-	case ID_VIEW_APPLOOK_VS_2005:
-		CMFCVisualManager::SetDefaultManager(RUNTIME_CLASS(CMFCVisualManagerVS2005));
-		CDockingManager::SetDockingMode(DT_SMART);
-		break;
-
-	default:
-		switch (theApp.m_nAppLook)
-		{
-		case ID_VIEW_APPLOOK_OFF_2007_BLUE:
-			CMFCVisualManagerOffice2007::SetStyle(CMFCVisualManagerOffice2007::Office2007_LunaBlue);
-			break;
-
-		case ID_VIEW_APPLOOK_OFF_2007_BLACK:
-			CMFCVisualManagerOffice2007::SetStyle(CMFCVisualManagerOffice2007::Office2007_ObsidianBlack);
-			break;
-
-		case ID_VIEW_APPLOOK_OFF_2007_SILVER:
-			CMFCVisualManagerOffice2007::SetStyle(CMFCVisualManagerOffice2007::Office2007_Silver);
-			break;
-
-		case ID_VIEW_APPLOOK_OFF_2007_AQUA:
-			CMFCVisualManagerOffice2007::SetStyle(CMFCVisualManagerOffice2007::Office2007_Aqua);
-			break;
-		}
-
-		CMFCVisualManager::SetDefaultManager(RUNTIME_CLASS(CMFCVisualManagerOffice2007));
-		CDockingManager::SetDockingMode(DT_SMART);
-	}
-
-	RedrawWindow(NULL, NULL, RDW_ALLCHILDREN | RDW_INVALIDATE | RDW_UPDATENOW | RDW_FRAME | RDW_ERASE);
-
-	theApp.WriteInt(_T("ApplicationLook"), theApp.m_nAppLook);
-}
-
-void CMainFrame::OnUpdateApplicationLook(CCmdUI* pCmdUI)
-{
-	pCmdUI->SetRadio(theApp.m_nAppLook == pCmdUI->m_nID);
-}
-
-#ifndef DISABLE_CAPTIONBAR
-void CMainFrame::OnViewCaptionBar()
-{
-	m_wndCaptionBar.ShowWindow(m_wndCaptionBar.IsVisible() ? SW_HIDE : SW_SHOW);
-	RecalcLayout(FALSE);
-}
-
-void CMainFrame::OnUpdateViewCaptionBar(CCmdUI* pCmdUI)
-{
-	pCmdUI->SetCheck(m_wndCaptionBar.IsVisible());
-}
-#endif
-
-void CMainFrame::OnFilePrint()
-{
-	if (IsPrintPreview())
-	{
-		PostMessage(WM_COMMAND, AFX_ID_PREVIEW_PRINT);
-	}
-}
-
-void CMainFrame::OnFilePrintPreview()
-{
-	if (IsPrintPreview())
-	{
-		PostMessage(WM_COMMAND, AFX_ID_PREVIEW_CLOSE);  // 强制关闭“打印预览”模式
-	}
-}
-
-void CMainFrame::OnUpdateFilePrintPreview(CCmdUI* pCmdUI)
-{
-	pCmdUI->SetCheck(IsPrintPreview());
-}

+ 0 - 97
Source/OGCAssistTool/OGCAssistTool/MainFrm.h

@@ -1,97 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-// MainFrm.h : CMainFrame 类的接口
-//
-
-#pragma once
-#include "FileView.h"
-#include "ClassView.h"
-#include "OutputWnd.h"
-#include "PropertiesWnd.h"
-#include "CalendarBar.h"
-#include "Resource.h"
-
-class COutlookBar : public CMFCOutlookBar
-{
-	virtual BOOL AllowShowOnPaneMenu() const { return TRUE; }
-	virtual void GetPaneName(CString& strName) const { BOOL bNameValid = strName.LoadString(IDS_OUTLOOKBAR); ASSERT(bNameValid); }
-};
-
-class CMainFrame : public CFrameWndEx
-{
-	
-protected: // 仅从序列化创建
-	CMainFrame();
-	DECLARE_DYNCREATE(CMainFrame)
-
-// 属性
-public:
-
-// 操作
-public:
-
-// 重写
-public:
-	virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
-
-// 实现
-public:
-	virtual ~CMainFrame();
-#ifdef _DEBUG
-	virtual void AssertValid() const;
-	virtual void Dump(CDumpContext& dc) const;
-#endif
-
-protected:  // 控件条嵌入成员
-	CMFCRibbonBar     m_wndRibbonBar;
-	CMFCRibbonApplicationButton m_MainButton;
-	CMFCToolBarImages m_PanelImages;
-	CMFCRibbonStatusBar  m_wndStatusBar;
-	CFileView         m_wndFileView;
-	CClassView        m_wndClassView;
-	COutputWnd        m_wndOutput;
-	CPropertiesWnd    m_wndProperties;
-#ifndef DISABLE_OUTLOOKBAR
-	COutlookBar       m_wndNavigationBar;
-	CMFCShellTreeCtrl m_wndTree;
-	CCalendarBar      m_wndCalendar;
-#endif
-#ifndef DISABLE_CAPTIONBAR
-	CMFCCaptionBar    m_wndCaptionBar;
-#endif
-
-// 生成的消息映射函数
-protected:
-	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
-	afx_msg void OnApplicationLook(UINT id);
-	afx_msg void OnUpdateApplicationLook(CCmdUI* pCmdUI);
-	afx_msg void OnViewCaptionBar();
-	afx_msg void OnUpdateViewCaptionBar(CCmdUI* pCmdUI);
-	afx_msg void OnFilePrint();
-	afx_msg void OnFilePrintPreview();
-	afx_msg void OnUpdateFilePrintPreview(CCmdUI* pCmdUI);
-	DECLARE_MESSAGE_MAP()
-
-	void InitializeRibbon();
-	BOOL CreateDockingWindows();
-	void SetDockingWindowIcons(BOOL bHiColorIcons);
-	BOOL CreateOutlookBar(CMFCOutlookBar& bar, UINT uiID, CMFCShellTreeCtrl& tree, CCalendarBar& calendar, int nInitialWidth);
-	BOOL CreateCaptionBar();
-
-	int FindFocusedOutlookWnd(CMFCOutlookBarTabCtrl** ppOutlookWnd);
-
-	CMFCOutlookBarTabCtrl* FindOutlookParent(CWnd* pWnd);
-	CMFCOutlookBarTabCtrl* m_pCurrOutlookWnd;
-	CMFCOutlookBarPane*    m_pCurrOutlookPage;
-};
-
-

+ 20 - 136
Source/OGCAssistTool/OGCAssistTool/OGCAssistTool.cpp

@@ -1,24 +1,11 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
 
 // OGCAssistTool.cpp : 定义应用程序的类行为。
 //
 
 #include "stdafx.h"
-#include "afxwinappex.h"
 #include "OGCAssistTool.h"
-#include "MainFrm.h"
+#include "OGCAssistToolDlg.h"
 #include "DlgLogin.h"
-#include "OGCAssistToolDoc.h"
-#include "OGCAssistToolView.h"
 
 #ifdef _DEBUG
 #define new DEBUG_NEW
@@ -28,12 +15,7 @@
 // COGCAssistToolApp
 
 BEGIN_MESSAGE_MAP(COGCAssistToolApp, CWinAppEx)
-	ON_COMMAND(ID_APP_ABOUT, &COGCAssistToolApp::OnAppAbout)
-	// 基于文件的标准文档命令
-	ON_COMMAND(ID_FILE_NEW, &CWinAppEx::OnFileNew)
-	ON_COMMAND(ID_FILE_OPEN, &CWinAppEx::OnFileOpen)
-	// 标准打印设置命令
-	ON_COMMAND(ID_FILE_PRINT_SETUP, &CWinAppEx::OnFilePrintSetup)
+	ON_COMMAND(ID_HELP, &CWinApp::OnHelp)
 END_MESSAGE_MAP()
 
 
@@ -41,13 +23,11 @@ END_MESSAGE_MAP()
 
 COGCAssistToolApp::COGCAssistToolApp()
 {
-
-	m_bHiColorIcons = TRUE;
-
 	// TODO: 在此处添加构造代码,
 	// 将所有重要的初始化放置在 InitInstance 中
 }
 
+
 // 唯一的一个 COGCAssistToolApp 对象
 
 COGCAssistToolApp theApp;
@@ -69,13 +49,8 @@ BOOL COGCAssistToolApp::InitInstance()
 
 	CWinAppEx::InitInstance();
 
-	// 初始化 OLE 库
-	if (!AfxOleInit())
-	{
-		AfxMessageBox(IDP_OLE_INIT_FAILED);
-		return FALSE;
-	}
 	AfxEnableControlContainer();
+
 	// 标准初始化
 	// 如果未使用这些功能并希望减小
 	// 最终可执行文件的大小,则应移除下列
@@ -84,7 +59,6 @@ BOOL COGCAssistToolApp::InitInstance()
 	// TODO: 应适当修改该字符串,
 	// 例如修改为公司或组织名
 	SetRegistryKey(_T("应用程序向导生成的本地应用程序"));
-	LoadStdProfileSettings(0);  // 加载标准 INI 文件选项
 
 #pragma region 登录对话框;
 	CDlgLogin LoginDlg;
@@ -94,111 +68,21 @@ BOOL COGCAssistToolApp::InitInstance()
 	}
 #pragma endregion
 
-	InitContextMenuManager();
-	InitShellManager();
-
-	InitKeyboardManager();
-
-	InitTooltipManager();
-	CMFCToolTipInfo ttParams;
-	ttParams.m_bVislManagerTheme = TRUE;
-	theApp.GetTooltipManager()->SetTooltipParams(AFX_TOOLTIP_TYPE_ALL,
-		RUNTIME_CLASS(CMFCToolTipCtrl), &ttParams);
-
-	// 注册应用程序的文档模板。文档模板
-	// 将用作文档、框架窗口和视图之间的连接
-	CSingleDocTemplate* pDocTemplate;
-	pDocTemplate = new CSingleDocTemplate(
-		IDR_MAINFRAME,
-		RUNTIME_CLASS(COGCAssistToolDoc),
-		RUNTIME_CLASS(CMainFrame),       // 主 SDI 框架窗口
-		RUNTIME_CLASS(COGCAssistToolView));
-	if (!pDocTemplate)
-		return FALSE;
-	AddDocTemplate(pDocTemplate);
-
-
-
-	// 分析标准外壳命令、DDE、打开文件操作的命令行
-	CCommandLineInfo cmdInfo;
-	ParseCommandLine(cmdInfo);
-
-
-	// 调度在命令行中指定的命令。如果
-	// 用 /RegServer、/Register、/Unregserver 或 /Unregister 启动应用程序,则返回 FALSE。
-	if (!ProcessShellCommand(cmdInfo))
-		return FALSE;
-
-	// 唯一的一个窗口已初始化,因此显示它并对其进行更新
-	m_pMainWnd->ShowWindow(SW_SHOWNORMAL);
-	m_pMainWnd->UpdateWindow();
-	// 仅当具有后缀时才调用 DragAcceptFiles
-	//  在 SDI 应用程序中,这应在 ProcessShellCommand 之后发生
-	return TRUE;
-}
-
-
-
-// 用于应用程序“关于”菜单项的 CAboutDlg 对话框
-
-class CAboutDlg : public CDialog
-{
-public:
-	CAboutDlg();
-
-// 对话框数据
-	enum { IDD = IDD_ABOUTBOX };
-
-protected:
-	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 支持
-
-// 实现
-protected:
-	DECLARE_MESSAGE_MAP()
-};
-
-CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
-{
-}
-
-void CAboutDlg::DoDataExchange(CDataExchange* pDX)
-{
-	CDialog::DoDataExchange(pDX);
-}
-
-BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
-END_MESSAGE_MAP()
-
-// 用于运行对话框的应用程序命令
-void COGCAssistToolApp::OnAppAbout()
-{
-	CAboutDlg aboutDlg;
-	aboutDlg.DoModal();
-}
-
-// COGCAssistToolApp 自定义加载/保存方法
-
-void COGCAssistToolApp::PreLoadState()
-{
-	BOOL bNameValid;
-	CString strName;
-	bNameValid = strName.LoadString(IDS_EDIT_MENU);
-	ASSERT(bNameValid);
-	GetContextMenuManager()->AddMenu(strName, IDR_POPUP_EDIT);
-	bNameValid = strName.LoadString(IDS_EXPLORER);
-	ASSERT(bNameValid);
-	GetContextMenuManager()->AddMenu(strName, IDR_POPUP_EXPLORER);
-}
-
-void COGCAssistToolApp::LoadCustomState()
-{
-}
+	COGCAssistToolDlg dlg;
+	m_pMainWnd = &dlg;
+	INT_PTR nResponse = dlg.DoModal();
+	if (nResponse == IDOK)
+	{
+		// TODO: 在此放置处理何时用
+		//  “确定”来关闭对话框的代码
+	}
+	else if (nResponse == IDCANCEL)
+	{
+		// TODO: 在此放置处理何时用
+		//  “取消”来关闭对话框的代码
+	}
 
-void COGCAssistToolApp::SaveCustomState()
-{
+	// 由于对话框已关闭,所以将返回 FALSE 以便退出应用程序,
+	//  而不是启动应用程序的消息泵。
+	return FALSE;
 }
-
-// COGCAssistToolApp 消息处理程序
-
-
-

+ 5 - 22
Source/OGCAssistTool/OGCAssistTool/OGCAssistTool.h

@@ -1,23 +1,14 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
 
-// OGCAssistTool.h : OGCAssistTool 应用程序的主头文件
+// OGCAssistTool.h : PROJECT_NAME 应用程序的主头文件
 //
+
 #pragma once
 
 #ifndef __AFXWIN_H__
 	#error "在包含此文件之前包含“stdafx.h”以生成 PCH 文件"
 #endif
 
-#include "resource.h"       // 主符号
+#include "resource.h"		// 主符号
 
 
 // COGCAssistToolApp:
@@ -29,21 +20,13 @@ class COGCAssistToolApp : public CWinAppEx
 public:
 	COGCAssistToolApp();
 
-
 // 重写
-public:
+	public:
 	virtual BOOL InitInstance();
 
 // 实现
-	UINT  m_nAppLook;
-	BOOL  m_bHiColorIcons;
-
-	virtual void PreLoadState();
-	virtual void LoadCustomState();
-	virtual void SaveCustomState();
 
-	afx_msg void OnAppAbout();
 	DECLARE_MESSAGE_MAP()
 };
 
-extern COGCAssistToolApp theApp;
+extern COGCAssistToolApp theApp;

+ 30 - 462
Source/OGCAssistTool/OGCAssistTool/OGCAssistTool.rc

@@ -46,6 +46,7 @@ END
 
 3 TEXTINCLUDE 
 BEGIN
+    "#define _AFX_NO_SPLITTER_RESOURCES\r\n"
     "#define _AFX_NO_OLE_RESOURCES\r\n"
     "#define _AFX_NO_TRACKER_RESOURCES\r\n"
     "#define _AFX_NO_PROPERTY_RESOURCES\r\n"
@@ -54,11 +55,7 @@ BEGIN
     "LANGUAGE 4, 2\r\n"
     "#pragma code_page(936)\r\n"
     "#include ""res\\OGCAssistTool.rc2""  // 非 Microsoft Visual C++ 编辑的资源\r\n"
-    "#include ""l.CHS\\afxres.rc""          // 标准组件\r\n"
-    "#include ""l.CHS\\afxprint.rc""        // 打印/打印预览资源\r\n"
-    "#if !defined(_AFXDLL)\r\n"
-    "#include ""l.CHS\\afxribbon.rc""               // MFC 功能区和控件条资源\r\n"
-    "#endif\r\n"
+    "#include ""l.CHS\\afxres.rc""      // 标准组件\r\n"
     "#endif\r\n"
     "\0"
 END
@@ -74,258 +71,6 @@ END
 // Icon with lowest ID value placed first to ensure application icon
 // remains consistent on all systems.
 IDR_MAINFRAME           ICON                    "res\\OGCAssistTool.ico"
-IDR_OGCAssistToolTYPE   ICON                    "res\\OGCAssistToolDoc.ico"
-IDI_FILE_VIEW           ICON                    "res\\file_view.ico"
-IDI_FILE_VIEW_HC        ICON                    "res\\file_view_hc.ico"
-IDI_CLASS_VIEW          ICON                    "res\\class_view.ico"
-IDI_CLASS_VIEW_HC       ICON                    "res\\class_view_hc.ico"
-IDI_OUTPUT_WND          ICON                    "res\\output_wnd.ico"
-IDI_OUTPUT_WND_HC       ICON                    "res\\output_wnd_hc.ico"
-IDI_PROPERTIES_WND      ICON                    "res\\properties_wnd.ico"
-IDI_PROPERTIES_WND_HC   ICON                    "res\\properties_wnd_hc.ico"
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Bitmap
-//
-
-IDR_MAINFRAME           BITMAP                  "res\\Toolbar.bmp"
-IDR_MAINFRAME_256       BITMAP                  "res\\Toolbar256.bmp"
-IDB_MAIN                BITMAP                  "res\\main.bmp"
-IDB_FILELARGE           BITMAP                  "res\\filelarge.bmp"
-IDB_FILESMALL           BITMAP                  "res\\filesmall.bmp"
-IDB_WRITELARGE          BITMAP                  "res\\writelarge.bmp"
-IDB_WRITESMALL          BITMAP                  "res\\writesmall.bmp"
-IDB_BUTTONS             BITMAP                  "res\\buttons.bmp"
-IDR_SORT                BITMAP                  "res\\sort.bmp"
-IDB_SORT_24             BITMAP                  "res\\sort_hc.bmp"
-IDB_FILE_VIEW           BITMAP                  "res\\fileview.bmp"
-IDB_FILE_VIEW_24        BITMAP                  "res\\fileview_hc.bmp"
-IDB_CLASS_VIEW          BITMAP                  "res\\classview.bmp"
-IDB_CLASS_VIEW_24       BITMAP                  "res\\classview_hc.bmp"
-IDR_EXPLORER            BITMAP                  "res\\explorer.bmp"
-IDB_EXPLORER_24         BITMAP                  "res\\explorer_hc.bmp"
-IDR_MENU_IMAGES         BITMAP                  "res\\menuimages.bmp"
-IDB_MENU_IMAGES_24      BITMAP                  "res\\menuimages_hc.bmp"
-IDR_PROPERTIES          BITMAP                  "res\\properties.bmp"
-IDB_PROPERTIES_HC       BITMAP                  "res\\properties_hc.bmp"
-IDB_NAVIGATION_LARGE    BITMAP                  "res\\nav_large.bmp"
-IDB_NAVIGATION_LARGE_HC BITMAP                  "res\\nav_large_hc.bmp"
-IDB_PAGES               BITMAP                  "res\\pages.bmp"
-IDB_PAGES_HC            BITMAP                  "res\\pages_hc.bmp"
-IDB_PAGES_SMALL         BITMAP                  "res\\pages_small.bmp"
-IDB_PAGES_SMALL_HC      BITMAP                  "res\\pages_small_hc.bmp"
-IDB_INFO                BITMAP                  "res\\info.bmp"
-IDB_LOGO                BITMAP                  "res\\logo.bmp"
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Toolbar
-//
-
-IDR_MAINFRAME TOOLBAR  16, 16
-BEGIN
-    BUTTON      ID_FILE_NEW
-    BUTTON      ID_FILE_OPEN
-    BUTTON      ID_FILE_SAVE
-    SEPARATOR
-    BUTTON      ID_EDIT_CUT
-    BUTTON      ID_EDIT_COPY
-    BUTTON      ID_EDIT_PASTE
-    SEPARATOR
-    BUTTON      ID_FILE_PRINT
-    BUTTON      ID_APP_ABOUT
-END
-
-IDR_MAINFRAME_256 TOOLBAR  16, 16
-BEGIN
-    BUTTON      ID_FILE_NEW
-    BUTTON      ID_FILE_OPEN
-    BUTTON      ID_FILE_SAVE
-    SEPARATOR
-    BUTTON      ID_EDIT_CUT
-    BUTTON      ID_EDIT_COPY
-    BUTTON      ID_EDIT_PASTE
-    SEPARATOR
-    BUTTON      ID_FILE_PRINT
-    BUTTON      ID_APP_ABOUT
-END
-
-IDR_SORT TOOLBAR  16, 16
-BEGIN
-    BUTTON      ID_SORT_MENU
-    BUTTON      ID_NEW_FOLDER
-END
-
-IDR_EXPLORER TOOLBAR  16, 16
-BEGIN
-    BUTTON      ID_PROPERTIES
-END
-
-IDR_MENU_IMAGES TOOLBAR  16, 16
-BEGIN
-    BUTTON      ID_WINDOW_MANAGER
-    SEPARATOR
-    BUTTON      ID_WINDOW_CASCADE
-    BUTTON      ID_WINDOW_TILE_HORZ
-    BUTTON      ID_TOOLS_MACRO
-    BUTTON      ID_SORTING_SORTALPHABETIC
-    BUTTON      ID_SORTING_SORTBYTYPE
-    BUTTON      ID_SORTING_SORTBYACCESS
-    BUTTON      ID_SORTING_GROUPBYTYPE
-END
-
-IDR_PROPERTIES TOOLBAR  16, 16
-BEGIN
-    BUTTON      ID_EXPAND_ALL
-    BUTTON      ID_SORTPROPERTIES
-    BUTTON      ID_PROPERTIES1
-    BUTTON      ID_PROPERTIES2
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Menu
-//
-
-IDR_MAINFRAME MENU 
-BEGIN
-    POPUP "文件(&F)"
-    BEGIN
-        MENUITEM "新建(&N)\tCtrl+N",              ID_FILE_NEW
-        MENUITEM "打开(&O)...\tCtrl+O",           ID_FILE_OPEN
-        MENUITEM "保存(&S)\tCtrl+S",              ID_FILE_SAVE
-        MENUITEM "另存为(&A)...",                  ID_FILE_SAVE_AS
-        MENUITEM SEPARATOR
-        MENUITEM "打印(&P)...\tCtrl+P",           ID_FILE_PRINT
-        MENUITEM "打印预览(&V)",                    ID_FILE_PRINT_PREVIEW
-        MENUITEM "打印设置(&R)...",                 ID_FILE_PRINT_SETUP
-        MENUITEM SEPARATOR
-        MENUITEM "最近的文件",                       ID_FILE_MRU_FILE1, GRAYED
-        MENUITEM SEPARATOR
-        MENUITEM "退出(&X)",                      ID_APP_EXIT
-    END
-    POPUP "编辑(&E)"
-    BEGIN
-        MENUITEM "撤消(&U)\tCtrl+Z",              ID_EDIT_UNDO
-        MENUITEM SEPARATOR
-        MENUITEM "剪切(&T)\tCtrl+X",              ID_EDIT_CUT
-        MENUITEM "复制(&C)\tCtrl+C",              ID_EDIT_COPY
-        MENUITEM "粘贴(&P)\tCtrl+V",              ID_EDIT_PASTE
-    END
-    POPUP "视图(&V)"
-    BEGIN
-        MENUITEM "状态栏(&S)",                     ID_VIEW_STATUS_BAR
-        MENUITEM "标题栏(&C)",                     ID_VIEW_CAPTION_BAR
-        POPUP "应用程序外观(&A)"
-        BEGIN
-            MENUITEM "Windows 2000(&2)",            ID_VIEW_APPLOOK_WIN_2000
-            MENUITEM "Office XP(&X)",               ID_VIEW_APPLOOK_OFF_XP
-            MENUITEM "Windows XP(&W)",              ID_VIEW_APPLOOK_WIN_XP
-            MENUITEM "Office 2003(&3)",             ID_VIEW_APPLOOK_OFF_2003
-            MENUITEM "Visual Studio.NET 2005(&5)",  ID_VIEW_APPLOOK_VS_2005
-            POPUP "Office 2007(&7)"
-            BEGIN
-                MENUITEM "蓝色样式(&B)",                    ID_VIEW_APPLOOK_OFF_2007_BLUE
-                MENUITEM "黑色样式(&L)",                    ID_VIEW_APPLOOK_OFF_2007_BLACK
-                MENUITEM "银色样式(&S)",                    ID_VIEW_APPLOOK_OFF_2007_SILVER
-                MENUITEM "水绿色样式(&A)",                   ID_VIEW_APPLOOK_OFF_2007_AQUA
-            END
-        END
-    END
-    POPUP "帮助(&H)"
-    BEGIN
-        MENUITEM "关于 OGCAssistTool(&A)...",     ID_APP_ABOUT
-    END
-END
-
-IDR_POPUP_EDIT MENU 
-BEGIN
-    POPUP "编辑"
-    BEGIN
-        MENUITEM "剪切(&T)\tCtrl+X",              ID_EDIT_CUT
-        MENUITEM "复制(&C)\tCtrl+C",              ID_EDIT_COPY
-        MENUITEM "粘贴(&P)\tCtrl+V",              ID_EDIT_PASTE
-    END
-END
-
-IDR_WINDOWS_MENU MENU 
-BEGIN
-    MENUITEM "新建窗口(&N)",                    ID_WINDOW_NEW
-END
-
-IDR_POPUP_SORT MENU 
-BEGIN
-    POPUP "排序"
-    BEGIN
-        MENUITEM "按字母顺序排序(&S)",                 ID_SORTING_SORTALPHABETIC
-        MENUITEM "按类型排序(&T)",                   ID_SORTING_SORTBYTYPE
-        MENUITEM "按访问排序(&E)",                   ID_SORTING_SORTBYACCESS
-        MENUITEM "按类型分组(&Y)",                   ID_SORTING_GROUPBYTYPE
-    END
-END
-
-IDR_POPUP_EXPLORER MENU 
-BEGIN
-    POPUP "资源管理器"
-    BEGIN
-        MENUITEM "打开(&O)",                      ID_OPEN
-        MENUITEM "打开方式(&W)....",                ID_OPEN_WITH
-        MENUITEM SEPARATOR
-        MENUITEM "编译(&C)",                      ID_DUMMY_COMPILE
-        MENUITEM SEPARATOR
-        MENUITEM "剪切(&T)\tCtrl+X",              ID_EDIT_CUT
-        MENUITEM "复制(&C)\tCtrl+C",              ID_EDIT_COPY
-        MENUITEM "删除(&R)",                      ID_EDIT_CLEAR
-        MENUITEM SEPARATOR
-        MENUITEM "属性(&P)...",                   ID_PROPERTIES
-    END
-END
-
-IDR_OUTPUT_POPUP MENU 
-BEGIN
-    POPUP "弹出项"
-    BEGIN
-        MENUITEM "复制(&C)",                      ID_EDIT_COPY
-        MENUITEM "清除(&C)",                      ID_EDIT_CLEAR
-        MENUITEM SEPARATOR
-        MENUITEM "隐藏(&H)",                      ID_VIEW_OUTPUTWND
-    END
-END
-
-IDR_THEME_MENU MENU 
-BEGIN
-    MENUITEM "Office 2007 (蓝色样式)(&B)",      ID_VIEW_APPLOOK_OFF_2007_BLUE
-    MENUITEM "Office 2007 (黑色样式)(&L)",      ID_VIEW_APPLOOK_OFF_2007_BLACK
-    MENUITEM "Office 2007 (银色样式)(&S)",      ID_VIEW_APPLOOK_OFF_2007_SILVER
-    MENUITEM "Office 2007 (水绿色样式)(&A)",     ID_VIEW_APPLOOK_OFF_2007_AQUA
-END
-
-
-/////////////////////////////////////////////////////////////////////////////
-//
-// Accelerator
-//
-
-IDR_MAINFRAME ACCELERATORS 
-BEGIN
-    "N",            ID_FILE_NEW,            VIRTKEY, CONTROL
-    "O",            ID_FILE_OPEN,           VIRTKEY, CONTROL
-    "S",            ID_FILE_SAVE,           VIRTKEY, CONTROL
-    "P",            ID_FILE_PRINT,          VIRTKEY, CONTROL
-    "Z",            ID_EDIT_UNDO,           VIRTKEY, CONTROL
-    "X",            ID_EDIT_CUT,            VIRTKEY, CONTROL
-    "C",            ID_EDIT_COPY,           VIRTKEY, CONTROL
-    "V",            ID_EDIT_PASTE,          VIRTKEY, CONTROL
-    VK_BACK,        ID_EDIT_UNDO,           VIRTKEY, ALT
-    VK_DELETE,      ID_EDIT_CUT,            VIRTKEY, SHIFT
-    VK_INSERT,      ID_EDIT_COPY,           VIRTKEY, CONTROL
-    VK_INSERT,      ID_EDIT_PASTE,          VIRTKEY, SHIFT
-    VK_F6,          ID_NEXT_PANE,           VIRTKEY 
-    VK_F6,          ID_PREV_PANE,           VIRTKEY, SHIFT
-END
-
 
 /////////////////////////////////////////////////////////////////////////////
 //
@@ -343,6 +88,17 @@ BEGIN
     DEFPUSHBUTTON   "确定",IDOK,113,41,50,14,WS_GROUP
 END
 
+IDD_OGCASSISTTOOL_DIALOG DIALOGEX 0, 0, 320, 200
+STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_MINIMIZEBOX | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
+EXSTYLE WS_EX_APPWINDOW
+CAPTION "OGCAssistTool"
+FONT 9, "MS Shell Dlg", 0, 0, 0x1
+BEGIN
+    DEFPUSHBUTTON   "确定",IDOK,209,179,50,14
+    PUSHBUTTON      "取消",IDCANCEL,263,179,50,14
+    CTEXT           "TODO: 在此放置对话框控件。",IDC_STATIC,10,96,300,8
+END
+
 DLG_LOGIN DIALOGEX 0, 0, 260, 135
 STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
 CAPTION "登录"
@@ -415,6 +171,14 @@ BEGIN
         BOTTOMMARGIN, 55
     END
 
+    IDD_OGCASSISTTOOL_DIALOG, DIALOG
+    BEGIN
+        LEFTMARGIN, 7
+        RIGHTMARGIN, 313
+        TOPMARGIN, 7
+        BOTTOMMARGIN, 193
+    END
+
     DLG_LOGIN, DIALOG
     BEGIN
         LEFTMARGIN, 7
@@ -428,212 +192,19 @@ END
 
 /////////////////////////////////////////////////////////////////////////////
 //
-// String Table
+// Bitmap
 //
 
-STRINGTABLE 
-BEGIN
-    IDP_OLE_INIT_FAILED     "OLE 初始化失败。请确保 OLE 库是正确的版本。"
-END
-
-STRINGTABLE 
-BEGIN
-    IDR_MAINFRAME           "OGCAssistTool\n\nOGCAssistTool\n\n\nOGCAssistTool.Document\nOGCAssistTool.Document"
-END
-
-STRINGTABLE 
-BEGIN
-    AFX_IDS_APP_TITLE       "OGCAssistTool"
-    AFX_IDS_IDLEMESSAGE     "就绪"
-END
-
-STRINGTABLE 
-BEGIN
-    ID_INDICATOR_EXT        "EXT"
-    ID_INDICATOR_CAPS       "CAP"
-    ID_INDICATOR_NUM        "NUM"
-    ID_INDICATOR_SCRL       "SCRL"
-    ID_INDICATOR_OVR        "OVR"
-    ID_INDICATOR_REC        "REC"
-END
-
-STRINGTABLE 
-BEGIN
-    ID_FILE_NEW             "创建新文档\n新建"
-    ID_FILE_OPEN            "打开现有文档\n打开"
-    ID_FILE_CLOSE           "关闭活动文档\n关闭"
-    ID_FILE_SAVE            "保存活动文档\n保存"
-    ID_FILE_SAVE_AS         "用新名称保存活动文档\n另存为"
-    ID_FILE_PAGE_SETUP      "更改打印选项\n页面设置"
-    ID_FILE_PRINT_SETUP     "更改打印机选项和打印选项\n打印设置"
-    ID_FILE_PRINT           "打印活动文档\n打印"
-    ID_FILE_PRINT_DIRECT    "使用当前选项打印活动文档\n快速打印"
-    ID_FILE_PRINT_PREVIEW   "显示整页\n打印预览"
-END
-
-STRINGTABLE 
-BEGIN
-    ID_APP_ABOUT            "显示程序信息、版本号和版权\n关于"
-    ID_APP_EXIT             "退出应用程序;提示保存文档\n退出"
-END
-
-STRINGTABLE 
-BEGIN
-    ID_FILE_MRU_FILE1       "打开此文档"
-    ID_FILE_MRU_FILE2       "打开此文档"
-    ID_FILE_MRU_FILE3       "打开此文档"
-    ID_FILE_MRU_FILE4       "打开此文档"
-    ID_FILE_MRU_FILE5       "打开此文档"
-    ID_FILE_MRU_FILE6       "打开此文档"
-    ID_FILE_MRU_FILE7       "打开此文档"
-    ID_FILE_MRU_FILE8       "打开此文档"
-    ID_FILE_MRU_FILE9       "打开此文档"
-    ID_FILE_MRU_FILE10      "打开此文档"
-    ID_FILE_MRU_FILE11      "打开此文档"
-    ID_FILE_MRU_FILE12      "打开此文档"
-    ID_FILE_MRU_FILE13      "打开此文档"
-    ID_FILE_MRU_FILE14      "打开此文档"
-    ID_FILE_MRU_FILE15      "打开此文档"
-    ID_FILE_MRU_FILE16      "打开此文档"
-END
-
-STRINGTABLE 
-BEGIN
-    ID_NEXT_PANE            "切换到下一个窗格\n下一窗格"
-    ID_PREV_PANE            "切换回上一个窗格\n上一窗格"
-END
-
-STRINGTABLE 
-BEGIN
-    ID_WINDOW_SPLIT         "将活动窗口拆分为多个窗格\n拆分"
-END
-
-STRINGTABLE 
-BEGIN
-    ID_EDIT_CLEAR           "清除选定内容\n清除"
-    ID_EDIT_CLEAR_ALL       "清除全部内容\n全部清除"
-    ID_EDIT_COPY            "复制选定内容并将其放到剪贴板上\n复制"
-    ID_EDIT_CUT             "剪切选定内容并将其放到剪贴板上\n剪切"
-    ID_EDIT_FIND            "查找指定的文本\n查找"
-    ID_EDIT_PASTE           "插入剪贴板内容\n粘贴"
-    ID_EDIT_REPEAT          "重复上一操作\n重复"
-    ID_EDIT_REPLACE         "用其他文本替换特定的文本\n替换"
-    ID_EDIT_SELECT_ALL      "选定整个文档\n全选"
-    ID_EDIT_UNDO            "撤消上一操作\n撤消"
-    ID_EDIT_REDO            "恢复上次撤消的操作\n重做"
-END
-
-STRINGTABLE 
-BEGIN
-    ID_VIEW_TOOLBAR         "显示或隐藏工具栏\n切换工具栏"
-    ID_VIEW_STATUS_BAR      "显示或隐藏状态栏\n切换状态栏"
-END
-
-STRINGTABLE 
-BEGIN
-    ID_VIEW_CAPTION_BAR     "显示或隐藏标题栏\n切换标题栏"
-END
-
-STRINGTABLE 
-BEGIN
-    AFX_IDS_SCSIZE          "更改窗口大小"
-    AFX_IDS_SCMOVE          "更改窗口位置"
-    AFX_IDS_SCMINIMIZE      "将窗口缩小为图标"
-    AFX_IDS_SCMAXIMIZE      "使窗口最大化显示"
-    AFX_IDS_SCNEXTWINDOW    "切换到下一个文档窗口"
-    AFX_IDS_SCPREVWINDOW    "切换到前一个文档窗口"
-    AFX_IDS_SCCLOSE         "关闭活动窗口并提示保存文档"
-END
-
-STRINGTABLE 
-BEGIN
-    AFX_IDS_SCRESTORE       "将窗口恢复到正常大小"
-    AFX_IDS_SCTASKLIST      "激活任务列表"
-END
-
-STRINGTABLE 
-BEGIN
-    AFX_IDS_PREVIEW_CLOSE   "关闭打印预览模式\n取消预览"
-END
-
-STRINGTABLE 
-BEGIN
-    IDS_STATUS_PANE1        "窗格 1"
-    IDS_STATUS_PANE2        "窗格 2"
-END
-
-STRINGTABLE 
-BEGIN
-    IDS_FILE_VIEW           "文件视图"
-    IDS_CLASS_VIEW          "类视图"
-    IDS_OUTPUT_WND          "输出"
-    IDS_PROPERTIES_WND      "属性"
-END
-
-STRINGTABLE 
-BEGIN
-    IDS_EXPLORER            "资源管理器"
-    IDS_EDIT_MENU           "编辑"
-END
-
-STRINGTABLE 
-BEGIN
-    IDS_RIBBON_STYLE_DESC   "选择一个 Office 2007 主题"
-    IDS_RIBBON_STATUSBAR    "状态栏"
-    IDS_RIBBON_VIEW         "视图"
-    IDS_RIBBON_CAPTIONBAR   "标题栏"
-    IDS_BUILD_TAB           "生成"
-    IDS_DEBUG_TAB           "调试"
-    IDS_FIND_TAB            "查找"
-END
-
-STRINGTABLE 
-BEGIN
-    IDS_MYCALENDARS         "我的日历"
-    IDS_CALENDAR            "日历"
-    IDS_SHORTCUTS           "快捷方式"
-    IDS_FOLDERS             "文件夹"
-END
-
-STRINGTABLE 
-BEGIN
-    IDS_OUTLOOKBAR          "Outlook 栏"
-    IDS_RIBBON_FILE         "文件"
-    IDS_RIBBON_NEW          "新建(&N)"
-    IDS_RIBBON_OPEN         "打开(&O)..."
-    IDS_RIBBON_SAVE         "保存(&S)"
-    IDS_RIBBON_SAVEAS       "另存为(&A)..."
-    IDS_RIBBON_PRINT        "打印"
-    IDS_RIBBON_PRINT_LABEL  "预览并打印文档"
-    IDS_RIBBON_PRINT_QUICK  "快速打印(&Q)"
-    IDS_RIBBON_PRINT_PREVIEW "打印预览(&V)"
-    IDS_RIBBON_PRINT_SETUP  "打印设置(&U)"
-    IDS_RIBBON_CLOSE        "关闭(&C)"
-END
+IDB_LOGO                BITMAP                  "res\\logo.bmp"
 
-STRINGTABLE 
-BEGIN
-    IDS_RIBBON_RECENT_DOCS  "最近使用的文档"
-    IDS_RIBBON_EXIT         "退出(&X)"
-    IDS_RIBBON_HOME         "主页(&H)"
-    IDS_RIBBON_CLIPBOARD    "剪贴板\nD"
-    IDS_RIBBON_PASTE        "粘贴\nV"
-    IDS_RIBBON_CUT          "剪切\nX"
-    IDS_RIBBON_COPY         "复制\nC"
-    IDS_RIBBON_SELECTALL    "全选\nA"
-    IDS_RIBBON_WINDOW       "窗口\nW"
-    IDS_RIBBON_WINDOWS      "窗口\nI"
-    IDS_RIBBON_STYLE        "样式"
-    IDS_RIBBON_STYLE_TIP    "修改视觉样式"
-END
+/////////////////////////////////////////////////////////////////////////////
+//
+// String Table
+//
 
 STRINGTABLE 
 BEGIN
-    IDS_CAPTION_BUTTON      "选项..."
-    IDS_CAPTION_BUTTON_TIP  "单击此处查看其他选项"
-    IDS_CAPTION_TEXT        "这是标题栏,可在其中向用户显示消息。"
-    IDS_CAPTION_IMAGE_TIP   "重要事项"
-    IDS_CAPTION_IMAGE_TEXT  "这是向用户显示的信息性消息。"
+    IDS_ABOUTBOX            "关于 OGCAssistTool(&A)..."
 END
 
 #endif    // 中文(中华人民共和国) resources
@@ -646,6 +217,7 @@ END
 //
 // Generated from the TEXTINCLUDE 3 resource.
 //
+#define _AFX_NO_SPLITTER_RESOURCES
 #define _AFX_NO_OLE_RESOURCES
 #define _AFX_NO_TRACKER_RESOURCES
 #define _AFX_NO_PROPERTY_RESOURCES
@@ -654,11 +226,7 @@ END
 LANGUAGE 4, 2
 #pragma code_page(936)
 #include "res\OGCAssistTool.rc2"  // 非 Microsoft Visual C++ 编辑的资源
-#include "l.CHS\afxres.rc"          // 标准组件
-#include "l.CHS\afxprint.rc"        // 打印/打印预览资源
-#if !defined(_AFXDLL)
-#include "l.CHS\afxribbon.rc"               // MFC 功能区和控件条资源
-#endif
+#include "l.CHS\afxres.rc"      // 标准组件
 #endif
 
 /////////////////////////////////////////////////////////////////////////////

+ 7 - 219
Source/OGCAssistTool/OGCAssistTool/OGCAssistTool.vcproj

@@ -3,7 +3,7 @@
 	ProjectType="Visual C++"
 	Version="9.00"
 	Name="OGCAssistTool"
-	ProjectGUID="{01D481C5-7859-43F9-B224-219E8AD4A10C}"
+	ProjectGUID="{0B8CE487-8311-4878-902B-15813A89DB90}"
 	RootNamespace="OGCAssistTool"
 	Keyword="MFCProj"
 	TargetFrameworkVersion="196613"
@@ -18,8 +18,8 @@
 	<Configurations>
 		<Configuration
 			Name="Debug|Win32"
-			OutputDirectory="..\..\..\..\bin\$(SolutionName)"
-			IntermediateDirectory="$(OutDir)\$(ProjectName)\$(ConfigurationName)"
+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+			IntermediateDirectory="$(ConfigurationName)"
 			ConfigurationType="1"
 			UseOfMFC="2"
 			CharacterSet="1"
@@ -96,8 +96,8 @@
 		</Configuration>
 		<Configuration
 			Name="Release|Win32"
-			OutputDirectory="..\..\..\..\bin\$(SolutionName)"
-			IntermediateDirectory="$(OutDir)\$(ProjectName)\$(ConfigurationName)"
+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+			IntermediateDirectory="$(ConfigurationName)"
 			ConfigurationType="1"
 			UseOfMFC="2"
 			CharacterSet="1"
@@ -185,44 +185,16 @@
 			Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
 			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
 			>
-			<File
-				RelativePath=".\CalendarBar.cpp"
-				>
-			</File>
-			<File
-				RelativePath=".\ClassView.cpp"
-				>
-			</File>
 			<File
 				RelativePath=".\DlgLogin.cpp"
 				>
 			</File>
-			<File
-				RelativePath=".\FileView.cpp"
-				>
-			</File>
-			<File
-				RelativePath=".\MainFrm.cpp"
-				>
-			</File>
 			<File
 				RelativePath=".\OGCAssistTool.cpp"
 				>
 			</File>
 			<File
-				RelativePath=".\OGCAssistToolDoc.cpp"
-				>
-			</File>
-			<File
-				RelativePath=".\OGCAssistToolView.cpp"
-				>
-			</File>
-			<File
-				RelativePath=".\OutputWnd.cpp"
-				>
-			</File>
-			<File
-				RelativePath=".\PropertiesWnd.cpp"
+				RelativePath=".\OGCAssistToolDlg.cpp"
 				>
 			</File>
 			<File
@@ -245,54 +217,22 @@
 					/>
 				</FileConfiguration>
 			</File>
-			<File
-				RelativePath=".\ViewTree.cpp"
-				>
-			</File>
 		</Filter>
 		<Filter
 			Name="Í·Îļþ"
 			Filter="h;hpp;hxx;hm;inl;inc;xsd"
 			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
 			>
-			<File
-				RelativePath=".\CalendarBar.h"
-				>
-			</File>
-			<File
-				RelativePath=".\ClassView.h"
-				>
-			</File>
 			<File
 				RelativePath=".\DlgLogin.h"
 				>
 			</File>
-			<File
-				RelativePath=".\FileView.h"
-				>
-			</File>
-			<File
-				RelativePath=".\MainFrm.h"
-				>
-			</File>
 			<File
 				RelativePath=".\OGCAssistTool.h"
 				>
 			</File>
 			<File
-				RelativePath=".\OGCAssistToolDoc.h"
-				>
-			</File>
-			<File
-				RelativePath=".\OGCAssistToolView.h"
-				>
-			</File>
-			<File
-				RelativePath=".\OutputWnd.h"
-				>
-			</File>
-			<File
-				RelativePath=".\PropertiesWnd.h"
+				RelativePath=".\OGCAssistToolDlg.h"
 				>
 			</File>
 			<File
@@ -307,100 +247,16 @@
 				RelativePath=".\targetver.h"
 				>
 			</File>
-			<File
-				RelativePath=".\ViewTree.h"
-				>
-			</File>
 		</Filter>
 		<Filter
 			Name="×ÊÔ´Îļþ"
 			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
 			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
 			>
-			<File
-				RelativePath=".\res\buttons.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\class_view.ico"
-				>
-			</File>
-			<File
-				RelativePath=".\res\class_view_hc.ico"
-				>
-			</File>
-			<File
-				RelativePath=".\res\classview.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\classview_hc.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\explorer.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\explorer_hc.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\file_view.ico"
-				>
-			</File>
-			<File
-				RelativePath=".\res\file_view_hc.ico"
-				>
-			</File>
-			<File
-				RelativePath=".\res\filelarge.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\filesmall.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\fileview.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\fileview_hc.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\info.bmp"
-				>
-			</File>
 			<File
 				RelativePath=".\res\logo.bmp"
 				>
 			</File>
-			<File
-				RelativePath="C:\Users\scbc.sat23\Desktop\logo.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\main.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\menuimages.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\menuimages_hc.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\nav_large.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\nav_large_hc.bmp"
-				>
-			</File>
 			<File
 				RelativePath=".\res\OGCAssistTool.ico"
 				>
@@ -413,74 +269,6 @@
 				RelativePath=".\res\OGCAssistTool.rc2"
 				>
 			</File>
-			<File
-				RelativePath=".\res\OGCAssistToolDoc.ico"
-				>
-			</File>
-			<File
-				RelativePath=".\res\output_wnd.ico"
-				>
-			</File>
-			<File
-				RelativePath=".\res\output_wnd_hc.ico"
-				>
-			</File>
-			<File
-				RelativePath=".\res\pages.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\pages_hc.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\pages_small.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\pages_small_hc.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\properties.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\properties_hc.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\properties_wnd.ico"
-				>
-			</File>
-			<File
-				RelativePath=".\res\properties_wnd_hc.ico"
-				>
-			</File>
-			<File
-				RelativePath=".\res\sort.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\sort_hc.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\Toolbar.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\Toolbar256.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\writelarge.bmp"
-				>
-			</File>
-			<File
-				RelativePath=".\res\writesmall.bmp"
-				>
-			</File>
 		</Filter>
 		<File
 			RelativePath=".\ReadMe.txt"

+ 153 - 0
Source/OGCAssistTool/OGCAssistTool/OGCAssistToolDlg.cpp

@@ -0,0 +1,153 @@
+
+// OGCAssistToolDlg.cpp : 实现文件
+//
+
+#include "stdafx.h"
+#include "OGCAssistTool.h"
+#include "OGCAssistToolDlg.h"
+
+#ifdef _DEBUG
+#define new DEBUG_NEW
+#endif
+
+
+// 用于应用程序“关于”菜单项的 CAboutDlg 对话框
+
+class CAboutDlg : public CDialog
+{
+public:
+	CAboutDlg();
+
+// 对话框数据
+	enum { IDD = IDD_ABOUTBOX };
+
+	protected:
+	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 支持
+
+// 实现
+protected:
+	DECLARE_MESSAGE_MAP()
+};
+
+CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
+{
+}
+
+void CAboutDlg::DoDataExchange(CDataExchange* pDX)
+{
+	CDialog::DoDataExchange(pDX);
+}
+
+BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
+END_MESSAGE_MAP()
+
+
+// COGCAssistToolDlg 对话框
+
+
+
+
+COGCAssistToolDlg::COGCAssistToolDlg(CWnd* pParent /*=NULL*/)
+	: CDialog(COGCAssistToolDlg::IDD, pParent)
+{
+	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
+}
+
+void COGCAssistToolDlg::DoDataExchange(CDataExchange* pDX)
+{
+	CDialog::DoDataExchange(pDX);
+}
+
+BEGIN_MESSAGE_MAP(COGCAssistToolDlg, CDialog)
+	ON_WM_SYSCOMMAND()
+	ON_WM_PAINT()
+	ON_WM_QUERYDRAGICON()
+	//}}AFX_MSG_MAP
+END_MESSAGE_MAP()
+
+
+// COGCAssistToolDlg 消息处理程序
+
+BOOL COGCAssistToolDlg::OnInitDialog()
+{
+	CDialog::OnInitDialog();
+
+	// 将“关于...”菜单项添加到系统菜单中。
+
+	// IDM_ABOUTBOX 必须在系统命令范围内。
+	ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
+	ASSERT(IDM_ABOUTBOX < 0xF000);
+
+	CMenu* pSysMenu = GetSystemMenu(FALSE);
+	if (pSysMenu != NULL)
+	{
+		BOOL bNameValid;
+		CString strAboutMenu;
+		bNameValid = strAboutMenu.LoadString(IDS_ABOUTBOX);
+		ASSERT(bNameValid);
+		if (!strAboutMenu.IsEmpty())
+		{
+			pSysMenu->AppendMenu(MF_SEPARATOR);
+			pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
+		}
+	}
+
+	// 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
+	//  执行此操作
+	SetIcon(m_hIcon, TRUE);			// 设置大图标
+	SetIcon(m_hIcon, FALSE);		// 设置小图标
+
+	// TODO: 在此添加额外的初始化代码
+
+	return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
+}
+
+void COGCAssistToolDlg::OnSysCommand(UINT nID, LPARAM lParam)
+{
+	if ((nID & 0xFFF0) == IDM_ABOUTBOX)
+	{
+		CAboutDlg dlgAbout;
+		dlgAbout.DoModal();
+	}
+	else
+	{
+		CDialog::OnSysCommand(nID, lParam);
+	}
+}
+
+// 如果向对话框添加最小化按钮,则需要下面的代码
+//  来绘制该图标。对于使用文档/视图模型的 MFC 应用程序,
+//  这将由框架自动完成。
+
+void COGCAssistToolDlg::OnPaint()
+{
+	if (IsIconic())
+	{
+		CPaintDC dc(this); // 用于绘制的设备上下文
+
+		SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
+
+		// 使图标在工作区矩形中居中
+		int cxIcon = GetSystemMetrics(SM_CXICON);
+		int cyIcon = GetSystemMetrics(SM_CYICON);
+		CRect rect;
+		GetClientRect(&rect);
+		int x = (rect.Width() - cxIcon + 1) / 2;
+		int y = (rect.Height() - cyIcon + 1) / 2;
+
+		// 绘制图标
+		dc.DrawIcon(x, y, m_hIcon);
+	}
+	else
+	{
+		CDialog::OnPaint();
+	}
+}
+
+//当用户拖动最小化窗口时系统调用此函数取得光标
+//显示。
+HCURSOR COGCAssistToolDlg::OnQueryDragIcon()
+{
+	return static_cast<HCURSOR>(m_hIcon);
+}
+

+ 32 - 0
Source/OGCAssistTool/OGCAssistTool/OGCAssistToolDlg.h

@@ -0,0 +1,32 @@
+
+// OGCAssistToolDlg.h : 头文件
+//
+
+#pragma once
+
+
+// COGCAssistToolDlg 对话框
+class COGCAssistToolDlg : public CDialog
+{
+// 构造
+public:
+	COGCAssistToolDlg(CWnd* pParent = NULL);	// 标准构造函数
+
+// 对话框数据
+	enum { IDD = IDD_OGCASSISTTOOL_DIALOG };
+
+	protected:
+	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV 支持
+
+
+// 实现
+protected:
+	HICON m_hIcon;
+
+	// 生成的消息映射函数
+	virtual BOOL OnInitDialog();
+	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
+	afx_msg void OnPaint();
+	afx_msg HCURSOR OnQueryDragIcon();
+	DECLARE_MESSAGE_MAP()
+};

+ 0 - 89
Source/OGCAssistTool/OGCAssistTool/OGCAssistToolDoc.cpp

@@ -1,89 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-// OGCAssistToolDoc.cpp : COGCAssistToolDoc 类的实现
-//
-
-#include "stdafx.h"
-#include "OGCAssistTool.h"
-
-#include "OGCAssistToolDoc.h"
-
-#ifdef _DEBUG
-#define new DEBUG_NEW
-#endif
-
-
-// COGCAssistToolDoc
-
-IMPLEMENT_DYNCREATE(COGCAssistToolDoc, CDocument)
-
-BEGIN_MESSAGE_MAP(COGCAssistToolDoc, CDocument)
-END_MESSAGE_MAP()
-
-
-// COGCAssistToolDoc 构造/析构
-
-COGCAssistToolDoc::COGCAssistToolDoc()
-{
-	// TODO: 在此添加一次性构造代码
-
-}
-
-COGCAssistToolDoc::~COGCAssistToolDoc()
-{
-}
-
-BOOL COGCAssistToolDoc::OnNewDocument()
-{
-	if (!CDocument::OnNewDocument())
-		return FALSE;
-
-	// TODO: 在此添加重新初始化代码
-	// (SDI 文档将重用该文档)
-
-	return TRUE;
-}
-
-
-
-
-// COGCAssistToolDoc 序列化
-
-void COGCAssistToolDoc::Serialize(CArchive& ar)
-{
-	if (ar.IsStoring())
-	{
-		// TODO: 在此添加存储代码
-	}
-	else
-	{
-		// TODO: 在此添加加载代码
-	}
-}
-
-
-// COGCAssistToolDoc 诊断
-
-#ifdef _DEBUG
-void COGCAssistToolDoc::AssertValid() const
-{
-	CDocument::AssertValid();
-}
-
-void COGCAssistToolDoc::Dump(CDumpContext& dc) const
-{
-	CDocument::Dump(dc);
-}
-#endif //_DEBUG
-
-
-// COGCAssistToolDoc 命令

+ 0 - 51
Source/OGCAssistTool/OGCAssistTool/OGCAssistToolDoc.h

@@ -1,51 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-// OGCAssistToolDoc.h : COGCAssistToolDoc 类的接口
-//
-
-
-#pragma once
-
-
-class COGCAssistToolDoc : public CDocument
-{
-protected: // 仅从序列化创建
-	COGCAssistToolDoc();
-	DECLARE_DYNCREATE(COGCAssistToolDoc)
-
-// 属性
-public:
-
-// 操作
-public:
-
-// 重写
-public:
-	virtual BOOL OnNewDocument();
-	virtual void Serialize(CArchive& ar);
-
-// 实现
-public:
-	virtual ~COGCAssistToolDoc();
-#ifdef _DEBUG
-	virtual void AssertValid() const;
-	virtual void Dump(CDumpContext& dc) const;
-#endif
-
-protected:
-
-// 生成的消息映射函数
-protected:
-	DECLARE_MESSAGE_MAP()
-};
-
-

+ 0 - 127
Source/OGCAssistTool/OGCAssistTool/OGCAssistToolView.cpp

@@ -1,127 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-// OGCAssistToolView.cpp : COGCAssistToolView 类的实现
-//
-
-#include "stdafx.h"
-#include "OGCAssistTool.h"
-
-#include "OGCAssistToolDoc.h"
-#include "OGCAssistToolView.h"
-
-#ifdef _DEBUG
-#define new DEBUG_NEW
-#endif
-
-
-// COGCAssistToolView
-
-IMPLEMENT_DYNCREATE(COGCAssistToolView, CView)
-
-BEGIN_MESSAGE_MAP(COGCAssistToolView, CView)
-	// 标准打印命令
-	ON_COMMAND(ID_FILE_PRINT, &CView::OnFilePrint)
-	ON_COMMAND(ID_FILE_PRINT_DIRECT, &CView::OnFilePrint)
-	ON_COMMAND(ID_FILE_PRINT_PREVIEW, &COGCAssistToolView::OnFilePrintPreview)
-END_MESSAGE_MAP()
-
-// COGCAssistToolView 构造/析构
-
-COGCAssistToolView::COGCAssistToolView()
-{
-	// TODO: 在此处添加构造代码
-
-}
-
-COGCAssistToolView::~COGCAssistToolView()
-{
-}
-
-BOOL COGCAssistToolView::PreCreateWindow(CREATESTRUCT& cs)
-{
-	// TODO: 在此处通过修改
-	//  CREATESTRUCT cs 来修改窗口类或样式
-
-	return CView::PreCreateWindow(cs);
-}
-
-// COGCAssistToolView 绘制
-
-void COGCAssistToolView::OnDraw(CDC* /*pDC*/)
-{
-	COGCAssistToolDoc* pDoc = GetDocument();
-	ASSERT_VALID(pDoc);
-	if (!pDoc)
-		return;
-
-	// TODO: 在此处为本机数据添加绘制代码
-}
-
-
-// COGCAssistToolView 打印
-
-
-void COGCAssistToolView::OnFilePrintPreview()
-{
-	AFXPrintPreview(this);
-}
-
-BOOL COGCAssistToolView::OnPreparePrinting(CPrintInfo* pInfo)
-{
-	// 默认准备
-	return DoPreparePrinting(pInfo);
-}
-
-void COGCAssistToolView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
-{
-	// TODO: 添加额外的打印前进行的初始化过程
-}
-
-void COGCAssistToolView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
-{
-	// TODO: 添加打印后进行的清理过程
-}
-
-void COGCAssistToolView::OnRButtonUp(UINT nFlags, CPoint point)
-{
-	ClientToScreen(&point);
-	OnContextMenu(this, point);
-}
-
-void COGCAssistToolView::OnContextMenu(CWnd* pWnd, CPoint point)
-{
-	theApp.GetContextMenuManager()->ShowPopupMenu(IDR_POPUP_EDIT, point.x, point.y, this, TRUE);
-}
-
-
-// COGCAssistToolView 诊断
-
-#ifdef _DEBUG
-void COGCAssistToolView::AssertValid() const
-{
-	CView::AssertValid();
-}
-
-void COGCAssistToolView::Dump(CDumpContext& dc) const
-{
-	CView::Dump(dc);
-}
-
-COGCAssistToolDoc* COGCAssistToolView::GetDocument() const // 非调试版本是内联的
-{
-	ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(COGCAssistToolDoc)));
-	return (COGCAssistToolDoc*)m_pDocument;
-}
-#endif //_DEBUG
-
-
-// COGCAssistToolView 消息处理程序

+ 0 - 63
Source/OGCAssistTool/OGCAssistTool/OGCAssistToolView.h

@@ -1,63 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-// OGCAssistToolView.h : COGCAssistToolView 类的接口
-//
-
-
-#pragma once
-
-
-class COGCAssistToolView : public CView
-{
-protected: // 仅从序列化创建
-	COGCAssistToolView();
-	DECLARE_DYNCREATE(COGCAssistToolView)
-
-// 属性
-public:
-	COGCAssistToolDoc* GetDocument() const;
-
-// 操作
-public:
-
-// 重写
-public:
-	virtual void OnDraw(CDC* pDC);  // 重写以绘制该视图
-	virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
-protected:
-	virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
-	virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
-	virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
-
-// 实现
-public:
-	virtual ~COGCAssistToolView();
-#ifdef _DEBUG
-	virtual void AssertValid() const;
-	virtual void Dump(CDumpContext& dc) const;
-#endif
-
-protected:
-
-// 生成的消息映射函数
-protected:
-	afx_msg void OnFilePrintPreview();
-	afx_msg void OnRButtonUp(UINT nFlags, CPoint point);
-	afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
-	DECLARE_MESSAGE_MAP()
-};
-
-#ifndef _DEBUG  // OGCAssistToolView.cpp 中的调试版本
-inline COGCAssistToolDoc* COGCAssistToolView::GetDocument() const
-   { return reinterpret_cast<COGCAssistToolDoc*>(m_pDocument); }
-#endif
-

+ 0 - 208
Source/OGCAssistTool/OGCAssistTool/OutputWnd.cpp

@@ -1,208 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-#include "stdafx.h"
-
-#include "OutputWnd.h"
-#include "Resource.h"
-#include "MainFrm.h"
-
-#ifdef _DEBUG
-#define new DEBUG_NEW
-#undef THIS_FILE
-static char THIS_FILE[] = __FILE__;
-#endif
-
-/////////////////////////////////////////////////////////////////////////////
-// COutputBar
-
-COutputWnd::COutputWnd()
-{
-}
-
-COutputWnd::~COutputWnd()
-{
-}
-
-BEGIN_MESSAGE_MAP(COutputWnd, CDockablePane)
-	ON_WM_CREATE()
-	ON_WM_SIZE()
-END_MESSAGE_MAP()
-
-int COutputWnd::OnCreate(LPCREATESTRUCT lpCreateStruct)
-{
-	if (CDockablePane::OnCreate(lpCreateStruct) == -1)
-		return -1;
-
-	m_Font.CreateStockObject(DEFAULT_GUI_FONT);
-
-	CRect rectDummy;
-	rectDummy.SetRectEmpty();
-
-	// 创建选项卡窗口:
-	if (!m_wndTabs.Create(CMFCTabCtrl::STYLE_FLAT, rectDummy, this, 1))
-	{
-		TRACE0("未能创建输出选项卡窗口\n");
-		return -1;      // 未能创建
-	}
-
-	// 创建输出窗格:
-	const DWORD dwStyle = LBS_NOINTEGRALHEIGHT | WS_CHILD | WS_VISIBLE | WS_HSCROLL | WS_VSCROLL;
-
-	if (!m_wndOutputBuild.Create(dwStyle, rectDummy, &m_wndTabs, 2) ||
-		!m_wndOutputDebug.Create(dwStyle, rectDummy, &m_wndTabs, 3) ||
-		!m_wndOutputFind.Create(dwStyle, rectDummy, &m_wndTabs, 4))
-	{
-		TRACE0("未能创建输出窗口\n");
-		return -1;      // 未能创建
-	}
-
-	m_wndOutputBuild.SetFont(&m_Font);
-	m_wndOutputDebug.SetFont(&m_Font);
-	m_wndOutputFind.SetFont(&m_Font);
-
-	CString strTabName;
-	BOOL bNameValid;
-
-	// 将列表窗口附加到选项卡:
-	bNameValid = strTabName.LoadString(IDS_BUILD_TAB);
-	ASSERT(bNameValid);
-	m_wndTabs.AddTab(&m_wndOutputBuild, strTabName, (UINT)0);
-	bNameValid = strTabName.LoadString(IDS_DEBUG_TAB);
-	ASSERT(bNameValid);
-	m_wndTabs.AddTab(&m_wndOutputDebug, strTabName, (UINT)1);
-	bNameValid = strTabName.LoadString(IDS_FIND_TAB);
-	ASSERT(bNameValid);
-	m_wndTabs.AddTab(&m_wndOutputFind, strTabName, (UINT)2);
-
-	// 使用一些虚拟文本填写输出选项卡(无需复杂数据)
-	FillBuildWindow();
-	FillDebugWindow();
-	FillFindWindow();
-
-	return 0;
-}
-
-void COutputWnd::OnSize(UINT nType, int cx, int cy)
-{
-	CDockablePane::OnSize(nType, cx, cy);
-
-	// 选项卡控件应覆盖整个工作区:
-	m_wndTabs.SetWindowPos (NULL, -1, -1, cx, cy, SWP_NOMOVE | SWP_NOACTIVATE | SWP_NOZORDER);
-}
-
-void COutputWnd::AdjustHorzScroll(CListBox& wndListBox)
-{
-	CClientDC dc(this);
-	CFont* pOldFont = dc.SelectObject(&m_Font);
-
-	int cxExtentMax = 0;
-
-	for (int i = 0; i < wndListBox.GetCount(); i ++)
-	{
-		CString strItem;
-		wndListBox.GetText(i, strItem);
-
-		cxExtentMax = max(cxExtentMax, dc.GetTextExtent(strItem).cx);
-	}
-
-	wndListBox.SetHorizontalExtent(cxExtentMax);
-	dc.SelectObject(pOldFont);
-}
-
-void COutputWnd::FillBuildWindow()
-{
-	m_wndOutputBuild.AddString(_T("生成输出正显示在此处。"));
-	m_wndOutputBuild.AddString(_T("输出正显示在列表视图的行中"));
-	m_wndOutputBuild.AddString(_T("但您可以根据需要更改其显示方式..."));
-}
-
-void COutputWnd::FillDebugWindow()
-{
-	m_wndOutputDebug.AddString(_T("调试输出正显示在此处。"));
-	m_wndOutputDebug.AddString(_T("输出正显示在列表视图的行中"));
-	m_wndOutputDebug.AddString(_T("但您可以根据需要更改其显示方式..."));
-}
-
-void COutputWnd::FillFindWindow()
-{
-	m_wndOutputFind.AddString(_T("查找输出正显示在此处。"));
-	m_wndOutputFind.AddString(_T("输出正显示在列表视图的行中"));
-	m_wndOutputFind.AddString(_T("但您可以根据需要更改其显示方式..."));
-}
-
-/////////////////////////////////////////////////////////////////////////////
-// COutputList1
-
-COutputList::COutputList()
-{
-}
-
-COutputList::~COutputList()
-{
-}
-
-BEGIN_MESSAGE_MAP(COutputList, CListBox)
-	ON_WM_CONTEXTMENU()
-	ON_COMMAND(ID_EDIT_COPY, OnEditCopy)
-	ON_COMMAND(ID_EDIT_CLEAR, OnEditClear)
-	ON_COMMAND(ID_VIEW_OUTPUTWND, OnViewOutput)
-	ON_WM_WINDOWPOSCHANGING()
-END_MESSAGE_MAP()
-/////////////////////////////////////////////////////////////////////////////
-// COutputList 消息处理程序
-
-void COutputList::OnContextMenu(CWnd* /*pWnd*/, CPoint point)
-{
-	CMenu menu;
-	menu.LoadMenu(IDR_OUTPUT_POPUP);
-
-	CMenu* pSumMenu = menu.GetSubMenu(0);
-
-	if (AfxGetMainWnd()->IsKindOf(RUNTIME_CLASS(CMDIFrameWndEx)))
-	{
-		CMFCPopupMenu* pPopupMenu = new CMFCPopupMenu;
-
-		if (!pPopupMenu->Create(this, point.x, point.y, (HMENU)pSumMenu->m_hMenu, FALSE, TRUE))
-			return;
-
-		((CMDIFrameWndEx*)AfxGetMainWnd())->OnShowPopupMenu(pPopupMenu);
-		UpdateDialogControls(this, FALSE);
-	}
-
-	SetFocus();
-}
-
-void COutputList::OnEditCopy()
-{
-	MessageBox(_T("复制输出"));
-}
-
-void COutputList::OnEditClear()
-{
-	MessageBox(_T("清除输出"));
-}
-
-void COutputList::OnViewOutput()
-{
-	CDockablePane* pParentBar = DYNAMIC_DOWNCAST(CDockablePane, GetOwner());
-	CMDIFrameWndEx* pMainFrame = DYNAMIC_DOWNCAST(CMDIFrameWndEx, GetTopLevelFrame());
-
-	if (pMainFrame != NULL && pParentBar != NULL)
-	{
-		pMainFrame->SetFocus();
-		pMainFrame->ShowPane(pParentBar, FALSE, FALSE, FALSE);
-		pMainFrame->RecalcLayout();
-
-	}
-}
-
-

+ 0 - 69
Source/OGCAssistTool/OGCAssistTool/OutputWnd.h

@@ -1,69 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-#pragma once
-
-/////////////////////////////////////////////////////////////////////////////
-// COutputList 窗口
-
-class COutputList : public CListBox
-{
-// 构造
-public:
-	COutputList();
-
-// 实现
-public:
-	virtual ~COutputList();
-
-protected:
-	afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
-	afx_msg void OnEditCopy();
-	afx_msg void OnEditClear();
-	afx_msg void OnViewOutput();
-
-	DECLARE_MESSAGE_MAP()
-};
-
-class COutputWnd : public CDockablePane
-{
-// 构造
-public:
-	COutputWnd();
-
-// 属性
-protected:
-	CFont m_Font;
-
-	CMFCTabCtrl	m_wndTabs;
-
-	COutputList m_wndOutputBuild;
-	COutputList m_wndOutputDebug;
-	COutputList m_wndOutputFind;
-
-protected:
-	void FillBuildWindow();
-	void FillDebugWindow();
-	void FillFindWindow();
-
-	void AdjustHorzScroll(CListBox& wndListBox);
-
-// 实现
-public:
-	virtual ~COutputWnd();
-
-protected:
-	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
-	afx_msg void OnSize(UINT nType, int cx, int cy);
-
-	DECLARE_MESSAGE_MAP()
-};
-

+ 0 - 279
Source/OGCAssistTool/OGCAssistTool/PropertiesWnd.cpp

@@ -1,279 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-#include "stdafx.h"
-
-#include "PropertiesWnd.h"
-#include "Resource.h"
-#include "MainFrm.h"
-#include "OGCAssistTool.h"
-
-#ifdef _DEBUG
-#undef THIS_FILE
-static char THIS_FILE[]=__FILE__;
-#define new DEBUG_NEW
-#endif
-
-/////////////////////////////////////////////////////////////////////////////
-// CResourceViewBar
-
-CPropertiesWnd::CPropertiesWnd()
-{
-}
-
-CPropertiesWnd::~CPropertiesWnd()
-{
-}
-
-BEGIN_MESSAGE_MAP(CPropertiesWnd, CDockablePane)
-	ON_WM_CREATE()
-	ON_WM_SIZE()
-	ON_COMMAND(ID_EXPAND_ALL, OnExpandAllProperties)
-	ON_UPDATE_COMMAND_UI(ID_EXPAND_ALL, OnUpdateExpandAllProperties)
-	ON_COMMAND(ID_SORTPROPERTIES, OnSortProperties)
-	ON_UPDATE_COMMAND_UI(ID_SORTPROPERTIES, OnUpdateSortProperties)
-	ON_COMMAND(ID_PROPERTIES1, OnProperties1)
-	ON_UPDATE_COMMAND_UI(ID_PROPERTIES1, OnUpdateProperties1)
-	ON_COMMAND(ID_PROPERTIES2, OnProperties2)
-	ON_UPDATE_COMMAND_UI(ID_PROPERTIES2, OnUpdateProperties2)
-	ON_WM_SETFOCUS()
-	ON_WM_SETTINGCHANGE()
-END_MESSAGE_MAP()
-
-/////////////////////////////////////////////////////////////////////////////
-// CResourceViewBar 消息处理程序
-
-void CPropertiesWnd::AdjustLayout()
-{
-	if (GetSafeHwnd() == NULL)
-	{
-		return;
-	}
-
-	CRect rectClient,rectCombo;
-	GetClientRect(rectClient);
-
-	m_wndObjectCombo.GetWindowRect(&rectCombo);
-
-	int cyCmb = rectCombo.Size().cy;
-	int cyTlb = m_wndToolBar.CalcFixedLayout(FALSE, TRUE).cy;
-
-	m_wndObjectCombo.SetWindowPos(NULL, rectClient.left, rectClient.top, rectClient.Width(), 200, SWP_NOACTIVATE | SWP_NOZORDER);
-	m_wndToolBar.SetWindowPos(NULL, rectClient.left, rectClient.top + cyCmb, rectClient.Width(), cyTlb, SWP_NOACTIVATE | SWP_NOZORDER);
-	m_wndPropList.SetWindowPos(NULL, rectClient.left, rectClient.top + cyCmb + cyTlb, rectClient.Width(), rectClient.Height() -(cyCmb+cyTlb), SWP_NOACTIVATE | SWP_NOZORDER);
-}
-
-int CPropertiesWnd::OnCreate(LPCREATESTRUCT lpCreateStruct)
-{
-	if (CDockablePane::OnCreate(lpCreateStruct) == -1)
-		return -1;
-
-	CRect rectDummy;
-	rectDummy.SetRectEmpty();
-
-	// 创建组合:
-	const DWORD dwViewStyle = WS_CHILD | WS_VISIBLE | CBS_DROPDOWNLIST | WS_BORDER | CBS_SORT | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
-
-	if (!m_wndObjectCombo.Create(dwViewStyle, rectDummy, this, 1))
-	{
-		TRACE0("未能创建属性组合 \n");
-		return -1;      // 未能创建
-	}
-
-	m_wndObjectCombo.AddString(_T("应用程序"));
-	m_wndObjectCombo.AddString(_T("属性窗口"));
-	m_wndObjectCombo.SetFont(CFont::FromHandle((HFONT) GetStockObject(DEFAULT_GUI_FONT)));
-	m_wndObjectCombo.SetCurSel(0);
-
-	if (!m_wndPropList.Create(WS_VISIBLE | WS_CHILD, rectDummy, this, 2))
-	{
-		TRACE0("未能创建属性网格\n");
-		return -1;      // 未能创建
-	}
-
-	InitPropList();
-
-	m_wndToolBar.Create(this, AFX_DEFAULT_TOOLBAR_STYLE, IDR_PROPERTIES);
-	m_wndToolBar.LoadToolBar(IDR_PROPERTIES, 0, 0, TRUE /* 已锁定*/);
-	m_wndToolBar.CleanUpLockedImages();
-	m_wndToolBar.LoadBitmap(theApp.m_bHiColorIcons ? IDB_PROPERTIES_HC : IDR_PROPERTIES, 0, 0, TRUE /* 锁定*/);
-
-	m_wndToolBar.SetPaneStyle(m_wndToolBar.GetPaneStyle() | CBRS_TOOLTIPS | CBRS_FLYBY);
-	m_wndToolBar.SetPaneStyle(m_wndToolBar.GetPaneStyle() & ~(CBRS_GRIPPER | CBRS_SIZE_DYNAMIC | CBRS_BORDER_TOP | CBRS_BORDER_BOTTOM | CBRS_BORDER_LEFT | CBRS_BORDER_RIGHT));
-	m_wndToolBar.SetOwner(this);
-
-	// 所有命令将通过此控件路由,而不是通过主框架路由:
-	m_wndToolBar.SetRouteCommandsViaFrame(FALSE);
-
-	AdjustLayout();
-	return 0;
-}
-
-void CPropertiesWnd::OnSize(UINT nType, int cx, int cy)
-{
-	CDockablePane::OnSize(nType, cx, cy);
-	AdjustLayout();
-}
-
-void CPropertiesWnd::OnExpandAllProperties()
-{
-	m_wndPropList.ExpandAll();
-}
-
-void CPropertiesWnd::OnUpdateExpandAllProperties(CCmdUI* pCmdUI)
-{
-}
-
-void CPropertiesWnd::OnSortProperties()
-{
-	m_wndPropList.SetAlphabeticMode(!m_wndPropList.IsAlphabeticMode());
-}
-
-void CPropertiesWnd::OnUpdateSortProperties(CCmdUI* pCmdUI)
-{
-	pCmdUI->SetCheck(m_wndPropList.IsAlphabeticMode());
-}
-
-void CPropertiesWnd::OnProperties1()
-{
-	// TODO: 在此处添加命令处理程序代码
-}
-
-void CPropertiesWnd::OnUpdateProperties1(CCmdUI* /*pCmdUI*/)
-{
-	// TODO: 在此处添加命令更新 UI 处理程序代码
-}
-
-void CPropertiesWnd::OnProperties2()
-{
-	// TODO: 在此处添加命令处理程序代码
-}
-
-void CPropertiesWnd::OnUpdateProperties2(CCmdUI* /*pCmdUI*/)
-{
-	// TODO: 在此处添加命令更新 UI 处理程序代码
-}
-
-void CPropertiesWnd::InitPropList()
-{
-	SetPropListFont();
-
-	m_wndPropList.EnableHeaderCtrl(FALSE);
-	m_wndPropList.EnableDescriptionArea();
-	m_wndPropList.SetVSDotNetLook();
-	m_wndPropList.MarkModifiedProperties();
-
-	CMFCPropertyGridProperty* pGroup1 = new CMFCPropertyGridProperty(_T("外观"));
-
-	pGroup1->AddSubItem(new CMFCPropertyGridProperty(_T("三维外观"), (_variant_t) false, _T("指定窗口的字体不使用粗体,并且控件将使用三维边框")));
-
-	CMFCPropertyGridProperty* pProp = new CMFCPropertyGridProperty(_T("边框"), _T("Dialog Frame"), _T("其中之一: 无(None)、细(Thin)、可调整大小(Resizable)、对话框外框(Dialog Frame)"));
-	pProp->AddOption(_T("None"));
-	pProp->AddOption(_T("Thin"));
-	pProp->AddOption(_T("Resizable"));
-	pProp->AddOption(_T("Dialog Frame"));
-	pProp->AllowEdit(FALSE);
-
-	pGroup1->AddSubItem(pProp);
-	pGroup1->AddSubItem(new CMFCPropertyGridProperty(_T("标题"), (_variant_t) _T("关于"), _T("指定窗口标题栏中显示的文本")));
-
-	m_wndPropList.AddProperty(pGroup1);
-
-	CMFCPropertyGridProperty* pSize = new CMFCPropertyGridProperty(_T("窗口大小"), 0, TRUE);
-
-	pProp = new CMFCPropertyGridProperty(_T("高度"), (_variant_t) 250l, _T("指定窗口的高度"));
-	pProp->EnableSpinControl(TRUE, 50, 300);
-	pSize->AddSubItem(pProp);
-
-	pProp = new CMFCPropertyGridProperty( _T("宽度"), (_variant_t) 150l, _T("指定窗口的宽度"));
-	pProp->EnableSpinControl(TRUE, 50, 200);
-	pSize->AddSubItem(pProp);
-
-	m_wndPropList.AddProperty(pSize);
-
-	CMFCPropertyGridProperty* pGroup2 = new CMFCPropertyGridProperty(_T("字体"));
-
-	LOGFONT lf;
-	CFont* font = CFont::FromHandle((HFONT) GetStockObject(DEFAULT_GUI_FONT));
-	font->GetLogFont(&lf);
-
-	lstrcpy(lf.lfFaceName, _T("宋体, Arial"));
-
-	pGroup2->AddSubItem(new CMFCPropertyGridFontProperty(_T("字体"), lf, CF_EFFECTS | CF_SCREENFONTS, _T("指定窗口的默认字体")));
-	pGroup2->AddSubItem(new CMFCPropertyGridProperty(_T("使用系统字体"), (_variant_t) true, _T("指定窗口使用“MS Shell Dlg”字体")));
-
-	m_wndPropList.AddProperty(pGroup2);
-
-	CMFCPropertyGridProperty* pGroup3 = new CMFCPropertyGridProperty(_T("杂项"));
-	pProp = new CMFCPropertyGridProperty(_T("(名称)"), _T("应用程序"));
-	pProp->Enable(FALSE);
-	pGroup3->AddSubItem(pProp);
-
-	CMFCPropertyGridColorProperty* pColorProp = new CMFCPropertyGridColorProperty(_T("窗口颜色"), RGB(210, 192, 254), NULL, _T("指定默认的窗口颜色"));
-	pColorProp->EnableOtherButton(_T("其他..."));
-	pColorProp->EnableAutomaticButton(_T("默认"), ::GetSysColor(COLOR_3DFACE));
-	pGroup3->AddSubItem(pColorProp);
-
-	static TCHAR BASED_CODE szFilter[] = _T("图标文件(*.ico)|*.ico|所有文件(*.*)|*.*||");
-	pGroup3->AddSubItem(new CMFCPropertyGridFileProperty(_T("图标"), TRUE, _T(""), _T("ico"), 0, szFilter, _T("指定窗口图标")));
-
-	pGroup3->AddSubItem(new CMFCPropertyGridFileProperty(_T("文件夹"), _T("c:\\")));
-
-	m_wndPropList.AddProperty(pGroup3);
-
-	CMFCPropertyGridProperty* pGroup4 = new CMFCPropertyGridProperty(_T("层次结构"));
-
-	CMFCPropertyGridProperty* pGroup41 = new CMFCPropertyGridProperty(_T("第一个子级"));
-	pGroup4->AddSubItem(pGroup41);
-
-	CMFCPropertyGridProperty* pGroup411 = new CMFCPropertyGridProperty(_T("第二个子级"));
-	pGroup41->AddSubItem(pGroup411);
-
-	pGroup411->AddSubItem(new CMFCPropertyGridProperty(_T("项 1"), (_variant_t) _T("值 1"), _T("此为说明")));
-	pGroup411->AddSubItem(new CMFCPropertyGridProperty(_T("项 2"), (_variant_t) _T("值 2"), _T("此为说明")));
-	pGroup411->AddSubItem(new CMFCPropertyGridProperty(_T("项 3"), (_variant_t) _T("值 3"), _T("此为说明")));
-
-	pGroup4->Expand(FALSE);
-	m_wndPropList.AddProperty(pGroup4);
-}
-
-void CPropertiesWnd::OnSetFocus(CWnd* pOldWnd)
-{
-	CDockablePane::OnSetFocus(pOldWnd);
-	m_wndPropList.SetFocus();
-}
-
-void CPropertiesWnd::OnSettingChange(UINT uFlags, LPCTSTR lpszSection)
-{
-	CDockablePane::OnSettingChange(uFlags, lpszSection);
-	SetPropListFont();
-}
-
-void CPropertiesWnd::SetPropListFont()
-{
-	::DeleteObject(m_fntPropList.Detach());
-
-	LOGFONT lf;
-	afxGlobalData.fontRegular.GetLogFont(&lf);
-
-	NONCLIENTMETRICS info;
-	info.cbSize = sizeof(info);
-
-	afxGlobalData.GetNonClientMetrics(info);
-
-	lf.lfHeight = info.lfMenuFont.lfHeight;
-	lf.lfWeight = info.lfMenuFont.lfWeight;
-	lf.lfItalic = info.lfMenuFont.lfItalic;
-
-	m_fntPropList.CreateFontIndirect(&lf);
-
-	m_wndPropList.SetFont(&m_fntPropList);
-}

+ 0 - 70
Source/OGCAssistTool/OGCAssistTool/PropertiesWnd.h

@@ -1,70 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-#pragma once
-
-class CPropertiesToolBar : public CMFCToolBar
-{
-public:
-	virtual void OnUpdateCmdUI(CFrameWnd* /*pTarget*/, BOOL bDisableIfNoHndler)
-	{
-		CMFCToolBar::OnUpdateCmdUI((CFrameWnd*) GetOwner(), bDisableIfNoHndler);
-	}
-
-	virtual BOOL AllowShowOnList() const { return FALSE; }
-};
-
-class CPropertiesWnd : public CDockablePane
-{
-// 构造
-public:
-	CPropertiesWnd();
-
-	void AdjustLayout();
-
-// 属性
-public:
-	void SetVSDotNetLook(BOOL bSet)
-	{
-		m_wndPropList.SetVSDotNetLook(bSet);
-		m_wndPropList.SetGroupNameFullWidth(bSet);
-	}
-
-protected:
-	CFont m_fntPropList;
-	CComboBox m_wndObjectCombo;
-	CPropertiesToolBar m_wndToolBar;
-	CMFCPropertyGridCtrl m_wndPropList;
-
-// 实现
-public:
-	virtual ~CPropertiesWnd();
-
-protected:
-	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
-	afx_msg void OnSize(UINT nType, int cx, int cy);
-	afx_msg void OnExpandAllProperties();
-	afx_msg void OnUpdateExpandAllProperties(CCmdUI* pCmdUI);
-	afx_msg void OnSortProperties();
-	afx_msg void OnUpdateSortProperties(CCmdUI* pCmdUI);
-	afx_msg void OnProperties1();
-	afx_msg void OnUpdateProperties1(CCmdUI* pCmdUI);
-	afx_msg void OnProperties2();
-	afx_msg void OnUpdateProperties2(CCmdUI* pCmdUI);
-	afx_msg void OnSetFocus(CWnd* pOldWnd);
-	afx_msg void OnSettingChange(UINT uFlags, LPCTSTR lpszSection);
-
-	DECLARE_MESSAGE_MAP()
-
-	void InitPropList();
-	void SetPropListFont();
-};
-

+ 3 - 21
Source/OGCAssistTool/OGCAssistTool/ReadMe.txt

@@ -25,31 +25,13 @@ res\OGCAssistTool.ico
 res\OGCAssistTool.rc2
     此文件包含不是由 Microsoft Visual C++ 编辑的资源。您应该将不可由资源编辑器编辑的所有资源放在此文件中。
 
-/////////////////////////////////////////////////////////////////////////////
-
-对于主框架窗口:
-    项目包含标准 MFC 界面。
 
-MainFrm.h, MainFrm.cpp
-    这些文件包含框架类 CMainFrame,该类派生自
-    CFrameWnd 并控制所有 SDI 框架功能。
-
-res\Toolbar.bmp
-    此位图文件用于为工具栏创建平铺图像。
-    初始工具栏和状态栏是在 CMainFrame 类中构造的。使用资源编辑器编辑此工具栏位图,并更新 OGCAssistTool.rc 中的 IDR_MAINFRAME TOOLBAR 数组以添加工具栏按钮。
 /////////////////////////////////////////////////////////////////////////////
 
-应用程序向导创建一个文档类型和一个视图:
-
-OGCAssistToolDoc.h,OGCAssistToolDoc.cpp - 文档
-    这些文件包含 COGCAssistToolDoc 类。编辑这些文件可以添加特殊文档数据并可实现文件保存和加载(通过 COGCAssistToolDoc::Serialize)。
-
-OGCAssistToolView.h,OGCAssistToolView.cpp - 文档的视图
-    这些文件包含 COGCAssistToolView 类。
-    COGCAssistToolView 对象用于查看 COGCAssistToolDoc 对象。
-
-
+应用程序向导创建一个对话框类:
 
+OGCAssistToolDlg.h,OGCAssistToolDlg.cpp - 对话框
+    这些文件包含 COGCAssistToolDlg 类。该类定义应用程序主对话框的行为。该对话框的模板位于 OGCAssistTool.rc 中,该文件可以在 Microsoft Visual C++ 中进行编辑。
 
 
 /////////////////////////////////////////////////////////////////////////////

+ 0 - 51
Source/OGCAssistTool/OGCAssistTool/ViewTree.cpp

@@ -1,51 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-#include "stdafx.h"
-#include "ViewTree.h"
-
-#ifdef _DEBUG
-#define new DEBUG_NEW
-#undef THIS_FILE
-static char THIS_FILE[] = __FILE__;
-#endif
-
-/////////////////////////////////////////////////////////////////////////////
-// CViewTree
-
-CViewTree::CViewTree()
-{
-}
-
-CViewTree::~CViewTree()
-{
-}
-
-BEGIN_MESSAGE_MAP(CViewTree, CTreeCtrl)
-END_MESSAGE_MAP()
-
-/////////////////////////////////////////////////////////////////////////////
-// CViewTree 消息处理程序
-
-BOOL CViewTree::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult)
-{
-	BOOL bRes = CTreeCtrl::OnNotify(wParam, lParam, pResult);
-
-	NMHDR* pNMHDR = (NMHDR*)lParam;
-	ASSERT(pNMHDR != NULL);
-
-	if (pNMHDR && pNMHDR->code == TTN_SHOW && GetToolTips() != NULL)
-	{
-		GetToolTips()->SetWindowPos(&wndTop, -1, -1, -1, -1, SWP_NOMOVE | SWP_NOACTIVATE | SWP_NOSIZE);
-	}
-
-	return bRes;
-}

+ 0 - 33
Source/OGCAssistTool/OGCAssistTool/ViewTree.h

@@ -1,33 +0,0 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
-
-#pragma once
-
-/////////////////////////////////////////////////////////////////////////////
-// CViewTree 窗口
-
-class CViewTree : public CTreeCtrl
-{
-// 构造
-public:
-	CViewTree();
-
-// 重写
-protected:
-	virtual BOOL OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult);
-
-// 实现
-public:
-	virtual ~CViewTree();
-
-protected:
-	DECLARE_MESSAGE_MAP()
-};

BIN
Source/OGCAssistTool/OGCAssistTool/res/OGCAssistTool.ico


BIN
Source/OGCAssistTool/OGCAssistTool/res/OGCAssistToolDoc.ico


BIN
Source/OGCAssistTool/OGCAssistTool/res/Toolbar.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/Toolbar256.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/buttons.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/class_view.ico


BIN
Source/OGCAssistTool/OGCAssistTool/res/class_view_hc.ico


BIN
Source/OGCAssistTool/OGCAssistTool/res/classview.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/classview_hc.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/explorer.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/explorer_hc.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/file_view.ico


BIN
Source/OGCAssistTool/OGCAssistTool/res/file_view_hc.ico


BIN
Source/OGCAssistTool/OGCAssistTool/res/filelarge.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/filesmall.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/fileview.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/fileview_hc.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/info.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/main.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/menuimages.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/menuimages_hc.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/nav_large.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/nav_large_hc.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/output_wnd.ico


BIN
Source/OGCAssistTool/OGCAssistTool/res/output_wnd_hc.ico


BIN
Source/OGCAssistTool/OGCAssistTool/res/pages.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/pages_hc.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/pages_small.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/pages_small_hc.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/properties.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/properties_hc.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/properties_wnd.ico


BIN
Source/OGCAssistTool/OGCAssistTool/res/properties_wnd_hc.ico


BIN
Source/OGCAssistTool/OGCAssistTool/res/sort.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/sort_hc.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/writelarge.bmp


BIN
Source/OGCAssistTool/OGCAssistTool/res/writesmall.bmp


+ 7 - 137
Source/OGCAssistTool/OGCAssistTool/resource.h

@@ -2,155 +2,25 @@
 // Microsoft Visual C++ generated include file.
 // Used by OGCAssistTool.rc
 //
+#define IDM_ABOUTBOX                    0x0010
 #define IDD_ABOUTBOX                    100
-#define IDP_OLE_INIT_FAILED             100
-#define IDB_WRITESMALL                  110
-#define IDB_WRITELARGE                  111
-#define IDB_MAIN                        112
-#define IDB_BUTTONS                     113
-#define IDB_FILELARGE                   114
-#define IDB_FILESMALL                   115
-#define IDR_POPUP_EDIT                  119
-#define ID_STATUSBAR_PANE1              120
-#define ID_STATUSBAR_PANE2              121
-#define IDS_STATUS_PANE1                122
-#define IDS_STATUS_PANE2                123
+#define IDS_ABOUTBOX                    101
+#define IDD_OGCASSISTTOOL_DIALOG        102
 #define IDR_MAINFRAME                   128
-#define IDR_MAINFRAME_256               129
-#define IDR_OGCAssistToolTYPE           130
-#define ID_WINDOW_MANAGER               131
-#define IDS_WINDOWS_MANAGER             132
-#define ID_VIEW_FILEVIEW                133
-#define ID_VIEW_CLASSVIEW               134
-#define ID_PROPERTIES                   135
-#define ID_OPEN                         136
-#define ID_OPEN_WITH                    137
-#define ID_DUMMY_COMPILE                138
-#define ID_CLASS_ADD_MEMBER_FUNCTION    139
-#define ID_CLASS_ADD_MEMBER_VARIABLE    140
-#define ID_CLASS_DEFINITION             141
-#define ID_CLASS_PROPERTIES             142
-#define ID_NEW_FOLDER                   143
-#define ID_SORT_MENU                    144
-#define ID_SORTING_GROUPBYTYPE          145
-#define ID_SORTING_SORTALPHABETIC       146
-#define ID_SORTING_SORTBYTYPE           147
-#define ID_SORTING_SORTBYACCESS         148
-#define ID_VIEW_OUTPUTWND               149
-#define ID_VIEW_PROPERTIESWND           150
-#define IDR_PASTE_MENU                  151
-#define ID_SORTPROPERTIES               151
-#define IDR_WINDOWS_MENU                152
-#define ID_PROPERTIES1                  152
-#define ID_PROPERTIES2                  153
-#define ID_EXPAND_ALL                   154
-#define IDS_FILE_VIEW                   155
-#define IDS_CLASS_VIEW                  156
-#define IDS_OUTPUT_WND                  157
-#define IDS_PROPERTIES_WND              158
-#define IDI_FILE_VIEW                   161
-#define IDI_FILE_VIEW_HC                162
-#define IDI_CLASS_VIEW                  163
-#define IDI_CLASS_VIEW_HC               164
-#define IDI_OUTPUT_WND                  165
-#define IDI_OUTPUT_WND_HC               166
-#define IDI_PROPERTIES_WND              167
-#define IDI_PROPERTIES_WND_HC           168
-#define IDR_EXPLORER                    169
-#define IDB_EXPLORER_24                 170
-#define IDR_SORT                        171
-#define IDB_SORT_24                     172
-#define IDR_POPUP_SORT                  173
-#define IDR_POPUP_EXPLORER              174
-#define IDB_FILE_VIEW                   175
-#define IDB_FILE_VIEW_24                176
-#define IDB_CLASS_VIEW                  177
-#define IDB_CLASS_VIEW_24               178
-#define IDR_MENU_IMAGES                 179
-#define IDB_MENU_IMAGES_24              180
-#define ID_TOOLS_MACRO                  181
-#define IDR_OUTPUT_POPUP                182
-#define IDR_PROPERTIES                  183
-#define IDB_PROPERTIES_HC               184
-#define ID_VIEW_NAVIGATION              185
-#define IDB_NAVIGATION_LARGE            186
-#define IDB_NAVIGATION_LARGE_HC         187
-#define IDB_PAGES                       188
-#define IDB_PAGES_HC                    189
-#define IDB_PAGES_SMALL                 190
-#define IDB_PAGES_SMALL_HC              191
-#define IDR_THEME_MENU                  200
-#define ID_SET_STYLE                    201
-#define ID_VIEW_APPLOOK_WIN_2000        210
-#define ID_VIEW_APPLOOK_OFF_XP          211
-#define ID_VIEW_APPLOOK_WIN_XP          212
-#define ID_VIEW_APPLOOK_OFF_2003        213
-#define ID_VIEW_APPLOOK_VS_2005         214
-#define ID_VIEW_APPLOOK_OFF_2007_BLUE   215
-#define ID_VIEW_APPLOOK_OFF_2007_BLACK  216
-#define ID_VIEW_APPLOOK_OFF_2007_SILVER 217
-#define ID_VIEW_APPLOOK_OFF_2007_AQUA   218
-#define ID_TOOLS_OPTIONS                220
-#define ID_VIEW_CAPTION_BAR             221
-#define IDB_INFO                        230
-#define IDS_CAPTION_BUTTON              231
-#define IDS_CAPTION_BUTTON_TIP          232
-#define IDS_CAPTION_TEXT                233
-#define IDS_CAPTION_IMAGE_TIP           234
-#define IDS_CAPTION_IMAGE_TEXT          235
-#define IDS_MYCALENDARS                 250
-#define IDS_CALENDAR                    251
-#define IDS_SHORTCUTS                   252
-#define IDS_FOLDERS                     253
-#define IDS_OUTLOOKBAR                  258
-#define IDS_RIBBON_FILE                 260
-#define IDS_RIBBON_NEW                  262
-#define IDS_RIBBON_OPEN                 263
-#define IDS_RIBBON_SAVE                 264
-#define IDS_RIBBON_SAVEAS               265
-#define IDS_RIBBON_PRINT                266
-#define IDS_RIBBON_PRINT_LABEL          267
-#define IDS_RIBBON_PRINT_QUICK          268
-#define IDS_RIBBON_PRINT_PREVIEW        269
-#define IDS_RIBBON_PRINT_SETUP          270
-#define IDS_RIBBON_CLOSE                271
-#define IDS_RIBBON_RECENT_DOCS          272
-#define IDS_RIBBON_EXIT                 273
-#define IDS_RIBBON_HOME                 274
-#define IDS_RIBBON_CLIPBOARD            275
-#define IDS_RIBBON_PASTE                276
-#define IDS_RIBBON_CUT                  277
-#define IDS_RIBBON_COPY                 278
-#define IDS_RIBBON_SELECTALL            279
-#define IDS_RIBBON_WINDOW               284
-#define IDS_RIBBON_WINDOWS              285
-#define IDS_RIBBON_STYLE                286
-#define IDS_RIBBON_STYLE_TIP            287
-#define IDS_RIBBON_STYLE_DESC           288
-#define IDS_RIBBON_STATUSBAR            289
-#define IDS_RIBBON_VIEW                 290
-#define IDS_RIBBON_CAPTIONBAR           295
-#define IDS_BUILD_TAB                   300
-#define IDS_DEBUG_TAB                   301
-#define IDS_FIND_TAB                    302
-#define IDS_EXPLORER                    305
-#define IDS_EDIT_MENU                   306
+#define IDB_LOGO                        130
 #define DLG_LOGIN                       310
-#define IDB_LOGO                        311
 #define EDIT_ACCOUNT                    1000
 #define EDIT_PASSWORD                   1001
-#define IDC_EDIT3                       1002
 #define EDIT_LINE                       1002
 #define CHECK_OFFLINE                   1003
-#define ID_WRITE_PASTEASHYPERLINK       32770
 
 // Next default values for new objects
 // 
 #ifdef APSTUDIO_INVOKED
 #ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE        312
+#define _APS_NEXT_RESOURCE_VALUE        129
 #define _APS_NEXT_COMMAND_VALUE         32771
-#define _APS_NEXT_CONTROL_VALUE         1004
-#define _APS_NEXT_SYMED_VALUE           310
+#define _APS_NEXT_CONTROL_VALUE         1000
+#define _APS_NEXT_SYMED_VALUE           101
 #endif
 #endif

+ 0 - 10
Source/OGCAssistTool/OGCAssistTool/stdafx.cpp

@@ -1,13 +1,3 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
 
 // stdafx.cpp : 只包括标准包含文件的源文件
 // OGCAssistTool.pch 将作为预编译头

+ 1 - 18
Source/OGCAssistTool/OGCAssistTool/stdafx.h

@@ -1,13 +1,3 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
 
 // stdafx.h : 标准系统包含文件的包含文件,
 // 或是经常使用但不常更改的
@@ -51,14 +41,7 @@
 
 
 
-// 禁用标题栏;
-#define DISABLE_CAPTIONBAR
-// 禁用快速启动栏;
-#define DISABLE_QUICKACCESS
-// 禁止启动创建文档;
-#define DISABLE_NEWFILE
-// 禁用OutLookBar
-#define DISABLE_OUTLOOKBAR
+
 
 
 

+ 0 - 10
Source/OGCAssistTool/OGCAssistTool/targetver.h

@@ -1,13 +1,3 @@
-// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 
-// ("Fluent UI"),该示例仅作为参考资料提供, 
-// 用以补充《Microsoft 基础类参考》和 
-// MFC C++ 库软件随附的相关电子文档。
-// 复制、使用或分发 Fluent UI 的许可条款是单独提供的。
-// 若要了解有关 Fluent UI 许可计划的详细信息,请访问  
-// http://msdn.microsoft.com/officeui。
-//
-// 版权所有 (C) Microsoft Corporation
-// 保留所有权利。
 
 #pragma once