Click here to Skip to main content
13,767,341 members
Click here to Skip to main content

Stats

81.2K views
1.1K downloads
49 bookmarked
Posted 24 Nov 2008
Licenced CPOL

The SBJ MVC Framework - The Model, from Abstraction to Realization

, 20 Mar 2009
A Model-View-Controller Framework that integrates with the MFC Doc/View architecture
XmlMvc2090.dll
Shapes.exe
SbjCore2090.dll
Shapes
Data
res
buttons.bmp
filelarge.bmp
filesmall.bmp
filesmall.png
main.bmp
Shapes.ico
ShapesDoc.ico
Toolbar.bmp
Toolbar256.bmp
treeimages.bmp
vssver.scc
Write - Copy.png
Write.png
Write1.png
writelarge.bmp
writesmall - Copy.bmp
writesmall - Copy.png
writesmall.bmp
writesmall.png
Shapes.vcproj
XmlMvc
res
vssver.scc
XmlMvc.vcproj
SbjCore
Registry.H
res
bigcat.ico
main.bmp
properties.bmp
properties_hc.bmp
properties_wnd_hc.ico
vssver.scc
SbjCore.vcproj
CommonSettings.vsprops
CommonAppDebugSettings.vsprops
CommonAppReleaseSettings.vsprops
CommonDLLDebugSettings.vsprops
CommonDLLReleaseSettings.vsprops
//------------------------------------------------------------------------------
// $Workfile: DocEvents.h $
// $Header: /SbjDev/SbjCore/DocEvents.h 12    11/24/08 10:33a Steve $
//
//	Copyright � 2008 SbjCat
// All rights reserved.
//
//
// *** Authors ***
//	 Steve Johnson
//
// $Revision: 12 $
//
//-----------------------------------------------------------------------------

#pragma once 

#include "EventMgr.h"
#include "DocController.h"

namespace SbjCore
{
	namespace Mvc
	{
		namespace Doc
		{
			namespace Events
			{
				DECLARE_EVENT_ID(EVID_DOC_MODIFIED, {1365F110-8846-4CF9-99B9-7A0CAB37732B})
				struct DocModified : public SbjCore::EventMgr::Event
				{
					const bool bModified;
					
					DocModified(bool b) :
						Event(EVID_DOC_MODIFIED, false),
						bModified(b)
					{
						NotifyHandlers();
					}
				};

				DECLARE_EVENT_ID(EVID_FILE_NEW, {7276E2D0-8D8B-46f8-8C4D-5ABDC369A111})
				struct FileNew : public SbjCore::EventMgr::Event
				{
					const SbjCore::Mvc::Doc::Controller* pCtrlr;
					const HANDLE hItemRoot;

					FileNew(const SbjCore::Mvc::Doc::Controller* p, const HANDLE hItem) :
						Event(EVID_FILE_NEW, false),
						pCtrlr(p),
						hItemRoot(hItem)
					{
						NotifyHandlers();
					}
				};

				DECLARE_EVENT_ID(EVID_FILE_OPEN, {03A0599E-1C50-44F8-A881-0A273DF1B155})
				struct FileOpen : public SbjCore::EventMgr::Event
				{
					const SbjCore::Mvc::Doc::Controller* pCtrlr;
					const HANDLE hItemRoot;

					FileOpen(const SbjCore::Mvc::Doc::Controller* p, const HANDLE hItem) :
						Event(EVID_FILE_OPEN, false),
						pCtrlr(p),
						hItemRoot(hItem)
					{
						NotifyHandlers();
					}
				};

				DECLARE_EVENT_ID(EVID_FILE_SAVE, {BC38506B-BCDB-4081-AC25-073570F5A16C})
				struct FileSave : public SbjCore::EventMgr::Event 
				{
					FileSave() :
						Event(EVID_FILE_SAVE)
					{
					}
				};


			}
		}
	}
}



//*** Modification History ***
// $Log: /SbjDev/SbjCore/DocEvents.h $
// 
// 12    11/24/08 10:33a Steve
// Final changes before MVCChapt1 v2.0.1
// 
// 11    11/12/08 2:22p Steve
// Finished Generalization of Model  v2.0.1
// 
// 10    10/26/08 9:19a Steve
// 
// 9     10/24/08 9:03a Steve
// 
// 8     10/21/08 6:01p Steve
// 
// 7     10/21/08 1:58p Steve
// 
// 6     10/20/08 11:06a Steve
// Removed source parameter from Event and replaced with EventT data
// 
// 5     10/16/08 2:41a Steve
// Ready for publishing

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

SBJ
United States United States
No Biography provided

You may also be interested in...

Permalink | Advertise | Privacy | Cookies | Terms of Use | Mobile
Web01-2016 | 2.8.181116.1 | Last Updated 20 Mar 2009
Article Copyright 2008 by SBJ
Everything else Copyright © CodeProject, 1999-2018
Layout: fixed | fluid