forked from kernelhcy/gtkqq
/
mainwindow.h
56 lines (45 loc) · 1.32 KB
/
mainwindow.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#ifndef __GTKQQ_MAINWINDOW_H
#define __GTKQQ_MAINWINDOW_H
#include <gtk/gtk.h>
#define QQ_MAINWINDOW(obj) G_TYPE_CHECK_INSTANCE_CAST(obj, qq_mainwindow_get_type()\
, QQMainWindow)
#define QQ_MAINWINDOWCLASS(c) G_TYPE_CHECK_CLASS_CAST(c\
, qq_mainwindow_get_type()\
, QQMainWindowClass)
#define QQ_IS_MAINWINDOW(obj) G_TYPE_CHECK_INSTANCE_TYPE(obj, qq_mainwindow_get_type())
typedef struct __QQMainWindow QQMainWindow;
typedef struct __QQMainWindowClass QQMainWindowClass;
struct __QQMainWindow{
GtkWindow parent;
GtkWidget *notebook;
GtkWidget *login_panel;
GtkWidget *main_panel;
GtkWidget *splash_panel;
gboolean showed;
};
struct __QQMainWindowClass{
GtkWindowClass parent;
};
GtkWidget* qq_mainwindow_new();
GType qq_mainwindow_get_type();
/* Main window show or hide */
void qq_mainwindow_show(GtkWidget *win);
void qq_mainwindow_hide(GtkWidget *win);
/* If the window now is shown, hide it,
else show it. */
void qq_mainwindow_show_hide(GtkWidget *win);
/*
* Show different panels
*/
void qq_mainwindow_show_loginpanel(GtkWidget *win);
void qq_mainwindow_show_splashpanel(GtkWidget *win);
void qq_mainwindow_show_mainpanel(GtkWidget *win);
/**
* Get the main panel accoss main window.
*
* @param win The main window.
*
* @return
*/
GtkWidget *qq_mainwindow_get_mainpanel(GtkWidget *win);
#endif