Graphics.Win32.Menu

Win32-2.14.2.1: A binding to Windows Win32 API.

Copyright | (c) Alastair Reid 1997-2003
License | BSD-style (see the file libraries/base/LICENSE)
Maintainer | Esa Ilari Vuokko <ei@vuokko.info>
Stability | provisional
Portability | portable
Safe Haskell | Safe
Language | Haskell2010

Graphics.Win32.Menu

Description

A collection of FFI declarations for interfacing with Win32.

# Documentation

type MenuName = LPCTSTR Source #

checkMenuItem :: HMENU -> MenuItem -> MenuFlag -> IO Bool Source #

c_CheckMenuItem :: HMENU -> UINT -> UINT -> IO DWORD Source #

checkMenuRadioItem :: HMENU -> MenuItem -> MenuItem -> MenuItem -> MenuFlag -> IO () Source #

c_CheckMenuRadioItem :: HMENU -> UINT -> UINT -> UINT -> UINT -> IO Bool Source #

createMenu :: IO HMENU Source #

c_CreateMenu :: IO HMENU Source #

createPopupMenu :: IO HMENU Source #

c_CreatePopupMenu :: IO HMENU Source #

drawMenuBar :: HWND -> IO () Source #

c_DrawMenuBar :: HWND -> IO Bool Source #

type MenuState = MenuFlag Source #

enableMenuItem :: HMENU -> MenuItem -> MenuFlag -> IO MenuState Source #

c_EnableMenuItem :: HMENU -> UINT -> UINT -> IO MenuState Source #

type GMDIFlag = UINT Source #

type MenuFlag = UINT Source #

gMDI_USEDISABLED :: GMDIFlag Source #

gMDI_GOINTOPOPUPS :: GMDIFlag Source #

mF_BYCOMMAND :: MenuFlag Source #

mF_BYPOSITION :: MenuFlag Source #

mF_CHECKED :: MenuFlag Source #

type MenuItem = UINT Source #

mF_INSERT :: MenuItem Source #

mF_CHANGE :: MenuItem Source #

mF_APPEND :: MenuItem Source #

mF_DELETE :: MenuItem Source #

mF_REMOVE :: MenuItem Source #

mF_USECHECKBITMAPS :: MenuItem Source #

mF_POPUP :: MenuItem Source #

mFT_STRING :: MenuFlag Source #

mF_SYSMENU :: MenuItem Source #

mFT_BITMAP :: MenuFlag Source #

mF_HELP :: MenuItem Source #

mFT_MENUBARBREAK :: MenuFlag Source #

mF_MOUSESELECT :: MenuItem Source #

mFT_MENUBREAK :: MenuFlag Source #

mF_END :: MenuItem Source #

mFT_OWNERDRAW :: MenuFlag Source #

mFT_RADIOCHECK :: MenuFlag Source #

mFT_SEPARATOR :: MenuFlag Source #

mFS_GRAYED :: MenuState Source #

mFT_RIGHTORDER :: MenuFlag Source #

mFS_DISABLED :: MenuState Source #

mFT_RIGHTJUSTIFY :: MenuFlag Source #

mFS_CHECKED :: MenuState Source #

mFS_HILITE :: MenuState Source #

mFS_ENABLED :: MenuState Source #

type TrackMenuFlag = UINT Source #

mFS_UNCHECKED :: MenuState Source #

mFS_UNHILITE :: MenuState Source #

tPM_LEFTBUTTON :: TrackMenuFlag Source #

mFS_DEFAULT :: MenuState Source #

tPM_RIGHTBUTTON :: TrackMenuFlag Source #

tPM_LEFTALIGN :: TrackMenuFlag Source #

tPM_CENTERALIGN :: TrackMenuFlag Source #

tPM_RIGHTALIGN :: TrackMenuFlag Source #

tPM_TOPALIGN :: TrackMenuFlag Source #

tPM_VCENTERALIGN :: TrackMenuFlag Source #

tPM_BOTTOMALIGN :: TrackMenuFlag Source #

