widget/gtk/nsScreenGtk.h

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:5f439a4bd3ea
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5
6 #ifndef nsScreenGtk_h___
7 #define nsScreenGtk_h___
8
9 #include "nsBaseScreen.h"
10 #include "nsRect.h"
11 #include "gdk/gdk.h"
12 #ifdef MOZ_X11
13 #include <X11/Xlib.h>
14
15 // from Xinerama.h
16 typedef struct {
17 int screen_number;
18 short x_org;
19 short y_org;
20 short width;
21 short height;
22 } XineramaScreenInfo;
23 #endif /* MOZ_X11 */
24
25 //------------------------------------------------------------------------
26
27 class nsScreenGtk : public nsBaseScreen
28 {
29 public:
30 nsScreenGtk();
31 ~nsScreenGtk();
32
33 NS_IMETHOD GetRect(int32_t* aLeft, int32_t* aTop, int32_t* aWidth, int32_t* aHeight);
34 NS_IMETHOD GetAvailRect(int32_t* aLeft, int32_t* aTop, int32_t* aWidth, int32_t* aHeight);
35 NS_IMETHOD GetPixelDepth(int32_t* aPixelDepth);
36 NS_IMETHOD GetColorDepth(int32_t* aColorDepth);
37
38 void Init(GdkWindow *aRootWindow);
39 #ifdef MOZ_X11
40 void Init(XineramaScreenInfo *aScreenInfo);
41 #endif /* MOZ_X11 */
42
43 private:
44 uint32_t mScreenNum;
45 nsIntRect mRect;
46 nsIntRect mAvailRect;
47 };
48
49 #endif // nsScreenGtk_h___

mercurial