home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / odtlktv4.zip / ODTLKT / TOOLKIT / IDL / WPJOB.IDL < prev    next >
Text File  |  1995-11-08  |  5KB  |  183 lines

  1.  
  2. //  Module Header
  3. //
  4. //  Module Name: WPJOB
  5. //
  6. //  OS/2 Presentation Manager Workplace class definitions
  7. //
  8. //  Copyright (c) International Business Machines Corporation 1991, 1992
  9. //
  10.  
  11. #ifndef wpjob_idl
  12. #define wpjob_idl
  13.  
  14. #include "wptrans.idl"
  15. #include <somcls.idl>
  16. #include <wprttype.idl>                                                //@WPSOM2
  17.  
  18. interface WPPrinter;
  19. interface M_WPJob;
  20.  
  21. interface WPJob : WPTransient
  22.  
  23. //
  24. // CLASS: WPJob
  25. //
  26. // CLASS HIERARCHY:
  27. //    SOMObject
  28. //      └── WPObject
  29. //            └── WPTransient
  30. //                  └── WPJob
  31. //
  32. // DESCRIPTION:
  33. //    This is the job object class.
  34. //    An instance of this class is created by the Print Destination object
  35. //    in its icon or detail view.
  36. //
  37.  
  38. {
  39.   BOOL wpDeleteJob();
  40.  
  41.   // Delete a job object
  42.  
  43.   BOOL wpHoldJob();
  44.  
  45.   // Hold printing a job object
  46.  
  47.   BOOL wpReleaseJob();
  48.  
  49.   // Release printing a job object
  50.  
  51.   BOOL wpPrintJobNext();
  52.  
  53.   // Move this job object to be printed next
  54.  
  55.   BOOL wpStartJobAgain();
  56.  
  57.   // Start the job again
  58.  
  59.   // 85254
  60.   WPObject wpQueryPrintObject();
  61.   // Return a pointer to the PrintObject this job is in.
  62.  
  63.   ULONG wpQueryJobId();
  64.   // Returns the JobId of this job
  65.  
  66.   BOOL  wpQueryJobFile(in PSZ pBuf, in PULONG pcbBuf );
  67.   // Return the spool file name in the pBuf
  68.  
  69.   BOOL  wpQueryJobType(in PSZ pBuf, in PULONG pcbBuf);
  70.   // Return the job type int pBuf
  71.  
  72.  
  73. #ifdef __SOMIDL__
  74.   implementation {
  75.  
  76.     releaseorder: prtGetJobID,prtSetJobID,prtGetJobInfo2,prtSetJobInfo2,
  77.                   prtGetJobInfo3,prtSetJobInfo3,prtFreeJobInfo2,prtFreeJobInfo3,
  78.                   prtGetPDObject,prtSetPDObject,prtGetDocument,prtSetDocument,
  79.                   prtDupJobInfo2,prtDupJobInfo3,wpDeleteJob,wpHoldJob,
  80.                   wpReleaseJob,wpPrintJobNext,wpStartJobAgain,
  81.                   wpQueryPrintObject,
  82.                   wpQueryJobId,
  83.                   wpQueryJobFile,
  84.                   wpQueryJobType,
  85.                   prtGetJobInfo4, prtSetJobInfo4,
  86.                   prtFreeJobInfo4,prtDupJobInfo4;
  87.  
  88.            //@85252 added wpQueryPrintobject ..., wpQueryJobType
  89.            //@BIDI  added prtGetJobInfo4, ... , prtDupJobInfo4
  90.  
  91.     externalstem = WPjob;
  92.     local;
  93.     externalprefix = job_;
  94.     majorversion = 1;
  95.     minorversion = 1;
  96.     filestem = wpjob;
  97.     metaclass = M_WPJob;
  98.     callstyle = oidl;
  99.  
  100.     passthru C_h =      ""
  101. "/* common context menu ids */"
  102. "#define WPPOICM_JOB_MENU            5000"
  103. "#define WPPOIDM_JOB_COPY            5001"
  104. "#define WPPOIDM_JOB_DEL             5002"
  105. "#define WPPOIDM_JOB_STATUS          5013"
  106. "#define WPPOIDM_JOB_HOLD            5009"
  107. "#define WPPOIDM_JOB_RELEASE         5008"
  108. "#define WPPOIDM_JOB_STARTAGAIN      5006"
  109. "#define WPPOIDM_JOB_PRINTNEXT       5007"
  110. "#define WPPOICM_JOB_OPENMENU        5050"
  111. "#define WPPOIDM_JOB_CONTENT         5011"
  112. "";
  113.  
  114.     PSZ pszDocument;
  115.     ULONG ulJobID;
  116.     WPPrinter PDself;
  117.     PPRJINFO2 pPrjInfo2;
  118.     PPRJINFO3 pPrjInfo3;
  119.     PPRJINFO4 pPrjInfo4;
  120.     PPRDINFO3 pprdInfo3;
  121.     ULONG ulPrdInfo3Len;
  122.     ULONG ulFlag;
  123.     PUSEITEM pUseItem;
  124.     PSZ       pszJobId;                                                 //@R207R
  125.     PSZ       pszStatus;                                                //@R207R
  126.     PSZ       pszDocumnt;                                               //@R207R
  127.     PSZ       pszOwner;                                                 //@R207R
  128.     CHAR      szDate[12];                                     /* BIDI-TEMP     */
  129.     CHAR      szTime[14];
  130.     HWND      hwndCnr;                                                  //@BIDI
  131.     DRIVDATA DrivData;
  132.  
  133.     wpInitData: override;
  134.     wpUnInitData: override;
  135.     somDumpSelfInt: override;
  136.     wpAddSettingsPages: override;
  137.     wpAddObjectGeneralPage: override;
  138.     wpQueryTitle: override;
  139.     wpQueryIcon: override;
  140.     wpFilterPopupMenu: override;
  141.     wpFree: override;
  142.     wpModifyPopupMenu: override;
  143.     wpMenuItemSelected: override;
  144.     wpMenuItemHelpSelected: override;
  145.     wpOpen: override;
  146.     wpDrop: override;
  147.     wpDragOver: override;
  148.     wpQueryDetailsData: override;
  149.     wpSetTitle: override;
  150.  
  151.  
  152.   };
  153. #endif /* __SOMIDL__ */
  154. };
  155.  
  156. interface M_WPJob
  157. {
  158.  
  159. #ifdef __SOMIDL__
  160.   implementation {
  161.  
  162.     externalstem = WPjob;
  163.     local;
  164.     externalprefix = jobM_;                                            //@WPSOM2
  165.     functionprefix = jobM_;
  166.     majorversion = 1;
  167.     minorversion = 1;
  168.     filestem = wpjob;
  169.     callstyle = oidl;
  170.  
  171.     wpclsQueryTitle: override;
  172.     wpclsQueryIcon: override;
  173.     wpclsQueryDefaultHelp: override;
  174.     wpclsQueryDefaultView: override;
  175.     wpclsQueryDetailsInfo: override;
  176.     wpclsQueryStyle: override;
  177.  
  178.   };
  179. #endif /* __SOMIDL__ */
  180. };
  181.  
  182. #endif  /* wpjob_idl */
  183.