Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//
// WRKSPOBJ.HPP
// Drawing objects: point, openpolyline, closepolyline, ellipse
//
// Copyright Microsoft 1998-
//
#ifndef __WRKSPOBJ_HPP_
#define __WRKSPOBJ_HPP_
#include "mcshelp.h"
void AddNewWorkspace(WorkspaceObj * pWorkspaceObj, BOOL bForcedResend = FALSE); WorkspaceObj* RemoveWorkspace(WorkspaceObj * pWorkspaceObj); void RemoveObjectFromRequestHandleList(T126Obj * pObjRequest); BOOL RemoveObjectFromResendList(T126Obj * pObjRequest); void RemoveRemotePointer(MEMBER_ID nMemberID); void ResendAllObjects(void); BOOL IsThereAnythingInAnyWorkspace(void); BOOL IsWorkspaceListed(T126Obj * pWorkspaceObj); void SendWorkspaceRefreshPDU(BOOL bImtheRefresher); void TogleLockInAllWorkspaces(BOOL bLock, BOOL bResend = FALSE);
class BitmapObj;
class WorkspaceObj : public T126Obj {
public: WorkspaceObj ( void ); WorkspaceObj (WorkspaceCreatePDU * pworkspaceCreatePDU, BOOL bForcedResend); ~WorkspaceObj( void ); void WorkspaceEditObj ( WorkspaceEditPDU * pworkspaceEditPDU );
BOOL m_bWorkspaceReady;
void CreateWorkspaceCreatePDU(WorkspaceCreatePDU *); void CreateWorkspaceDeletePDU(WorkspaceDeletePDU *); void CreateWorkspaceEditPDU(WorkspaceEditPDU *); static UINT GetWorkspaceIdentifier(WorkspaceIdentifier *workspaceIdentifier); void GetWorkSpaceViewEditParam(PWorkspaceEditPDU_viewEdits pViewEdits); void GetWorkSpaceViewParam(PWorkspaceCreatePDU_viewParameters_Set_viewAttributes pViewAttributes);
//
// Workspace object list management
//
void AddTail(T126Obj * pObj); void AddHead(T126Obj * pObj){pObj->SetMyWorkspace(this); pObj->SetMyPosition(m_T126ObjectsInWorkspace.AddHead(pObj));} WBPOSITION GetTailPosition(void){return m_T126ObjectsInWorkspace.GetTailPosition();} WBPOSITION GetHeadPosition(void){return m_T126ObjectsInWorkspace.GetHeadPosition();} T126Obj* GetHead(void){return (T126Obj*)m_T126ObjectsInWorkspace.GetHead();} T126Obj* GetTail(void){return (T126Obj*)m_T126ObjectsInWorkspace.GetTail();} T126Obj* GetNextObject(WBPOSITION& pos){return (T126Obj*)m_T126ObjectsInWorkspace.GetNext(pos);} T126Obj* GetPreviousObject(WBPOSITION& pos){return (T126Obj*)m_T126ObjectsInWorkspace.GetPrevious(pos);} T126Obj* RemoveAt(WBPOSITION& pos){return (T126Obj*)m_T126ObjectsInWorkspace.RemoveAt(pos);} void RemoveT126Object(T126Obj *pObj); T126Obj* FindObjectInWorkspace(UINT objectHandle); BOOL IsObjectInWorkspace(T126Obj* pObjToFind); UINT EnumerateObjectsInWorkspace(void); BitmapObj * RectHitRemotePointer(LPRECT rect, int, WBPOSITION pos);
void SetBackGroundColor(COLORREF rgb);
//
// Base class overwrite
//
void Draw(HDC hDC = NULL, BOOL bForcedDraw = FALSE, BOOL bPrinting = FALSE){}; void UnDraw(){}; BOOL CheckReallyHit(LPCRECT pRectHit){return TRUE;};
BOOL HasFillColor(void){return FALSE;} void SetFillColor(COLORREF cr, BOOL isPresent){} BOOL GetFillColor(COLORREF * pcr) {return FALSE;} BOOL GetFillColor(RGBTRIPLE* prgb) {return FALSE;}
void SetPenColor(COLORREF cr, BOOL isPresent){} BOOL GetPenColor(COLORREF * pcr) {return FALSE;} BOOL GetPenColor(RGBTRIPLE * prgb) {return FALSE;}
void ChangedAnchorPoint(void){}; BOOL HasAnchorPointChanged(void){return FALSE;} void ChangedZOrder(void){}; BOOL HasZOrderChanged(void){return FALSE;} void ChangedViewState(void){m_dwChangedAttrib |= 0x00000001;} void ChangedUpatesEnabledState(void){m_dwChangedAttrib |= 0x00000002;} BOOL HasViewStateChanged(void){return (m_dwChangedAttrib & 0x00000001);} BOOL HasUpatesEnabledStateChanged(void){return (m_dwChangedAttrib & 0x00000002);} void ResetAttrib(void){m_dwChangedAttrib = 0;} void SetAllAttribs(void){m_dwChangedAttrib = 0x00000003;}; void ChangedPenThickness(void){}; BOOL GetUpdatesEnabled(void){return m_bUpdatesEnabled;} void SetUpdatesEnabled(BOOL bUpdatesEnabled){m_bUpdatesEnabled = bUpdatesEnabled; ChangedUpatesEnabledState();} void SetViewActionChoice(UINT action){m_viewActionChoice = action;} void SetViewHandle(UINT viewHandle){m_viewHandle = viewHandle;} void OnObjectEdit(void); void OnObjectDelete(void); void SendNewObjectToT126Apps(void); void GetEncodedCreatePDU(ASN1_BUF *pBuf);
protected: DWORD m_dwChangedAttrib; CWBOBLIST m_T126ObjectsInWorkspace; UINT m_appRosterInstance; BOOL m_bsynchronized; POINT m_workspaceSize; BOOL m_acceptKeyboardEvents; BOOL m_acceptPointingDeviceEvents; BOOL m_bUpdatesEnabled; ULONG m_viewHandle; RECT m_viewRegion; UINT m_viewActionChoice; COBLIST m_protectedPlaneAccessList;
#ifdef _DEBUG
RGBTRIPLE m_backgroundColor; BOOL m_bPreserve;
void GetWorkSpaceAttrib(PWorkspaceCreatePDU_workspaceAttributes pWorkspaceAttributes); void GetWorkSpacePlaneParam(PWorkspaceCreatePDU_planeParameters pPlaneParameters); #endif // 0
};
#endif // __WRKSPOBJ_HPP_
|