home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / opendc12.zip / od124os2.exe / od12osp1.exe / src / utils / iodscrol.idl < prev    next >
Text File  |  1997-04-02  |  5KB  |  156 lines

  1. //#====START_GENERATED_PROLOG======================================
  2. //#
  3. //#
  4. //#   COMPONENT_NAME: odpagepart
  5. //#
  6. //#   CLASSES: none
  7. //#
  8. //#   ORIGINS: 82,27
  9. //#
  10. //#
  11. //#   (C) COPYRIGHT International Business Machines Corp. 1995,1996
  12. //#   All Rights Reserved
  13. //#   Licensed Materials - Property of IBM
  14. //#   US Government Users Restricted Rights - Use, duplication or
  15. //#   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  16. //#       
  17. //#   IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
  18. //#   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  19. //#   PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  20. //#   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
  21. //#   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
  22. //#   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
  23. //#   OR PERFORMANCE OF THIS SOFTWARE.
  24. //#
  25. //#====END_GENERATED_PROLOG========================================
  26. //#
  27. /* @(#) 1.7 com/src/samples/utils/iodscrol.idl, odpagepart, od96os2, odos29712d 3/7/97 13:08:44 [3/21/97 17:48:11] */
  28.  
  29.  
  30. #ifndef _IODSCROL_
  31. #define _IODSCROL_
  32.  
  33. #ifndef _EXTENSN_
  34. #include <extensn.idl>
  35. #endif
  36.  
  37.  
  38.  
  39. //======================================================================
  40. // Classes defined in this interface
  41. //======================================================================
  42.  
  43. interface  ODScrollExtension;
  44.  
  45.  
  46. //======================================================================
  47. // Classes used by this interface
  48. //======================================================================
  49.  
  50. interface ODPart;
  51. interface ODFrame;
  52. interface ODFacet;
  53. interface ODCanvas;
  54. interface ODShape;
  55. interface ODTransform;
  56.  
  57.  
  58. //======================================================================
  59. // Type definitions used by this interface
  60. //======================================================================
  61.  
  62. typedef somToken  RECTL;
  63.  
  64.  
  65. //======================================================================
  66. // ODScrollExtension Implementation
  67. //======================================================================
  68.  
  69. interface ODScrollExtension : ODExtension
  70. {
  71.    ODBoolean HandleScrollEvent(in ODFrame frame, in ODEventData event);
  72.    void ProcessScrollAmount(in ODFrame frame, in short invalidArea);
  73.    void ScrollFrameContents(in ODFrame frame);
  74.    void RedrawAfterScroll(in ODFrame frame, in short invalidArea, in ODTransform oldInternalTransform);
  75.    void AdjustScrollBars();
  76.    void SetScrollableDimensions(in ODFrame frame, in long width, in long height);
  77.    void SetScrollPosition(in ODFrame frame, in long horzScrollPos, in long vertScrollPos);
  78.    long GetHorizontalScrollPosition();
  79.    long GetVerticalScrollPosition();
  80.    long GetVisibleWidth();
  81.    long GetVisibleHeight();
  82.    void FacetAdded(in ODFacet facet);
  83.    void FacetRemoved(in ODFacet facet);
  84.    void GeometryChanged(in ODFacet facet, in ODBoolean clipShapeChanged, in ODBoolean externalTransformChanged);
  85.    void FrameShapeChanged(in ODFrame frame);
  86.    void Initialize(in ODPart base, in long width, in long height);
  87.  
  88.  
  89. #ifdef __SOMIDL__
  90.   implementation
  91.   {
  92.         dllname = "IODUtils.dll";
  93.         functionprefix = ODScrollExtension;
  94.         majorversion = 1;
  95.         minorversion = 0;
  96.  
  97.         override:
  98.                 somInit,
  99.                 somUninit;
  100.  
  101.         releaseorder:
  102.                 HandleScrollEvent,
  103.                 ProcessScrollAmount,
  104.                 ScrollFrameContents,
  105.                 RedrawAfterScroll,
  106.                 AdjustScrollBars,
  107.                 SetScrollableDimensions,
  108.                 SetScrollPosition,
  109.                 GetHorizontalScrollPosition,
  110.                 GetVerticalScrollPosition,
  111.                 GetVisibleWidth,
  112.                 GetVisibleHeight,
  113.                 FacetAdded,
  114.                 FacetRemoved,
  115.                 GeometryChanged,
  116.                 FrameShapeChanged,
  117.                 Initialize;
  118.  
  119.         //=======================================
  120.         // ODScrollExtension Instance Variables
  121.         //=======================================
  122.  
  123.                 ODPlatformWindow   fHorzScrollBarHWND;
  124.                 ODPlatformWindow   fVertScrollBarHWND;
  125.                 ODPlatformWindow   fBlankCornerHWND;
  126.  
  127.                 long               fTotalWidth;
  128.                 long               fTotalHeight;
  129.  
  130.                 long               fVisibleWidth;
  131.                 long               fVisibleHeight;
  132.  
  133.                 long               fCurrentHorzScrollPos;
  134.                 long               fCurrentVertScrollPos;
  135.  
  136.                 ODShape            fEmbeddedControlShape;
  137.                 RECTL*             fScrollableRECTL;
  138.  
  139.                 ODShape            fLeftScrollShape;
  140.                 ODShape            fRightScrollShape;
  141.                 ODShape            fTopScrollShape;
  142.                 ODShape            fBottomScrollShape;
  143.  
  144.                 ODBoolean          fAllowEmbeddedControls;
  145.  
  146.   }; // end implementation section
  147.  
  148. #endif //__SOMIDL__
  149.  
  150. }; // end interface definition
  151.  
  152.  
  153. #endif //_IODSCROL_
  154.  
  155.  
  156.