scrvw.h

Go to the documentation of this file.
00001 // $Id: scrvw.h 1282 2006-06-09 09:46:49Z alex $
00002 /* @@tag:xara-cn@@ DO NOT MODIFY THIS LINE
00003 ================================XARAHEADERSTART===========================
00004  
00005                Xara LX, a vector drawing and manipulation program.
00006                     Copyright (C) 1993-2006 Xara Group Ltd.
00007        Copyright on certain contributions may be held in joint with their
00008               respective authors. See AUTHORS file for details.
00009 
00010 LICENSE TO USE AND MODIFY SOFTWARE
00011 ----------------------------------
00012 
00013 This file is part of Xara LX.
00014 
00015 Xara LX is free software; you can redistribute it and/or modify it
00016 under the terms of the GNU General Public License version 2 as published
00017 by the Free Software Foundation.
00018 
00019 Xara LX and its component source files are distributed in the hope
00020 that it will be useful, but WITHOUT ANY WARRANTY; without even the
00021 implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00022 See the GNU General Public License for more details.
00023 
00024 You should have received a copy of the GNU General Public License along
00025 with Xara LX (see the file GPL in the root directory of the
00026 distribution); if not, write to the Free Software Foundation, Inc., 51
00027 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
00028 
00029 
00030 ADDITIONAL RIGHTS
00031 -----------------
00032 
00033 Conditional upon your continuing compliance with the GNU General Public
00034 License described above, Xara Group Ltd grants to you certain additional
00035 rights. 
00036 
00037 The additional rights are to use, modify, and distribute the software
00038 together with the wxWidgets library, the wxXtra library, and the "CDraw"
00039 library and any other such library that any version of Xara LX relased
00040 by Xara Group Ltd requires in order to compile and execute, including
00041 the static linking of that library to XaraLX. In the case of the
00042 "CDraw" library, you may satisfy obligation under the GNU General Public
00043 License to provide source code by providing a binary copy of the library
00044 concerned and a copy of the license accompanying it.
00045 
00046 Nothing in this section restricts any of the rights you have under
00047 the GNU General Public License.
00048 
00049 
00050 SCOPE OF LICENSE
00051 ----------------
00052 
00053 This license applies to this program (XaraLX) and its constituent source
00054 files only, and does not necessarily apply to other Xara products which may
00055 in part share the same code base, and are subject to their own licensing
00056 terms.
00057 
00058 This license does not apply to files in the wxXtra directory, which
00059 are built into a separate library, and are subject to the wxWindows
00060 license contained within that directory in the file "WXXTRA-LICENSE".
00061 
00062 This license does not apply to the binary libraries (if any) within
00063 the "libs" directory, which are subject to a separate license contained
00064 within that directory in the file "LIBS-LICENSE".
00065 
00066 
00067 ARRANGEMENTS FOR CONTRIBUTION OF MODIFICATIONS
00068 ----------------------------------------------
00069 
00070 Subject to the terms of the GNU Public License (see above), you are
00071 free to do whatever you like with your modifications. However, you may
00072 (at your option) wish contribute them to Xara's source tree. You can
00073 find details of how to do this at:
00074   http://www.xaraxtreme.org/developers/
00075 
00076 Prior to contributing your modifications, you will need to complete our
00077 contributor agreement. This can be found at:
00078   http://www.xaraxtreme.org/developers/contribute/
00079 
00080 Please note that Xara will not accept modifications which modify any of
00081 the text between the start and end of this header (marked
00082 XARAHEADERSTART and XARAHEADEREND).
00083 
00084 
00085 MARKS
00086 -----
00087 
00088 Xara, Xara LX, Xara X, Xara X/Xtreme, Xara Xtreme, the Xtreme and Xara
00089 designs are registered or unregistered trademarks, design-marks, and/or
00090 service marks of Xara Group Ltd. All rights in these marks are reserved.
00091 
00092 
00093       Xara Group Ltd, Gaddesden Place, Hemel Hempstead, HP2 6EX, UK.
00094                         http://www.xara.com/
00095 
00096 =================================XARAHEADEREND============================
00097  */
00098 
00099 // The ScreenView class - subclass of CamView used for screen display.
00100 
00101 #ifndef INC_SCRVW
00102 #define INC_SCRVW
00103 
00104 #include "camview.h"
00105 //#include "draginfo.h"
00106 //#include "dragtrgt.h"
00107 //#include "ink.h" - in camtypes.h [AUTOMATICALLY REMOVED]
00108 //#include "clikmods.h" - in camtypes.h [AUTOMATICALLY REMOVED]
00109 #include "rendwnd.h"
00110 #include "wrkrect.h"
00111 //#include "oilruler.h"
00112 
00113 #ifdef _DEBUG
00114     // When CCamViews get this message they describe themselves in the debug
00115     // output.
00116     #define WM_DESCRIBEVIEW     (WM_USER + 101)
00117 #endif
00118 
00119 enum ObjectDragTarget
00120 {
00121     NO_TARGET,
00122     FILL_TARGET,
00123     LINE_TARGET,
00124     STARTCOL_TARGET,
00125     ENDCOL_TARGET,
00126     ENDCOL2_TARGET,
00127     ENDCOL3_TARGET,
00128     MANY_TARGET
00129 };
00130 
00131 enum MouseOverRulerHit
00132 {
00133     OVER_NO_RULERS,
00134     OVER_HORIZONTAL,
00135     OVER_VERTICAL,
00136     OVER_ORIGIN_GADGET
00137 };
00138 
00139 //  WEBSTER-ranbirr-12/11/96
00140 #ifndef WEBSTER
00141 class CCPrintInfo;
00142 #endif //webster
00143 class PrintControl;
00144 class OILHorizontalRuler;
00145 class OILVerticalRuler;
00146 class OriginGadget;
00147 class CWinScroller;
00148 class CObject;
00149 
00150 /********************************************************************************************
00151 
00152 >   class ScreenView : public CCamView
00153 
00154     Author:     Tim_Browse (Xara Group Ltd) <camelotdev@xara.com>
00155     Created:    19/01/95
00156     Purpose:    A subclass of CCamView which is the class actually used for screen
00157                 display.
00158     SeeAlso:    CCamView; PrintCamView
00159 
00160 ********************************************************************************************/
00161 
00162 class ScreenView : public CCamView
00163 {
00165 // A contained canvas to emulate MFC style views
00166 protected:
00167     class ScreenCanvas :
00168         public CCamView::CCamCanvas
00169     {
00170     public:
00171         ScreenCanvas( wxView *v, wxMDIChildFrame *frame, const wxPoint& pos, const wxSize& size, 
00172             /* TYPENOTE: Correct */ long style ) : CCamCanvas( v, frame, pos, size, style )
00173         {
00174         }
00175         
00177     // Message response functions.
00178     protected:
00179         void    OnSize( wxSizeEvent &event );
00180         void    OnLButtonDown( wxMouseEvent &event );
00181         void    OnLButtonDblClk( wxMouseEvent &event );
00182         void    OnLButtonUp( wxMouseEvent &event );
00183         void    OnMButtonDown( wxMouseEvent &event );
00184         void    OnMButtonDblClk( wxMouseEvent &event );
00185         void    OnMButtonUp( wxMouseEvent &event );
00186         void    OnRButtonDown( wxMouseEvent &event );
00187         void    OnRButtonDblClk( wxMouseEvent &event );
00188         void    OnRButtonUp( wxMouseEvent &event );
00189         void    OnMouseMove( wxMouseEvent &event );
00190         void    OnMouseWheel( wxMouseEvent &event );
00191 
00192     private:
00193         DECLARE_EVENT_TABLE()
00194     };
00195 
00196     // Creator shim, that creates a canvas suitable for this view
00197     virtual CCamCanvas* CreateCanvas( wxView *v, wxMDIChildFrame *frame, const wxPoint& pos, 
00198         const wxSize& size, /* TYPENOTE: Correct */ long style )
00199     {
00200         return new ScreenCanvas( v, frame, pos, size, style );
00201     }
00202     
00204 // Creation and destruction.
00205     
00206 protected:
00207     static INT32 PopCount;                  // how many ScreenViews around
00208     static ViewState* pReadyMadeViewState;  // points to the ViewState to use on next create
00209         
00210 public:
00211     ScreenView();                   // default constructor
00212     virtual ~ScreenView();
00213 
00214     void SetViewStateFromThis() const;  // set Status according to this view
00215     void SetThisFromViewState();        // set this view according to Status
00216 
00217     static BOOL ReadViewPrefs();
00218     static INT32 HowMany();
00219 
00220     static DocView* GetDocViewFromHwnd( wxWindow *hwnd );
00221     static DocView* GetDocViewFromWindowID(CWindowID WinID);
00222 
00223     virtual BOOL IsScreenView() { return TRUE; }
00224 
00225     MouseOverRulerHit IsMouseOverRuler();
00226 
00227     // Call this to provide a preset ViewState object that will be used for the next
00228     // view that is created.
00229     static void SetReadyMadeViewState(ViewState* pvs);
00230 
00232 // Position and Z-order management.
00233 
00234 protected:
00235     static BOOL UnzoomOnNewView;        // preferences for creating new views
00236     static BOOL ZoomSingleView;
00237 
00238     BOOL fSetupDone;                    // if TRUE then all inits done
00239     bool fInitialUpdate;                // Set after calling OnInitialUpdate
00240     BOOL fJustCreated;                  // this view has never been activated before, it's new
00241 
00242     void UpdateViewPosition() const;    // called on moves & resizes
00243 
00244 protected:
00245     virtual void OnInitialUpdate();     // called once between creation & painting
00246     virtual void OnUpdate(wxView* sender, wxObject* hint=(wxObject*)NULL);
00247     virtual void OnActivateView(bool bActivate, wxView* pActiveView,
00248                                 wxView* pDeactiveView);
00249 
00250 public:
00251     BOOL IsTopmost() const;             // TRUE if this view is active
00252     BOOL ShouldEatClick() const;        // TRUE if this view has just been activated
00253     void ClearEatFlag();            // clears the above flag.
00254     
00255 
00257 // Painting.
00258 
00259 //protected:
00260 //  CRenderWnd* RenderWindow;
00261 
00262 public:
00263     wxDC* GetRenderDC() const;
00264     wxWindow* GetRenderWindow() const;
00265     
00266     virtual void GetClientSize(int * width, int * height) const; /* TYPENOTE: Correct*/
00267     void InvalidateView(const OilRect* pRect = 0, BOOL updatenow = FALSE);
00268         
00269     virtual void OnDraw( wxDC *pDc );
00270 PORTNOTE("other","Removed OnPreparePrinting - not supported yet")
00271 #ifndef EXCLUDE_FROM_XARALX
00272     virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
00273 #endif
00274                 
00276 // Scrolling data and functions.
00277 
00278 protected:
00279     CWinScroller* HScrollBar;               // proportional scroll bars
00280     CWinScroller* VScrollBar;
00281 
00282 PORTNOTE("other","Removed CScrollerCorner usage")
00283 #ifndef EXCLUDE_FROM_XARALX
00284         CScrollerCorner* Corner;                // the "size box"
00285 #endif
00286 
00287 //  WEBSTER-ranbirr-12/11/96
00288 #ifndef WEBSTER
00289     OILHorizontalRuler * HRuler;
00290     OILVerticalRuler * VRuler;
00291     OriginGadget * OGadget;
00292 #endif //wesbter
00293     
00294     WinRect CurrentSize;                    // the size of this view
00295     WorkRect WorkArea;
00296     WorkCoord OldOffset;                    // previous scroller position
00297 
00298     BOOL ScrollerStyle;                     // proportional or not
00299     static BOOL PropScrollersOn;            // the preference for the above
00300     
00301     static BOOL DefaultScrollersState;
00302     static BOOL DefaultRulersState;
00303     static BOOL UseVisibleDefaults; 
00304 
00305     void ScrollTo(const WorkCoord& offset);
00306 
00307 public:
00308 
00309     static void SetUseVisibleDefaults(BOOL state){ UseVisibleDefaults = state;};
00310     BOOL GetScrollerStyle() const;
00311     void SetScrollerStyle(BOOL proportional);
00312 
00313 //  void GetWorkAreaExtent(WorkRect* pArea) const;
00314     void SetWorkAreaExtent(const WorkRect& area, BOOL redraw = TRUE);
00315     void GetScrollOffset(WorkCoord* pOffset) const;
00316     void SetScrollOffset(const WorkCoord& pos, BOOL redraw = TRUE);
00317     void ShowScrollers(BOOL Show); 
00318     void ShowRulers(BOOL Show);
00319     
00320     BOOL AreRulersVisible();
00321     BOOL AreScrollersVisible();
00322 
00323     static BOOL GetUseVisibleDefaults()              { return UseVisibleDefaults;};
00324     static BOOL GetDefaultRulersState()              { return DefaultRulersState;};
00325     static BOOL GetDefaultScrollersState()           { return DefaultScrollersState;};
00326     static void SetDefaultRulersState(BOOL State)    { DefaultRulersState = State;};
00327     static void SetDefaultScrollersState(BOOL State) { DefaultScrollersState = State;};
00328 
00330 // Drag'n'drop data and functions.
00331 
00332 protected:
00333     static INT32 DragLatency;               // mouse must move >= this for a drag, except:
00334     static INT32 DragDelay;             // delay before we start a drag anyway, even if
00335                                         // mouse has not moved.
00336     static MonotonicTime DragTimer;     // Used to time the drag delay above.
00337 
00338     BOOL DragKeepAccuracy;              // Used to control drag responsiveness
00339 
00340     BOOL AutoScrollExcludeRulers;       // Flag used to extend the autoscroll region to 
00341                                         // include rulers - allows guidelines to be deleted
00342 
00343     ClickType      LastClickType;       // click type of last START_DRAG
00344     UINT32         LastClickButton;     // buttons down on last START_DRAG
00345     wxPoint            LastClickPoint;      // mouse position of last START_DRAG
00346     wxPoint            CurrentMousePos;     // the mouse was here last time we looked
00347     ClickModifiers LastClickMods;       // ClickMods on last mouse event (NOT
00348                                         // modified by button-up events!)
00349 
00350     UINT32 FirstClickButton;                // Which button started the drag (if dragging).
00351 
00352     Operation* pCurrentDragOp;          // current mouse-drag operation
00353     DragType CurrentDragType;           // what to do when dragging off-screen
00354     WinRect MouseClipRect;              // cursor was clipped against this
00355 
00356     BOOL OLERecaptureMouse;             // Used when OLE drags return to the view window - we resume our
00357                                         // drag, and we have to recapture the mouse to recover properly.
00358 
00359     void HandleDragEvent(UINT32 Button, wxMouseEvent &event, ClickType t);
00360     BOOL HandleMouseWheelEvent( wxMouseEvent &event );
00361     void HandleDragScrolling(wxPoint point);
00362     void CalcScrollDeltas(wxPoint point, WinRect wrSize, INT32* dx, INT32* dy);
00363     void HandleButtonUp(UINT32 Button, wxMouseEvent &event);
00364     virtual void HandleOleDragOutOfView(wxPoint point); // Used to allow derived classes to provide OLE drag and drop
00365 
00366     MonotonicTime m_OLELastOutTime;     // Used to time the delay before "OLE scrolling"
00367 
00368 public:
00369     void RecaptureMouseOnNextUpdate(void);
00370 
00371     static void GetClickMods( wxMouseEvent &event, ClickModifiers *p );
00372     BOOL StartDrag(Operation* pOp, DragType type, BOOL KeepAccuracy);
00373     BOOL EndDrag(Operation* pOp);
00374     BOOL ChangeDragType(DragType Type);
00375     void ClearClickState();
00376 
00377     // Allows a drag op to be invoked from the ScreenView object, as if it had been
00378     // invoked as a result of clicking into the document.
00379     // Useful esp. for drag ops that are not connected to a particular tool and/or started
00380     // from clicks outside the view, e.g. Creating guidelines by clicking on a ruler window
00381     BOOL InvokeDragOp(String_256* pOpToken,OpParam* pParam,UINT32 Flags,wxPoint point);
00382 
00383     // Function to test if there is another mouse move message in the queue
00384     BOOL IsWaitingMouseMove();
00385 
00386     // This sets the output parameter to the current mouse position within this
00387     // ScreenView.  If the cursor isn't within the view it returns FALSE.
00388     BOOL GetCurrentMousePos(OilCoord* pMousePos) const;
00389 
00390 
00391     BOOL CreateDragTarget(DragInformation * DragInfo);
00392 
00393 protected:
00394     // Vars used by InvokeDragOp()
00395     String_256  DragOpToken;
00396     OpParam*    pDragOpParam;
00397     BOOL        DragOpInvoke;
00398 
00400 // OLE container support
00401 
00402 #if (_OLE_VER >= 0x200)
00403     // m_pSelection holds the selection to the current CCamCntrItem.
00404     // For many applications, such a member variable isn't adequate to
00405     // represent a selection, such as a multiple selection or a selection
00406     // of objects that are not CCamCntrItem objects.  This selection
00407     // mechanism is provided just to help you get started.
00408 
00409     // TODO: replace this selection mechanism with one appropriate to your app.
00410 
00411 public:
00412     CCamCntrItem* m_pSelection;
00413 #endif
00414 
00415 public:
00416     virtual BOOL IsSelected(const CObject* pDocItem) const;
00417 
00418 
00419 
00421 // Menu functions, put in at Mario's behest.
00422 
00423 public:
00424 //  WEBSTER-ranbirr-12/11/96
00425 #ifndef WEBSTER
00426 PORTNOTE("other","Removed OnFilePrint - printing support")
00427 #ifndef EXCLUDE_FROM_XARALX
00428         void OnFilePrint();
00429 #endif
00430 #endif //webster
00431     void OnFilePrintPreview();
00432                 
00433     DocView* GetDocViewPtr() const;                 // for Will
00434 
00435 //  WEBSTER-ranbirr-12/11/96
00436 #ifndef WEBSTER
00437 
00438 protected:
00439     // Helper functions for printing.
00440     BOOL PrintPaper(wxDC *pPrintDC, CCPrintInfo *pPrintInfo, PrintControl *pPrintControl);
00441     WinRect GetPrintClipRect(wxDC *pPrintDC, CCPrintInfo *pPrintInfo);
00442     void EnumeratePagePatches(CCPrintInfo *pPrintInfo);
00443 
00444 #endif //webster
00445 
00446 // Triple and quad click support
00447 
00448 public:
00449     BOOL IsSingleClickReallyTriple() const  {return ThisSingleIsTriple;}
00450     BOOL IsSingleClickReallyQuad() const    {return ThisDoubleIsQuad;}
00451 
00452 protected:
00453     MonotonicTime TimeOfLastClick;
00454     wxPoint LastDoubleClickPos;
00455     BOOL ThisSingleIsTriple;
00456     BOOL ThisDoubleIsQuad;
00457 
00458     DECLARE_DYNAMIC_CLASS( ScreenView )
00459     DECLARE_EVENT_TABLE()
00460 
00461     void    OnSize( wxSizeEvent &event );
00462     void    OnLButtonDown( wxMouseEvent &event );
00463     void    OnLButtonDblClk( wxMouseEvent &event );
00464     void    OnLButtonUp( wxMouseEvent &event );
00465     void    OnMButtonDown( wxMouseEvent &event );
00466     void    OnMButtonDblClk( wxMouseEvent &event );
00467     void    OnMButtonUp( wxMouseEvent &event );
00468     void    OnRButtonDown( wxMouseEvent &event );
00469     void    OnRButtonDblClk( wxMouseEvent &event );
00470     void    OnRButtonUp( wxMouseEvent &event );
00471     void    OnMouseMove( wxMouseEvent &event );
00472     void    OnMouseWheel( wxMouseEvent &event );
00473 
00474 PORTNOTE("other","Removed MessageMap - hopefully very temporarily")
00475 #ifndef EXCLUDE_FROM_XARALX
00476     //{{AFX_MSG(ScreenView)
00477         afx_msg void    OnDropFiles(HDROP hDropInfo);
00478         afx_msg INT32       OnMouseActivate(wxWindow* pDesktopWnd, UINT32 nHitTest, UINT32 nMessage);
00479         afx_msg void    OnTimer(UINT32 nIDEvent);
00480         afx_msg void    OnCancelMode();
00481         afx_msg void    OnInsertObject();
00482         afx_msg void    OnPaint();
00483         afx_msg BOOL    OnSetCursor(wxWindow* pWnd, UINT32 nHitTest, UINT32 nMessage);
00484         afx_msg LRESULT OnScrollerEvent(WPARAM wp, LPARAM lp);
00485 #ifdef WIN32
00486         afx_msg LRESULT OnJoystickMove(WPARAM wp, LPARAM lp);
00487 #endif
00488         afx_msg LRESULT OnRenderView(WPARAM wp, LPARAM lp);
00489         afx_msg LRESULT OnFrameMove(WPARAM x, LPARAM y);
00490 #if (_OLE_VER >= 0x200)
00491         afx_msg void    OnSetFocus(wxWindow* pOldWnd);
00492         afx_msg void    OnCancelEdit();
00493 #endif
00494 #ifdef _DEBUG
00495         afx_msg LRESULT OnDescribeView(WPARAM, LPARAM);
00496 #endif
00497     afx_msg void OnVScroll( UINT32 nSBCode, UINT32 nPos, CScrollBar* pScrollBar ) ;
00498     afx_msg void OnHScroll( UINT32 nSBCode, UINT32 nPos, CScrollBar* pScrollBar ) ;
00499 }}AFX_MSG
00500 
00501         DECLARE_MESSAGE_MAP()
00502 #endif
00503 };
00504 
00505 /*********************************************************************************************
00506 
00507 >   class PageDropInfo : public CCObject
00508 
00509     Author:     Will_Cowling (Xara Group Ltd) <camelotdev@xara.com>
00510     Created:    25/3/95
00511     Purpose:    Gives info about where an drag has, or is going to be, dropped on a page.
00512 
00513     SeeAlso:    DragInformation
00514 
00515 *********************************************************************************************/
00516 
00517 class PageDropInfo : public CCObject
00518 {
00519     CC_DECLARE_DYNCREATE(PageDropInfo)
00520 
00521 public:
00522     Document*   pDoc;
00523     DocView*    pDocView;
00524     Spread*     pSpread;
00525     DocCoord    DropPos;
00526 
00527     ObjectDragTarget    TargetHit; 
00528     NodeRenderableInk*  pObjectHit;
00529 };
00530 
00531 /*********************************************************************************************
00532 >   class   ViewDragTarget : public WinoilDragTarget
00533 
00534     Author:     Chris_Snook (Xara Group Ltd) <camelotdev@xara.com>.
00535     Created:    2/1/95
00536 
00537     Purpose:    An instantiation of this class is created by each entity which wishes to 
00538                 provide a 'destination' to which the mouse can go to complete a drag.
00539                 WinoilDragTargets are used as a base class from which to derive drag targets
00540                 for WINOIL entities (an optional HWND)
00541 
00542     Notes:      Drag targets are destructed automatically when a drag finishes by the drag
00543                 manager with which they were registered.
00544 
00545                 To remove a drag target at any time, destruct it - it automatically deregisters
00546                 and cleans up.
00547                 
00548     SeeAlso:    DragManagerOp::StartDrag; DragInformation; DragTarget
00549 
00550     Documentation:  Docs\Specs\DragMan.doc
00551 *********************************************************************************************/
00552 
00553 PORTNOTE("other","Removed ViewDragTarget - WinoilDragTarget usage")
00554 #ifndef EXCLUDE_FROM_XARALX
00555 class ViewDragTarget : public WinoilDragTarget
00556 {
00557 friend class DragManagerOp;
00558 friend class ColourDragInformation;
00559     
00560 CC_DECLARE_DYNAMIC(ViewDragTarget)
00561 
00562 
00563 public: // Public interface
00564     
00565     ViewDragTarget( wxWindow *TheWindow, CRect *ClientArea = NULL, DragInformation* pDragInfo = NULL);
00566     
00567     virtual UINT32 GetCursorID();
00568     virtual BOOL GetStatusLineText(String_256 * TheText);
00569 
00570     virtual BOOL GetDropInfo(PageDropInfo*);
00571 
00572 protected:
00573     
00574     // Process a drag-related event
00575     BOOL ProcessEvent(DragEventType Event,
00576                         DragInformation *pDragInfo,
00577                         wxPoint *pMousePos, KeyPress* pKeyPress);
00578 
00579     DragInformation* pCurrentDragInfo;
00580 
00581     BOOL OverOutline;
00582     INT32 LineRad;
00583 
00584     DocView*    pThisDoc;
00585     Spread*     pSpread;
00586     DocCoord    DropPos;
00587 
00588     ObjectDragTarget    OverTarget;
00589     NodeRenderableInk*  OverNode;
00590 };
00591 #endif
00592 
00593 #endif  // INC_SCRCAMVW

Generated on Sat Nov 10 03:48:51 2007 for Camelot by  doxygen 1.4.4