-- Automatically generated by HaskellDirect (ihc.exe), snapshot 150305 -- Created: 11:28 GMT Standard Time, Tuesday 29 March, 2005 -- Command line: ClassView.idl module VsClassView ( VSITEMSELECTION(..) , writeVSITEMSELECTION , readVSITEMSELECTION , sizeofVSITEMSELECTION , VSGSIFLAGS(..) , VSGSIFLAGS0 , VSCOMPONENTTYPE(..) , VSCOMPONENTSELECTORDATA(..) , freeVSCOMPONENTSELECTORDATA , writeVSCOMPONENTSELECTORDATA , readVSCOMPONENTSELECTORDATA , sizeofVSCOMPONENTSELECTORDATA , PVSCOMPONENTSELECTORDATA , VSTREEFLAGS(..) , VSTREECLOSEACTIONS(..) , VSTREETEXTOPTIONS(..) , VSTREETOOLTIPTYPE(..) , VSTREEDISPLAYMASK(..) , VSTREEDISPLAYSTATE(..) , VSTREEDISPLAYSTATE , VSTREEDISPLAYDATA(..) , writeVSTREEDISPLAYDATA , readVSTREEDISPLAYDATA , sizeofVSTREEDISPLAYDATA , VSTREESTATECHANGEREFRESH(..) , VSTREEITEMCHANGESMASK(..) , VSTREELISTITEMCHANGE(..) , writeVSTREELISTITEMCHANGE , readVSTREELISTITEMCHANGE , sizeofVSTREELISTITEMCHANGE , getFlags , getItemCount , getExpandedList , locateExpandedList , onClose , getText , getTipText , getExpandable , getDisplayData , updateCounter , getListChanges , toggleState , IVsLiteTreeList(..) , IVsLiteTreeList_(..) , iidIVsLiteTreeList , LIB_CHECKSTATE(..) , LIB_LISTTYPE(..) , LIB_LISTFLAGS(..) , LIB_LISTFLAGS0 , LIB_FLAGS(..) , LIB_PERSISTTYPE(..) , LIB_CATEGORY(..) , LIBCAT_LISTTYPE , LIBCAT_MEMBERTYPE(..) , LIBCAT_MEMBERTYPE0 , LIBCAT_MODIFIERTYPE(..) , LIBCAT_MODIFIERTYPE0 , LIBCAT_MEMBERACCESS(..) , LIBCAT_MEMBERACCESS0 , LIBCAT_CLASSACCESS(..) , LIBCAT_CLASSACCESS0 , LIBCAT_CLASSTYPE(..) , LIBCAT_CLASSTYPE0 , LIBCAT_ACTIVEPROJECT(..) , LIBCAT_ACTIVEPROJECT0 , LIBCAT_VISIBILITY(..) , LIBCAT_VISIBILITY0 , LIBCAT_NODETYPE(..) , LIBCAT_NODETYPE0 , VSOBSEARCHTYPE(..) , VSOBSEARCHOPTIONS(..) , VSOBSEARCHOPTIONS0 , VSOBSEARCHCRITERIA(..) , writeVSOBSEARCHCRITERIA , readVSOBSEARCHCRITERIA , sizeofVSOBSEARCHCRITERIA , VSOBNAVNAMEINFONODE(..) , writeVSOBNAVNAMEINFONODE , readVSOBNAVNAMEINFONODE , sizeofVSOBNAVNAMEINFONODE , VSOBNAVIGATIONINFO2(..) , writeVSOBNAVIGATIONINFO2 , readVSOBNAVIGATIONINFO2 , sizeofVSOBNAVIGATIONINFO2 , VSOBJECTINFO(..) , writeVSOBJECTINFO , readVSOBJECTINFO , sizeofVSOBJECTINFO , VSBROWSECONTAINER(..) , writeVSBROWSECONTAINER , readVSBROWSECONTAINER , sizeofVSBROWSECONTAINER , LIB_ADDREMOVEOPTIONS(..) , LIB_ADDREMOVEOPTIONS0 , getSupportedCategoryFields , getList , getLibList , getLibFlags , updateCounter0 , getGuid , getSeparatorString , loadState , saveState , getBrowseContainersForHierarchy , addBrowseContainer , removeBrowseContainer , IVsLibrary(..) , IVsLibrary_(..) , iidIVsLibrary , getCount , getLibraryAt , getNameAt , toggleCheckAt , getCheckAt , setLibraryGroupEnabled , iidIVsLibraryMgr , IVsLibraryMgr(..) , IVsLibraryMgr_(..) , LIB_LISTCAPABILITIES(..) , LIB_LISTCAPABILITIES0 , VSOBJDESCOPTIONS(..) , VSOBJDESCOPTIONS0 , VSOBJGOTOSRCTYPE(..) , VSOBJCLIPFORMATOPTIONS(..) , VSOBJCLIPFORMATOPTIONS0 , VSOBJCLIPFORMAT(..) , writeVSOBJCLIPFORMAT , readVSOBJCLIPFORMAT , sizeofVSOBJCLIPFORMAT , VSOBJCFFLAGS(..) , VSOBJCFFLAGS0 , VSOBJOPFLAGS(..) , VSOBJOPFLAGS0 , getCapabilities , getList0 , getCategoryField , getExpandable2 , getNavigationInfo , locateNavigationInfo , getBrowseObject , getUserContext , showHelp , getSourceContext , countSourceItems , getMultipleSourceItems , canGoToSource , goToSource , getContextMenu , queryDragDrop , doDragDrop , canRename , doRename , canDelete , doDelete , fillDescription , enumClipboardFormats , getClipboardFormat , getExtendedClipboardVariant , IVsObjectList(..) , IVsObjectList_(..) , iidIVsObjectList , registerLibMgr , unregisterLibMgr , enumLibMgrs , refreshLists , getList1 , IVsObjectManager(..) , IVsObjectManager_(..) , iidIVsObjectManager ) where import Prelude (fromEnum, toEnum) import qualified Prelude import qualified Automation (IDispatch, Variant, allocVARIANT, unmarshallVariant, VARIANT) import qualified Com (writeIUnknown, readIUnknown, GUID, freeBSTR, writeBSTR, writeGUID, readBSTR, readGUID, IUnknown, invokeAndCheck, marshallIUnknown, sizeofGUID, CLSID, sizeofCLSID, unmarshallCLSID, marshallGUID, IID, mkIID) import qualified Data.Bits ((.&.)) import qualified Data.Int (Int32) import qualified Data.Maybe (mapMaybe) import qualified Data.Word (Word32, Word16) import qualified Foreign.ForeignPtr (withForeignPtr, ForeignPtr) import qualified Foreign.Ptr (Ptr) import qualified Foreign.Marshal.Alloc (free) import qualified HDirect (writeWord32, addNCastPtr, readWord32, writeEnum32, readEnum32, Flags(..), pow2Series, orList, writeWord16, writePtr, readWord16, readPtr, sizeofWord32, allocBytes, free, doThenFree, sizeofInt32, sizeofForeignPtr, readInt32, sizeofPtr, marshallEnum32, readunique, marshalllist, marshallref, trivialFree, freeref, sizeofWord16, writeunique, writeMaybe, readMaybe, unmarshallWord32, unmarshalllist) import qualified VsProject (IVsHierarchy) import qualified VsTypes (VSITEMID, VSCOOKIE) import qualified WideString (writeWideString, readWideString, freeWideString, WideString, marshallWideString) import qualified Wtypes (DWORD, LPARAM, LCID, WORD, USHORT, HIMAGELIST, ULONG, BOOL, WCHAR, LPCOLESTR, LPCWSTR, CLIPFORMAT, LONG, FORMATETC, STGMEDIUM, writeFORMATETC, sizeofFORMATETC, writeSTGMEDIUM, sizeofSTGMEDIUM, REFGUID) data VSITEMSELECTION = VSITEMSELECTION {pHier :: (VsProject.IVsHierarchy ()), itemid :: VsTypes.VSITEMID} writeVSITEMSELECTION :: Prelude.Bool -> Foreign.Ptr.Ptr VSITEMSELECTION -> VSITEMSELECTION -> Prelude.IO () writeVSITEMSELECTION addRefMe__ ptr (VSITEMSELECTION pHier itemid) = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do Com.writeIUnknown addRefMe__ pf1 pHier let pf2 = HDirect.addNCastPtr pf1 4 HDirect.writeWord32 pf2 itemid readVSITEMSELECTION :: Prelude.Bool -> Foreign.Ptr.Ptr VSITEMSELECTION -> Prelude.IO VSITEMSELECTION readVSITEMSELECTION finaliseMe__ ptr = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do pHier <- Com.readIUnknown finaliseMe__ pf1 let pf2 = HDirect.addNCastPtr pf1 4 itemid <- HDirect.readWord32 pf2 Prelude.return (VSITEMSELECTION pHier itemid) sizeofVSITEMSELECTION :: Data.Word.Word32 sizeofVSITEMSELECTION = 8 data VSGSIFLAGS = GSI_fOmitHierPtrs instance Prelude.Enum (VSGSIFLAGS) where fromEnum v = case v of GSI_fOmitHierPtrs -> 1 toEnum v = case v of 1 -> GSI_fOmitHierPtrs _ -> Prelude.error "unmarshallVSGSIFLAGS: illegal enum value " type VSGSIFLAGS0 = Wtypes.DWORD data VSCOMPONENTTYPE = VSCOMPONENTTYPE_File | VSCOMPONENTTYPE_ComPlus | VSCOMPONENTTYPE_Com2 | VSCOMPONENTTYPE_Project | VSCOMPONENTTYPE_Custom | VSCOMPONENTTYPE_Path deriving (Prelude.Enum) data VSCOMPONENTSELECTORDATA = VSCOMPONENTSELECTORDATA {dwSize :: Wtypes.DWORD, type0 :: VSCOMPONENTTYPE, bstrTitle :: Prelude.String, bstrFile :: Prelude.String, wFileMajorVersion :: Wtypes.WORD, wFileMinorVersion :: Wtypes.WORD, wFileRevisionNumber :: Wtypes.WORD, wFileBuildNumber :: Wtypes.WORD, guidTypeLibrary :: Com.GUID, wTypeLibraryMajorVersion :: Wtypes.WORD, wTypeLibraryMinorVersion :: Wtypes.WORD, lcidTypeLibrary :: Wtypes.LCID, bstrProjRef :: Prelude.String, lCustom :: Wtypes.LPARAM} freeVSCOMPONENTSELECTORDATA :: Foreign.Ptr.Ptr VSCOMPONENTSELECTORDATA -> Prelude.IO () freeVSCOMPONENTSELECTORDATA ptr = do let struct_ptr__ = HDirect.addNCastPtr ptr 8 Com.freeBSTR struct_ptr__ let struct_ptr__ = HDirect.addNCastPtr ptr 12 Com.freeBSTR struct_ptr__ let struct_ptr__ = HDirect.addNCastPtr ptr 60 Com.freeBSTR struct_ptr__ writeVSCOMPONENTSELECTORDATA :: Foreign.Ptr.Ptr VSCOMPONENTSELECTORDATA -> VSCOMPONENTSELECTORDATA -> Prelude.IO () writeVSCOMPONENTSELECTORDATA ptr (VSCOMPONENTSELECTORDATA dwSize type0 bstrTitle bstrFile wFileMajorVersion wFileMinorVersion wFileRevisionNumber wFileBuildNumber guidTypeLibrary wTypeLibraryMajorVersion wTypeLibraryMinorVersion lcidTypeLibrary bstrProjRef lCustom) = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do HDirect.writeWord32 pf1 dwSize let pf2 = HDirect.addNCastPtr pf1 4 HDirect.writeEnum32 pf2 type0 let pf3 = HDirect.addNCastPtr pf2 4 Com.writeBSTR pf3 bstrTitle let pf4 = HDirect.addNCastPtr pf3 4 Com.writeBSTR pf4 bstrFile let pf5 = HDirect.addNCastPtr pf4 4 HDirect.writeWord32 pf5 wFileMajorVersion let pf6 = HDirect.addNCastPtr pf5 4 HDirect.writeWord32 pf6 wFileMinorVersion let pf7 = HDirect.addNCastPtr pf6 4 HDirect.writeWord32 pf7 wFileRevisionNumber let pf8 = HDirect.addNCastPtr pf7 4 HDirect.writeWord32 pf8 wFileBuildNumber let pf9 = HDirect.addNCastPtr pf8 4 Com.writeGUID pf9 guidTypeLibrary let pf10 = HDirect.addNCastPtr pf9 16 HDirect.writeWord32 pf10 wTypeLibraryMajorVersion let pf11 = HDirect.addNCastPtr pf10 4 HDirect.writeWord32 pf11 wTypeLibraryMinorVersion let pf12 = HDirect.addNCastPtr pf11 4 HDirect.writeWord32 pf12 lcidTypeLibrary let pf13 = HDirect.addNCastPtr pf12 4 Com.writeBSTR pf13 bstrProjRef let pf14 = HDirect.addNCastPtr pf13 4 HDirect.writeWord32 pf14 lCustom readVSCOMPONENTSELECTORDATA :: Prelude.Bool -> Foreign.Ptr.Ptr VSCOMPONENTSELECTORDATA -> Prelude.IO VSCOMPONENTSELECTORDATA readVSCOMPONENTSELECTORDATA finaliseMe__ ptr = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do dwSize <- HDirect.readWord32 pf1 let pf2 = HDirect.addNCastPtr pf1 4 type0 <- HDirect.readEnum32 pf2 let pf3 = HDirect.addNCastPtr pf2 4 bstrTitle <- Com.readBSTR pf3 let pf4 = HDirect.addNCastPtr pf3 4 bstrFile <- Com.readBSTR pf4 let pf5 = HDirect.addNCastPtr pf4 4 wFileMajorVersion <- HDirect.readWord32 pf5 let pf6 = HDirect.addNCastPtr pf5 4 wFileMinorVersion <- HDirect.readWord32 pf6 let pf7 = HDirect.addNCastPtr pf6 4 wFileRevisionNumber <- HDirect.readWord32 pf7 let pf8 = HDirect.addNCastPtr pf7 4 wFileBuildNumber <- HDirect.readWord32 pf8 let pf9 = HDirect.addNCastPtr pf8 4 guidTypeLibrary <- Com.readGUID finaliseMe__ pf9 let pf10 = HDirect.addNCastPtr pf9 16 wTypeLibraryMajorVersion <- HDirect.readWord32 pf10 let pf11 = HDirect.addNCastPtr pf10 4 wTypeLibraryMinorVersion <- HDirect.readWord32 pf11 let pf12 = HDirect.addNCastPtr pf11 4 lcidTypeLibrary <- HDirect.readWord32 pf12 let pf13 = HDirect.addNCastPtr pf12 4 bstrProjRef <- Com.readBSTR pf13 let pf14 = HDirect.addNCastPtr pf13 4 lCustom <- HDirect.readWord32 pf14 Prelude.return (VSCOMPONENTSELECTORDATA dwSize type0 bstrTitle bstrFile wFileMajorVersion wFileMinorVersion wFileRevisionNumber wFileBuildNumber guidTypeLibrary wTypeLibraryMajorVersion wTypeLibraryMinorVersion lcidTypeLibrary bstrProjRef lCustom) sizeofVSCOMPONENTSELECTORDATA :: Data.Word.Word32 sizeofVSCOMPONENTSELECTORDATA = 68 type PVSCOMPONENTSELECTORDATA = VSCOMPONENTSELECTORDATA data VSTREEFLAGS = VSTREEFLAGSList__ [VSTREEFLAGS] | TF_NOEXPANSION | TF_NORELOCATE | TF_NOINSERTDELETE | TF_NOUPDATES | TF_NOREALIGN | TF_NOSTATECHANGE | TF_NOEFFECTS | TF_NOCOLORS | TF_OWNERDRAWTEXT | TF_NOEVERYTHING | TF_OWNERDRAWALL instance Prelude.Enum (VSTREEFLAGS) where fromEnum v = case v of (VSTREEFLAGSList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) TF_NOEXPANSION -> 1 TF_NORELOCATE -> 2 TF_NOINSERTDELETE -> 4 TF_NOUPDATES -> 8 TF_NOREALIGN -> 16 TF_NOSTATECHANGE -> 32 TF_NOEFFECTS -> 64 TF_NOCOLORS -> 128 TF_OWNERDRAWTEXT -> 128 TF_NOEVERYTHING -> 255 TF_OWNERDRAWALL -> 384 toEnum v = case v of 1 -> TF_NOEXPANSION 2 -> TF_NORELOCATE 4 -> TF_NOINSERTDELETE 8 -> TF_NOUPDATES 16 -> TF_NOREALIGN 32 -> TF_NOSTATECHANGE 64 -> TF_NOEFFECTS 128 -> TF_NOCOLORS 128 -> TF_OWNERDRAWTEXT 255 -> TF_NOEVERYTHING 384 -> TF_OWNERDRAWALL x -> VSTREEFLAGSList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 3 0)) data VSTREECLOSEACTIONS = VSTREECLOSEACTIONSList__ [VSTREECLOSEACTIONS] | TCA_CLOSEANDDISCARD | TCA_CLOSECHILDREN | TCA_NOTHING instance HDirect.Flags (VSTREECLOSEACTIONS) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (VSTREECLOSEACTIONS) where fromEnum v = case v of (VSTREECLOSEACTIONSList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) TCA_CLOSEANDDISCARD -> 0 TCA_CLOSECHILDREN -> 1 TCA_NOTHING -> 2 toEnum v = case v of 0 -> TCA_CLOSEANDDISCARD 1 -> TCA_CLOSECHILDREN 2 -> TCA_NOTHING x -> VSTREECLOSEACTIONSList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 3 0)) _ -> Prelude.error "unmarshallVSTREECLOSEACTIONS: illegal enum value " data VSTREETEXTOPTIONS = TTO_DEFAULT | TTO_DISPLAYTEXT | TTO_PREFIX | TTO_PREFIX2 | TTO_EXTENDED | TTO_SORTTEXT | TTO_SEARCHTEXT | TTO_BASETEXT | TTO_CUSTOM instance Prelude.Enum (VSTREETEXTOPTIONS) where fromEnum v = case v of TTO_DEFAULT -> 0 TTO_DISPLAYTEXT -> 0 TTO_PREFIX -> 1 TTO_PREFIX2 -> 2 TTO_EXTENDED -> 4 TTO_SORTTEXT -> 8 TTO_SEARCHTEXT -> 16 TTO_BASETEXT -> 32 TTO_CUSTOM -> 64 toEnum v = case v of 0 -> TTO_DEFAULT 0 -> TTO_DISPLAYTEXT 1 -> TTO_PREFIX 2 -> TTO_PREFIX2 4 -> TTO_EXTENDED 8 -> TTO_SORTTEXT 16 -> TTO_SEARCHTEXT 32 -> TTO_BASETEXT 64 -> TTO_CUSTOM _ -> Prelude.error "unmarshallVSTREETEXTOPTIONS: illegal enum value " data VSTREETOOLTIPTYPE = VSTREETOOLTIPTYPEList__ [VSTREETOOLTIPTYPE] | TIPTYPE_DEFAULT | TIPTYPE_ICON | TIPTYPE_STATEICON instance HDirect.Flags (VSTREETOOLTIPTYPE) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (VSTREETOOLTIPTYPE) where fromEnum v = case v of (VSTREETOOLTIPTYPEList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) TIPTYPE_DEFAULT -> 0 TIPTYPE_ICON -> 1 TIPTYPE_STATEICON -> 2 toEnum v = case v of 0 -> TIPTYPE_DEFAULT 1 -> TIPTYPE_ICON 2 -> TIPTYPE_STATEICON x -> VSTREETOOLTIPTYPEList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 3 0)) _ -> Prelude.error "unmarshallVSTREETOOLTIPTYPE: illegal enum value " data VSTREEDISPLAYMASK = VSTREEDISPLAYMASKList__ [VSTREEDISPLAYMASK] | TDM_IMAGE | TDM_STATE | TDM_SELECTEDIMAGE | TDM_FORCESELECT instance Prelude.Enum (VSTREEDISPLAYMASK) where fromEnum v = case v of (VSTREEDISPLAYMASKList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) TDM_IMAGE -> 2 TDM_STATE -> 8 TDM_SELECTEDIMAGE -> 32 TDM_FORCESELECT -> 128 toEnum v = case v of 2 -> TDM_IMAGE 8 -> TDM_STATE 32 -> TDM_SELECTEDIMAGE 128 -> TDM_FORCESELECT x -> VSTREEDISPLAYMASKList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 3 0)) data VSTREEDISPLAYSTATE = VSTREEDISPLAYSTATEList__ [VSTREEDISPLAYSTATE] | TDS_SELECTED | TDS_CUT | TDS_DROPHILITED | TDS_BOLD | TDS_DISPLAYLINK | TDS_OVERLAYMASK | TDS_STATEIMAGEMASK | TDS_USERMASK | TDS_FORCESELECT | TDS_GRAYTEXT | TDS_EXPANDED | TDS_TEXTTYPEMASK instance Prelude.Enum (VSTREEDISPLAYSTATE) where fromEnum v = case v of (VSTREEDISPLAYSTATEList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) TDS_SELECTED -> 2 TDS_CUT -> 4 TDS_DROPHILITED -> 8 TDS_BOLD -> 16 TDS_DISPLAYLINK -> 32 TDS_OVERLAYMASK -> 3840 TDS_STATEIMAGEMASK -> 61440 TDS_USERMASK -> 61440 TDS_FORCESELECT -> 65536 TDS_GRAYTEXT -> 131072 TDS_EXPANDED -> 262144 TDS_TEXTTYPEMASK -> 15728640 toEnum v = case v of 2 -> TDS_SELECTED 4 -> TDS_CUT 8 -> TDS_DROPHILITED 16 -> TDS_BOLD 32 -> TDS_DISPLAYLINK 3840 -> TDS_OVERLAYMASK 61440 -> TDS_STATEIMAGEMASK 61440 -> TDS_USERMASK 65536 -> TDS_FORCESELECT 131072 -> TDS_GRAYTEXT 262144 -> TDS_EXPANDED 15728640 -> TDS_TEXTTYPEMASK x -> VSTREEDISPLAYSTATEList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 3 0)) data VSTREEDISPLAYDATA = VSTREEDISPLAYDATA {mask :: VSTREEDISPLAYMASK, state :: VSTREEDISPLAYSTATE, stateMask :: VSTREEDISPLAYSTATE, image :: Wtypes.USHORT, selectedImage :: Wtypes.USHORT, hImageList :: Wtypes.HIMAGELIST, forceSelectStart :: Wtypes.USHORT, forceSelectLength :: Wtypes.USHORT} writeVSTREEDISPLAYDATA :: Foreign.Ptr.Ptr VSTREEDISPLAYDATA -> VSTREEDISPLAYDATA -> Prelude.IO () writeVSTREEDISPLAYDATA ptr (VSTREEDISPLAYDATA mask state stateMask image selectedImage hImageList forceSelectStart forceSelectLength) = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do HDirect.writeEnum32 pf1 mask let pf2 = HDirect.addNCastPtr pf1 4 HDirect.writeEnum32 pf2 state let pf3 = HDirect.addNCastPtr pf2 4 HDirect.writeEnum32 pf3 stateMask let pf4 = HDirect.addNCastPtr pf3 4 HDirect.writeWord16 pf4 image let pf5 = HDirect.addNCastPtr pf4 2 HDirect.writeWord16 pf5 selectedImage let pf6 = HDirect.addNCastPtr pf5 2 HDirect.writePtr pf6 hImageList let pf7 = HDirect.addNCastPtr pf6 4 HDirect.writeWord16 pf7 forceSelectStart let pf8 = HDirect.addNCastPtr pf7 2 HDirect.writeWord16 pf8 forceSelectLength readVSTREEDISPLAYDATA :: Foreign.Ptr.Ptr VSTREEDISPLAYDATA -> Prelude.IO VSTREEDISPLAYDATA readVSTREEDISPLAYDATA ptr = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do mask <- HDirect.readEnum32 pf1 let pf2 = HDirect.addNCastPtr pf1 4 state <- HDirect.readEnum32 pf2 let pf3 = HDirect.addNCastPtr pf2 4 stateMask <- HDirect.readEnum32 pf3 let pf4 = HDirect.addNCastPtr pf3 4 image <- HDirect.readWord16 pf4 let pf5 = HDirect.addNCastPtr pf4 2 selectedImage <- HDirect.readWord16 pf5 let pf6 = HDirect.addNCastPtr pf5 2 hImageList <- HDirect.readPtr pf6 let pf7 = HDirect.addNCastPtr pf6 4 forceSelectStart <- HDirect.readWord16 pf7 let pf8 = HDirect.addNCastPtr pf7 2 forceSelectLength <- HDirect.readWord16 pf8 Prelude.return (VSTREEDISPLAYDATA mask state stateMask image selectedImage hImageList forceSelectStart forceSelectLength) sizeofVSTREEDISPLAYDATA :: Data.Word.Word32 sizeofVSTREEDISPLAYDATA = 24 {- BEGIN_C_CODE #define VSTDDSetUserState(tdd,v) ((tdd).State |= ((DWORD(v)) << 12)) END_C_CODE-} {- BEGIN_C_CODE #define VSTDDGetUserState(state) ((int)((((DWORD)(state)) >> 12) & 0xF)) END_C_CODE-} {- BEGIN_C_CODE #define VSTDDSetTextType(tdd,v) ((tdd).State |= ((DWORD(v)) << 20)) END_C_CODE-} {- BEGIN_C_CODE #define VSTDDGetTextType(state) ((VSTREETEXTOPTIONS)((((DWORD)(state)) >> 20) & 0xF)) END_C_CODE-} data VSTREESTATECHANGEREFRESH = VSTREESTATECHANGEREFRESHList__ [VSTREESTATECHANGEREFRESH] | TSCR_NONE | TSCR_CURRENT | TSCR_CHILDREN | TSCR_PARENTS | TSCR_PARENTSCHILDREN | TSCR_ENTIRE instance HDirect.Flags (VSTREESTATECHANGEREFRESH) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (VSTREESTATECHANGEREFRESH) where fromEnum v = case v of (VSTREESTATECHANGEREFRESHList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) TSCR_NONE -> 0 TSCR_CURRENT -> 1 TSCR_CHILDREN -> 2 TSCR_PARENTS -> 4 TSCR_PARENTSCHILDREN -> 8 TSCR_ENTIRE -> 16 toEnum v = case v of 0 -> TSCR_NONE 1 -> TSCR_CURRENT 2 -> TSCR_CHILDREN 4 -> TSCR_PARENTS 8 -> TSCR_PARENTSCHILDREN 16 -> TSCR_ENTIRE x -> VSTREESTATECHANGEREFRESHList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 6 0)) _ -> Prelude.error "unmarshallVSTREESTATECHANGEREFRESH: illegal enum value " data VSTREEITEMCHANGESMASK = TCT_NOCHANGE | TCT_ITEMADDED | TCT_ITEMDELETED | TCT_ITEMNAMECHANGED | TCT_ITEMPROPSCHANGED | TCT_TOOMANYCHANGES instance Prelude.Enum (VSTREEITEMCHANGESMASK) where fromEnum v = case v of TCT_NOCHANGE -> 0 TCT_ITEMADDED -> 1 TCT_ITEMDELETED -> 2 TCT_ITEMNAMECHANGED -> 4 TCT_ITEMPROPSCHANGED -> 8 TCT_TOOMANYCHANGES -> 65535 toEnum v = case v of 0 -> TCT_NOCHANGE 1 -> TCT_ITEMADDED 2 -> TCT_ITEMDELETED 4 -> TCT_ITEMNAMECHANGED 8 -> TCT_ITEMPROPSCHANGED 65535 -> TCT_TOOMANYCHANGES _ -> Prelude.error "unmarshallVSTREEITEMCHANGESMASK: illegal enum value " data VSTREELISTITEMCHANGE = VSTREELISTITEMCHANGE {index :: Wtypes.ULONG, grfChange :: VSTREEITEMCHANGESMASK} writeVSTREELISTITEMCHANGE :: Foreign.Ptr.Ptr VSTREELISTITEMCHANGE -> VSTREELISTITEMCHANGE -> Prelude.IO () writeVSTREELISTITEMCHANGE ptr (VSTREELISTITEMCHANGE index grfChange) = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do HDirect.writeWord32 pf1 index let pf2 = HDirect.addNCastPtr pf1 4 HDirect.writeEnum32 pf2 grfChange readVSTREELISTITEMCHANGE :: Foreign.Ptr.Ptr VSTREELISTITEMCHANGE -> Prelude.IO VSTREELISTITEMCHANGE readVSTREELISTITEMCHANGE ptr = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do index <- HDirect.readWord32 pf1 let pf2 = HDirect.addNCastPtr pf1 4 grfChange <- HDirect.readEnum32 pf2 Prelude.return (VSTREELISTITEMCHANGE index grfChange) sizeofVSTREELISTITEMCHANGE :: Data.Word.Word32 sizeofVSTREELISTITEMCHANGE = 8 -- -------------------------------------------------- -- -- interface IVsLiteTreeList -- -- -------------------------------------------------- data IVsLiteTreeList_ a = IVsLiteTreeList__ type IVsLiteTreeList a = Com.IUnknown (IVsLiteTreeList_ a) iidIVsLiteTreeList :: Com.IID (IVsLiteTreeList ()) iidIVsLiteTreeList = Com.mkIID "{1E425321-94CB-448e-8E1E-E1EA2479E5E2}" getFlags :: IVsLiteTreeList a0 -> Prelude.IO VSTREEFLAGS getFlags iptr = do pFlags <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getFlags methPtr iptr pFlags) 3 iptr HDirect.doThenFree HDirect.free HDirect.readEnum32 pFlags foreign import stdcall "dynamic" prim_ClassView_getFlags :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr Data.Int.Int32 -> Prelude.IO Data.Int.Int32 getItemCount :: IVsLiteTreeList a0 -> Prelude.IO Wtypes.ULONG getItemCount iptr = do pCount <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getFlags methPtr iptr pCount) 4 iptr HDirect.doThenFree HDirect.free HDirect.readWord32 pCount getExpandedList :: Wtypes.ULONG -> IVsLiteTreeList a0 -> Prelude.IO (Wtypes.BOOL, IVsLiteTreeList ()) getExpandedList index0 iptr = do pfCanRecurse <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofInt32) pptlNode <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofForeignPtr) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getExpandedList methPtr iptr index0 pfCanRecurse pptlNode) 5 iptr pfCanRecurse <- HDirect.doThenFree HDirect.free HDirect.readInt32 pfCanRecurse pptlNode <- HDirect.doThenFree HDirect.free (Com.readIUnknown Prelude.False) pptlNode Prelude.return (pfCanRecurse, pptlNode) foreign import stdcall "dynamic" prim_ClassView_getExpandedList :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr Data.Int.Int32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr (IVsLiteTreeList a)) -> Prelude.IO Data.Int.Int32 locateExpandedList :: IVsLiteTreeList a1 -> IVsLiteTreeList a0 -> Prelude.IO Wtypes.ULONG locateExpandedList expandedList iptr = do iIndex <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) expandedList <- Com.marshallIUnknown expandedList Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_locateExpandedList methPtr iptr expandedList iIndex) 6 iptr HDirect.doThenFree HDirect.free HDirect.readWord32 iIndex foreign import stdcall "dynamic" prim_ClassView_locateExpandedList :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr (IVsLiteTreeList a) -> Foreign.Ptr.Ptr Data.Word.Word32 -> Prelude.IO Data.Int.Int32 onClose :: IVsLiteTreeList a0 -> Prelude.IO VSTREECLOSEACTIONS onClose iptr = do ptca <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofInt32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_onClose methPtr iptr ptca) 7 iptr HDirect.doThenFree HDirect.free HDirect.readEnum32 ptca foreign import stdcall "dynamic" prim_ClassView_onClose :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr VSTREECLOSEACTIONS -> Prelude.IO Data.Int.Int32 getText :: Wtypes.ULONG -> VSTREETEXTOPTIONS -> IVsLiteTreeList a0 -> Prelude.IO (Prelude.Maybe Wtypes.WCHAR) getText index0 tto iptr = do ppszText <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofPtr) tto <- HDirect.marshallEnum32 tto Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getText methPtr iptr index0 tto ppszText) 8 iptr HDirect.doThenFree HDirect.free (HDirect.readunique HDirect.readWord16) ppszText foreign import stdcall "dynamic" prim_ClassView_getText :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Data.Int.Int32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr Data.Word.Word16) -> Prelude.IO Data.Int.Int32 getTipText :: Wtypes.ULONG -> VSTREETOOLTIPTYPE -> IVsLiteTreeList a0 -> Prelude.IO (Prelude.Maybe Wtypes.WCHAR) getTipText index0 eTipType iptr = do ppszText <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofPtr) eTipType <- HDirect.marshallEnum32 eTipType Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getText methPtr iptr index0 eTipType ppszText) 9 iptr HDirect.doThenFree HDirect.free (HDirect.readunique HDirect.readWord16) ppszText getExpandable :: Wtypes.ULONG -> IVsLiteTreeList a0 -> Prelude.IO Wtypes.BOOL getExpandable index0 iptr = do pfExpandable <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofInt32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getExpandable methPtr iptr index0 pfExpandable) 10 iptr HDirect.doThenFree HDirect.free HDirect.readInt32 pfExpandable foreign import stdcall "dynamic" prim_ClassView_getExpandable :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr Data.Int.Int32 -> Prelude.IO Data.Int.Int32 getDisplayData :: Wtypes.ULONG -> IVsLiteTreeList a0 -> Prelude.IO VSTREEDISPLAYDATA getDisplayData index0 iptr = do pData <- HDirect.allocBytes (Prelude.fromIntegral sizeofVSTREEDISPLAYDATA) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getDisplayData methPtr iptr index0 pData) 11 iptr HDirect.doThenFree HDirect.free readVSTREEDISPLAYDATA pData foreign import stdcall "dynamic" prim_ClassView_getDisplayData :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr VSTREEDISPLAYDATA -> Prelude.IO Data.Int.Int32 updateCounter :: IVsLiteTreeList a0 -> Prelude.IO (Wtypes.ULONG, VSTREEITEMCHANGESMASK) updateCounter iptr = do pCurUpdate <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) pgrfChanges <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofInt32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_updateCounter methPtr iptr pCurUpdate pgrfChanges) 12 iptr pCurUpdate <- HDirect.doThenFree HDirect.free HDirect.readWord32 pCurUpdate pgrfChanges <- HDirect.doThenFree HDirect.free HDirect.readEnum32 pgrfChanges Prelude.return (pCurUpdate, pgrfChanges) foreign import stdcall "dynamic" prim_ClassView_updateCounter :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr Data.Word.Word32 -> Foreign.Ptr.Ptr Data.Word.Word32 -> Prelude.IO Data.Int.Int32 getListChanges :: [VSTREELISTITEMCHANGE] -> IVsLiteTreeList a0 -> Prelude.IO Wtypes.ULONG getListChanges prgListChanges iptr = let pcChanges = ((Prelude.fromIntegral (Prelude.length prgListChanges) :: Data.Word.Word32)) in do in__prgListChanges <- HDirect.marshalllist sizeofVSTREELISTITEMCHANGE writeVSTREELISTITEMCHANGE prgListChanges pcChanges <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32)) HDirect.writeWord32 pcChanges Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getListChanges methPtr iptr pcChanges in__prgListChanges) 13 iptr HDirect.freeref HDirect.trivialFree in__prgListChanges HDirect.doThenFree HDirect.free HDirect.readWord32 pcChanges foreign import stdcall "dynamic" prim_ClassView_getListChanges :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr Data.Word.Word32 -> Foreign.Ptr.Ptr VSTREELISTITEMCHANGE -> Prelude.IO Data.Int.Int32 toggleState :: Wtypes.ULONG -> IVsLiteTreeList a0 -> Prelude.IO VSTREESTATECHANGEREFRESH toggleState index0 iptr = do ptscr <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_toggleState methPtr iptr index0 ptscr) 14 iptr HDirect.doThenFree HDirect.free HDirect.readEnum32 ptscr foreign import stdcall "dynamic" prim_ClassView_toggleState :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr Data.Word.Word32 -> Prelude.IO Data.Int.Int32 data LIB_CHECKSTATE = LCS_UNCHECKED | LCS_CHECKEDGRAY | LCS_CHECKED instance Prelude.Enum (LIB_CHECKSTATE) where fromEnum v = case v of LCS_UNCHECKED -> 1 LCS_CHECKEDGRAY -> 2 LCS_CHECKED -> 3 toEnum v = case v of 1 -> LCS_UNCHECKED 2 -> LCS_CHECKEDGRAY 3 -> LCS_CHECKED _ -> Prelude.error "unmarshallLIB_CHECKSTATE: illegal enum value " data LIB_LISTTYPE = LIB_LISTTYPEList__ [LIB_LISTTYPE] | LLT_HIERARCHY | LLT_NAMESPACES | LLT_CLASSES | LLT_MEMBERS | LLT_PHYSICALCONTAINERS | LLT_PACKAGE | LLT_CONTAINMENT | LLT_CONTAINEDBY | LLT_USESCLASSES | LLT_USEDBYCLASSES | LLT_NESTEDCLASSES | LLT_INHERITEDINTERFACES | LLT_INTERFACEUSEDBYCLASSES | LLT_DEFINITIONS | LLT_REFERENCES | LLT_DEFEREXPANSION instance Prelude.Enum (LIB_LISTTYPE) where fromEnum v = case v of (LIB_LISTTYPEList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LLT_HIERARCHY -> 1 LLT_NAMESPACES -> 2 LLT_CLASSES -> 4 LLT_MEMBERS -> 8 LLT_PHYSICALCONTAINERS -> 16 LLT_PACKAGE -> 16 LLT_CONTAINMENT -> 32 LLT_CONTAINEDBY -> 64 LLT_USESCLASSES -> 128 LLT_USEDBYCLASSES -> 256 LLT_NESTEDCLASSES -> 512 LLT_INHERITEDINTERFACES -> 1024 LLT_INTERFACEUSEDBYCLASSES -> 2048 LLT_DEFINITIONS -> 4096 LLT_REFERENCES -> 8192 LLT_DEFEREXPANSION -> 1048576 toEnum v = case v of 1 -> LLT_HIERARCHY 2 -> LLT_NAMESPACES 4 -> LLT_CLASSES 8 -> LLT_MEMBERS 16 -> LLT_PHYSICALCONTAINERS 16 -> LLT_PACKAGE 32 -> LLT_CONTAINMENT 64 -> LLT_CONTAINEDBY 128 -> LLT_USESCLASSES 256 -> LLT_USEDBYCLASSES 512 -> LLT_NESTEDCLASSES 1024 -> LLT_INHERITEDINTERFACES 2048 -> LLT_INTERFACEUSEDBYCLASSES 4096 -> LLT_DEFINITIONS 8192 -> LLT_REFERENCES 1048576 -> LLT_DEFEREXPANSION x -> LIB_LISTTYPEList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 7 0)) data LIB_LISTFLAGS = LIB_LISTFLAGSList__ [LIB_LISTFLAGS] | LLF_NONE | LLF_IGNORESUBSET | LLF_TRUENESTING | LLF_PROJECTONLY | LLF_USESEARCHFILTER | LLF_DONTUPDATELIST | LLF_RESOURCEVIEW instance HDirect.Flags (LIB_LISTFLAGS) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIB_LISTFLAGS) where fromEnum v = case v of (LIB_LISTFLAGSList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LLF_NONE -> 0 LLF_IGNORESUBSET -> 1 LLF_TRUENESTING -> 2 LLF_PROJECTONLY -> 4 LLF_USESEARCHFILTER -> 8 LLF_DONTUPDATELIST -> 16 LLF_RESOURCEVIEW -> 32 toEnum v = case v of 0 -> LLF_NONE 1 -> LLF_IGNORESUBSET 2 -> LLF_TRUENESTING 4 -> LLF_PROJECTONLY 8 -> LLF_USESEARCHFILTER 16 -> LLF_DONTUPDATELIST 32 -> LLF_RESOURCEVIEW x -> LIB_LISTFLAGSList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 7 0)) _ -> Prelude.error "unmarshallLIB_LISTFLAGS: illegal enum value " type LIB_LISTFLAGS0 = Wtypes.DWORD {- BEGIN_C_CODE #define VSOBJFLAGS_OBJBROWSER (LLF_NONE) END_C_CODE-} {- BEGIN_C_CODE #define VSOBJFLAGS_OBJSEARCH (LLF_USESEARCHFILTER | LLF_DONTUPDATELIST) END_C_CODE-} {- BEGIN_C_CODE #define VSOBJFLAGS_CLASSVIEW (LLF_IGNORESUBSET | LLF_TRUENESTING | LLF_PROJECTONLY) END_C_CODE-} {- BEGIN_C_CODE #define VSOBJFLAGS_RESOURCEVIEW (LLF_RESOURCEVIEW) END_C_CODE-} data LIB_FLAGS = LIB_FLAGSList__ [LIB_FLAGS] | LF_PROJECT | LF_GLOBAL | LF_EXPANDABLE | LF_HIDEINLIBPICKER instance HDirect.Flags (LIB_FLAGS) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIB_FLAGS) where fromEnum v = case v of (LIB_FLAGSList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LF_PROJECT -> 1 LF_GLOBAL -> 2 LF_EXPANDABLE -> 4 LF_HIDEINLIBPICKER -> 8 toEnum v = case v of 1 -> LF_PROJECT 2 -> LF_GLOBAL 4 -> LF_EXPANDABLE 8 -> LF_HIDEINLIBPICKER x -> LIB_FLAGSList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 4 1)) _ -> Prelude.error "unmarshallLIB_FLAGS: illegal enum value " data LIB_PERSISTTYPE = LIB_PERSISTTYPEList__ [LIB_PERSISTTYPE] | LPT_PROJECT | LPT_GLOBAL instance HDirect.Flags (LIB_PERSISTTYPE) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIB_PERSISTTYPE) where fromEnum v = case v of (LIB_PERSISTTYPEList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LPT_PROJECT -> 1 LPT_GLOBAL -> 2 toEnum v = case v of 1 -> LPT_PROJECT 2 -> LPT_GLOBAL x -> LIB_PERSISTTYPEList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 2 1)) _ -> Prelude.error "unmarshallLIB_PERSISTTYPE: illegal enum value " data LIB_CATEGORY = LC_MEMBERTYPE | LC_MEMBERACCESS | LC_CLASSTYPE | LC_CLASSACCESS | LC_ACTIVEPROJECT | LC_LISTTYPE | LC_VISIBILITY | LC_MODIFIER | LC_NODETYPE instance Prelude.Enum (LIB_CATEGORY) where fromEnum v = case v of LC_MEMBERTYPE -> 1 LC_MEMBERACCESS -> 2 LC_CLASSTYPE -> 3 LC_CLASSACCESS -> 4 LC_ACTIVEPROJECT -> 5 LC_LISTTYPE -> 6 LC_VISIBILITY -> 7 LC_MODIFIER -> 8 LC_NODETYPE -> 9 toEnum v = case v of 1 -> LC_MEMBERTYPE 2 -> LC_MEMBERACCESS 3 -> LC_CLASSTYPE 4 -> LC_CLASSACCESS 5 -> LC_ACTIVEPROJECT 6 -> LC_LISTTYPE 7 -> LC_VISIBILITY 8 -> LC_MODIFIER 9 -> LC_NODETYPE _ -> Prelude.error "unmarshallLIB_CATEGORY: illegal enum value " type LIBCAT_LISTTYPE = LIB_LISTTYPE data LIBCAT_MEMBERTYPE = LIBCAT_MEMBERTYPEList__ [LIBCAT_MEMBERTYPE] | LCMT_METHOD | LCMT_FUNCTION | LCMT_OPERATOR | LCMT_PROPERTY | LCMT_FIELD | LCMT_VARIABLE | LCMT_EVENT | LCMT_CONSTANT | LCMT_ENUMITEM | LCMT_TYPEDEF | LCMT_MAPITEM | LCMT_DECLARATION | LCMT_MACRO | LCMT_ERROR instance HDirect.Flags (LIBCAT_MEMBERTYPE) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIBCAT_MEMBERTYPE) where fromEnum v = case v of (LIBCAT_MEMBERTYPEList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LCMT_METHOD -> 1 LCMT_FUNCTION -> 2 LCMT_OPERATOR -> 4 LCMT_PROPERTY -> 8 LCMT_FIELD -> 16 LCMT_VARIABLE -> 32 LCMT_EVENT -> 64 LCMT_CONSTANT -> 128 LCMT_ENUMITEM -> 256 LCMT_TYPEDEF -> 512 LCMT_MAPITEM -> 1024 LCMT_DECLARATION -> 2048 LCMT_MACRO -> 4096 LCMT_ERROR -> 8192 toEnum v = case v of 1 -> LCMT_METHOD 2 -> LCMT_FUNCTION 4 -> LCMT_OPERATOR 8 -> LCMT_PROPERTY 16 -> LCMT_FIELD 32 -> LCMT_VARIABLE 64 -> LCMT_EVENT 128 -> LCMT_CONSTANT 256 -> LCMT_ENUMITEM 512 -> LCMT_TYPEDEF 1024 -> LCMT_MAPITEM 2048 -> LCMT_DECLARATION 4096 -> LCMT_MACRO 8192 -> LCMT_ERROR x -> LIBCAT_MEMBERTYPEList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 14 1)) _ -> Prelude.error "unmarshallLIBCAT_MEMBERTYPE: illegal enum value " type LIBCAT_MEMBERTYPE0 = Wtypes.DWORD {- BEGIN_C_CODE #define COUNT_LIBCAT_MEMBERTYPE 14 END_C_CODE-} data LIBCAT_MODIFIERTYPE = LIBCAT_MODIFIERTYPEList__ [LIBCAT_MODIFIERTYPE] | LCMDT_VIRTUAL | LCMDT_PUREVIRTUAL | LCMDT_NONVIRTUAL | LCMDT_FINAL | LCMDT_STATIC instance HDirect.Flags (LIBCAT_MODIFIERTYPE) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIBCAT_MODIFIERTYPE) where fromEnum v = case v of (LIBCAT_MODIFIERTYPEList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LCMDT_VIRTUAL -> 1 LCMDT_PUREVIRTUAL -> 2 LCMDT_NONVIRTUAL -> 4 LCMDT_FINAL -> 8 LCMDT_STATIC -> 16 toEnum v = case v of 1 -> LCMDT_VIRTUAL 2 -> LCMDT_PUREVIRTUAL 4 -> LCMDT_NONVIRTUAL 8 -> LCMDT_FINAL 16 -> LCMDT_STATIC x -> LIBCAT_MODIFIERTYPEList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 5 1)) _ -> Prelude.error "unmarshallLIBCAT_MODIFIERTYPE: illegal enum value " type LIBCAT_MODIFIERTYPE0 = Wtypes.DWORD {- BEGIN_C_CODE #define COUNT_LIBCAT_MODIFIERTYPE 5 END_C_CODE-} data LIBCAT_MEMBERACCESS = LIBCAT_MEMBERACCESSList__ [LIBCAT_MEMBERACCESS] | LCMA_PUBLIC | LCMA_PRIVATE | LCMA_PROTECTED | LCMA_PACKAGE | LCMA_FRIEND | LCMA_SEALED instance HDirect.Flags (LIBCAT_MEMBERACCESS) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIBCAT_MEMBERACCESS) where fromEnum v = case v of (LIBCAT_MEMBERACCESSList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LCMA_PUBLIC -> 1 LCMA_PRIVATE -> 2 LCMA_PROTECTED -> 4 LCMA_PACKAGE -> 8 LCMA_FRIEND -> 16 LCMA_SEALED -> 32 toEnum v = case v of 1 -> LCMA_PUBLIC 2 -> LCMA_PRIVATE 4 -> LCMA_PROTECTED 8 -> LCMA_PACKAGE 16 -> LCMA_FRIEND 32 -> LCMA_SEALED x -> LIBCAT_MEMBERACCESSList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 6 1)) _ -> Prelude.error "unmarshallLIBCAT_MEMBERACCESS: illegal enum value " type LIBCAT_MEMBERACCESS0 = Wtypes.DWORD {- BEGIN_C_CODE #define COUNT_LIBCAT_MEMBERACCESS 6 END_C_CODE-} data LIBCAT_CLASSACCESS = LIBCAT_CLASSACCESSList__ [LIBCAT_CLASSACCESS] | LCCA_PUBLIC | LCCA_PRIVATE | LCCA_PROTECTED | LCCA_PACKAGE | LCCA_FRIEND | LCCA_SEALED instance HDirect.Flags (LIBCAT_CLASSACCESS) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIBCAT_CLASSACCESS) where fromEnum v = case v of (LIBCAT_CLASSACCESSList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LCCA_PUBLIC -> 1 LCCA_PRIVATE -> 2 LCCA_PROTECTED -> 4 LCCA_PACKAGE -> 8 LCCA_FRIEND -> 16 LCCA_SEALED -> 32 toEnum v = case v of 1 -> LCCA_PUBLIC 2 -> LCCA_PRIVATE 4 -> LCCA_PROTECTED 8 -> LCCA_PACKAGE 16 -> LCCA_FRIEND 32 -> LCCA_SEALED x -> LIBCAT_CLASSACCESSList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 6 1)) _ -> Prelude.error "unmarshallLIBCAT_CLASSACCESS: illegal enum value " type LIBCAT_CLASSACCESS0 = Wtypes.DWORD {- BEGIN_C_CODE #define COUNT_LIBCAT_CLASSACCESS 6 END_C_CODE-} data LIBCAT_CLASSTYPE = LIBCAT_CLASSTYPEList__ [LIBCAT_CLASSTYPE] | LCCT_NSPC | LCCT_CLASS | LCCT_INTERFACE | LCCT_STRUCT | LCCT_UNION | LCCT_ENUM | LCCT_TYPEDEF | LCCT_MODULE | LCCT_INTRINSIC | LCCT_DELEGATE | LCCT_EXCEPTION | LCCT_MAP | LCCT_GLOBAL | LCCT_ERROR instance HDirect.Flags (LIBCAT_CLASSTYPE) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIBCAT_CLASSTYPE) where fromEnum v = case v of (LIBCAT_CLASSTYPEList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LCCT_NSPC -> 1 LCCT_CLASS -> 2 LCCT_INTERFACE -> 4 LCCT_STRUCT -> 8 LCCT_UNION -> 16 LCCT_ENUM -> 32 LCCT_TYPEDEF -> 64 LCCT_MODULE -> 128 LCCT_INTRINSIC -> 256 LCCT_DELEGATE -> 512 LCCT_EXCEPTION -> 1024 LCCT_MAP -> 2048 LCCT_GLOBAL -> 4096 LCCT_ERROR -> 8192 toEnum v = case v of 1 -> LCCT_NSPC 2 -> LCCT_CLASS 4 -> LCCT_INTERFACE 8 -> LCCT_STRUCT 16 -> LCCT_UNION 32 -> LCCT_ENUM 64 -> LCCT_TYPEDEF 128 -> LCCT_MODULE 256 -> LCCT_INTRINSIC 512 -> LCCT_DELEGATE 1024 -> LCCT_EXCEPTION 2048 -> LCCT_MAP 4096 -> LCCT_GLOBAL 8192 -> LCCT_ERROR x -> LIBCAT_CLASSTYPEList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 14 1)) _ -> Prelude.error "unmarshallLIBCAT_CLASSTYPE: illegal enum value " type LIBCAT_CLASSTYPE0 = Wtypes.DWORD {- BEGIN_C_CODE #define COUNT_LIBCAT_CLASSTYPE 14 END_C_CODE-} data LIBCAT_ACTIVEPROJECT = LIBCAT_ACTIVEPROJECTList__ [LIBCAT_ACTIVEPROJECT] | LCAP_SHOWALWAYS | LCAP_MUSTBEACTIVE instance HDirect.Flags (LIBCAT_ACTIVEPROJECT) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIBCAT_ACTIVEPROJECT) where fromEnum v = case v of (LIBCAT_ACTIVEPROJECTList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LCAP_SHOWALWAYS -> 1 LCAP_MUSTBEACTIVE -> 2 toEnum v = case v of 1 -> LCAP_SHOWALWAYS 2 -> LCAP_MUSTBEACTIVE x -> LIBCAT_ACTIVEPROJECTList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 2 1)) _ -> Prelude.error "unmarshallLIBCAT_ACTIVEPROJECT: illegal enum value " type LIBCAT_ACTIVEPROJECT0 = Wtypes.DWORD {- BEGIN_C_CODE #define COUNT_LIBCAT_ACTIVEPROJECT 2 END_C_CODE-} data LIBCAT_VISIBILITY = LIBCAT_VISIBILITYList__ [LIBCAT_VISIBILITY] | LCV_VISIBLE | LCV_HIDDEN instance HDirect.Flags (LIBCAT_VISIBILITY) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIBCAT_VISIBILITY) where fromEnum v = case v of (LIBCAT_VISIBILITYList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LCV_VISIBLE -> 1 LCV_HIDDEN -> 2 toEnum v = case v of 1 -> LCV_VISIBLE 2 -> LCV_HIDDEN x -> LIBCAT_VISIBILITYList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 2 1)) _ -> Prelude.error "unmarshallLIBCAT_VISIBILITY: illegal enum value " type LIBCAT_VISIBILITY0 = Wtypes.DWORD {- BEGIN_C_CODE #define COUNT_LIBCAT_VISIBILITY 2 END_C_CODE-} data LIBCAT_NODETYPE = LIBCAT_NODETYPEList__ [LIBCAT_NODETYPE] | LCNT_SYMBOL | LCNT_HIERARCHY | LCNT_PROJECT | LCNT_FOLDER instance HDirect.Flags (LIBCAT_NODETYPE) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIBCAT_NODETYPE) where fromEnum v = case v of (LIBCAT_NODETYPEList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LCNT_SYMBOL -> 1 LCNT_HIERARCHY -> 2 LCNT_PROJECT -> 4 LCNT_FOLDER -> 8 toEnum v = case v of 1 -> LCNT_SYMBOL 2 -> LCNT_HIERARCHY 4 -> LCNT_PROJECT 8 -> LCNT_FOLDER x -> LIBCAT_NODETYPEList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 4 1)) _ -> Prelude.error "unmarshallLIBCAT_NODETYPE: illegal enum value " type LIBCAT_NODETYPE0 = Wtypes.DWORD {- BEGIN_C_CODE #define COUNT_LIBCAT_NODETYPE 3 END_C_CODE-} data VSOBSEARCHTYPE = SO_ENTIREWORD | SO_SUBSTRING | SO_PRESTRING instance Prelude.Enum (VSOBSEARCHTYPE) where fromEnum v = case v of SO_ENTIREWORD -> 1 SO_SUBSTRING -> 2 SO_PRESTRING -> 3 toEnum v = case v of 1 -> SO_ENTIREWORD 2 -> SO_SUBSTRING 3 -> SO_PRESTRING _ -> Prelude.error "unmarshallVSOBSEARCHTYPE: illegal enum value " data VSOBSEARCHOPTIONS = VSOBSEARCHOPTIONSList__ [VSOBSEARCHOPTIONS] | VSOBSO_NONE | VSOBSO_CASESENSITIVE | VSOBSO_LOOKINREFS instance HDirect.Flags (VSOBSEARCHOPTIONS) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (VSOBSEARCHOPTIONS) where fromEnum v = case v of (VSOBSEARCHOPTIONSList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) VSOBSO_NONE -> 0 VSOBSO_CASESENSITIVE -> 1 VSOBSO_LOOKINREFS -> 2 toEnum v = case v of 0 -> VSOBSO_NONE 1 -> VSOBSO_CASESENSITIVE 2 -> VSOBSO_LOOKINREFS x -> VSOBSEARCHOPTIONSList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 3 0)) _ -> Prelude.error "unmarshallVSOBSEARCHOPTIONS: illegal enum value " type VSOBSEARCHOPTIONS0 = Wtypes.DWORD data VSOBSEARCHCRITERIA = VSOBSEARCHCRITERIA {szName :: Wtypes.LPCOLESTR, eSrchType :: VSOBSEARCHTYPE, grfOptions :: VSOBSEARCHOPTIONS0, dwCustom :: Wtypes.DWORD} writeVSOBSEARCHCRITERIA :: Foreign.Ptr.Ptr VSOBSEARCHCRITERIA -> VSOBSEARCHCRITERIA -> Prelude.IO () writeVSOBSEARCHCRITERIA ptr (VSOBSEARCHCRITERIA szName eSrchType grfOptions dwCustom) = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do WideString.writeWideString pf1 szName let pf2 = HDirect.addNCastPtr pf1 4 HDirect.writeEnum32 pf2 eSrchType let pf3 = HDirect.addNCastPtr pf2 4 HDirect.writeWord32 pf3 grfOptions let pf4 = HDirect.addNCastPtr pf3 4 HDirect.writeWord32 pf4 dwCustom readVSOBSEARCHCRITERIA :: Foreign.Ptr.Ptr VSOBSEARCHCRITERIA -> Prelude.IO VSOBSEARCHCRITERIA readVSOBSEARCHCRITERIA ptr = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do szName <- WideString.readWideString pf1 let pf2 = HDirect.addNCastPtr pf1 4 eSrchType <- HDirect.readEnum32 pf2 let pf3 = HDirect.addNCastPtr pf2 4 grfOptions <- HDirect.readWord32 pf3 let pf4 = HDirect.addNCastPtr pf3 4 dwCustom <- HDirect.readWord32 pf4 Prelude.return (VSOBSEARCHCRITERIA szName eSrchType grfOptions dwCustom) sizeofVSOBSEARCHCRITERIA :: Data.Word.Word32 sizeofVSOBSEARCHCRITERIA = 16 data VSOBNAVNAMEINFONODE = VSOBNAVNAMEINFONODE {pszName :: (Prelude.Maybe Wtypes.WCHAR), lltName :: LIB_LISTTYPE, pNext :: (Prelude.Maybe VSOBNAVNAMEINFONODE)} writeVSOBNAVNAMEINFONODE :: Foreign.Ptr.Ptr VSOBNAVNAMEINFONODE -> VSOBNAVNAMEINFONODE -> Prelude.IO () writeVSOBNAVNAMEINFONODE ptr (VSOBNAVNAMEINFONODE pszName lltName pNext) = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do HDirect.writeunique (HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord16)) HDirect.writeWord16 pf1 pszName let pf2 = HDirect.addNCastPtr pf1 4 HDirect.writeEnum32 pf2 lltName let pf3 = HDirect.addNCastPtr pf2 4 HDirect.writeunique (HDirect.allocBytes (Prelude.fromIntegral sizeofVSOBNAVNAMEINFONODE)) writeVSOBNAVNAMEINFONODE pf3 pNext readVSOBNAVNAMEINFONODE :: Foreign.Ptr.Ptr VSOBNAVNAMEINFONODE -> Prelude.IO VSOBNAVNAMEINFONODE readVSOBNAVNAMEINFONODE ptr = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do pszName <- HDirect.readunique HDirect.readWord16 pf1 let pf2 = HDirect.addNCastPtr pf1 4 lltName <- HDirect.readEnum32 pf2 let pf3 = HDirect.addNCastPtr pf2 4 pNext <- HDirect.readunique readVSOBNAVNAMEINFONODE pf3 Prelude.return (VSOBNAVNAMEINFONODE pszName lltName pNext) sizeofVSOBNAVNAMEINFONODE :: Data.Word.Word32 sizeofVSOBNAVNAMEINFONODE = 12 data VSOBNAVIGATIONINFO2 = VSOBNAVIGATIONINFO2 {pguidLib :: (Prelude.Maybe Com.GUID), pszLibName :: (Prelude.Maybe Wtypes.WCHAR), pName :: (Prelude.Maybe VSOBNAVNAMEINFONODE), dwCustom0 :: Wtypes.DWORD} writeVSOBNAVIGATIONINFO2 :: Foreign.Ptr.Ptr VSOBNAVIGATIONINFO2 -> VSOBNAVIGATIONINFO2 -> Prelude.IO () writeVSOBNAVIGATIONINFO2 ptr (VSOBNAVIGATIONINFO2 pguidLib pszLibName pName dwCustom0) = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do HDirect.writeMaybe Com.writeGUID pf1 pguidLib let pf2 = HDirect.addNCastPtr pf1 4 HDirect.writeunique (HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord16)) HDirect.writeWord16 pf2 pszLibName let pf3 = HDirect.addNCastPtr pf2 4 HDirect.writeunique (HDirect.allocBytes (Prelude.fromIntegral sizeofVSOBNAVNAMEINFONODE)) writeVSOBNAVNAMEINFONODE pf3 pName let pf4 = HDirect.addNCastPtr pf3 4 HDirect.writeWord32 pf4 dwCustom0 readVSOBNAVIGATIONINFO2 :: Prelude.Bool -> Foreign.Ptr.Ptr VSOBNAVIGATIONINFO2 -> Prelude.IO VSOBNAVIGATIONINFO2 readVSOBNAVIGATIONINFO2 finaliseMe__ ptr = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do pguidLib <- HDirect.readMaybe (Com.readGUID finaliseMe__) pf1 let pf2 = HDirect.addNCastPtr pf1 4 pszLibName <- HDirect.readunique HDirect.readWord16 pf2 let pf3 = HDirect.addNCastPtr pf2 4 pName <- HDirect.readunique readVSOBNAVNAMEINFONODE pf3 let pf4 = HDirect.addNCastPtr pf3 4 dwCustom0 <- HDirect.readWord32 pf4 Prelude.return (VSOBNAVIGATIONINFO2 pguidLib pszLibName pName dwCustom0) sizeofVSOBNAVIGATIONINFO2 :: Data.Word.Word32 sizeofVSOBNAVIGATIONINFO2 = 16 data VSOBJECTINFO = VSOBJECTINFO {pguidLib0 :: (Prelude.Maybe Com.GUID), pszLibName0 :: (Prelude.Maybe Wtypes.WCHAR), pszNspcName :: (Prelude.Maybe Wtypes.WCHAR), pszClassName :: (Prelude.Maybe Wtypes.WCHAR), pszMemberName :: (Prelude.Maybe Wtypes.WCHAR), dwCustom1 :: Wtypes.DWORD} writeVSOBJECTINFO :: Foreign.Ptr.Ptr VSOBJECTINFO -> VSOBJECTINFO -> Prelude.IO () writeVSOBJECTINFO ptr (VSOBJECTINFO pguidLib0 pszLibName0 pszNspcName pszClassName pszMemberName dwCustom1) = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do HDirect.writeMaybe Com.writeGUID pf1 pguidLib0 let pf2 = HDirect.addNCastPtr pf1 4 HDirect.writeunique (HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord16)) HDirect.writeWord16 pf2 pszLibName0 let pf3 = HDirect.addNCastPtr pf2 4 HDirect.writeunique (HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord16)) HDirect.writeWord16 pf3 pszNspcName let pf4 = HDirect.addNCastPtr pf3 4 HDirect.writeunique (HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord16)) HDirect.writeWord16 pf4 pszClassName let pf5 = HDirect.addNCastPtr pf4 4 HDirect.writeunique (HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord16)) HDirect.writeWord16 pf5 pszMemberName let pf6 = HDirect.addNCastPtr pf5 4 HDirect.writeWord32 pf6 dwCustom1 readVSOBJECTINFO :: Prelude.Bool -> Foreign.Ptr.Ptr VSOBJECTINFO -> Prelude.IO VSOBJECTINFO readVSOBJECTINFO finaliseMe__ ptr = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do pguidLib0 <- HDirect.readMaybe (Com.readGUID finaliseMe__) pf1 let pf2 = HDirect.addNCastPtr pf1 4 pszLibName0 <- HDirect.readunique HDirect.readWord16 pf2 let pf3 = HDirect.addNCastPtr pf2 4 pszNspcName <- HDirect.readunique HDirect.readWord16 pf3 let pf4 = HDirect.addNCastPtr pf3 4 pszClassName <- HDirect.readunique HDirect.readWord16 pf4 let pf5 = HDirect.addNCastPtr pf4 4 pszMemberName <- HDirect.readunique HDirect.readWord16 pf5 let pf6 = HDirect.addNCastPtr pf5 4 dwCustom1 <- HDirect.readWord32 pf6 Prelude.return (VSOBJECTINFO pguidLib0 pszLibName0 pszNspcName pszClassName pszMemberName dwCustom1) sizeofVSOBJECTINFO :: Data.Word.Word32 sizeofVSOBJECTINFO = 24 data VSBROWSECONTAINER = VSBROWSECONTAINER {pguidLib1 :: (Prelude.Maybe Com.GUID), szName0 :: Wtypes.LPCWSTR} writeVSBROWSECONTAINER :: Foreign.Ptr.Ptr VSBROWSECONTAINER -> VSBROWSECONTAINER -> Prelude.IO () writeVSBROWSECONTAINER ptr (VSBROWSECONTAINER pguidLib1 szName0) = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do HDirect.writeMaybe Com.writeGUID pf1 pguidLib1 let pf2 = HDirect.addNCastPtr pf1 4 WideString.writeWideString pf2 szName0 readVSBROWSECONTAINER :: Prelude.Bool -> Foreign.Ptr.Ptr VSBROWSECONTAINER -> Prelude.IO VSBROWSECONTAINER readVSBROWSECONTAINER finaliseMe__ ptr = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do pguidLib1 <- HDirect.readMaybe (Com.readGUID finaliseMe__) pf1 let pf2 = HDirect.addNCastPtr pf1 4 szName0 <- WideString.readWideString pf2 Prelude.return (VSBROWSECONTAINER pguidLib1 szName0) sizeofVSBROWSECONTAINER :: Data.Word.Word32 sizeofVSBROWSECONTAINER = 8 data LIB_ADDREMOVEOPTIONS = LIB_ADDREMOVEOPTIONSList__ [LIB_ADDREMOVEOPTIONS] | LARO_NONE | LARO_ALREADYADDED | LARO_THRUFILEOPS instance HDirect.Flags (LIB_ADDREMOVEOPTIONS) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIB_ADDREMOVEOPTIONS) where fromEnum v = case v of (LIB_ADDREMOVEOPTIONSList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LARO_NONE -> 0 LARO_ALREADYADDED -> 1 LARO_THRUFILEOPS -> 2 toEnum v = case v of 0 -> LARO_NONE 1 -> LARO_ALREADYADDED 2 -> LARO_THRUFILEOPS x -> LIB_ADDREMOVEOPTIONSList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 3 0)) _ -> Prelude.error "unmarshallLIB_ADDREMOVEOPTIONS: illegal enum value " type LIB_ADDREMOVEOPTIONS0 = Wtypes.DWORD -- -------------------------------------------------- -- -- interface IVsLibrary -- -- -------------------------------------------------- data IVsLibrary_ a = IVsLibrary__ type IVsLibrary a = Com.IUnknown (IVsLibrary_ a) iidIVsLibrary :: Com.IID (IVsLibrary ()) iidIVsLibrary = Com.mkIID "{E86128E4-3B1B-4BE9-BEB6-D30E5BF40850}" getSupportedCategoryFields :: LIB_CATEGORY -> IVsLibrary a0 -> Prelude.IO Wtypes.DWORD getSupportedCategoryFields category iptr = do pCatField <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) category <- HDirect.marshallEnum32 category Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getSupportedCategoryFields methPtr iptr category pCatField) 3 iptr HDirect.doThenFree HDirect.free HDirect.readWord32 pCatField foreign import stdcall "dynamic" prim_ClassView_getSupportedCategoryFields :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Int.Int32 -> Foreign.Ptr.Ptr Data.Word.Word32 -> Prelude.IO Data.Int.Int32 getList :: LIB_LISTTYPE -> LIB_LISTFLAGS0 -> VSOBSEARCHCRITERIA -> IVsLibrary a0 -> Prelude.IO (IVsObjectList ()) getList listType flags pobSrch iptr = do ppList <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofPtr) pobSrch <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral sizeofVSOBSEARCHCRITERIA)) writeVSOBSEARCHCRITERIA pobSrch listType <- HDirect.marshallEnum32 listType Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getList methPtr iptr listType flags pobSrch ppList) 4 iptr HDirect.free pobSrch HDirect.doThenFree HDirect.free (Com.readIUnknown Prelude.False) ppList foreign import stdcall "dynamic" prim_ClassView_getList :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Int.Int32 -> Data.Word.Word32 -> Foreign.Ptr.Ptr VSOBSEARCHCRITERIA -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr (IVsObjectList a)) -> Prelude.IO Data.Int.Int32 getLibList :: LIB_PERSISTTYPE -> IVsLibrary a0 -> Prelude.IO (IVsLiteTreeList ()) getLibList lptType iptr = do ppList <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofForeignPtr) lptType <- HDirect.marshallEnum32 lptType Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getLibList methPtr iptr lptType ppList) 5 iptr HDirect.doThenFree HDirect.free (Com.readIUnknown Prelude.False) ppList foreign import stdcall "dynamic" prim_ClassView_getLibList :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Int.Int32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr (IVsLiteTreeList a)) -> Prelude.IO Data.Int.Int32 getLibFlags :: IVsLibrary a0 -> Prelude.IO LIB_FLAGS getLibFlags iptr = do pfFlags <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofInt32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getFlags methPtr iptr pfFlags) 6 iptr pfFlags <- HDirect.doThenFree HDirect.free HDirect.readInt32 pfFlags Prelude.return (Prelude.toEnum (Prelude.fromEnum pfFlags)) updateCounter0 :: IVsLibrary a0 -> Prelude.IO Wtypes.ULONG updateCounter0 iptr = do pCurUpdate <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getFlags methPtr iptr pCurUpdate) 7 iptr HDirect.doThenFree HDirect.free HDirect.readWord32 pCurUpdate getGuid :: Prelude.Maybe Com.GUID -> IVsLibrary a0 -> Prelude.IO () getGuid ppguidLib iptr = do ppguidLib <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral Com.sizeofGUID)) (HDirect.writeMaybe Com.writeGUID) ppguidLib Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getGuid methPtr iptr ppguidLib) 8 iptr HDirect.free ppguidLib foreign import stdcall "dynamic" prim_ClassView_getGuid :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr (Prelude.Maybe Com.GUID) -> Prelude.IO Data.Int.Int32 getSeparatorString :: Wtypes.LPCWSTR -> IVsLibrary a0 -> Prelude.IO () getSeparatorString pszSeparator iptr = do pszSeparator <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofPtr)) WideString.writeWideString pszSeparator Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getSeparatorString methPtr iptr pszSeparator) 9 iptr HDirect.freeref WideString.freeWideString pszSeparator foreign import stdcall "dynamic" prim_ClassView_getSeparatorString :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr WideString.WideString -> Prelude.IO Data.Int.Int32 loadState :: Com.IUnknown a1 -> LIB_PERSISTTYPE -> IVsLibrary a0 -> Prelude.IO () loadState pIStream lptType iptr = do pIStream <- Com.marshallIUnknown pIStream lptType <- HDirect.marshallEnum32 lptType Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_loadState methPtr iptr pIStream lptType) 10 iptr foreign import stdcall "dynamic" prim_ClassView_loadState :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr (Com.IUnknown a) -> Data.Int.Int32 -> Prelude.IO Data.Int.Int32 saveState :: Com.IUnknown a1 -> LIB_PERSISTTYPE -> IVsLibrary a0 -> Prelude.IO () saveState pIStream lptType iptr = do pIStream <- Com.marshallIUnknown pIStream lptType <- HDirect.marshallEnum32 lptType Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_loadState methPtr iptr pIStream lptType) 11 iptr getBrowseContainersForHierarchy :: VsProject.IVsHierarchy a1 -> [VSBROWSECONTAINER] -> IVsLibrary a0 -> Prelude.IO ([VSBROWSECONTAINER], Wtypes.ULONG) getBrowseContainersForHierarchy pHierarchy rgBrowseContainers iptr = let celt = (Prelude.fromIntegral (Prelude.length rgBrowseContainers) :: Data.Word.Word32) in do rgBrowseContainers <- HDirect.marshalllist sizeofVSBROWSECONTAINER writeVSBROWSECONTAINER rgBrowseContainers pcActual <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) pHierarchy <- Com.marshallIUnknown pHierarchy Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getBrowseContainersForHierarchy methPtr iptr pHierarchy celt rgBrowseContainers pcActual) 12 iptr pcActual <- HDirect.doThenFree HDirect.free HDirect.readWord32 pcActual celt <- HDirect.unmarshallWord32 celt rgBrowseContainers <- HDirect.unmarshalllist sizeofVSBROWSECONTAINER 0 celt (readVSBROWSECONTAINER Prelude.False) rgBrowseContainers Prelude.return (rgBrowseContainers, pcActual) foreign import stdcall "dynamic" prim_ClassView_getBrowseContainersForHierarchy :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr (VsProject.IVsHierarchy a) -> Data.Word.Word32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr VSBROWSECONTAINER) -> Foreign.Ptr.Ptr Data.Word.Word32 -> Prelude.IO Data.Int.Int32 addBrowseContainer :: PVSCOMPONENTSELECTORDATA -> LIB_ADDREMOVEOPTIONS0 -> IVsLibrary a0 -> Prelude.IO (LIB_ADDREMOVEOPTIONS0, Prelude.String) addBrowseContainer pcdComponent pgrfOptions iptr = do pbstrComponentAdded <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofPtr) pcdComponent <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral sizeofVSCOMPONENTSELECTORDATA)) writeVSCOMPONENTSELECTORDATA pcdComponent pgrfOptions <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32)) HDirect.writeWord32 pgrfOptions Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_addBrowseContainer methPtr iptr pcdComponent pgrfOptions pbstrComponentAdded) 13 iptr HDirect.free pcdComponent pbstrComponentAdded <- HDirect.doThenFree (HDirect.freeref Com.freeBSTR) Com.readBSTR pbstrComponentAdded pgrfOptions <- HDirect.doThenFree HDirect.free HDirect.readWord32 pgrfOptions Prelude.return (pgrfOptions, pbstrComponentAdded) foreign import stdcall "dynamic" prim_ClassView_addBrowseContainer :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr VSCOMPONENTSELECTORDATA -> Foreign.Ptr.Ptr Data.Word.Word32 -> Foreign.Ptr.Ptr Prelude.String -> Prelude.IO Data.Int.Int32 removeBrowseContainer :: Wtypes.DWORD -> Wtypes.LPCWSTR -> IVsLibrary a0 -> Prelude.IO () removeBrowseContainer dwReserved pszLibName1 iptr = do pszLibName1 <- WideString.marshallWideString pszLibName1 Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_removeBrowseContainer methPtr iptr dwReserved pszLibName1) 14 iptr WideString.freeWideString pszLibName1 foreign import stdcall "dynamic" prim_ClassView_removeBrowseContainer :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr WideString.WideString -> Prelude.IO Data.Int.Int32 -- -------------------------------------------------- -- -- interface IVsLibraryMgr -- -- -------------------------------------------------- data IVsLibraryMgr_ a = IVsLibraryMgr__ type IVsLibraryMgr a = Com.IUnknown (IVsLibraryMgr_ a) iidIVsLibraryMgr :: Com.IID (IVsLibraryMgr ()) iidIVsLibraryMgr = Com.mkIID "{DC1B976F-4DC7-4B3D-9EC7-A0DE9D39BC13}" getCount :: IVsLibraryMgr a0 -> Prelude.IO Wtypes.ULONG getCount iptr = do pnCount <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getFlags methPtr iptr pnCount) 3 iptr HDirect.doThenFree HDirect.free HDirect.readWord32 pnCount getLibraryAt :: Wtypes.ULONG -> IVsLibraryMgr a0 -> Prelude.IO (IVsLibrary ()) getLibraryAt nLibIndex iptr = do ppLibrary <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofForeignPtr) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getLibraryAt methPtr iptr nLibIndex ppLibrary) 4 iptr HDirect.doThenFree HDirect.free (Com.readIUnknown Prelude.False) ppLibrary foreign import stdcall "dynamic" prim_ClassView_getLibraryAt :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr (IVsLibrary a)) -> Prelude.IO Data.Int.Int32 getNameAt :: Wtypes.ULONG -> IVsLibraryMgr a0 -> Prelude.IO (Prelude.Maybe Wtypes.WCHAR) getNameAt nLibIndex iptr = do pszName0 <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofPtr) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getNameAt methPtr iptr nLibIndex pszName0) 5 iptr HDirect.doThenFree HDirect.free (HDirect.readunique HDirect.readWord16) pszName0 foreign import stdcall "dynamic" prim_ClassView_getNameAt :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr Data.Word.Word16) -> Prelude.IO Data.Int.Int32 toggleCheckAt :: Wtypes.ULONG -> IVsLibraryMgr a0 -> Prelude.IO () toggleCheckAt nLibIndex iptr = Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_toggleCheckAt methPtr iptr nLibIndex) 6 iptr foreign import stdcall "dynamic" prim_ClassView_toggleCheckAt :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Prelude.IO Data.Int.Int32 getCheckAt :: Wtypes.ULONG -> IVsLibraryMgr a0 -> Prelude.IO LIB_CHECKSTATE getCheckAt nLibIndex iptr = do pstate <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofInt32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getCheckAt methPtr iptr nLibIndex pstate) 7 iptr HDirect.doThenFree HDirect.free HDirect.readEnum32 pstate foreign import stdcall "dynamic" prim_ClassView_getCheckAt :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr LIB_CHECKSTATE -> Prelude.IO Data.Int.Int32 setLibraryGroupEnabled :: LIB_PERSISTTYPE -> Wtypes.BOOL -> IVsLibraryMgr a0 -> Prelude.IO () setLibraryGroupEnabled lpt fEnable iptr = do lpt <- HDirect.marshallEnum32 lpt Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_setLibraryGroupEnabled methPtr iptr lpt fEnable) 8 iptr foreign import stdcall "dynamic" prim_ClassView_setLibraryGroupEnabled :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Int.Int32 -> Data.Int.Int32 -> Prelude.IO Data.Int.Int32 data LIB_LISTCAPABILITIES = LIB_LISTCAPABILITIESList__ [LIB_LISTCAPABILITIES] | LLC_NONE | LLC_HASBROWSEOBJ | LLC_HASDESCPANE | LLC_HASSOURCECONTEXT | LLC_HASCOMMANDS | LLC_ALLOWDRAGDROP | LLC_ALLOWRENAME | LLC_ALLOWDELETE | LLC_ALLOWSCCOPS instance HDirect.Flags (LIB_LISTCAPABILITIES) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (LIB_LISTCAPABILITIES) where fromEnum v = case v of (LIB_LISTCAPABILITIESList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) LLC_NONE -> 0 LLC_HASBROWSEOBJ -> 1 LLC_HASDESCPANE -> 2 LLC_HASSOURCECONTEXT -> 4 LLC_HASCOMMANDS -> 8 LLC_ALLOWDRAGDROP -> 16 LLC_ALLOWRENAME -> 32 LLC_ALLOWDELETE -> 64 LLC_ALLOWSCCOPS -> 128 toEnum v = case v of 0 -> LLC_NONE 1 -> LLC_HASBROWSEOBJ 2 -> LLC_HASDESCPANE 4 -> LLC_HASSOURCECONTEXT 8 -> LLC_HASCOMMANDS 16 -> LLC_ALLOWDRAGDROP 32 -> LLC_ALLOWRENAME 64 -> LLC_ALLOWDELETE 128 -> LLC_ALLOWSCCOPS x -> LIB_LISTCAPABILITIESList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 9 0)) _ -> Prelude.error "unmarshallLIB_LISTCAPABILITIES: illegal enum value " type LIB_LISTCAPABILITIES0 = Wtypes.DWORD data VSOBJDESCOPTIONS = VSOBJDESCOPTIONSList__ [VSOBJDESCOPTIONS] | ODO_NONE | ODO_TOOLTIPDESC | ODO_USEFULLNAME instance HDirect.Flags (VSOBJDESCOPTIONS) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (VSOBJDESCOPTIONS) where fromEnum v = case v of (VSOBJDESCOPTIONSList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) ODO_NONE -> 0 ODO_TOOLTIPDESC -> 1 ODO_USEFULLNAME -> 2 toEnum v = case v of 0 -> ODO_NONE 1 -> ODO_TOOLTIPDESC 2 -> ODO_USEFULLNAME x -> VSOBJDESCOPTIONSList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 3 0)) _ -> Prelude.error "unmarshallVSOBJDESCOPTIONS: illegal enum value " type VSOBJDESCOPTIONS0 = Wtypes.DWORD data VSOBJGOTOSRCTYPE = GS_ANY | GS_DEFINITION | GS_DECLARATION | GS_REFERENCE deriving (Prelude.Enum) data VSOBJCLIPFORMATOPTIONS = CFO_NONE | CFO_COMPOSITEFMT | CFO_INVALIDCF instance Prelude.Enum (VSOBJCLIPFORMATOPTIONS) where fromEnum v = case v of CFO_NONE -> 0 CFO_COMPOSITEFMT -> 1 CFO_INVALIDCF -> 32768 toEnum v = case v of 0 -> CFO_NONE 1 -> CFO_COMPOSITEFMT 32768 -> CFO_INVALIDCF _ -> Prelude.error "unmarshallVSOBJCLIPFORMATOPTIONS: illegal enum value " type VSOBJCLIPFORMATOPTIONS0 = Wtypes.DWORD data VSOBJCLIPFORMAT = VSOBJCLIPFORMAT {cfFormat :: Wtypes.CLIPFORMAT, tymed :: Wtypes.DWORD, dwOptions :: VSOBJCLIPFORMATOPTIONS0} writeVSOBJCLIPFORMAT :: Foreign.Ptr.Ptr VSOBJCLIPFORMAT -> VSOBJCLIPFORMAT -> Prelude.IO () writeVSOBJCLIPFORMAT ptr (VSOBJCLIPFORMAT cfFormat tymed dwOptions) = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do HDirect.writeWord32 pf1 cfFormat let pf2 = HDirect.addNCastPtr pf1 4 HDirect.writeWord32 pf2 tymed let pf3 = HDirect.addNCastPtr pf2 4 HDirect.writeWord32 pf3 dwOptions readVSOBJCLIPFORMAT :: Foreign.Ptr.Ptr VSOBJCLIPFORMAT -> Prelude.IO VSOBJCLIPFORMAT readVSOBJCLIPFORMAT ptr = let pf0 = ptr pf1 = HDirect.addNCastPtr pf0 0 in do cfFormat <- HDirect.readWord32 pf1 let pf2 = HDirect.addNCastPtr pf1 4 tymed <- HDirect.readWord32 pf2 let pf3 = HDirect.addNCastPtr pf2 4 dwOptions <- HDirect.readWord32 pf3 Prelude.return (VSOBJCLIPFORMAT cfFormat tymed dwOptions) sizeofVSOBJCLIPFORMAT :: Data.Word.Word32 sizeofVSOBJCLIPFORMAT = 12 data VSOBJCFFLAGS = VSOBJCFFLAGSList__ [VSOBJCFFLAGS] | CFF_NONE | CFF_MULTISELECT instance HDirect.Flags (VSOBJCFFLAGS) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (VSOBJCFFLAGS) where fromEnum v = case v of (VSOBJCFFLAGSList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) CFF_NONE -> 0 CFF_MULTISELECT -> 1 toEnum v = case v of 0 -> CFF_NONE 1 -> CFF_MULTISELECT x -> VSOBJCFFLAGSList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 2 0)) _ -> Prelude.error "unmarshallVSOBJCFFLAGS: illegal enum value " type VSOBJCFFLAGS0 = Wtypes.DWORD data VSOBJOPFLAGS = VSOBJOPFLAGSList__ [VSOBJOPFLAGS] | OPF_NONE | OPF_MULTISELECT | OPF_FIRSTITEM | OPF_LASTITEM instance HDirect.Flags (VSOBJOPFLAGS) where x1 .+. x2 = Prelude.toEnum ((Prelude.fromEnum x1 Prelude.+ Prelude.fromEnum x2)) instance Prelude.Enum (VSOBJOPFLAGS) where fromEnum v = case v of (VSOBJOPFLAGSList__ xs) -> HDirect.orList (Prelude.map Prelude.fromEnum xs) OPF_NONE -> 0 OPF_MULTISELECT -> 1 OPF_FIRSTITEM -> 2 OPF_LASTITEM -> 4 toEnum v = case v of 0 -> OPF_NONE 1 -> OPF_MULTISELECT 2 -> OPF_FIRSTITEM 4 -> OPF_LASTITEM x -> VSOBJOPFLAGSList__ (Data.Maybe.mapMaybe (\ val -> if ((val Data.Bits..&. Prelude.fromIntegral x) Prelude.== val) then Prelude.Just (Prelude.toEnum (Prelude.fromIntegral val)) else Prelude.Nothing) (HDirect.pow2Series 4 0)) _ -> Prelude.error "unmarshallVSOBJOPFLAGS: illegal enum value " type VSOBJOPFLAGS0 = Wtypes.DWORD -- -------------------------------------------------- -- -- interface IVsObjectList -- -- -------------------------------------------------- data IVsObjectList_ a = IVsObjectList__ type IVsObjectList a = IVsLiteTreeList (IVsObjectList_ a) iidIVsObjectList :: Com.IID (IVsObjectList ()) iidIVsObjectList = Com.mkIID "{C48F7AB9-8966-4138-B602-14C5EB8BD857}" getCapabilities :: IVsObjectList a0 -> Prelude.IO LIB_LISTCAPABILITIES0 getCapabilities iptr = do pCapabilities <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getFlags methPtr iptr pCapabilities) 15 iptr HDirect.doThenFree HDirect.free HDirect.readWord32 pCapabilities getList0 :: Wtypes.ULONG -> LIB_LISTTYPE -> LIB_LISTFLAGS0 -> VSOBSEARCHCRITERIA -> IVsObjectList a0 -> Prelude.IO (IVsObjectList ()) getList0 index0 listType flags pobSrch iptr = do ppList <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofForeignPtr) pobSrch <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral sizeofVSOBSEARCHCRITERIA)) writeVSOBSEARCHCRITERIA pobSrch listType <- HDirect.marshallEnum32 listType Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getList0 methPtr iptr index0 listType flags pobSrch ppList) 16 iptr HDirect.free pobSrch HDirect.doThenFree HDirect.free (Com.readIUnknown Prelude.False) ppList foreign import stdcall "dynamic" prim_ClassView_getList0 :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Data.Int.Int32 -> Data.Word.Word32 -> Foreign.Ptr.Ptr VSOBSEARCHCRITERIA -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr (IVsObjectList a)) -> Prelude.IO Data.Int.Int32 getCategoryField :: Wtypes.ULONG -> LIB_CATEGORY -> IVsObjectList a0 -> Prelude.IO Wtypes.DWORD getCategoryField index0 category iptr = do pField <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) category <- HDirect.marshallEnum32 category Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getCategoryField methPtr iptr index0 category pField) 17 iptr HDirect.doThenFree HDirect.free HDirect.readWord32 pField foreign import stdcall "dynamic" prim_ClassView_getCategoryField :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Data.Int.Int32 -> Foreign.Ptr.Ptr Data.Word.Word32 -> Prelude.IO Data.Int.Int32 getExpandable2 :: Wtypes.ULONG -> LIB_LISTTYPE -> IVsObjectList a0 -> Prelude.IO Wtypes.BOOL getExpandable2 index0 listTypeExcluded iptr = do pfExpandable <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofInt32) listTypeExcluded <- HDirect.marshallEnum32 listTypeExcluded Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getExpandable2 methPtr iptr index0 listTypeExcluded pfExpandable) 18 iptr HDirect.doThenFree HDirect.free HDirect.readInt32 pfExpandable foreign import stdcall "dynamic" prim_ClassView_getExpandable2 :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Data.Int.Int32 -> Foreign.Ptr.Ptr Data.Int.Int32 -> Prelude.IO Data.Int.Int32 getNavigationInfo :: Wtypes.ULONG -> VSOBNAVIGATIONINFO2 -> IVsObjectList a0 -> Prelude.IO VSOBNAVIGATIONINFO2 getNavigationInfo index0 pobNav iptr = do pobNav <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral sizeofVSOBNAVIGATIONINFO2)) writeVSOBNAVIGATIONINFO2 pobNav Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getNavigationInfo methPtr iptr index0 pobNav) 19 iptr HDirect.doThenFree HDirect.free (readVSOBNAVIGATIONINFO2 Prelude.False) pobNav foreign import stdcall "dynamic" prim_ClassView_getNavigationInfo :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr VSOBNAVIGATIONINFO2 -> Prelude.IO Data.Int.Int32 locateNavigationInfo :: VSOBNAVIGATIONINFO2 -> VSOBNAVNAMEINFONODE -> Wtypes.BOOL -> IVsObjectList a0 -> Prelude.IO (Wtypes.BOOL, Wtypes.ULONG) locateNavigationInfo pobNav pobName fDontUpdate iptr = do pfMatchedName <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofInt32) pIndex <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) pobNav <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral sizeofVSOBNAVIGATIONINFO2)) writeVSOBNAVIGATIONINFO2 pobNav pobName <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral sizeofVSOBNAVNAMEINFONODE)) writeVSOBNAVNAMEINFONODE pobName Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_locateNavigationInfo methPtr iptr pobNav pobName fDontUpdate pfMatchedName pIndex) 20 iptr HDirect.free pobNav HDirect.free pobName pfMatchedName <- HDirect.doThenFree HDirect.free HDirect.readInt32 pfMatchedName pIndex <- HDirect.doThenFree HDirect.free HDirect.readWord32 pIndex Prelude.return (pfMatchedName, pIndex) foreign import stdcall "dynamic" prim_ClassView_locateNavigationInfo :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr VSOBNAVIGATIONINFO2 -> Foreign.Ptr.Ptr VSOBNAVNAMEINFONODE -> Data.Int.Int32 -> Foreign.Ptr.Ptr Data.Int.Int32 -> Foreign.Ptr.Ptr Data.Word.Word32 -> Prelude.IO Data.Int.Int32 getBrowseObject :: Wtypes.ULONG -> IVsObjectList a0 -> Prelude.IO (Automation.IDispatch ()) getBrowseObject index0 iptr = do ppdispBrowseObj <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofForeignPtr) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getBrowseObject methPtr iptr index0 ppdispBrowseObj) 21 iptr HDirect.doThenFree HDirect.free (Com.readIUnknown Prelude.False) ppdispBrowseObj foreign import stdcall "dynamic" prim_ClassView_getBrowseObject :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr (Automation.IDispatch a)) -> Prelude.IO Data.Int.Int32 getUserContext :: Wtypes.ULONG -> IVsObjectList a0 -> Prelude.IO (Com.IUnknown ()) getUserContext index0 iptr = do ppunkUserCtx <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofForeignPtr) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getUserContext methPtr iptr index0 ppunkUserCtx) 22 iptr HDirect.doThenFree HDirect.free (Com.readIUnknown Prelude.False) ppunkUserCtx foreign import stdcall "dynamic" prim_ClassView_getUserContext :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr (Com.IUnknown a)) -> Prelude.IO Data.Int.Int32 showHelp :: Wtypes.ULONG -> IVsObjectList a0 -> Prelude.IO () showHelp index0 iptr = Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_toggleCheckAt methPtr iptr index0) 23 iptr getSourceContext :: Wtypes.ULONG -> IVsObjectList a0 -> Prelude.IO (Prelude.Maybe Wtypes.WCHAR, Wtypes.ULONG) getSourceContext index0 iptr = do pszFileName <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofPtr) pulLineNum <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getSourceContext methPtr iptr index0 pszFileName pulLineNum) 24 iptr pszFileName <- HDirect.doThenFree HDirect.free (HDirect.readunique HDirect.readWord16) pszFileName pulLineNum <- HDirect.doThenFree HDirect.free HDirect.readWord32 pulLineNum Prelude.return (pszFileName, pulLineNum) foreign import stdcall "dynamic" prim_ClassView_getSourceContext :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr Data.Word.Word16) -> Foreign.Ptr.Ptr Data.Word.Word32 -> Prelude.IO Data.Int.Int32 countSourceItems :: Wtypes.ULONG -> IVsObjectList a0 -> Prelude.IO (VsProject.IVsHierarchy (), VsTypes.VSITEMID, Wtypes.ULONG) countSourceItems index0 iptr = do ppHier <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofForeignPtr) pitemid <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) pcItems <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_countSourceItems methPtr iptr index0 ppHier pitemid pcItems) 25 iptr ppHier <- HDirect.doThenFree HDirect.free (Com.readIUnknown Prelude.False) ppHier pitemid <- HDirect.doThenFree HDirect.free HDirect.readWord32 pitemid pcItems <- HDirect.doThenFree HDirect.free HDirect.readWord32 pcItems Prelude.return (ppHier, pitemid, pcItems) foreign import stdcall "dynamic" prim_ClassView_countSourceItems :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr (VsProject.IVsHierarchy a)) -> Foreign.Ptr.Ptr Data.Word.Word32 -> Foreign.Ptr.Ptr Data.Word.Word32 -> Prelude.IO Data.Int.Int32 getMultipleSourceItems :: Wtypes.ULONG -> VSGSIFLAGS0 -> Wtypes.ULONG -> IVsObjectList a0 -> Prelude.IO [VSITEMSELECTION] getMultipleSourceItems index0 grfGSI cItems iptr = do rgItemSel <- HDirect.allocBytes ((Prelude.fromIntegral sizeofVSITEMSELECTION Prelude.* Prelude.fromIntegral cItems)) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getMultipleSourceItems methPtr iptr index0 grfGSI cItems rgItemSel) 26 iptr cItems <- HDirect.unmarshallWord32 cItems HDirect.doThenFree Foreign.Marshal.Alloc.free (HDirect.unmarshalllist sizeofVSITEMSELECTION 0 cItems (readVSITEMSELECTION Prelude.False)) rgItemSel foreign import stdcall "dynamic" prim_ClassView_getMultipleSourceItems :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Data.Word.Word32 -> Data.Word.Word32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr VSITEMSELECTION) -> Prelude.IO Data.Int.Int32 canGoToSource :: Wtypes.ULONG -> VSOBJGOTOSRCTYPE -> IVsObjectList a0 -> Prelude.IO Wtypes.BOOL canGoToSource index0 srcType iptr = do pfOK <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofInt32) srcType <- HDirect.marshallEnum32 srcType Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_canGoToSource methPtr iptr index0 srcType pfOK) 27 iptr HDirect.doThenFree HDirect.free HDirect.readInt32 pfOK foreign import stdcall "dynamic" prim_ClassView_canGoToSource :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Data.Int.Int32 -> Foreign.Ptr.Ptr Data.Int.Int32 -> Prelude.IO Data.Int.Int32 goToSource :: Wtypes.ULONG -> VSOBJGOTOSRCTYPE -> IVsObjectList a0 -> Prelude.IO () goToSource index0 srcType iptr = do srcType <- HDirect.marshallEnum32 srcType Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_goToSource methPtr iptr index0 srcType) 28 iptr foreign import stdcall "dynamic" prim_ClassView_goToSource :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Data.Int.Int32 -> Prelude.IO Data.Int.Int32 getContextMenu :: Wtypes.ULONG -> IVsObjectList a0 -> Prelude.IO (Com.CLSID, Wtypes.LONG, Com.IUnknown ()) getContextMenu index0 iptr = do pclsidActive <- HDirect.allocBytes (Prelude.fromIntegral Com.sizeofCLSID) pnMenuId <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofInt32) ppCmdTrgtActive <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofForeignPtr) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getContextMenu methPtr iptr index0 pclsidActive pnMenuId ppCmdTrgtActive) 29 iptr pclsidActive <- Com.unmarshallCLSID Prelude.True pclsidActive pnMenuId <- HDirect.doThenFree HDirect.free HDirect.readInt32 pnMenuId ppCmdTrgtActive <- HDirect.doThenFree HDirect.free (Com.readIUnknown Prelude.False) ppCmdTrgtActive Prelude.return (pclsidActive, pnMenuId, ppCmdTrgtActive) foreign import stdcall "dynamic" prim_ClassView_getContextMenu :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr Com.CLSID -> Foreign.Ptr.Ptr Data.Int.Int32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr (Com.IUnknown a)) -> Prelude.IO Data.Int.Int32 queryDragDrop :: Wtypes.ULONG -> Com.IUnknown a1 -> Wtypes.DWORD -> Wtypes.DWORD -> IVsObjectList a0 -> Prelude.IO Wtypes.DWORD queryDragDrop index0 pDataObject grfKeyState pdwEffect iptr = do pDataObject <- Com.marshallIUnknown pDataObject pdwEffect <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32)) HDirect.writeWord32 pdwEffect Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_queryDragDrop methPtr iptr index0 pDataObject grfKeyState pdwEffect) 30 iptr HDirect.doThenFree HDirect.free HDirect.readWord32 pdwEffect foreign import stdcall "dynamic" prim_ClassView_queryDragDrop :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr (Com.IUnknown a) -> Data.Word.Word32 -> Foreign.Ptr.Ptr Data.Word.Word32 -> Prelude.IO Data.Int.Int32 doDragDrop :: Wtypes.ULONG -> Com.IUnknown a1 -> Wtypes.DWORD -> Wtypes.DWORD -> IVsObjectList a0 -> Prelude.IO Wtypes.DWORD doDragDrop index0 pDataObject grfKeyState pdwEffect iptr = do pDataObject <- Com.marshallIUnknown pDataObject pdwEffect <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32)) HDirect.writeWord32 pdwEffect Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_queryDragDrop methPtr iptr index0 pDataObject grfKeyState pdwEffect) 31 iptr HDirect.doThenFree HDirect.free HDirect.readWord32 pdwEffect canRename :: Wtypes.ULONG -> Wtypes.LPCOLESTR -> IVsObjectList a0 -> Prelude.IO Wtypes.BOOL canRename index0 pszNewName iptr = do pfOK <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofInt32) pszNewName <- WideString.marshallWideString pszNewName Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_canRename methPtr iptr index0 pszNewName pfOK) 32 iptr WideString.freeWideString pszNewName HDirect.doThenFree HDirect.free HDirect.readInt32 pfOK foreign import stdcall "dynamic" prim_ClassView_canRename :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr WideString.WideString -> Foreign.Ptr.Ptr Data.Int.Int32 -> Prelude.IO Data.Int.Int32 doRename :: Wtypes.ULONG -> Wtypes.LPCOLESTR -> VSOBJOPFLAGS0 -> IVsObjectList a0 -> Prelude.IO () doRename index0 pszNewName grfFlags iptr = do pszNewName <- WideString.marshallWideString pszNewName Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_doRename methPtr iptr index0 pszNewName grfFlags) 33 iptr WideString.freeWideString pszNewName foreign import stdcall "dynamic" prim_ClassView_doRename :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Foreign.Ptr.Ptr WideString.WideString -> Data.Word.Word32 -> Prelude.IO Data.Int.Int32 canDelete :: Wtypes.ULONG -> IVsObjectList a0 -> Prelude.IO Wtypes.BOOL canDelete index0 iptr = do pfOK <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofInt32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getExpandable methPtr iptr index0 pfOK) 34 iptr HDirect.doThenFree HDirect.free HDirect.readInt32 pfOK doDelete :: Wtypes.ULONG -> VSOBJOPFLAGS0 -> IVsObjectList a0 -> Prelude.IO () doDelete index0 grfFlags iptr = Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_doDelete methPtr iptr index0 grfFlags) 35 iptr foreign import stdcall "dynamic" prim_ClassView_doDelete :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Data.Word.Word32 -> Prelude.IO Data.Int.Int32 fillDescription :: Wtypes.ULONG -> VSOBJDESCOPTIONS0 -> Com.IUnknown a1 -> IVsObjectList a0 -> Prelude.IO () fillDescription index0 grfOptions0 pobDesc iptr = do pobDesc <- Com.marshallIUnknown pobDesc Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_fillDescription methPtr iptr index0 grfOptions0 pobDesc) 36 iptr foreign import stdcall "dynamic" prim_ClassView_fillDescription :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Data.Word.Word32 -> Foreign.Ptr.Ptr (Com.IUnknown a) -> Prelude.IO Data.Int.Int32 enumClipboardFormats :: Wtypes.ULONG -> VSOBJCFFLAGS0 -> [VSOBJCLIPFORMAT] -> IVsObjectList a0 -> Prelude.IO ([VSOBJCLIPFORMAT], Wtypes.ULONG) enumClipboardFormats index0 grfFlags rgcfFormats iptr = let celt = (Prelude.fromIntegral (Prelude.length rgcfFormats) :: Data.Word.Word32) in do rgcfFormats <- HDirect.marshalllist sizeofVSOBJCLIPFORMAT writeVSOBJCLIPFORMAT rgcfFormats pcActual <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_enumClipboardFormats methPtr iptr index0 grfFlags celt rgcfFormats pcActual) 37 iptr pcActual <- HDirect.doThenFree HDirect.free HDirect.readWord32 pcActual celt <- HDirect.unmarshallWord32 celt rgcfFormats <- HDirect.unmarshalllist sizeofVSOBJCLIPFORMAT 0 celt readVSOBJCLIPFORMAT rgcfFormats Prelude.return (rgcfFormats, pcActual) foreign import stdcall "dynamic" prim_ClassView_enumClipboardFormats :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Data.Word.Word32 -> Data.Word.Word32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr VSOBJCLIPFORMAT) -> Foreign.Ptr.Ptr Data.Word.Word32 -> Prelude.IO Data.Int.Int32 getClipboardFormat :: Wtypes.ULONG -> VSOBJCFFLAGS0 -> Wtypes.FORMATETC -> Wtypes.STGMEDIUM -> IVsObjectList a0 -> Prelude.IO () getClipboardFormat index0 grfFlags pFormatetc pMedium iptr = do pFormatetc <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral Wtypes.sizeofFORMATETC)) Wtypes.writeFORMATETC pFormatetc pMedium <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral Wtypes.sizeofSTGMEDIUM)) Wtypes.writeSTGMEDIUM pMedium Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getClipboardFormat methPtr iptr index0 grfFlags pFormatetc pMedium) 38 iptr HDirect.free pFormatetc HDirect.free pMedium foreign import stdcall "dynamic" prim_ClassView_getClipboardFormat :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Data.Word.Word32 -> Foreign.Ptr.Ptr Wtypes.FORMATETC -> Foreign.Ptr.Ptr Wtypes.STGMEDIUM -> Prelude.IO Data.Int.Int32 getExtendedClipboardVariant :: (Automation.Variant a1) => Wtypes.ULONG -> VSOBJCFFLAGS0 -> VSOBJCLIPFORMAT -> IVsObjectList a0 -> Prelude.IO a1 getExtendedClipboardVariant index0 grfFlags pcfFormat iptr = do pvarFormat <- Automation.allocVARIANT pcfFormat <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral sizeofVSOBJCLIPFORMAT)) writeVSOBJCLIPFORMAT pcfFormat Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getExtendedClipboardVariant methPtr iptr index0 grfFlags pcfFormat pvarFormat) 39 iptr HDirect.free pcfFormat Automation.unmarshallVariant pvarFormat foreign import stdcall "dynamic" prim_ClassView_getExtendedClipboardVariant :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Word.Word32 -> Data.Word.Word32 -> Foreign.Ptr.Ptr VSOBJCLIPFORMAT -> Automation.VARIANT -> Prelude.IO Data.Int.Int32 -- -------------------------------------------------- -- -- interface IVsObjectManager -- -- -------------------------------------------------- data IVsObjectManager_ a = IVsObjectManager__ type IVsObjectManager a = Com.IUnknown (IVsObjectManager_ a) iidIVsObjectManager :: Com.IID (IVsObjectManager ()) iidIVsObjectManager = Com.mkIID "{01E95D2E-2D20-4662-9DE7-4C1C35524260}" registerLibMgr :: Wtypes.REFGUID -> IVsLibraryMgr a1 -> IVsObjectManager a0 -> Prelude.IO VsTypes.VSCOOKIE registerLibMgr rguidLibMgr pLibMgr iptr = do pdwCookie <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) rguidLibMgr <- Com.marshallGUID rguidLibMgr pLibMgr <- Com.marshallIUnknown pLibMgr Com.invokeAndCheck (\ methPtr iptr -> Foreign.ForeignPtr.withForeignPtr rguidLibMgr (\ rguidLibMgr -> prim_ClassView_registerLibMgr methPtr iptr rguidLibMgr pLibMgr pdwCookie)) 3 iptr HDirect.doThenFree HDirect.free HDirect.readWord32 pdwCookie foreign import stdcall "dynamic" prim_ClassView_registerLibMgr :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr Com.GUID -> Foreign.Ptr.Ptr (IVsLibraryMgr a) -> Foreign.Ptr.Ptr Data.Word.Word32 -> Prelude.IO Data.Int.Int32 unregisterLibMgr :: VsTypes.VSCOOKIE -> IVsObjectManager a0 -> Prelude.IO () unregisterLibMgr dwCookie iptr = Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_toggleCheckAt methPtr iptr dwCookie) 4 iptr enumLibMgrs :: IVsObjectManager a0 -> Prelude.IO (Wtypes.ULONG, IVsLibraryMgr ()) enumLibMgrs iptr = do pCount <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofWord32) rgpLibMgrs <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofForeignPtr) Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_enumLibMgrs methPtr iptr pCount rgpLibMgrs) 5 iptr pCount <- HDirect.doThenFree HDirect.free HDirect.readWord32 pCount rgpLibMgrs <- HDirect.doThenFree HDirect.free (Com.readIUnknown Prelude.False) rgpLibMgrs Prelude.return (pCount, rgpLibMgrs) foreign import stdcall "dynamic" prim_ClassView_enumLibMgrs :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr Data.Word.Word32 -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr (IVsLibraryMgr a)) -> Prelude.IO Data.Int.Int32 refreshLists :: IVsObjectManager a0 -> Prelude.IO () refreshLists iptr = Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_refreshLists methPtr iptr) 6 iptr foreign import stdcall "dynamic" prim_ClassView_refreshLists :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Prelude.IO Data.Int.Int32 getList1 :: LIB_LISTTYPE -> LIB_LISTFLAGS0 -> IVsLibraryMgr a1 -> VSOBSEARCHCRITERIA -> IVsObjectManager a0 -> Prelude.IO (IVsObjectList ()) getList1 listType flags pLibMgr pobSrch iptr = do ppList <- HDirect.allocBytes (Prelude.fromIntegral HDirect.sizeofForeignPtr) pLibMgr <- Com.marshallIUnknown pLibMgr pobSrch <- HDirect.marshallref (HDirect.allocBytes (Prelude.fromIntegral sizeofVSOBSEARCHCRITERIA)) writeVSOBSEARCHCRITERIA pobSrch listType <- HDirect.marshallEnum32 listType Com.invokeAndCheck (\ methPtr iptr -> prim_ClassView_getList1 methPtr iptr listType flags pLibMgr pobSrch ppList) 7 iptr HDirect.free pobSrch HDirect.doThenFree HDirect.free (Com.readIUnknown Prelude.False) ppList foreign import stdcall "dynamic" prim_ClassView_getList1 :: Foreign.Ptr.Ptr () -> Foreign.Ptr.Ptr () -> Data.Int.Int32 -> Data.Word.Word32 -> Foreign.Ptr.Ptr (IVsLibraryMgr a) -> Foreign.Ptr.Ptr VSOBSEARCHCRITERIA -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr (IVsObjectList a)) -> Prelude.IO Data.Int.Int32