text: // This is a part of the Microsoft Foundation Classes C++ library. 
  // Copyright (c) Microsoft Corporation.  All rights reserved.
  //
  // This source code is only intended as a supplement to the
  // Microsoft Foundation Classes Reference and related
  // electronic documentation provided with the library.
  // See these sources for detailed information regarding the
  // Microsoft Foundation Classes product.
  
  // CImage.cpp : Defines the class behaviors for the application.
  //
  
  #include "stdafx.h"
  #include "CImage.h"
  #include "MainFrm.h"
  
  
  #ifdef _DEBUG
  #define new DEBUG_NEW
  #undef THIS_FILE
  static char THIS_FILE[] = __FILE__;
  #endif
  
  
  // CCImageApp
  
  BEGIN_MESSAGE_MAP(CCImageApp, CWinApp)
  	ON_COMMAND(ID_APP_ABOUT, OnAppAbout)
  END_MESSAGE_MAP()
  
  
  // CCImageApp construction
  
  CCImageApp::CCImageApp()
  {
  	// TODO: add construction code here,
  	// Place all significant initialization in InitInstance
  }
  
  
  // The one and only CCImageApp object
  
  CCImageApp theApp;
  
  // CCImageApp initialization
  
  BOOL CCImageApp::InitInstance()
  {
  	CWinApp::InitInstance();
  
  	// Initialize OLE libraries
  	if (!AfxOleInit())
  	{
  		AfxMessageBox(IDP_OLE_INIT_FAILED);
  		return FALSE;
  	}
  	AfxEnableControlContainer();
  	// Standard initialization
  	// If you are not using these features and wish to reduce the size
  	// of your final executable, you should remove from the following
  	// the specific initialization routines you do not need
  	// Change the registry key under which our settings are stored
  	// TODO: You should modify this string to be something appropriate
  	// such as the name of your company or organization
  	SetRegistryKey(_T("Local AppWizard-Generated Applications"));
  	// To create the main window, this code creates a new frame window
  	// object and then sets it as the application's main window object
  	CMainFrame* pFrame = new CMainFrame;
  	m_pMainWnd = pFrame;
  	// create and load the frame with its resources
  	pFrame->LoadFrame(IDR_MAINFRAME,
  		WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE, NULL,
  		NULL);
  	// The one and only window has been initialized, so show and update it
  	pFrame->ShowWindow(SW_SHOW);
  	pFrame->UpdateWindow();
  	// call DragAcceptFiles only if there's a suffix
  	//  In an SDI app, this should occur after ProcessShellCommand
  	return TRUE;
  }
  
  
  // CCImageApp message handlers
  
  
  
  // CAboutDlg dialog used for App About
  
  class CAboutDlg : public CDialog
  {
  public:
  	CAboutDlg();
  
  // Dialog Data
  	enum { IDD = IDD_ABOUTBOX };
  
  protected:
  	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  
  // Implementation
  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()
  
  // App command to run the dialog
  void CCImageApp::OnAppAbout()
  {
  	CAboutDlg aboutDlg;
  	aboutDlg.DoModal();
  }
  
  
  
  // CCImageApp message handlers
  
  