home *** CD-ROM | disk | FTP | other *** search
/ The Developer Connection…ice Driver Kit for OS/2 3 / DEV3-D1.ISO / devtools / toolkt21 / c / os2h / wppalet.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-05-01  |  14.3 KB  |  491 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: wppalet.h.
  5.  * Generated using:
  6.  *     SOM Precompiler spc: 1.22
  7.  *     SOM Emitter emith: 1.11
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *  Module Header
  13.  * 
  14.  *  Module Name: WPPALET
  15.  * 
  16.  *  OS/2 Presentation Manager Workplace class definitions
  17.  * 
  18.  *  Copyright (c) International Business Machines Corporation 1991, 1992
  19.  * 
  20.  */
  21.  
  22.  
  23. #ifndef wppalet_h
  24. #define wppalet_h
  25.  
  26.  
  27. #include <som.h>
  28.  
  29. /*
  30.  * Define the class name as an object type
  31.  */
  32. #ifndef WPPalette
  33. #define WPPalette SOMAny
  34. #endif
  35. #include "wpabs.h"
  36.  
  37. /*
  38.  * Passthru lines: File: "C.h", "after"
  39.  */
  40.  
  41.       /*
  42.        *  Open view for the wpOpen() method
  43.        */
  44.  
  45.       #define OPEN_PALETTE       121
  46.  
  47.       /*
  48.        *  Palette save-restore keys
  49.        */
  50.  
  51.       #define IDKEY_PALXCELLCOUNT      1000
  52.       #define IDKEY_PALYCELLCOUNT      1001
  53.       #define IDKEY_PALXCELLWIDTH      1002
  54.       #define IDKEY_PALYCELLHEIGHT     1003
  55.       #define IDKEY_PALXGAP            1004
  56.       #define IDKEY_PALYGAP            1005
  57.       #define IDKEY_PALSCREENSIZEX     1006
  58.       #define IDKEY_PALSCREENSIZEY     1007
  59.       #define IDKEY_PALCELLDATA_FIRST  1050
  60.  
  61.       /*
  62.        *  Default palette information
  63.        */
  64.  
  65.       #define DEF_XCELLCOUNT      6
  66.       #define DEF_YCELLCOUNT      5
  67.  
  68.       /*
  69.        *  Variables kept for each open palette window as
  70.        *  a structure pointed to by the QWL_USER window
  71.        *  word ...
  72.        */
  73.  
  74.       typedef struct _CELL
  75.       {
  76.          ULONG       cbData;           /* Size of the data that follows */
  77.  
  78.          /* Class specific cell data follows immediately afterwards -
  79.           * for example the font palette would store the ASCII name of
  80.           * the font, and the color palette would store the RGB color
  81.           * of the cell.
  82.           */
  83.       } CELL;
  84.       typedef CELL *PCELL;
  85.  
  86.       typedef struct _PALINFO
  87.       {
  88.          ULONG       xCellCount;       /* Number of columns of cells */
  89.          ULONG       yCellCount;       /* Number of rows of cells */
  90.          ULONG       xCursor;          /* Cursor location (readonly) */
  91.          ULONG       yCursor;          /* Cursor location (readonly) */
  92.          ULONG       xCellWidth;       /* Width of each cell */
  93.          ULONG       yCellHeight;      /* Height of each cell */
  94.          ULONG       xGap;             /* X separation of cells */
  95.          ULONG       yGap;             /* Y separation of cells */
  96.       } PALINFO;
  97.       typedef PALINFO *PPALINFO;
  98.  
  99.       #define SetPaletteDataPtr( hwnd, pPaletteData ) \
  100.            WinSetWindowULong( hwnd, QWL_USER, (ULONG)pPaletteData )
  101.  
  102.       #define QueryPaletteDataPtr( hwnd ) \
  103.            (PPALETTEDATA)WinQueryWindowULong( hwnd, QWL_USER )
  104.  
  105.       typedef struct _PALETTEDATA
  106.       {
  107.          WPFolder   *Palette;          /* Folder object for this window */
  108.          USEITEM     UseItem;          /* Folder object's INUSE list item */
  109.          VIEWITEM    ViewItem;
  110.          ULONG       xCursor;
  111.          ULONG       yCursor;
  112.       } PALETTEDATA;
  113.       typedef PALETTEDATA *PPALETTEDATA;
  114.  
  115.       typedef struct _CELLSTRUCT
  116.       {
  117.          RECTL       rclCell;          /* Cell coordinates */
  118.          PCELL       pCell;            /* Cell data pointer */
  119.       } CELLSTRUCT;
  120.       typedef CELLSTRUCT *PCELLSTRUCT;
  121.       /*
  122.        *  Miscellaneous
  123.        */
  124.  
  125.       #define PM_INVALIDATECELL WM_USER+1000
  126.  
  127.       /* Macros that act on a PALINFO...
  128.        */
  129.       #define PALETTE_WIDTH(p)  ( p.xCellCount*(p.xCellWidth+p.xGap) )
  130.       #define PALETTE_HEIGHT(p) ( p.yCellCount*(p.yCellHeight+p.yGap) )
  131.       #define ID_PALSCROLLHORZ     8091
  132.       #define ID_PALSCROLLVERT     8092
  133.  
  134.       /* Coordinates (these are in DIALOG UNITS)
  135.        */
  136.       #define CXBUTTON          12       /* Width of a button (with no text) */
  137.       #define CYBUTTON          12       /* Height of a button */
  138.       #define XBUTTONGAP        6
  139.       #define YBUTTONGAP        4
  140.       #define CYBUTTONAREA      (CYBUTTON + 2*YBUTTONGAP)
  141.       #define DEF_XCELLWIDTH    22
  142.       #define DEF_YCELLHEIGHT   16
  143.       #define DEF_XCELLGAP      4
  144.       #define DEF_YCELLGAP      4
  145.  
  146.  
  147.  
  148. #define WPPalette_MajorVersion 1
  149. #define WPPalette_MinorVersion 2
  150.  
  151. /*
  152.  * External name shortening if required
  153.  */
  154. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  155. #define WPPaletteNewClass wppalc
  156. #pragma linkage(wppalc, system)
  157. #define WPPaletteClassData wppald
  158. #define WPPaletteCClassData wppalx
  159. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  160. /*--------------Migration------------*/
  161. #define WPPalette_classObj WPPaletteClassData.classObject
  162. #define _WPPalette WPPalette_classObj
  163.  
  164. /*
  165.  * New and Renew macros for WPPalette
  166.  */
  167. #define _WPPaletteNew() (_somNew(WPPaletteClassData.classObject))
  168. #define WPPaletteNew() \
  169.     ( WPPaletteClassData.classObject \
  170.         ? _WPPaletteNew() \
  171.         : ( WPPaletteNewClass(WPPalette_MajorVersion, WPPalette_MinorVersion), _WPPaletteNew() ) )
  172. #define WPPaletteRenew(buf) \
  173.     ( _somRenew(WPPaletteClassData.classObject, buf) )
  174.  
  175. /*
  176.  * Override method: wpInitData
  177.  */
  178. #define WPPalette_wpInitData(somSelf) \
  179.     WPObject_wpInitData(somSelf)
  180.  
  181. /*
  182.  * Override method: wpUnInitData
  183.  */
  184. #define WPPalette_wpUnInitData(somSelf) \
  185.     WPObject_wpUnInitData(somSelf)
  186.  
  187. /*
  188.  * Override method: wpSetup
  189.  */
  190. #define WPPalette_wpSetup(somSelf,pszSetupString) \
  191.     WPObject_wpSetup(somSelf,pszSetupString)
  192.  
  193. /*
  194.  * Override method: wpSaveState
  195.  */
  196. #define WPPalette_wpSaveState(somSelf) \
  197.     WPObject_wpSaveState(somSelf)
  198.  
  199. /*
  200.  * Override method: wpRestoreState
  201.  */
  202. #define WPPalette_wpRestoreState(somSelf,ulReserved) \
  203.     WPObject_wpRestoreState(somSelf,ulReserved)
  204.  
  205. /*
  206.  * Override method: wpMenuItemSelected
  207.  */
  208. #define WPPalette_wpMenuItemSelected(somSelf,hwndFrame,ulMenuId) \
  209.     WPObject_wpMenuItemSelected(somSelf,hwndFrame,ulMenuId)
  210.  
  211. /*
  212.  * Override method: wpModifyPopupMenu
  213.  */
  214. #define WPPalette_wpModifyPopupMenu(somSelf,hwndMenu,hwndCnr,iPosition) \
  215.     WPObject_wpModifyPopupMenu(somSelf,hwndMenu,hwndCnr,iPosition)
  216.  
  217. /*
  218.  * Override method: wpFilterPopupMenu
  219.  */
  220. #define WPPalette_wpFilterPopupMenu(somSelf,ulFlags,hwndCnr,fMultiSelect) \
  221.     WPObject_wpFilterPopupMenu(somSelf,ulFlags,hwndCnr,fMultiSelect)
  222.  
  223. /*
  224.  * Override method: wpOpen
  225.  */
  226. #define WPPalette_wpOpen(somSelf,hwndCnr,ulView,param) \
  227.     WPObject_wpOpen(somSelf,hwndCnr,ulView,param)
  228.  
  229. /*
  230.  * Override method: wpMenuItemHelpSelected
  231.  */
  232. #define WPPalette_wpMenuItemHelpSelected(somSelf,MenuId) \
  233.     WPObject_wpMenuItemHelpSelected(somSelf,MenuId)
  234.  
  235. /*
  236.  * New Method: wpPaintCell
  237.  */
  238. typedef VOID    SOMLINK somTP_WPPalette_wpPaintCell(WPPalette *somSelf,
  239.         PCELL pCell,
  240.         HPS hps,
  241.         PRECTL prcl,
  242.         BOOL fHilite);
  243. #pragma linkage(somTP_WPPalette_wpPaintCell, system)
  244. typedef somTP_WPPalette_wpPaintCell *somTD_WPPalette_wpPaintCell;
  245. #define somMD_WPPalette_wpPaintCell "----"
  246. #define WPPalette_wpPaintCell(somSelf,pCell,hps,prcl,fHilite) \
  247.     (SOM_Resolve(somSelf, WPPalette, wpPaintCell) \
  248.     (somSelf,pCell,hps,prcl,fHilite))
  249. #define _wpPaintCell WPPalette_wpPaintCell
  250.  
  251. /*
  252.  * New Method: wpSetupCell
  253.  */
  254. typedef BOOL    SOMLINK somTP_WPPalette_wpSetupCell(WPPalette *somSelf,
  255.         PVOID pCellData,
  256.         ULONG cb,
  257.         ULONG x,
  258.         ULONG y);
  259. #pragma linkage(somTP_WPPalette_wpSetupCell, system)
  260. typedef somTP_WPPalette_wpSetupCell *somTD_WPPalette_wpSetupCell;
  261. #define somMD_WPPalette_wpSetupCell "----"
  262. #define WPPalette_wpSetupCell(somSelf,pCellData,cb,x,y) \
  263.     (SOM_Resolve(somSelf, WPPalette, wpSetupCell) \
  264.     (somSelf,pCellData,cb,x,y))
  265. #define _wpSetupCell WPPalette_wpSetupCell
  266.  
  267. /*
  268.  * New Method: wpRedrawCell
  269.  */
  270. typedef BOOL    SOMLINK somTP_WPPalette_wpRedrawCell(WPPalette *somSelf,
  271.         PCELL pCell);
  272. #pragma linkage(somTP_WPPalette_wpRedrawCell, system)
  273. typedef somTP_WPPalette_wpRedrawCell *somTD_WPPalette_wpRedrawCell;
  274. #define somMD_WPPalette_wpRedrawCell "----"
  275. #define WPPalette_wpRedrawCell(somSelf,pCell) \
  276.     (SOM_Resolve(somSelf, WPPalette, wpRedrawCell) \
  277.     (somSelf,pCell))
  278. #define _wpRedrawCell WPPalette_wpRedrawCell
  279.  
  280. /*
  281.  * New Method: wpQueryPaletteInfo
  282.  */
  283. typedef BOOL    SOMLINK somTP_WPPalette_wpQueryPaletteInfo(WPPalette *somSelf,
  284.         PPALINFO pPalInfo);
  285. #pragma linkage(somTP_WPPalette_wpQueryPaletteInfo, system)
  286. typedef somTP_WPPalette_wpQueryPaletteInfo *somTD_WPPalette_wpQueryPaletteInfo;
  287. #define somMD_WPPalette_wpQueryPaletteInfo "----"
  288. #define WPPalette_wpQueryPaletteInfo(somSelf,pPalInfo) \
  289.     (SOM_Resolve(somSelf, WPPalette, wpQueryPaletteInfo) \
  290.     (somSelf,pPalInfo))
  291. #define _wpQueryPaletteInfo WPPalette_wpQueryPaletteInfo
  292.  
  293. /*
  294.  * New Method: wpSetPaletteInfo
  295.  */
  296. typedef BOOL    SOMLINK somTP_WPPalette_wpSetPaletteInfo(WPPalette *somSelf,
  297.         PPALINFO pPalInfo);
  298. #pragma linkage(somTP_WPPalette_wpSetPaletteInfo, system)
  299. typedef somTP_WPPalette_wpSetPaletteInfo *somTD_WPPalette_wpSetPaletteInfo;
  300. #define somMD_WPPalette_wpSetPaletteInfo "----"
  301. #define WPPalette_wpSetPaletteInfo(somSelf,pPalInfo) \
  302.     (SOM_Resolve(somSelf, WPPalette, wpSetPaletteInfo) \
  303.     (somSelf,pPalInfo))
  304. #define _wpSetPaletteInfo WPPalette_wpSetPaletteInfo
  305.  
  306. /*
  307.  * New Method: wpEditCell
  308.  */
  309. typedef BOOL    SOMLINK somTP_WPPalette_wpEditCell(WPPalette *somSelf,
  310.         PCELL pCell,
  311.         HWND hwndPal);
  312. #pragma linkage(somTP_WPPalette_wpEditCell, system)
  313. typedef somTP_WPPalette_wpEditCell *somTD_WPPalette_wpEditCell;
  314. #define somMD_WPPalette_wpEditCell "----"
  315. #define WPPalette_wpEditCell(somSelf,pCell,hwndPal) \
  316.     (SOM_Resolve(somSelf, WPPalette, wpEditCell) \
  317.     (somSelf,pCell,hwndPal))
  318. #define _wpEditCell WPPalette_wpEditCell
  319.  
  320. /*
  321.  * New Method: wpDragCell
  322.  */
  323. typedef BOOL    SOMLINK somTP_WPPalette_wpDragCell(WPPalette *somSelf,
  324.         PCELL pCell,
  325.         HWND hwndPal,
  326.         PPOINTL ptlDrag);
  327. #pragma linkage(somTP_WPPalette_wpDragCell, system)
  328. typedef somTP_WPPalette_wpDragCell *somTD_WPPalette_wpDragCell;
  329. #define somMD_WPPalette_wpDragCell "----"
  330. #define WPPalette_wpDragCell(somSelf,pCell,hwndPal,ptlDrag) \
  331.     (SOM_Resolve(somSelf, WPPalette, wpDragCell) \
  332.     (somSelf,pCell,hwndPal,ptlDrag))
  333. #define _wpDragCell WPPalette_wpDragCell
  334.  
  335. /*
  336.  * New Method: wpQueryPaletteHelp
  337.  */
  338. typedef ULONG    SOMLINK somTP_WPPalette_wpQueryPaletteHelp(WPPalette *somSelf);
  339. #pragma linkage(somTP_WPPalette_wpQueryPaletteHelp, system)
  340. typedef somTP_WPPalette_wpQueryPaletteHelp *somTD_WPPalette_wpQueryPaletteHelp;
  341. #define somMD_WPPalette_wpQueryPaletteHelp "----"
  342. #define WPPalette_wpQueryPaletteHelp(somSelf) \
  343.     (SOM_Resolve(somSelf, WPPalette, wpQueryPaletteHelp) \
  344.     (somSelf))
  345. #define _wpQueryPaletteHelp WPPalette_wpQueryPaletteHelp
  346.  
  347. /*
  348.  * Declare the class creation procedure
  349.  */
  350. SOMEXTERN SOMAny * SOMLINK WPPaletteNewClass(integer4 scemajorVersion,
  351.         integer4 sceminorVersion);
  352. #pragma linkage(WPPaletteNewClass, system)
  353.  
  354. /*
  355.  * Declare the class data structure
  356.  */
  357. SOMEXTERN struct WPPaletteClassDataStructure {
  358.     SOMAny *classObject;
  359.     somMToken wpPaintCell;
  360.     somMToken wpSelectCell;
  361.     somMToken wpSetupCell;
  362.     somMToken wpQueryPaletteInfo;
  363.     somMToken wpSetPaletteInfo;
  364.     somMToken wpEditCell;
  365.     somMToken wpDragCell;
  366.     somMToken withdrawn;
  367.     somMToken wpInitCellStructs;
  368.     somMToken wpRedrawCell;
  369.     somMToken wpPaintPalette;
  370.     somMToken wpMouseAction;
  371.     somMToken wpQueryPaletteHelp;
  372.     somMToken wpShowPalettePointer;
  373. } WPPaletteClassData;
  374.  
  375. /*
  376.  * Declare the C specific class data structure
  377.  */
  378. SOMEXTERN struct WPPaletteCClassDataStructure {
  379.     somMethodTab *parentMtab;
  380.     somDToken instanceDataToken;
  381. } WPPaletteCClassData;
  382.  
  383. #endif       /* wppalet_h */
  384.  
  385. /*
  386.  * This file was generated by the SOM Compiler.
  387.  * FileName: wppalet.h.
  388.  * Generated using:
  389.  *     SOM Precompiler spc: 1.22
  390.  *     SOM Emitter emith: 1.11
  391.  */
  392.  
  393. #ifndef wppalet_mh
  394. #define wppalet_mh
  395.  
  396.  
  397. /*
  398.  * Define the class name as an object type
  399.  */
  400. #ifndef M_WPPalette
  401. #define M_WPPalette SOMAny
  402. #endif
  403.  
  404. #define M_WPPalette_MajorVersion 1
  405. #define M_WPPalette_MinorVersion 2
  406.  
  407. /*
  408.  * External name shortening if required
  409.  */
  410. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  411. #define M_WPPaletteNewClass wppalc
  412. #pragma linkage(wppalc, system)
  413. #define M_WPPaletteClassData wppald
  414. #define M_WPPaletteCClassData wppalx
  415. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  416. /*--------------Migration------------*/
  417. #define M_WPPalette_classObj M_WPPaletteClassData.classObject
  418. #define _M_WPPalette M_WPPalette_classObj
  419.  
  420. /*
  421.  * New and Renew macros for M_WPPalette
  422.  */
  423. #define _M_WPPaletteNew() (_somNew(M_WPPaletteClassData.classObject))
  424. #define M_WPPaletteNew() \
  425.     ( M_WPPaletteClassData.classObject \
  426.         ? _M_WPPaletteNew() \
  427.         : ( M_WPPaletteNewClass(M_WPPalette_MajorVersion, M_WPPalette_MinorVersion), _M_WPPaletteNew() ) )
  428. #define M_WPPaletteRenew(buf) \
  429.     ( _somRenew(M_WPPaletteClassData.classObject, buf) )
  430.  
  431. /*
  432.  * Override method: wpclsQueryTitle
  433.  */
  434. #define M_WPPalette_wpclsQueryTitle(somSelf) \
  435.     M_WPObject_wpclsQueryTitle(somSelf)
  436.  
  437. /*
  438.  * Override method: wpclsQueryStyle
  439.  */
  440. #define M_WPPalette_wpclsQueryStyle(somSelf) \
  441.     M_WPObject_wpclsQueryStyle(somSelf)
  442.  
  443. /*
  444.  * Override method: wpclsQueryDefaultView
  445.  */
  446. #define M_WPPalette_wpclsQueryDefaultView(somSelf) \
  447.     M_WPObject_wpclsQueryDefaultView(somSelf)
  448.  
  449. /*
  450.  * Override method: wpclsQueryDefaultHelp
  451.  */
  452. #define M_WPPalette_wpclsQueryDefaultHelp(somSelf,pHelpPanelId,pszHelpLibrary) \
  453.     M_WPObject_wpclsQueryDefaultHelp(somSelf,pHelpPanelId,pszHelpLibrary)
  454.  
  455. /*
  456.  * New Method: wpclsQueryEditString
  457.  */
  458. typedef PSZ    SOMLINK somTP_M_WPPalette_wpclsQueryEditString(M_WPPalette *somSelf);
  459. #pragma linkage(somTP_M_WPPalette_wpclsQueryEditString, system)
  460. typedef somTP_M_WPPalette_wpclsQueryEditString *somTD_M_WPPalette_wpclsQueryEditString;
  461. #define somMD_M_WPPalette_wpclsQueryEditString "----"
  462. #define M_WPPalette_wpclsQueryEditString(somSelf) \
  463.     (SOM_Resolve(somSelf, M_WPPalette, wpclsQueryEditString) \
  464.     (somSelf))
  465. #define _wpclsQueryEditString M_WPPalette_wpclsQueryEditString
  466.  
  467. /*
  468.  * Declare the class creation procedure
  469.  */
  470. SOMEXTERN SOMAny * SOMLINK M_WPPaletteNewClass(integer4 scemajorVersion,
  471.         integer4 sceminorVersion);
  472. #pragma linkage(M_WPPaletteNewClass, system)
  473.  
  474. /*
  475.  * Declare the class data structure
  476.  */
  477. SOMEXTERN struct M_WPPaletteClassDataStructure {
  478.     SOMAny *classObject;
  479.     somMToken wpclsQueryEditString;
  480. } M_WPPaletteClassData;
  481.  
  482. /*
  483.  * Declare the C specific class data structure
  484.  */
  485. SOMEXTERN struct M_WPPaletteCClassDataStructure {
  486.     somMethodTab *parentMtab;
  487.     somDToken instanceDataToken;
  488. } M_WPPaletteCClassData;
  489.  
  490. #endif       /* wppalet_h */
  491.