home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / warptlk3.zip / TOOLKIT / IDL / WPPRINT.IDL < prev    next >
Text File  |  1995-08-30  |  7KB  |  203 lines

  1. //  Module Header
  2. //
  3. //  Module Name: WPPRINT
  4. //
  5. //  OS/2 Presentation Manager Workplace class definitions
  6. //
  7. //  Copyright (c) International Business Machines Corporation 1991, 1992
  8. //
  9. #ifndef wpprint_idl
  10. #define wpprint_idl
  11. #include "wpabs.idl"
  12. #include <somcls.idl>
  13. #include <wprttype.idl>
  14. interface M_WPPrinter;
  15. interface WPPrinter : WPAbstract
  16. //
  17. // CLASS: WPPrinter
  18. //
  19. // CLASS HIERARCHY:
  20. //    SOMObject
  21. //      └── WPObject
  22. //            └── WPAbstract
  23. //                  └── WPPrinter
  24. //
  25. // DESCRIPTION:
  26. //    This is the print destination object class.
  27. //    An instance of this class can be created as a Workplace object.
  28. //    An instance of this class is created initially by the system in
  29. //    its template form.  It has the title "Create print destination"
  30. //    and resides in the "Templates" folder.  Instances of this class
  31. //    are also created initially by the system for each print destination
  32. //    configured.  Each instance will have a title corresponding to the
  33. //    description of the configured queue and printer and will reside on
  34. //    the desktop.
  35. //
  36. {
  37.   BOOL wpDeleteAllJobs();
  38.   BOOL wpHoldPrinter();
  39.   BOOL wpReleasePrinter();
  40.   ULONG wpQueryComputerName(in PSZ pszComputerName);
  41.   BOOL wpQueryPrinterName(in PSZ pszPrinterName);
  42.   BOOL wpSetComputerName(in PSZ pszComputerName);
  43.   BOOL wpSetPrinterName(in PSZ pszPrinterName);
  44.   BOOL wpSetDefaultPrinter();
  45.   BOOL  wpSetQueueOptions(in ULONG ulOptions);
  46.   ULONG wpQueryQueueOptions();
  47.   BOOL  wpSetRemoteOptions(in ULONG ulRefreshInterval, in ULONG flAllJobs);
  48.   BOOL  wpQueryRemoteOptions(in PULONG pulRefreshInterval,in PULONG pflAllJobs);
  49.   BOOL  wpJobAdded(in ULONG ulJobId);
  50.   BOOL  wpJobChanged(in ULONG ulJobId, in ULONG ulField);
  51.   BOOL  wpJobDeleted(in ULONG ulJobId);
  52. #ifdef __SOMIDL__
  53.   implementation {
  54.     releaseorder: pdvNew,pdvOpen,pdvPrintDestType,pdvQueueName,pdvComputerName,
  55.                   pdvSetViewStatus,pdvSetDialogPrintFlag,pdvIsDialogPrintOn,
  56.                   pdvGetJobFolderhWnd,pdvSetPrintDestType,pdvSetQueueName,
  57.                   pdvSetComputerName,pdvSetTitle,pdvHoldQueue,pdvReleaseQueue,
  58.                   pdvChangeQueue,pdvAddJob,pdvDeleteJob,pdvDeleteAllJob,
  59.                   pdvHoldJob,pdvReleaseJob,pdvChangeJob,pdvHasThisPort,
  60.                   pdvHasThisPDriver,pdvHasThisQDriver,pdvGetQueueObject,
  61.                   pdvGetCountryData,pdvSetCountryData,pdvGetJobDetailTable,
  62.                   pdvGetJobFieldInfo,pdvPrintPD,pdvFreePrintDest,pdvNewRemote,
  63.                   pdvCopyRemote,pdvCapabilities,pdvSetCapabilities,
  64.                   pdvLogonName,pdvSetLogonName,pdvLocalPrintDriverOnly,
  65.                   pdvSetLocalPrintDriverOnly,pdvRemotePDriverList,
  66.                   pdvSetRemotePDriverList,pdvPrintSpecificFormat,pdvSetPrintSpecificFormat,
  67.                   pdvRemoteAdminCopy,pdvRemoteAdminCreate,pdvRemoteAdminDelete,
  68.                   pdvAddJobViewer,pdvDelJobViewer,pdvTimerTicks,pdvSetTimerTicks,
  69.                   wpDeleteAllJobs,wpHoldPrinter,wpReleasePrinter,wpQueryComputerName,
  70.                   wpQueryPrinterName,wpSetComputerName,wpSetPrinterName,
  71.                   wpSetDefaultPrinter,pdvSetLSAlias,pdvLSAlias,pdvLocalAlias,
  72.                   pdvSetLocalAlias,pdvRemoteJobView,pdvSetRemoteData,
  73.                   pdvCopy,pdvSetJobDetailTable,pdvGetQueueStatusLine,
  74.                   pdvSetQueueStatusLine,pdvGetNewDlg,pdvSetNewDlg,
  75.                   pdvGetLastRefreshTime,pdvSetLastRefreshTime,
  76.                   wpSetQueueOptions, wpQueryQueueOptions,
  77.                   wpSetRemoteOptions, wpQueryRemoteOptions,
  78.                   wpJobAdded, wpJobChanged, wpJobDeleted;
  79.     externalstem = WPprint;
  80.     local;
  81.     externalprefix = pdv_;
  82.     majorversion = 1;
  83.     minorversion = 1;
  84.     filestem = wpprint;
  85.     metaclass = M_WPPrinter;
  86.     callstyle = oidl;
  87.     passthru C_ih =     ""
  88. "#define WPPRINT_VERSION_MAJOR  1"
  89. "#define WPPRINT_VERSION_MINOR  1"
  90. " "
  91. "#define PRTDEST_STRING_TYPE               1"
  92. "#define PRTDEST_PDNAME_LEN                2"
  93. "#define PRTDEST_PDNAME_STRING             3"
  94. "#define PRTDEST_COMPUTERNAME_LEN          4"
  95. "#define PRTDEST_COMPUTERNAME_STRING       5"
  96. "#define PRTDEST_COMMENT_LEN               6"
  97. "#define PRTDEST_COMMENT_STRING            7"
  98. "        //"
  99. "        // 8 UNUSED NOW    "
  100. "        //"
  101. "#define PRTDEST_VIEW_STATUS               8"
  102. "#define PRTDEST_DLG_PRINT                 9"
  103. "#define PRTDEST_REFRESH                   10"
  104. "#define PRTDEST_ALLJOBS                   11"
  105. "#define PRTDEST_ALIASNAME_LEN             12"
  106. "#define PRTDEST_ALIASNAME_STRING          13"
  107. "#define PRTDEST_LOCALPRINTDRIVERONLY      14"
  108. "        //"
  109. "        // 15 UNUSED NOW   "
  110. "        //"
  111. "#define PRTDEST_PRINTSPECIFICFORMAT       15"
  112. "#define PRTDEST_REMOTEPDRIVERLIST         16"
  113. " "
  114. "HMODULE  hmod;"
  115. "";
  116. passthru  C_h =
  117. ""
  118. "/*"
  119. " * Passthru flags for QueueOptions methods"
  120. " */"
  121. ""
  122. "#define PO_PRINTERSPECIFICFORMAT     0x00000001"
  123. "#define PO_PRINTWHILESPOOLING        0x00000002"
  124. "#define PO_APPDEFAULT                0x00000004"
  125. "#define PO_JOBDIALOGBEFOREPRINT      0x00010000"
  126. ""
  127. "/*"
  128. " * _wpJobChanged ulField values for when job is held or released"
  129. " */"
  130. "#define PO_JOB_HELD                  0x00000080"
  131. "#define PO_JOB_RELEASE               0x00000081"
  132. ""
  133. "/* common context menu ids */"
  134. ""
  135. "#define WPPOICM_PD_OPENMENU         6000"
  136. "#define WPPOIDM_PD_ICON             9010"
  137. "#define WPPOIDM_PD_DETAIL           9009"
  138. "#define WPPOICM_PD_MENU             9000"
  139. "#define WPPOIDM_PD_STATUS           9003"
  140. "#define WPPOIDM_PD_HOLD             9004"
  141. "#define WPPOIDM_PD_RELEASE          9005"
  142. "#define WPPOIDM_PD_DELETE_JOBS      9016"
  143. "#define WPPOIDM_PD_REFRESH          9013"
  144. "#define WPPOIDM_PD_DEFAULT          9100"
  145. "#define WPPOIDM_PD_INSTALL          8001"
  146. "";
  147.     wpInitData: override;
  148.     wpUnInitData: override;
  149.     somDumpSelfInt: override;
  150.     wpSetTitle: override;
  151.     wpSaveState: override;
  152.     wpRestoreState: override;
  153.     wpAddSettingsPages: override;
  154.     wpQueryTitle: override;
  155.     wpQueryIcon: override;
  156.     wpSetIcon: override;
  157.     wpFilterPopupMenu: override;
  158.     wpFree: override;
  159.     wpModifyPopupMenu: override;
  160.     wpMenuItemSelected: override;
  161.     wpMenuItemHelpSelected: override;
  162.     wpQueryDefaultHelp: override;
  163.     wpOpen: override;
  164.     wpDrop: override;
  165.     wpDragOver: override;
  166.     wpCreateAnother: override;
  167.     wpCopyObject: override;
  168.     wpCopiedFromTemplate: override;
  169.     wpCreateFromTemplate: override;
  170.     wpQueryStyle: override;
  171.     wpMoveObject: override;
  172.     wpCreateShadowObject: override;
  173.     wpQueryIconData: override;
  174.     wpSetIconData: override;
  175.     wpSetup: override;
  176.     wpSetDefaultView:override;
  177.   };
  178. #endif /* __SOMIDL__ */
  179. };
  180. interface M_WPPrinter
  181. {
  182. #ifdef __SOMIDL__
  183.   implementation {
  184.     externalstem = WPprint;
  185.     local;
  186.     externalprefix = pdvM_;
  187.     functionprefix = pdvM_;
  188.     majorversion = 1;
  189.     minorversion = 1;
  190.     filestem = wpprint;
  191.     callstyle = oidl;
  192.     wpclsQueryTitle: override;
  193.     wpclsQueryIcon: override;
  194.     wpclsQueryDefaultHelp: override;
  195.     wpclsQueryDefaultView: override;
  196.     wpclsQueryStyle: override;
  197.     wpclsQueryIconData: override;
  198.     wpclsInitData: override;
  199.   };
  200. #endif /* __SOMIDL__ */
  201. };
  202. #endif  /* wpprint_idl */
  203.