shldisp.idl 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. /*
  2. * COM interfaces for shell objects
  3. *
  4. * Copyright (C) 2004 Maxime Bellengé
  5. *
  6. * This library is free software; you can redistribute it and/or
  7. * modify it under the terms of the GNU Lesser General Public
  8. * License as published by the Free Software Foundation; either
  9. * version 2.1 of the License, or (at your option) any later version.
  10. *
  11. * This library is distributed in the hope that it will be useful,
  12. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  14. * Lesser General Public License for more details.
  15. *
  16. * You should have received a copy of the GNU Lesser General Public
  17. * License along with this library; if not, write to the Free Software
  18. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  19. */
  20. import "objidl.idl";
  21. import "oleidl.idl";
  22. import "oaidl.idl";
  23. import "shtypes.idl";
  24. import "servprov.idl";
  25. import "comcat.idl";
  26. /*****************************************************************************
  27. * IAutoComplete interface
  28. */
  29. [
  30. object,
  31. uuid(00bb2762-6a77-11d0-a535-00c04fd7d062),
  32. pointer_default(unique)
  33. ]
  34. interface IAutoComplete : IUnknown
  35. {
  36. typedef IAutoComplete *LPAUTOCOMPLETE;
  37. HRESULT Init( [in] HWND hwndEdit,
  38. [in] IUnknown *punkACL,
  39. [in] LPCOLESTR pwszRegKeyPath,
  40. [in] LPCOLESTR pwszQuickComplete);
  41. HRESULT Enable( [in] BOOL fEnable );
  42. }
  43. /*****************************************************************************
  44. * IAutoComplete2 interface
  45. */
  46. [
  47. object,
  48. uuid(eac04bc0-3791-11d2-bb95-0060977b464c),
  49. pointer_default(unique)
  50. ]
  51. interface IAutoComplete2 : IAutoComplete
  52. {
  53. typedef IAutoComplete2 *LPAUTOCOMPLETE2;
  54. typedef enum _tagAUTOCOMPLETEOPTIONS
  55. {
  56. ACO_NONE = 0x00, /* No AutoComplete */
  57. ACO_AUTOSUGGEST = 0x01, /* enable autosuggest dropdown */
  58. ACO_AUTOAPPEND = 0x02, /* enable autoappend */
  59. ACO_SEARCH = 0x04, /* add search entry to completion list */
  60. ACO_FILTERPREFIXES = 0x08, /* don't match common prefixes (www., http://, etc) */
  61. ACO_USETAB = 0x10, /* use tab to select autosuggest entries */
  62. ACO_UPDOWNKEYDROPSLIST = 0x20, /* up/down arrow key invokes autosuggest dropdown (if enabled) */
  63. ACO_RTLREADING = 0x40, /* enable RTL reading order for dropdown */
  64. } AUTOCOMPLETEOPTIONS;
  65. HRESULT SetOptions( [in] DWORD dwFlag);
  66. HRESULT GetOptions( [out] DWORD *pdwFlag);
  67. }
  68. [
  69. object,
  70. uuid(9ba05970-f6a8-11cf-a442-00a0c90a8f39),
  71. pointer_default(unique)
  72. ]
  73. interface IFolderViewOC : IDispatch
  74. {
  75. HRESULT SetFolderView( [in] IDispatch *pdisp );
  76. }