Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(12)

Side by Side Diff: ui/base/gtk/gtk_signal.h

Issue 8536036: Devirtualize CHROMEGTK_CALLBACK. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « content/browser/tab_contents/web_drag_dest_gtk.h ('k') | ui/base/gtk/tooltip_window_gtk.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef UI_BASE_GTK_GTK_SIGNAL_H_ 5 #ifndef UI_BASE_GTK_GTK_SIGNAL_H_
6 #define UI_BASE_GTK_GTK_SIGNAL_H_ 6 #define UI_BASE_GTK_GTK_SIGNAL_H_
7 #pragma once 7 #pragma once
8 8
9 #include "ui/base/glib/glib_signal.h" 9 #include "ui/base/glib/glib_signal.h"
10 10
11 typedef struct _GtkWidget GtkWidget; 11 typedef struct _GtkWidget GtkWidget;
12 12
13 // These macros handle the common case where the sender object will be a 13 // These macros handle the common case where the sender object will be a
14 // GtkWidget*. 14 // GtkWidget*.
15 #define CHROMEGTK_CALLBACK_0(CLASS, RETURN, METHOD) \ 15 #define CHROMEGTK_CALLBACK_0(CLASS, RETURN, METHOD) \
16 CHROMEG_VIRTUAL_CALLBACK_0(CLASS, RETURN, METHOD, GtkWidget*); 16 CHROMEG_CALLBACK_0(CLASS, RETURN, METHOD, GtkWidget*);
17 17
18 #define CHROMEGTK_CALLBACK_1(CLASS, RETURN, METHOD, ARG1) \ 18 #define CHROMEGTK_CALLBACK_1(CLASS, RETURN, METHOD, ARG1) \
19 CHROMEG_VIRTUAL_CALLBACK_1(CLASS, RETURN, METHOD, GtkWidget*, ARG1); 19 CHROMEG_CALLBACK_1(CLASS, RETURN, METHOD, GtkWidget*, ARG1);
20 20
21 #define CHROMEGTK_CALLBACK_2(CLASS, RETURN, METHOD, ARG1, ARG2) \ 21 #define CHROMEGTK_CALLBACK_2(CLASS, RETURN, METHOD, ARG1, ARG2) \
22 CHROMEG_VIRTUAL_CALLBACK_2(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2); 22 CHROMEG_CALLBACK_2(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2);
23 23
24 #define CHROMEGTK_CALLBACK_3(CLASS, RETURN, METHOD, ARG1, ARG2, ARG3) \ 24 #define CHROMEGTK_CALLBACK_3(CLASS, RETURN, METHOD, ARG1, ARG2, ARG3) \
25 CHROMEG_VIRTUAL_CALLBACK_3(CLASS, RETURN, METHOD, GtkWidget*, ARG1, \ 25 CHROMEG_CALLBACK_3(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2, ARG3);
26 ARG2, ARG3);
27 26
28 #define CHROMEGTK_CALLBACK_4(CLASS, RETURN, METHOD, ARG1, ARG2, ARG3, ARG4) \ 27 #define CHROMEGTK_CALLBACK_4(CLASS, RETURN, METHOD, ARG1, ARG2, ARG3, ARG4) \
29 CHROMEG_VIRTUAL_CALLBACK_4(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2, \ 28 CHROMEG_CALLBACK_4(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2, ARG3, \
30 ARG3, ARG4); 29 ARG4);
31 30
32 #define CHROMEGTK_CALLBACK_5(CLASS, RETURN, METHOD, ARG1, ARG2, ARG3, ARG4, \ 31 #define CHROMEGTK_CALLBACK_5(CLASS, RETURN, METHOD, ARG1, ARG2, ARG3, ARG4, \
33 ARG5) \ 32 ARG5) \
34 CHROMEG_VIRTUAL_CALLBACK_5(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2, \ 33 CHROMEG_CALLBACK_5(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2, ARG3, \
35 ARG3, ARG4, ARG5); 34 ARG4, ARG5);
36 35
37 #define CHROMEGTK_CALLBACK_6(CLASS, RETURN, METHOD, ARG1, ARG2, ARG3, ARG4, \ 36 #define CHROMEGTK_CALLBACK_6(CLASS, RETURN, METHOD, ARG1, ARG2, ARG3, ARG4, \
38 ARG5, ARG6) \ 37 ARG5, ARG6) \
39 CHROMEG_VIRTUAL_CALLBACK_6(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2, \ 38 CHROMEG_CALLBACK_6(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2, ARG3, \
39 ARG4, ARG5, ARG6);
40
41 #define CHROMEGTK_VIRTUAL_CALLBACK_0(CLASS, RETURN, METHOD) \
42 CHROMEG_VIRTUAL_CALLBACK_0(CLASS, RETURN, METHOD, GtkWidget*);
43
44 #define CHROMEGTK_VIRTUAL_CALLBACK_1(CLASS, RETURN, METHOD, ARG1) \
45 CHROMEG_VIRTUAL_CALLBACK_1(CLASS, RETURN, METHOD, GtkWidget*, ARG1);
46
47 #define CHROMEGTK_VIRTUAL_CALLBACK_2(CLASS, RETURN, METHOD, ARG1, ARG2) \
48 CHROMEG_VIRTUAL_CALLBACK_2(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2);
49
50 #define CHROMEGTK_VIRTUAL_CALLBACK_3(CLASS, RETURN, METHOD, ARG1, ARG2, ARG3) \
51 CHROMEG_VIRTUAL_CALLBACK_3(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2, \
52 ARG3);
53
54 #define CHROMEGTK_VIRTUAL_CALLBACK_4(CLASS, RETURN, METHOD, ARG1, ARG2, ARG3, \
55 ARG4) \
56 CHROMEG_VIRTUAL_CALLBACK_4(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2, \
57 ARG3, ARG4);
58
59 #define CHROMEGTK_VIRTUAL_CALLBACK_5(CLASS, RETURN, METHOD, ARG1, ARG2, ARG3, \
60 ARG4, ARG5) \
61 CHROMEG_VIRTUAL_CALLBACK_5(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2, \
62 ARG3, ARG4, ARG5);
63
64 #define CHROMEGTK_VIRTUAL_CALLBACK_6(CLASS, RETURN, METHOD, ARG1, ARG2, ARG3, \
65 ARG4, ARG5, ARG6) \
66 CHROMEG_VIRTUAL_CALLBACK_6(CLASS, RETURN, METHOD, GtkWidget*, ARG1, ARG2, \
40 ARG3, ARG4, ARG5, ARG6); 67 ARG3, ARG4, ARG5, ARG6);
41 68
42 #endif // UI_BASE_GTK_GTK_SIGNAL_H_ 69 #endif // UI_BASE_GTK_GTK_SIGNAL_H_
OLDNEW
« no previous file with comments | « content/browser/tab_contents/web_drag_dest_gtk.h ('k') | ui/base/gtk/tooltip_window_gtk.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698