home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-04-28 | 9.3 KB | 283 lines | [TEXT/MPCC] |
- //----------------------------------------------------------------------------------------
- // Frame protocol
- //----------------------------------------------------------------------------------------
-
- #ifndef _PROCESSMAP_
- #include "CPProcessMap.h"
- #endif
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::DisplayFrameAdded(Environment* ev, ODFrame* frame)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_DisplayFrameAdded
- EnteringMethod("\pCPProcessMap::AddDisplayFrame");
-
- fDisplayFrames.Add(frame);
- // Add new frame to list of current display frames.
-
- frame->SetDroppable(ev, kODTrue);
- // We always want drag and drop in parts.
- }
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::DisplayFrameConnected(Environment* ev, ODFrame* /*frame*/)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_DisplayFrameConnected
- EnteringMethod("\pCPProcessMap::DisplayFrameConnected");
-
- // // fDisplayFrames.Add(frame);
- // Don't need to add frame to list of current display frames because we already did
- // in InitPartFromStorage.
- }
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::DisplayFrameRemoved(Environment* ev, ODFrame* frame)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_DisplayFrameRemoved
- EnteringMethod("\pCPProcessMap::DisplayFrameRemoved");
-
- fSession->GetArbitrator(ev)->RelinquishFocusSet(ev, fFocusSet, frame);
-
- fDisplayFrames.Remove(frame);
- // This just removes the reference from our frame list.
- }
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::DisplayFrameClosed(Environment* ev, ODFrame* frame)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_DisplayFrameClosed
- EnteringMethod("\pCPProcessMap::DisplayFrameClosed");
-
- fSession->GetArbitrator(ev)->RelinquishFocusSet(ev, fFocusSet, frame);
-
- fDisplayFrames.Remove(frame);
- // This just removes the reference from our frame list.
- }
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::FrameShapeChanged(Environment* ev, ODFrame* frame)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_FrameShapeChanged
- EnteringMethod("\pCPProcessMap::FrameShapeChanged");
-
- frame->RequestFrameShape(ev, this->PrivGetFrameShape(ev, frame), kODNULL);
- this->PrivAdjustFacets(ev, frame);
- frame->Invalidate(ev, kODNULL, kODNULL);
- frame->InvalidateActiveBorder(ev);
- }
-
- //----------------------------------------------------------------------------------------
-
- ODShape* CPProcessMap::PrivGetFrameShape(Environment* ev, ODFrame* frame)
-
- // This is just to centralize the frame shape code. Do it any way
- // is best for your part.
-
- {
- ODShape* newFrameShape;
-
- if (frame->IsRoot(ev))
- newFrameShape = frame->GetFrameShape(ev, kODNULL);
- else
- newFrameShape = this->PrivGetUsedShape(ev, frame);
-
- return newFrameShape;
- }
-
- //----------------------------------------------------------------------------------------
-
- ODShape* CPProcessMap::PrivGetUsedShape(Environment* ev, ODFrame* frame)
-
- // This is just to centralize the frame shape code. Do it any way
- // is best for your part.
-
- {
- ODShape* frameShape = frame->GetFrameShape(ev, kODNULL);
- RgnHandle shapeRgn = frameShape->GetQDRegion(ev);
-
- frameShape->Release(ev);
-
- Rect rr = (*shapeRgn)->rgnBBox;
- short hh = rr.bottom - rr.top;
- short ww = rr.right - rr.left;
-
- fHorizontal = true;
- if ( hh > ww ) fHorizontal = false;
- ::SetRect(&rr, 0, 0, ww, hh);
- ::OpenRgn();
- ::FrameRect(&rr);
- ::CloseRgn(shapeRgn = ::NewRgn());
-
- ODShape* usedShape = frame->CreateShape(ev);
- usedShape->SetQDRegion(ev, shapeRgn);
-
- return usedShape;
- }
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::PrivAdjustFacets(Environment* ev, ODFrame* frame)
-
- // Given a frame, iterate through all of the facets and adjust them
- // according to the new frame.
-
- {
- ODShape* usedShape = this->PrivGetUsedShape(ev, frame);
- frame->ChangeUsedShape(ev, usedShape, kODNULL);
- usedShape->Release(ev);
-
- ODShape* frameShape = frame->GetFrameShape(ev, kODNULL);
- ODFrameFacetIterator* facets = frame->CreateFacetIterator(ev);
- for (ODFacet* facet = facets->First(ev);
- facets->IsNotComplete(ev);
- facet = facets->Next(ev) )
- {
- facet->ChangeActiveShape(ev, frameShape, kODNULL);
- }
- frameShape->Release(ev);
- }
-
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::AttachSourceFrame(Environment* ev, ODFrame* frame, ODFrame* sourceFrame)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_AttachSourceFrame
- EnteringMethod("\pCPProcessMap::AttachSourceFrame");
- ODUnused(frame);
- ODUnused(sourceFrame);
- }
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::ViewTypeChanged(Environment* ev, ODFrame* frame)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_ViewTypeChanged
- EnteringMethod("\pCPProcessMap::ViewTypeChanged");
- ODUnused(frame);
- }
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::PresentationChanged(Environment* ev, ODFrame* frame)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_PresentationChanged
- EnteringMethod("\pCPProcessMap::PresentationChanged");
- ODUnused(frame);
- }
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::SequenceChanged(Environment* ev, ODFrame* frame)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_SequenceChanged
- EnteringMethod("\pCPProcessMap::SequenceChanged");
- ODUnused(frame);
- }
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::WritePartInfo(Environment* ev, ODInfoType partInfo,
- ODStorageUnitView* storageUnitView)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_WritePartInfo
- EnteringMethod("\pCPProcessMap::WritePartInfo");
- ODUnused(partInfo);
- ODUnused(storageUnitView);
- }
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::ClonePartInfo(Environment *ev, ODDraftKey key,
- ODInfoType partInfo,
- ODStorageUnitView* storageUnitView,
- ODFrame* scopeFrame)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_ClonePartInfo
- EnteringMethod("\pCPProcessMap::ClonePartInfo");
- ODUnused(key);
- ODUnused(partInfo);
- ODUnused(storageUnitView);
- ODUnused(scopeFrame);
- }
-
- //----------------------------------------------------------------------------------------
-
- ODInfoType CPProcessMap::ReadPartInfo(Environment* ev, ODFrame* frame, ODStorageUnitView* storageUnitView)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_ReadPartInfo
- EnteringMethod("\pCPProcessMap::ReadPartInfo");
- ODUnused(frame);
- ODUnused(storageUnitView);
- return kODNULL;
- }
-
- //----------------------------------------------------------------------------------------
-
- ODFrame* CPProcessMap::RequestEmbeddedFrame(Environment* ev, ODFrame* containingFrame,
- ODFrame* baseFrame,
- ODShape* frameShape,
- ODPart* embedPart,
- ODTypeToken viewType,
- ODTypeToken presentation,
- ODBoolean isOverlaid)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_RequestEmbeddedFrame
- EnteringMethod("\pCPProcessMap::RequestEmbeddedFrame");
- ODUnused(containingFrame);
- ODUnused(baseFrame);
- ODUnused(frameShape);
- ODUnused(embedPart);
- ODUnused(viewType);
- ODUnused(presentation);
- ODUnused(isOverlaid);
- DebugStr("\pCPProcessMap::RequestEmbeddedFrame -- shouldn't be here.");
- return kODNULL;
- }
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::RemoveEmbeddedFrame(Environment* ev, ODFrame* embeddedFrame)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_RemoveEmbeddedFrame
- EnteringMethod("\pCPProcessMap::RemoveEmbeddedFrame");
- ODUnused(embeddedFrame);
- DebugStr("\pCPProcessMap::RemoveEmbeddedFrame -- shouldn't be here.");
- }
-
- //----------------------------------------------------------------------------------------
-
- ODShape* CPProcessMap::RequestFrameShape(Environment* ev, ODFrame* embeddedFrame, ODShape* frameShape)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_RequestFrameShape
- EnteringMethod("\pCPProcessMap::RequestFrameShape");
- ODUnused(embeddedFrame);
- ODUnused(frameShape);
- DebugStr("\pCPProcessMap::RequestFrameShape -- shouldn't be here.");
- return kODNULL;
- }
-
- //----------------------------------------------------------------------------------------
-
- void CPProcessMap::UsedShapeChanged(Environment* ev, ODFrame* embeddedFrame)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_UsedShapeChanged
- EnteringMethod("\pCPProcessMap::UsedShapeChanged");
- ODUnused(embeddedFrame);
- }
-
- //----------------------------------------------------------------------------------------
-
- ODShape* CPProcessMap::AdjustBorderShape(Environment* ev, ODFacet* embeddedFacet, ODShape* shape)
- {
- // CodeWarrior: Cmd-Click or Search:Find Definition • Explain_AdjustBorderShape
- EnteringMethod("\pCPProcessMap::AdjustBorderShape");
- ODUnused(embeddedFacet);
- return shape;
- }
-