blob: dd7f282d0c9f5a491481e4656e0920ffd507fa11 [file] [log] [blame]
/*
* Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
cpp_quote("#define WebPreferencesChangedNotification TEXT(\"WebPreferencesChangedNotification\")")
cpp_quote("#define WebPreferencesRemovedNotification TEXT(\"WebPreferencesRemovedNotification\")")
#ifndef DO_NO_IMPORTS
import "oaidl.idl";
import "ocidl.idl";
#endif
typedef enum FontSmoothingType {
FontSmoothingTypeStandard=0,
FontSmoothingTypeLight,
FontSmoothingTypeMedium,
FontSmoothingTypeStrong,
FontSmoothingTypeWindows
} FontSmoothingType;
typedef enum WebKitEditableLinkBehavior {
WebKitEditableLinkDefaultBehavior = 0,
WebKitEditableLinkAlwaysLive,
WebKitEditableLinkOnlyLiveWithShiftKey,
WebKitEditableLinkLiveWhenNotFocused,
WebKitEditableLinkNeverLive
} WebKitEditableLinkBehavior;
typedef enum WebKitEditingBehavior {
WebKitEditingMacBehavior = 0,
WebKitEditingWinBehavior,
WebKitEditingUnixBehavior
} WebKitEditingBehavior;
typedef enum WebKitCookieStorageAcceptPolicy {
WebKitCookieStorageAcceptPolicyAlways = 0,
WebKitCookieStorageAcceptPolicyNever,
WebKitCookieStorageAcceptPolicyOnlyFromMainDocumentDomain
} WebKitCookieStorageAcceptPolicy;
typedef enum WebCacheModel {
WebCacheModelDocumentViewer = 0,
WebCacheModelDocumentBrowser = 1,
WebCacheModelPrimaryWebBrowser = 2
} WebCacheModel;
[
object,
oleautomation,
hidden,
uuid(0930D594-A5A3-46e1-858E-AB17A13CD28E),
pointer_default(unique)
]
interface IWebPreferences : IUnknown
{
HRESULT standardPreferences([out, retval] IWebPreferences** standardPreferences);
HRESULT initWithIdentifier([in] BSTR anIdentifier, [out, retval] IWebPreferences** preferences);
HRESULT identifier([out, retval] BSTR* ident);
HRESULT standardFontFamily([out, retval] BSTR* family);
HRESULT setStandardFontFamily([in] BSTR family);
HRESULT fixedFontFamily([out, retval] BSTR* family);
HRESULT setFixedFontFamily([in] BSTR family);
HRESULT serifFontFamily([out, retval] BSTR* fontFamily);
HRESULT setSerifFontFamily([in] BSTR family);
HRESULT sansSerifFontFamily([out, retval] BSTR* family);
HRESULT setSansSerifFontFamily([in] BSTR family);
HRESULT cursiveFontFamily([out, retval] BSTR* family);
HRESULT setCursiveFontFamily([in] BSTR family);
HRESULT fantasyFontFamily([out, retval] BSTR* family);
HRESULT setFantasyFontFamily([in] BSTR family);
HRESULT defaultFontSize([out, retval] int* fontSize);
HRESULT setDefaultFontSize([in] int fontSize);
HRESULT defaultFixedFontSize([out, retval] int* fontSize);
HRESULT setDefaultFixedFontSize([in] int fontSize);
HRESULT minimumFontSize([out, retval] int* fontSize);
HRESULT setMinimumFontSize([in] int fontSize);
HRESULT minimumLogicalFontSize([out, retval] int* fontSize);
HRESULT setMinimumLogicalFontSize([in] int fontSize);
HRESULT defaultTextEncodingName([out, retval] BSTR* name);
HRESULT setDefaultTextEncodingName([in] BSTR name);
HRESULT userStyleSheetEnabled([out, retval] BOOL* enabled);
HRESULT setUserStyleSheetEnabled([in] BOOL enabled);
HRESULT userStyleSheetLocation([out, retval] BSTR* location);
HRESULT setUserStyleSheetLocation([in] BSTR location);
HRESULT isJavaEnabled([out, retval] BOOL* enabled);
HRESULT setJavaEnabled([in] BOOL enabled);
HRESULT isJavaScriptEnabled([out, retval] BOOL* enabled);
HRESULT setJavaScriptEnabled([in] BOOL enabled);
HRESULT javaScriptCanOpenWindowsAutomatically([out, retval] BOOL* enabled);
HRESULT setJavaScriptCanOpenWindowsAutomatically([in] BOOL enabled);
HRESULT arePlugInsEnabled([out, retval] BOOL* enabled);
HRESULT setPlugInsEnabled([in] BOOL enabled);
HRESULT allowsAnimatedImages([out, retval] BOOL* enabled);
HRESULT setAllowsAnimatedImages([in] BOOL enabled);
HRESULT allowAnimatedImageLooping([out, retval] BOOL* enabled);
HRESULT setAllowAnimatedImageLooping([in] BOOL enabled);
HRESULT setLoadsImagesAutomatically([in] BOOL enabled);
HRESULT loadsImagesAutomatically([out, retval] BOOL* enabled);
HRESULT setAutosaves([in] BOOL enabled);
HRESULT autosaves([out, retval] BOOL* enabled);
HRESULT setShouldPrintBackgrounds([in] BOOL enabled);
HRESULT shouldPrintBackgrounds([out, retval] BOOL* enabled);
HRESULT setPrivateBrowsingEnabled([in] BOOL enabled);
HRESULT privateBrowsingEnabled([out, retval] BOOL* enabled);
HRESULT setTabsToLinks([in] BOOL enabled);
HRESULT tabsToLinks([out, retval] BOOL* enabled);
HRESULT textAreasAreResizable([out, retval] BOOL* enabled);
HRESULT setTextAreasAreResizable([in] BOOL enabled);
HRESULT unused1();
HRESULT unused2();
HRESULT iconDatabaseLocation([out, retval] BSTR* location);
HRESULT setIconDatabaseLocation([in] BSTR location);
HRESULT iconDatabaseEnabled([out, retval] BOOL* enabled);
HRESULT setIconDatabaseEnabled([in] BOOL enabled);
HRESULT fontSmoothing([out, retval] FontSmoothingType* smoothingType);
HRESULT setFontSmoothing([in] FontSmoothingType smoothingType);
HRESULT editableLinkBehavior([out, retval] WebKitEditableLinkBehavior* editableLinkBehavior);
HRESULT setEditableLinkBehavior([in] WebKitEditableLinkBehavior behavior);
HRESULT cookieStorageAcceptPolicy([out, retval] WebKitCookieStorageAcceptPolicy* acceptPolicy);
HRESULT setCookieStorageAcceptPolicy([in] WebKitCookieStorageAcceptPolicy acceptPolicy);
HRESULT continuousSpellCheckingEnabled([out, retval] BOOL* enabled);
HRESULT setContinuousSpellCheckingEnabled([in] BOOL enabled);
HRESULT grammarCheckingEnabled([out, retval] BOOL* enabled);
HRESULT setGrammarCheckingEnabled([in] BOOL enabled);
HRESULT allowContinuousSpellChecking([out, retval] BOOL *allowed);
HRESULT setAllowContinuousSpellChecking([in] BOOL allowed);
HRESULT isDOMPasteAllowed([out, retval] BOOL *allowed);
HRESULT setDOMPasteAllowed([in] BOOL allowed);
HRESULT usesPageCache([out, retval] BOOL* usesPageCache);
HRESULT setUsesPageCache([in] BOOL usesPageCache);
HRESULT cacheModel([out, retval] WebCacheModel* cacheModel);
HRESULT setCacheModel([in] WebCacheModel cacheModel);
HRESULT setShouldPaintCustomScrollbars(BOOL shouldPaint);
HRESULT shouldPaintCustomScrollbars(BOOL *shouldPaint);
HRESULT setZoomsTextOnly(BOOL zoomsTextOnly);
HRESULT zoomsTextOnly(BOOL *zoomsTextOnly);
HRESULT setAcceleratedCompositingEnabled(BOOL acceleratedCompositingEnabled);
HRESULT acceleratedCompositingEnabled(BOOL *acceleratedCompositingEnabled);
HRESULT editingBehavior([out, retval] WebKitEditingBehavior* editingBehavior);
HRESULT setEditingBehavior([in] WebKitEditingBehavior behavior);
}