home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / opendc12.zip / od124os2.exe / od12osr1.exe / src / DragDrp.idl < prev    next >
Text File  |  1997-03-21  |  9KB  |  368 lines

  1. /* @(#)Z 1.10 os2/src/storage/idl/DragDrp.idl, oddataxfer, od96os2, odos29712d 97/03/21 17:39:20 (96/08/23 01:43:12) */
  2. //#====START_GENERATED_PROLOG======================================
  3. //#
  4. //#
  5. //#   COMPONENT_NAME: oddataxfer
  6. //#
  7. //#   CLASSES: none
  8. //#
  9. //#   ORIGINS: 82,27
  10. //#
  11. //#
  12. //#   (C) COPYRIGHT International Business Machines Corp. 1995,1996
  13. //#   All Rights Reserved
  14. //#   Licensed Materials - Property of IBM
  15. //#   US Government Users Restricted Rights - Use, duplication or
  16. //#   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  17. //#       
  18. //#   IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
  19. //#   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  20. //#   PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  21. //#   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
  22. //#   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
  23. //#   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
  24. //#   OR PERFORMANCE OF THIS SOFTWARE.
  25. //#
  26. //#====END_GENERATED_PROLOG========================================
  27. //#
  28.  
  29. #ifdef __PRIVATE__
  30. //#
  31. //#    File:        DragDrp.idl
  32. //#
  33. //#    Contains:    Definition of ODDragAndDrop
  34. //#
  35. //#    Owned by:    Vincent Lo
  36. //# IBM owner:        Troy Folger
  37. //#
  38. //# Format considerations:    formatted for tab width of 4
  39. //#
  40. #endif
  41.  
  42. #ifndef _DRAGDROP_
  43. #define _DRAGDROP_
  44.  
  45. #ifndef _ODOBJECT_
  46. #include "ODObject.idl"
  47. #endif
  48.  
  49. //=====================================================================================
  50. // Classes defined in this interface
  51. //=====================================================================================
  52.  
  53. interface  ODDragAndDrop;
  54.  
  55. //=====================================================================================
  56. // Classes used by this interface
  57. //=====================================================================================
  58.  
  59. interface    ODSession;
  60. interface    ODPart;
  61. interface    ODStorageUnit;
  62. interface    ODFacet;
  63. interface    ODFrame;
  64. interface    ODDraft;
  65. interface    ODStorageSystem;
  66. interface    ODWindowState;
  67. interface    ODDragItemIterator;
  68. interface    ODStorageUnitView;
  69.  
  70. #ifdef __PRIVATE__
  71. //=====================================================================================
  72. // Implementation Types
  73. //=====================================================================================
  74.  
  75. typedef somToken LinkedList;
  76. typedef somToken OpenHashTable;
  77. typedef somToken PPOINTL;
  78. #endif
  79.  
  80.  
  81. //=====================================================================================
  82. // ODDragAndDrop
  83. //=====================================================================================
  84.  
  85.  
  86. interface ODDragAndDrop :  ODObject
  87. {
  88.     void Clear();
  89.     
  90.     ODStorageUnit  GetContentStorageUnit();
  91.     
  92.     ODDropResult StartDrag(in ODFrame srcFrame,
  93.                            in ODType imageType,
  94.                            in ODByteArray image,
  95.                            out ODPart destPart,
  96.                            in ODByteArray refCon);
  97.  
  98.     ODBoolean ShowPasteAsDialog(in        ODBoolean                canPasteLink,
  99.                                 in        ODPasteAsMergeSetting    mergeSetting,
  100.                                 in        ODFacet                    facet,
  101.                                 in        ODTypeToken                viewType,
  102.                                 in        ODStorageUnit            contentSU,
  103.                                 out        ODPasteAsResult            theResult);
  104.  
  105.     ODULong GetDragAttributes();
  106.     
  107.     ODPlatformDragReference GetDragReference();
  108.     
  109.     void GetPromiseFromDragManager(in ODPart sourcePart,
  110.                                    in ODStorageUnitView destSUView);
  111.                                 
  112.     ODBoolean GetDataFromDragManager(in ODStorageUnitView theSUView,    // [140007] removed szSelectedRMF
  113.                                      out ODStorageUnit    renderedSU);
  114.     
  115.     ODBoolean CanEmbed(in ODStorageUnit dropSU);            // [140007]
  116.  
  117.     ODBoolean CanIncorporate(in ODStorageUnit dropSU,        // [140007]
  118.                              in ODType kind);
  119.  
  120. #ifdef __PRIVATE__
  121.  
  122.     void InitDragAndDrop(in ODSession session);    
  123.     
  124.     ODFacet  FindTargetFacet(in ODPlatformWindow theWindow,
  125.                              in PPOINTL mouse, 
  126.                              out ODPoint local);
  127.     
  128.     LinkedList* GetDragItemList();
  129.     void SetDragItemList(in LinkedList* list);
  130.     
  131.     ODBoolean    GetListFromHandler();
  132.     void SetListFromHandler(in ODBoolean listFromHandler);
  133.     
  134.     ODFrame    GetSourceFrame();
  135.     void SetSourceFrame(in ODFrame sourceFrame);
  136.     
  137.     ODULong    GetAttributes();
  138.     void SetAttributes(in ODULong attr);
  139.  
  140.     ODPart GetSourcePart();
  141.     void SetSourcePart(in ODPart sourcePart);
  142.         
  143.     ODDragItemIterator GetDragItemIterator();
  144.     void SetDragItemIterator(in ODDragItemIterator iter);
  145.     
  146.     ODSession GetSession();
  147.     ODStorageSystem GetStorageSystem();
  148.     
  149.     void SetDragReference(in ODPlatformDragReference dragReference);
  150.     
  151.     ODFacet GetPrevFacet();
  152.     void SetPrevFacet(in ODFacet prevFacet);
  153.     
  154.     ODFacet GetDestFacet();
  155.     void SetDestFacet(in ODFacet destFacet);
  156.     
  157.     ODDropResult GetDropResult();
  158.     void SetDropResult(in ODDropResult dropResult);
  159.     
  160.     ODUShort GetDragOperation();
  161.  
  162.     ODBoolean DispatchHandler(in ODEventData evt,            // [138899] - ced
  163.                               in ODFacet targetfacet);
  164.  
  165.     ODBoolean dmDiscardObject(in ODEventData evt);
  166.  
  167.     ODBoolean dmDragError(in ODEventData evt);
  168.  
  169.     ODBoolean dmDragLeave(in ODEventData evt);
  170.  
  171.     ODBoolean dmDragOver(in ODEventData evt, 
  172.                          in ODFacet targetfacet);            // [138899] - ced
  173.  
  174.     ODBoolean dmDragOverNotify(in ODEventData evt);
  175.  
  176.     ODBoolean dmDrop(in ODEventData evt);
  177.  
  178.     ODBoolean dmDropHelp(in ODEventData evt);
  179.  
  180.     ODBoolean dmEndConversation(in ODEventData evt);
  181.  
  182.     ODBoolean dmPrintObject(in ODEventData evt);
  183.  
  184.     ODBoolean dmRender(in ODEventData evt);
  185.  
  186.     ODBoolean dmRenderComplete(in ODEventData evt);
  187.  
  188.     ODBoolean dmRenderPrepare(in ODEventData evt);
  189.  
  190.     ODBoolean dmDoReceive(in ODPtr   pszSelectedRMF,                        // [140007]
  191.                           in ODUShort usOperation,
  192.                           in ODULong hstrRenderToName,
  193.                           in ODULong hstrType,
  194.                           in ODPtr pszSelectedKind,
  195.                           in ODPtr newItem);
  196.  
  197.     void DraftClosing(in ODDraft draft);
  198. #endif //# __PRIVATE__
  199.  
  200.   
  201. #ifdef __SOMIDL__
  202.     implementation
  203.     {
  204.         functionprefix = ODDragAndDrop;
  205.         override:
  206.             somUninit;
  207.             
  208.         releaseorder:
  209.             Clear,
  210.             GetContentStorageUnit,
  211.             StartDrag,
  212.             ShowPasteAsDialog,
  213.             GetDragAttributes,
  214.             GetDragReference,
  215.             GetPromiseFromDragManager,
  216.             GetDataFromDragManager,
  217.             CanEmbed,
  218.             CanIncorporate,
  219. #ifdef __PRIVATE__
  220.             InitDragAndDrop,
  221.             FindTargetFacet,
  222.             GetDragItemList,
  223.             SetDragItemList,
  224.             GetListFromHandler,
  225.             SetListFromHandler,
  226.             GetSourceFrame,
  227.             SetSourceFrame,
  228.             GetAttributes,
  229.             SetAttributes,
  230.             GetSourcePart,
  231.             SetSourcePart,
  232.             GetDragItemIterator,
  233.             SetDragItemIterator,
  234.             GetSession,
  235.             GetStorageSystem,
  236.             SetDragReference,
  237.             GetPrevFacet,
  238.             SetPrevFacet,
  239.             GetDestFacet,
  240.             SetDestFacet,
  241.             GetDropResult,
  242.             SetDropResult,
  243.             GetDragOperation,
  244.             DispatchHandler,
  245.             dmDiscardObject,
  246.             dmDragError,
  247.             dmDragLeave,
  248.             dmDragOver,
  249.             dmDragOverNotify,
  250.             dmDrop,
  251.             dmDropHelp,
  252.             dmEndConversation,
  253.             dmPrintObject,
  254.             dmRender,
  255.             dmRenderComplete,
  256.             dmRenderPrepare,
  257.             dmDoReceive,
  258.             DraftClosing;
  259. #else  // __PRIVATE__
  260.             // reserved01 -- Clear
  261.             // reserved02 -- GetContentStorageUnit
  262.             // reserved03 -- StartDrag
  263.             // reserved04 -- ShowPasteAsDialog
  264.             // reserved05 -- GetDragAttributes
  265.             // reserved06 -- GetDragReference
  266.             // reserved07 -- GetPromiseFromDragManager
  267.             // reserved08 -- GetDataFromDragManager
  268.             // reserved09 -- CanEmbed
  269.             // reserved10 -- CanIncorporate
  270.             reserved11,
  271.             reserved12,
  272.             reserved13,
  273.             reserved14,
  274.             reserved15,
  275.             reserved16,
  276.             reserved17,
  277.             reserved18,
  278.             reserved19,
  279.             reserved20,
  280.             reserved21,
  281.             reserved22,
  282.             reserved23,
  283.             reserved24,
  284.             reserved25,
  285.             reserved26,
  286.             reserved27,
  287.             reserved28,
  288.             reserved29,
  289.             reserved30,
  290.             reserved31,
  291.             reserved32,
  292.             reserved33,
  293.             reserved34,
  294.             reserved35,
  295.             reserved36,
  296.             reserved37,
  297.             reserved38,
  298.             reserved39,
  299.             reserved40,
  300.             reserved41,
  301.             reserved42,
  302.             reserved43,
  303.             reserved44,
  304.             reserved45,
  305.             reserved46,
  306.             reserved47,
  307.             reserved48,
  308.             reserved49;
  309. #endif  // __PRIVATE__
  310.  
  311.             majorversion = 1; minorversion = 0;
  312.     
  313.             passthru C_h = 
  314.                 ""
  315.                 "";
  316.  
  317.             passthru C_xh = 
  318. #ifdef __PRIVATE__
  319.                 ""
  320.                 "class LinkedList;"
  321. #endif
  322.                 "";
  323.  
  324. #ifdef __PRIVATE__
  325.             passthru C_xih = 
  326.                 ""
  327.                 "class LinkedList;"
  328.                 "class OpenHashTable;"
  329.                 "";
  330.                 
  331.             ODSession                    fSession;
  332.             ODWindowState                fWindowState;
  333.             ODStorageSystem                fStorageSystem;
  334.             LinkedList                    *fDragItemList;
  335.             ODBoolean                    fListFromHandler;
  336.             ODDragItemIterator            fDragItemIterator;
  337.             ODULong                        fAttributes;
  338.             ODPlatformDragReference        fDragReference;
  339.             ODFacet                        fPrevFacet;
  340.             ODFrame                        fSourceFrame;
  341.             ODPart                        fSourcePart;
  342.             ODFacet                        fDestFacet;
  343.                                         
  344.             ODBoolean                    fHasLeftSourceFrame;
  345.             ODBoolean                    fHasLeftSourcePart;
  346.                                         
  347.             ODULong                        fDropResult;
  348.                                         
  349.             OpenHashTable                *fFacetsRejected;
  350.                                         
  351.             ODBoolean                    fNeverDrop;                    //  are these 5 still needed?
  352.             ODPtr                        fDragInform;
  353.             ODPtr                        fDragItem;
  354.             ODPoint                        fLocalMouse;
  355.             LinkedList                    *fDragGarbageList;
  356.                                         
  357.             ODBoolean                      fRenderCompleteReceived;    // [140007]
  358.             ODUShort                       fRenderCompleteFlag;
  359.             ODUShort                       fDragOperation;
  360.             ODULong                        fulItemID;
  361.  
  362. #endif //# __PRIVATE__
  363.     };
  364. #endif //# __SOMIDL__
  365. };
  366.  
  367. #endif // _DRAGDROP_
  368.