tizen beta release
[profile/ivi/webkit-efl.git] / Source / WebKit / gtk / webkit / webkitwebsettings.h
1 /*
2  * Copyright (C) 2008 Christian Dywan <christian@imendio.com>
3  * Copyright (C) 2009 Jan Michael Alonzo <jmalonzo@gmail.com
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Library General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Library General Public License for more details.
14  *
15  * You should have received a copy of the GNU Library General Public License
16  * along with this library; see the file COPYING.LIB.  If not, write to
17  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18  * Boston, MA 02110-1301, USA.
19  */
20
21 #ifndef webkitwebsettings_h
22 #define webkitwebsettings_h
23
24 #include <glib-object.h>
25
26 #include <webkit/webkitdefines.h>
27
28 G_BEGIN_DECLS
29
30 #define WEBKIT_TYPE_WEB_SETTINGS            (webkit_web_settings_get_type())
31 #define WEBKIT_WEB_SETTINGS(obj)            (G_TYPE_CHECK_INSTANCE_CAST((obj), WEBKIT_TYPE_WEB_SETTINGS, WebKitWebSettings))
32 #define WEBKIT_WEB_SETTINGS_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST((klass),  WEBKIT_TYPE_WEB_SETTINGS, WebKitWebSettingsClass))
33 #define WEBKIT_IS_WEB_SETTINGS(obj)         (G_TYPE_CHECK_INSTANCE_TYPE((obj), WEBKIT_TYPE_WEB_SETTINGS))
34 #define WEBKIT_IS_WEB_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),  WEBKIT_TYPE_WEB_SETTINGS))
35 #define WEBKIT_WEB_SETTINGS_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS((obj),  WEBKIT_TYPE_WEB_SETTINGS, WebKitWebSettingsClass))
36
37 /**
38  * WebKitEditingBehavior:
39  * @WEBKIT_EDITING_BEHAVIOR_MAC: Editing behavior mimicking OS X user interfaces.
40  * @WEBKIT_EDITING_BEHAVIOR_WINDOWS: Editing behavior mimicking Windows user interfaces.
41  * @WEBKIT_EDITING_BEHAVIOR_UNIX: Editing behavior mimicking free desktop user interfaces.
42  *
43  * Enum values used for determining the editing behavior of editable elements.
44  *
45  **/
46 typedef enum {
47     WEBKIT_EDITING_BEHAVIOR_MAC,
48     WEBKIT_EDITING_BEHAVIOR_WINDOWS,
49     WEBKIT_EDITING_BEHAVIOR_UNIX
50 } WebKitEditingBehavior;
51
52 typedef struct _WebKitWebSettingsPrivate WebKitWebSettingsPrivate;
53
54 struct _WebKitWebSettings {
55     GObject parent_instance;
56
57     /*< private >*/
58     WebKitWebSettingsPrivate *priv;
59 };
60
61 struct _WebKitWebSettingsClass {
62     GObjectClass parent_class;
63
64     /* Padding for future expansion */
65     void (*_webkit_reserved1) (void);
66     void (*_webkit_reserved2) (void);
67     void (*_webkit_reserved3) (void);
68     void (*_webkit_reserved4) (void);
69 };
70
71 WEBKIT_API GType
72 webkit_web_settings_get_type          (void);
73
74 WEBKIT_API WebKitWebSettings *
75 webkit_web_settings_new               (void);
76
77 WEBKIT_API WebKitWebSettings *
78 webkit_web_settings_copy              (WebKitWebSettings *web_settings);
79
80 WEBKIT_API const gchar *
81 webkit_web_settings_get_user_agent    (WebKitWebSettings *web_settings);
82
83 G_END_DECLS
84
85 #endif /* webkitwebsettings_h */