c737e3d91fc67b611b038cd58c2314e03770a7a4
[WebKit-https.git] / Source / WebCore / platform / gtk / GRefPtrGtk.h
1 /*
2  *  Copyright (C) 2008 Collabora Ltd.
3  *  Copyright (C) 2009 Martin Robinson
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 GRefPtrGtk_h
22 #define GRefPtrGtk_h
23
24 #include <wtf/glib/GRefPtr.h>
25
26 typedef struct _GtkWidgetPath GtkWidgetPath;
27 typedef struct _SecretValue SecretValue;
28
29 namespace WTF {
30
31 template <> GtkTargetList* refGPtr(GtkTargetList* ptr);
32 template <> void derefGPtr(GtkTargetList* ptr);
33
34 #if ENABLE(CREDENTIAL_STORAGE)
35 template <> SecretValue* refGPtr(SecretValue* ptr);
36 template <> void derefGPtr(SecretValue* ptr);
37 #endif
38
39 #ifdef GTK_API_VERSION_2
40 template <> GdkCursor* refGPtr(GdkCursor* ptr);
41 template <> void derefGPtr(GdkCursor* ptr);
42 #else
43 template <> GtkWidgetPath* refGPtr(GtkWidgetPath* ptr);
44 template <> void derefGPtr(GtkWidgetPath* ptr);
45 #endif
46
47 }
48
49 #endif