X-Git-Url: https://vcs.maemo.org/git/?a=blobdiff_plain;f=src%2Fhildon-window.h;h=c4a82b600a435aae3e57c318d7c76347e6300939;hb=db9685e21af93630b100473c49d066de0ad3691f;hp=5a14220e6e6892272a961d368486893e9233b396;hpb=f6302d17784a0020efc9faef31b8d8c773b1ba44;p=hildon diff --git a/src/hildon-window.h b/src/hildon-window.h index 5a14220..c4a82b6 100644 --- a/src/hildon-window.h +++ b/src/hildon-window.h @@ -1,5 +1,5 @@ /* - * This file is part of hildon-libs + * This file is a part of hildon * * Copyright (C) 2006 Nokia Corporation, all rights reserved. * @@ -8,7 +8,7 @@ * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License * as published by the Free Software Foundation; version 2.1 of - * the License. + * the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of @@ -22,91 +22,96 @@ * */ +#ifndef __HILDON_WINDOW_H__ +#define __HILDON_WINDOW_H__ -#ifndef __HILDON_WINDOW_H__ -#define __HILDON_WINDOW_H__ +#include -#include -#include -#include -#include -#include -#include +G_BEGIN_DECLS -#include "hildon-defines.h" +#define HILDON_WINDOW_LONG_PRESS_TIME 800 /* in ms */ -G_BEGIN_DECLS +#define HILDON_TYPE_WINDOW \ + (hildon_window_get_type()) -#define HILDON_WINDOW_LONG_PRESS_TIME 1500 /* in ms */ +#define HILDON_WINDOW(obj) \ + (GTK_CHECK_CAST (obj, HILDON_TYPE_WINDOW, HildonWindow)) -#define HILDON_TYPE_WINDOW ( hildon_window_get_type() ) -#define HILDON_WINDOW(obj) \ - (GTK_CHECK_CAST (obj, HILDON_TYPE_WINDOW, HildonWindow)) -#define HILDON_WINDOW_CLASS(klass) \ - (GTK_CHECK_CLASS_CAST ((klass),\ - HILDON_TYPE_WINDOW, HildonWindowClass)) -#define HILDON_IS_WINDOW(obj) (GTK_CHECK_TYPE (obj, HILDON_TYPE_WINDOW)) -#define HILDON_IS_WINDOW_CLASS(klass) \ - (GTK_CHECK_CLASS_TYPE ((klass), HILDON_TYPE_WINDOW)) +#define HILDON_WINDOW_CLASS(klass) \ + (GTK_CHECK_CLASS_CAST ((klass),\ + HILDON_TYPE_WINDOW, HildonWindowClass)) -typedef struct _HildonWindow HildonWindow; -typedef struct _HildonWindowClass HildonWindowClass; +#define HILDON_IS_WINDOW(obj) \ + (GTK_CHECK_TYPE (obj, HILDON_TYPE_WINDOW)) -/** - * HildonWindowPrivate: - * - * This structure contains just internal data. - * It should not be accessed directly. - */ -typedef struct _HildonWindowPrivate HildonWindowPrivate; +#define HILDON_IS_WINDOW_CLASS(klass) \ + (GTK_CHECK_CLASS_TYPE ((klass), HILDON_TYPE_WINDOW)) -struct _HildonWindow -{ - GtkWindow parent; +#define HILDON_WINDOW_GET_CLASS(obj) \ + ((HildonWindowClass *) G_OBJECT_GET_CLASS(obj)) - /*private*/ - HildonWindowPrivate *priv; -}; +typedef struct _HildonWindow HildonWindow; + +typedef struct _HildonWindowClass HildonWindowClass; + +typedef enum +{ + HILDON_WINDOW_CO_COPY, + HILDON_WINDOW_CO_CUT, + HILDON_WINDOW_CO_PASTE +} HildonWindowClipboardOperation; -enum +struct _HildonWindow { - HILDON_WINDOW_CO_COPY, - HILDON_WINDOW_CO_CUT, - HILDON_WINDOW_CO_PASTE + GtkWindow parent; }; -struct _HildonWindowClass +struct _HildonWindowClass { GtkWindowClass parent_class; /* opera hacks for clip board operation */ void (*clipboard_operation)(HildonWindow *hwindow, int operation); + gboolean (*toggle_menu)(HildonWindow * self, guint button, guint32 time); /* Padding for future extension */ void (*_hildon_reserved1)(void); void (*_hildon_reserved2)(void); - void (*_hildon_reserved3)(void); }; +GType G_GNUC_CONST +hildon_window_get_type (void); -GType hildon_window_get_type (void); +GtkWidget* +hildon_window_new (void); -GtkWidget * hildon_window_new (void); +void +hildon_window_add_with_scrollbar (HildonWindow *self, + GtkWidget *child); -void hildon_window_add_with_scrollbar(HildonWindow *self, - GtkWidget *child); +GtkMenu* +hildon_window_get_menu (HildonWindow *self); -GtkMenu * hildon_window_get_menu (HildonWindow *self); -void hildon_window_set_menu (HildonWindow *self, - GtkMenu *menu); +void +hildon_window_set_main_menu (HildonWindow *self, + GtkMenu *menu); -void hildon_window_add_toolbar (HildonWindow *self, - GtkToolbar *toolbar); +#ifndef HILDON_DISABLE_DEPRECATED +void +hildon_window_set_menu (HildonWindow *self, + GtkMenu *menu); +#endif -void hildon_window_remove_toolbar (HildonWindow *self, - GtkToolbar *toolbar); +void +hildon_window_add_toolbar (HildonWindow *self, + GtkToolbar *toolbar); -gboolean hildon_window_get_is_topmost (HildonWindow *self); +void +hildon_window_remove_toolbar (HildonWindow *self, + GtkToolbar *toolbar); +gboolean +hildon_window_get_is_topmost (HildonWindow *self); G_END_DECLS -#endif /* __HILDON_WINDOW_H__ */ + +#endif /* __HILDON_WINDOW_H__ */