InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ILayoutHitTestSuite.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Rich Gartland
6 //
7 // $Author$
8 //
9 // $DateTime$
10 //
11 // $Revision$
12 //
13 // $Change$
14 //
15 // Copyright 1997-2010 Adobe Systems Incorporated. All rights reserved.
16 //
17 // NOTICE: Adobe permits you to use, modify, and distribute this file in accordance
18 // with the terms of the Adobe license agreement accompanying it. If you have received
19 // this file from a source other than Adobe, then your use, modification, or
20 // distribution of it requires the prior written permission of Adobe.
21 //
22 //========================================================================================
23 
24 #ifndef _ILayoutHitTestSuite_
25 #define _ILayoutHitTestSuite_
26 //________________________________________________________________________________________________
27 // INCLUDES
28 //________________________________________________________________________________________________
29  #include "HitTestDragConstants.h"
30  #include "IPMUnknown.h"
31  #include "ShuksanID.h"
32  #include "PMPoint.h"
33 //================================================================================================
34 //________________________________________________________________________________________________
35 // CLASS FORWARDS
36 //________________________________________________________________________________________________
37 class IControlView;
38 class IGeometry;
39 class ITracker;
40 class PointSelector;
41 class CursorSpec;
42 
43 //________________________________________________________________________________________________
44 // TYPEDEFS
45 //________________________________________________________________________________________________
46 
47 //________________________________________________________________________________________________
48 // CLASS DECLARATION
49 //________________________________________________________________________________________________
56  {
57  //____________________________________________________________________________________________
58  // Data Types
59  //____________________________________________________________________________________________
60  public:
61  enum { kDefaultIID = IID_ILAYOUTHITTESTSUITE };
62 
63  //____________________________________________________________________________________________
64  // Member functions
65  //____________________________________________________________________________________________
66  public:
82  virtual ITracker* QueryHitTestHandlesForTracker(IControlView *view, const PBPMPoint& where, ClassID handlerBossClass, bool16 bDragging = kFalse, int16 tolerance = kHitTestTolerance) = 0;
83 
99  virtual IGeometry* QueryHitTestHandles(IControlView *view, const PBPMPoint& where, PointSelector& handleIndex, bool16 bDragging = kFalse, int16 tolerance = kHitTestTolerance ) = 0;
100 
113  virtual IGeometry* QueryHitTestBoundingBox(IControlView *view, const PBPMPoint& where, int16 tolerance = kHitTestTolerance) = 0;
114 
115 
130  virtual IGeometry* QueryHitTestItems(IControlView *view, const PBPMPoint& where, ClassID handlerBossClass, int16 tolerance = kHitTestTolerance) = 0;
131 
132 };
133 
134 #endif