home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / odtlktv4.zip / ODTLKT / TOOLKIT / IDL / MENUBAR.IDL < prev    next >
Text File  |  1995-12-13  |  8KB  |  275 lines

  1. /********************************************************************/
  2. /*  Licensed Materials - Property of IBM                            */
  3. /*                                                                  */
  4. /*                                                                  */
  5. /* Copyright (C) International Business Machines Corp., 1994.       */
  6. /* Copyright (C) Apple Computer, Inc., 1994                         */
  7. /*                                                                  */
  8. /*  US Government Users Restricted Rights -                         */
  9. /*  Use, duplication, or disclosure restricted                      */
  10. /*  by GSA ADP Schedule Contract with IBM Corp.                     */
  11. /*                                                                  */
  12. /*                                                                  */
  13. /********************************************************************/
  14.  
  15. #ifndef _MENUBAR_
  16. #define _MENUBAR_
  17.  
  18. #ifndef _REFCTOBJ_
  19. #include "RefCtObj.idl"
  20. #endif
  21.  
  22. #ifdef _PLATFORM_OS2_
  23. #ifndef _ODTYPESM_
  24. #include "odtypesm.idl"
  25. #endif
  26. #endif
  27.  
  28. //=====================================================================================
  29. // Classes defined in this interface
  30. //=====================================================================================
  31.  
  32. interface  ODMenuBar;
  33.  
  34. //=====================================================================================
  35. // Classes used by this interface
  36. //=====================================================================================
  37.  
  38. interface  ODSession;
  39. interface  ODPart;
  40. #ifdef _PLATFORM_OS2_
  41. interface  ODFrame;
  42. #endif
  43.  
  44.  
  45. //=====================================================================================
  46. // Class ODMenuBar
  47. //=====================================================================================
  48.  
  49. interface ODMenuBar :  ODRefCntObject
  50. {
  51.   void Display();
  52.  
  53.   ODMenuBar Copy();
  54.  
  55.   void AddMenuLast(in ODMenuID menuID,
  56.            in ODPlatformMenu menu,
  57.            in ODPart part);
  58.  
  59.   void AddMenuBefore(in ODMenuID menuID,
  60.              in ODPlatformMenu menu,
  61.              in ODPart part,
  62.              in ODMenuID beforeID);
  63.  
  64.   void RemoveMenu(in ODMenuID menu);
  65.  
  66.   ODPlatformMenu GetMenu(in ODMenuID menu);
  67.  
  68.   ODBoolean IsValid();
  69.  
  70. #ifdef _PLATFORM_MACINTOSH_
  71.  
  72.   void AddSubMenu(in ODMenuID menuID,
  73.               in ODPlatformMenu menu,
  74.            in ODPart part);
  75.  
  76.   void RegisterCommand(in ODCommandID command,
  77.                in ODMenuID menu,
  78.             in ODMenuItemID menuItem);
  79.  
  80.   void UnregisterCommand(in ODCommandID command);
  81.  
  82.   void UnregisterAll();
  83.  
  84.   ODBoolean IsCommandRegistered(in ODCommandID command);
  85.  
  86.   ODBoolean IsCommandSynthetic(in ODCommandID command);
  87.  
  88.   ODCommandID GetCommand(in ODMenuID menu,
  89.                in ODMenuItemID menuItem);
  90.  
  91.   void GetMenuAndItem(in ODCommandID command,
  92.             out ODMenuID menu,
  93.             out ODMenuItemID menuItem);
  94.  
  95.    void EnableCommand(in ODCommandID cmdNumber,
  96.                in ODBoolean enable);
  97.  
  98.    void CheckCommand(in ODCommandID cmdNumber,
  99.               in ODBoolean check);
  100.  
  101.    void EnableAndCheckCommand(in ODCommandID cmdNumber,
  102.                    in ODBoolean enable,
  103.                 in ODBoolean check) ;
  104.  
  105.   void SetItemString(in ODCommandID cmdNumber,
  106.                in ODIText itemString);
  107.  
  108.    void GetItemString(in ODCommandID cmdNumber,
  109.                out ODIText itemString);
  110.  
  111.   void DisableAll();
  112.  
  113.   void EnableAll();
  114.  
  115.  
  116. #else
  117.  
  118.    ODUShort GetMenuItemText(in ODMenuID menuID,
  119.                              in ODMenuItemID menuItemID,
  120.                              out string menuItemString);
  121.  
  122.    ODBoolean SetMenuItemText(in ODMenuID menuID,
  123.                              in ODMenuItemID menuItemID,
  124.                              in string menuItemString);
  125.  
  126.    ODBoolean SetHideMenuItem(in ODMenuID menuID,
  127.                              in ODMenuItemID menuItemID);
  128.  
  129.    ODBoolean SetShowMenuItem(in ODMenuID menuID,
  130.                              in ODMenuItemID menuItemID);
  131.  
  132.    ODBoolean CheckMenuItem(in ODMenuID menuID,
  133.                            in ODMenuItemID menuItemID,
  134.                            in ODBoolean check);
  135.  
  136.    ODBoolean EnableMenuItem(in ODMenuID menuID,
  137.                             in ODMenuItemID menuItemID,
  138.                             in ODBoolean enable);
  139.  
  140.    ODBoolean AddMenuItemBefore(in ODMenuID menuID,
  141.                                in ODMenuItemID subMenuID,
  142.                                in ODPlatformMenuItem menuItem,
  143.                                in ODMenuItemID beforeID);
  144.  
  145.    ODBoolean AddMenuItemLast(in ODMenuID menuID,
  146.                              in ODMenuItemID subMenuID,
  147.                              in ODPlatformMenuItem menuItem);
  148.  
  149.    ODBoolean InsertSubmenu(in ODMenuID menuID,
  150.                         in ODMenuItemID subMenuID,
  151.                         in ODPlatformMenu newSubmenu);
  152.  
  153.    ODBoolean Exists(in ODMenuID menuID,
  154.                     in ODMenuItemID menuItemID);
  155.  
  156.    ODBoolean IsItemEnabled(in ODMenuID menuID,
  157.                            in ODMenuItemID menuItemID);
  158.  
  159.    ODBoolean IsItemChecked(in ODMenuID menuID,
  160.                            in ODMenuItemID menuItemID);
  161.  
  162.    ODBoolean AddToAccelTable(in ODULong ulNumberofAccels,
  163.                              in ODACCEL NewAccels);
  164.  
  165.    void RestoreAccelTable();
  166.  
  167.    ODBoolean RemoveMenuItem(in ODMenuID menuID,
  168.                             in ODMenuItemID menuItemID);
  169.  
  170.    ODBoolean GetMenuItem(in ODMenuID menuID,
  171.                          in ODMenuItemID menuItemID,
  172.                          out ODPlatformMenuItem menuItem);
  173.  
  174.    void SetMenuItemStatusText(in ODMenuID menuID,
  175.                               in string menuItemStatusText);
  176.  
  177.    void GetMenuItemStatusText(in ODMenuID menuID,
  178.                               out string menuItemStatusText);
  179.  
  180. #endif
  181.  
  182. #ifdef __SOMIDL__
  183.   implementation
  184.   {
  185.      functionprefix = ODMenuBar;
  186.  
  187.      override:
  188.          somInit,
  189.          somUninit,
  190.          Purge,
  191.          Release;
  192.  
  193.      releaseorder:
  194.          Display,
  195.          Copy,
  196.          AddMenuLast,
  197.          AddMenuBefore,
  198.          RemoveMenu,
  199.          GetMenu,
  200.          IsValid,
  201.  
  202. #ifndef _PLATFORM_OS2_
  203.          AddSubMenu,
  204.          RegisterCommand,
  205.          UnregisterCommand,
  206.          UnregisterAll,
  207.          IsCommandRegistered,
  208.          IsCommandSynthetic,
  209.          GetCommand,
  210.          GetMenuAndItem,
  211.          EnableCommand,
  212.          CheckCommand,
  213.          EnableAndCheckCommand,
  214.          SetItemString,
  215.          GetItemString,
  216.          DisableAll,
  217.          EnableAll,
  218.          reserved1,
  219.          reserved2,
  220.          reserved3,
  221.          reserved4,
  222. #else  //PLATFORM_OS2
  223.          SetMenuItemText,
  224.          GetMenuItemText,
  225.          SetHideMenuItem,
  226.          SetShowMenuItem,
  227.          CheckMenuItem,
  228.          EnableMenuItem,
  229.          AddMenuItemBefore,
  230.          AddMenuItemLast,
  231.          InsertSubmenu,
  232.          Exists,
  233.          IsItemEnabled,
  234.          IsItemChecked,
  235.          AddToAccelTable,
  236.          RestoreAccelTable,
  237.          RemoveMenuItem,
  238.          GetMenuItem,
  239.          SetMenuItemStatusText,
  240.          GetMenuItemStatusText,
  241.          reserved1,
  242.          reserved2,
  243.          reserved3,
  244.          reserved4,
  245.          reserved5,
  246.          reserved6,
  247.          reserved7,
  248.          reserved8,
  249.          reserved9,
  250.          reserved10,
  251.          reserved11,
  252.          reserved12,
  253.          reserved13,
  254.          reserved14,
  255.          reserved15;
  256.  
  257.    passthru C_xh_after =
  258.    ""
  259.        " struct  MENUSTATUSTEXT {"
  260.        "    MENUSTATUSTEXT *  Next;"
  261.        "    ULONG MenuID;"
  262.        "    char   MenuStatusLineTextString [256];"
  263.        "    };"
  264.        " typedef MENUSTATUSTEXT STATTEXT;"
  265.    "";
  266. #endif
  267.  
  268.      majorversion = 1; minorversion = 0;
  269.  
  270.  
  271.   };
  272. #endif // __SOMIDL__
  273. };
  274. #endif // _MENUBAR_
  275.