type SystemMenuCommand = UINT Source #

tPM_HORIZONTAL :: TrackMenuFlag Source #

sC_SIZE :: SystemMenuCommand Source #

tPM_VERTICAL :: TrackMenuFlag Source #

sC_MOVE :: SystemMenuCommand Source #

tPM_NONOTIFY :: TrackMenuFlag Source #

sC_MINIMIZE :: SystemMenuCommand Source #

tPM_RETURNCMD :: TrackMenuFlag Source #

sC_MAXIMIZE :: SystemMenuCommand Source #

sC_NEXTWINDOW :: SystemMenuCommand Source #

sC_PREVWINDOW :: SystemMenuCommand Source #

sC_CLOSE :: SystemMenuCommand Source #

sC_VSCROLL :: SystemMenuCommand Source #

sC_HSCROLL :: SystemMenuCommand Source #

sC_MOUSEMENU :: SystemMenuCommand Source #

sC_KEYMENU :: SystemMenuCommand Source #

sC_ARRANGE :: SystemMenuCommand Source #

isMenu :: HMENU -> IO Bool Source #

sC_RESTORE :: SystemMenuCommand Source #

getSystemMenu :: HWND -> Bool -> IO (Maybe HMENU) Source #

sC_TASKLIST :: SystemMenuCommand Source #

c_GetSystemMenu :: HWND -> Bool -> IO HMENU Source #

sC_SCREENSAVE :: SystemMenuCommand Source #

sC_HOTKEY :: SystemMenuCommand Source #

getMenu :: HWND -> IO (Maybe HMENU) Source #

sC_DEFAULT :: SystemMenuCommand Source #

c_GetMenu :: HWND -> IO HMENU Source #

sC_MONITORPOWER :: SystemMenuCommand Source #

sC_CONTEXTHELP :: SystemMenuCommand Source #

getMenuDefaultItem :: HMENU -> Bool -> GMDIFlag -> IO MenuItem Source #

sC_SEPARATOR :: SystemMenuCommand Source #

c_GetMenuDefaultItem :: HMENU -> Bool -> UINT -> IO UINT Source #

getMenuState :: HMENU -> MenuItem -> MenuFlag -> IO MenuState Source #

c_GetMenuState :: HMENU -> UINT -> UINT -> IO MenuState Source #

getSubMenu :: HMENU -> MenuItem -> IO (Maybe HMENU) Source #

c_GetSubMenu :: HMENU -> UINT -> IO HMENU Source #

setMenu :: HWND -> HMENU -> IO () Source #

c_SetMenu :: HWND -> HMENU -> IO Bool Source #

getMenuItemCount :: HMENU -> IO Int Source #

c_GetMenuItemCount :: HMENU -> IO Int Source #

type MenuID = UINT Source #

getMenuItemID :: HMENU -> MenuItem -> IO MenuID Source #

c_GetMenuItemID :: HMENU -> UINT -> IO MenuID Source #

data MenuItemInfo Source #

Constructors

MenuItemInfo |
Fields menuItemType :: MenuFlag menuItemState :: MenuState menuItemID :: UINT menuItemSubMenu :: HMENU menuItemBitmapChecked :: HBITMAP menuItemBitmapUnchecked :: HBITMAP menuItemData :: DWORD menuItemTypeData :: String

peekMenuItemInfo :: Ptr MenuItemInfo -> IO MenuItemInfo Source #

allocaMenuItemInfo :: (Ptr MenuItemInfo -> IO a) -> IO a Source #

withMenuItemInfo :: MenuItemInfo -> (Ptr MenuItemInfo -> IO a) -> IO a Source #

type MenuItemMask = UINT Source #

mIIM_CHECKMARKS :: MenuItemMask Source #

mIIM_DATA :: MenuItemMask Source #

mIIM_ID :: MenuItemMask Source #

mIIM_STATE :: MenuItemMask Source #

mIIM_SUBMENU :: MenuItemMask Source #

