//=--------------------------------------------------------------------------= // ixsso.ODL //=--------------------------------------------------------------------------= // Copyright 1996 - 2000 Microsoft Corporation. All Rights Reserved. // //=--------------------------------------------------------------------------= // // ODL file for the control(s) and automation object(s) in this inproc server // #ifndef OLYMPUS_COMPONENT //=--------------------------------------------------------------------------= // the libid for this type libray // [ uuid(4e469dd1-2b6f-11d0-bfbc-0020f8008024), helpstring("ixsso Control Library"), lcid(0x0409), version(1.0) ] library Cisso { #else //=--------------------------------------------------------------------------= // the libid for this type libray // [ uuid(4e469dd2-2b6f-11d0-bfbc-0020f8008024), helpstring("MSSEARCH Control Library"), lcid(0x0409), version(1.0) ] library Nlsso { #endif // OLYMPUS_COMPONENT #include // // standard imports // importlib(STDOLE_TLB); importlib(STDTYPE_TLB); // // primary dispatch interface for CissoQuery control // [ uuid( f7456c32-6ff0-11d1-a260-0000f8753d7c ), helpstring("ixssoQuery Control"), hidden, dual, odl ] interface IixssoQuery : IDispatch { // // properties // [propget, helpstring("get/set query restriction")] HRESULT Query([out, retval] BSTR * val); [propput, helpstring("get/set query restriction")] HRESULT Query([in] BSTR val); [propget] HRESULT SortBy([out, retval] BSTR * val); [propput] HRESULT SortBy([in] BSTR val); [propget] HRESULT GroupBy([out, retval] BSTR * val); [propput] HRESULT GroupBy([in] BSTR val); [propget] HRESULT Columns([out, retval] BSTR * val); [propput] HRESULT Columns([in] BSTR val); [propget] HRESULT LocaleID([out, retval] LONG * val); [propput] HRESULT LocaleID([in] LONG val); [propget] HRESULT CodePage([out, retval] LONG * val); [propput] HRESULT CodePage([in] LONG val); [propget] HRESULT Catalog([out, retval] BSTR * val); [propput] HRESULT Catalog([in] BSTR val); [propget] HRESULT Dialect([out, retval] BSTR * val); [propput] HRESULT Dialect([in] BSTR val); [propget] HRESULT OptimizeFor([out, retval] BSTR * val); [propput] HRESULT OptimizeFor([in] BSTR val); [propget] HRESULT AllowEnumeration([out, retval] VARIANT_BOOL * val); [propput] HRESULT AllowEnumeration([in] VARIANT_BOOL val); [propget] HRESULT MaxRecords([out, retval] LONG * val); [propput] HRESULT MaxRecords([in] LONG val); [propget] HRESULT StartHit( [out, retval] VARIANT* val ); [propput] HRESULT StartHit( [in] VARIANT* val ); [propget] HRESULT ResourceUseFactor([out, retval] LONG * val); [propput] HRESULT ResourceUseFactor([in] LONG val); // // read-only properties reflecting query and index state // [propget] HRESULT QueryTimedOut([out, retval] VARIANT_BOOL * val); [propget] HRESULT QueryIncomplete([out, retval] VARIANT_BOOL * val); [propget] HRESULT OutOfDate([out, retval] VARIANT_BOOL * val); [propget] HRESULT CiScope([out, retval] BSTR * val); [propget] HRESULT CiFlags([out, retval] BSTR * val); [propput] HRESULT CiScope([in] BSTR val); [propput] HRESULT CiFlags([in] BSTR val); // // methods // [helpstring("set query params from URL")] HRESULT SetQueryFromURL([in] BSTR pwszQuery); [helpstring("get query params as URL")] HRESULT QueryToURL([out,retval] BSTR * ppwszQuery); // NOTE: This is in a private interface for access by the util object // [helpstring("add scope definition to query")] // HRESULT AddScopeToQuery([in] BSTR pwszScope, // [in,optional] BSTR pwszDepth); [helpstring("define column")] HRESULT DefineColumn([in] BSTR pwszColDefinition); [helpstring("execute query, return recordset")] HRESULT CreateRecordset( [in] BSTR pwszSequential, [out,retval] IDispatch * * ppDisp); [helpstring("reset internal state")] HRESULT Reset(); [helpstring("Denali support method")] HRESULT OnStartPage([in] IUnknown * pUnk); }; // // extension of primary dispatch interface for CissoQuery control // [ uuid( 7d74218f-4858-42f9-99cc-ef2ba840425a ), helpstring("ixssoQuery ControlEx"), hidden, dual, odl ] interface IixssoQueryEx : IixssoQuery { // // properties // [propget] HRESULT FirstRows([out, retval] LONG * val); [propput] HRESULT FirstRows([in] LONG val); }; #ifndef OLYMPUS_COMPONENT // // coclass for Cixsso controls // [ uuid(a4463024-2b6f-11d0-bfbc-0020f8008024), helpstring("ixsso query control") ] coclass CissoQuery { [default] interface IixssoQuery; }; // // coclass for extension of Cixsso controls // [ uuid(eafdf8b3-3be5-4e05-bf86-1e486b2fef9d), helpstring("Extension of ixsso query control") ] coclass CissoQueryEx { [default] interface IixssoQueryEx; }; #else // // coclass for NLSSO controls // [ uuid(0b63e352-9ccc-11d0-bcdb-00805fccce04), helpstring("MSSEARCH query control") ] coclass NlssoQuery { [default] interface IixssoQuery; }; #endif // OLYMPUS_COMPONENT // // primary dispatch interface for CissoUtil control // [ uuid( 3b34e346-6cf1-11d1-a260-0000f8753d7c ), helpstring("ixssoUtil Control"), hidden, dual, odl ] interface IixssoUtil : IDispatch { // // properties // // // methods // midl_pragma warning ( disable:2350 ) // possible invalid member midl_pragma warning ( disable:2400 ) // optional arg must be VARIANT [helpstring("add scope restriction to query")] HRESULT AddScopeToQuery( [in] IDispatch * pDisp, [in] BSTR pwszScope, [in,optional] BSTR pwszDepth); midl_pragma warning ( default:2400 ) midl_pragma warning ( default:2350 ) [helpstring("convert ISO language code to LCID")] HRESULT ISOToLocaleID( [in] BSTR pwszLocale, [out,retval] LONG * plcid); [helpstring("convert LCID to ISO language code")] HRESULT LocaleIDToISO( [in] LONG lcid, [out,retval] BSTR * ppwszLocale); [helpstring("truncate a string at a word break")] HRESULT TruncateToWhitespace( [in] BSTR pwszString, [in] LONG cchLen, [out,retval] BSTR * ppwszOutput); [helpstring("access a variant array element")] HRESULT GetArrayElement( [in] VARIANT * pVarIn, [in] LONG iElement, [out,retval] VARIANT * pVarOut); [helpstring("encode a string for HTML rendering")] HRESULT HTMLEncode( [in] BSTR pwszString, [in] LONG codepage, [out,retval] BSTR * ppwszOutput); [helpstring("encode a string for a URL")] HRESULT URLEncode( [in] BSTR pwszString, [in] LONG codepage, [out,retval] BSTR * ppwszOutput); // [helpstring("Denali support method")] // HRESULT OnStartPage([in] IUnknown * pUnk); // [helpstring("Denali support method")] // HRESULT OnEndPage(); }; #ifndef OLYMPUS_COMPONENT // // coclasses for utility controls // [ uuid( 0c16c27e-a6e7-11d0-bfc3-0020f8008024), helpstring("ixsso utility control") ] coclass CissoUtil { [default] interface IixssoUtil; }; #else [ uuid( ef196b90-e361-11d0-a242-0000f8753d7c), helpstring("MSSEARCH utility control") ] coclass NlssoUtil { [default] interface IixssoUtil; }; #endif // OLYMPUS_COMPONENT };