pokeFMask :: Ptr MenuItemInfo -> MenuItemMask -> IO () Source #

mIIM_TYPE :: MenuItemMask Source #

getMenuItemInfo :: HMENU -> MenuItem -> Bool -> MenuItemMask -> IO MenuItemInfo Source #

c_GetMenuItemInfo :: HMENU -> UINT -> Bool -> Ptr MenuItemInfo -> IO Bool Source #

getMenuItemRect :: HWND -> HMENU -> MenuItem -> IO RECT Source #

c_GetMenuItemRect :: HWND -> HMENU -> UINT -> LPRECT -> IO Bool Source #

hiliteMenuItem :: HWND -> HMENU -> MenuItem -> MenuFlag -> IO Bool Source #

insertMenuItem :: HMENU -> MenuItem -> Bool -> MenuItemInfo -> IO () Source #

c_InsertMenuItem :: HMENU -> UINT -> Bool -> Ptr MenuItemInfo -> IO Bool Source #

type Menu = LPCTSTR Source #

loadMenu :: Maybe HINSTANCE -> Menu -> IO HMENU Source #

c_LoadMenu :: HINSTANCE -> Menu -> IO HMENU Source #

menuItemFromPoint :: HWND -> HMENU -> POINT -> IO UINT Source #

setMenuDefaultItem :: HMENU -> MenuItem -> Bool -> IO () Source #

c_SetMenuDefaultItem :: HMENU -> MenuItem -> Bool -> IO Bool Source #

setMenuItemBitmaps :: HMENU -> MenuItem -> MenuFlag -> HBITMAP -> HBITMAP -> IO () Source #

c_SetMenuItemBitmaps :: HMENU -> UINT -> UINT -> HBITMAP -> HBITMAP -> IO Bool Source #

destroyMenu :: HMENU -> IO () Source #

c_DestroyMenu :: HMENU -> IO Bool Source #

deleteMenu :: HMENU -> MenuItem -> MenuFlag -> IO () Source #

c_DeleteMenu :: HMENU -> UINT -> UINT -> IO Bool Source #

setMenuItemInfo :: HMENU -> MenuItem -> Bool -> MenuItemMask -> MenuItemInfo -> IO () Source #

c_SetMenuItemInfo :: HMENU -> UINT -> Bool -> Ptr MenuItemInfo -> IO Bool Source #

trackPopupMenu :: HMENU -> TrackMenuFlag -> Int -> Int -> HWND -> RECT -> IO () Source #

c_TrackPopupMenu :: HMENU -> TrackMenuFlag -> Int -> Int -> Int -> HWND -> LPRECT -> IO Bool Source #

type TPMPARAMS = () Source #

withTPMPARAMS :: Ptr RECT -> (Ptr TPMPARAMS -> IO a) -> IO a Source #

trackPopupMenuEx :: HMENU -> TrackMenuFlag -> Int -> Int -> HWND -> Maybe (Ptr RECT) -> IO () Source #

c_TrackPopupMenuEx :: HMENU -> TrackMenuFlag -> Int -> Int -> HWND -> Ptr TPMPARAMS -> IO Bool Source #

appendMenu :: HMENU -> MenuFlag -> MenuID -> Maybe String -> IO () Source #

c_AppendMenu :: HMENU -> UINT -> MenuID -> LPCTSTR -> IO Bool Source #

insertMenu :: HMENU -> MenuItem -> MenuFlag -> MenuID -> Maybe String -> IO () Source #

c_InsertMenu :: HMENU -> UINT -> UINT -> MenuID -> LPCTSTR -> IO Bool Source #

modifyMenu :: HMENU -> MenuItem -> MenuFlag -> MenuID -> Maybe String -> IO () Source #

c_ModifyMenu :: HMENU -> UINT -> UINT -> MenuID -> LPCTSTR -> IO Bool Source #

removeMenu :: HMENU -> MenuItem -> MenuFlag -> IO () Source #

c_RemoveMenu :: HMENU -> UINT -> UINT -> IO Bool Source #