VirtualBox

source: vbox/trunk/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineLogicSeamless.h@ 44859

Last change on this file since 44859 was 44859, checked in by vboxsync, 12 years ago

FE/Qt: Multi-screen support: Make sure disabled guest-screens are hidden, enabled guest-screens are being rebuilt before shown.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.8 KB
Line 
1/** @file
2 *
3 * VBox frontends: Qt GUI ("VirtualBox"):
4 * UIMachineLogicSeamless class declaration
5 */
6
7/*
8 * Copyright (C) 2010-2013 Oracle Corporation
9 *
10 * This file is part of VirtualBox Open Source Edition (OSE), as
11 * available from http://www.virtualbox.org. This file is free software;
12 * you can redistribute it and/or modify it under the terms of the GNU
13 * General Public License (GPL) as published by the Free Software
14 * Foundation, in version 2 as it comes in the "COPYING" file of the
15 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
16 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
17 */
18
19#ifndef __UIMachineLogicSeamless_h__
20#define __UIMachineLogicSeamless_h__
21
22/* Local includes: */
23#include "UIMachineLogic.h"
24
25/* Forward declarations: */
26class UIMultiScreenLayout;
27
28/* Seamless machine logic implementation: */
29class UIMachineLogicSeamless : public UIMachineLogic
30{
31 Q_OBJECT;
32
33protected:
34
35 /* Constructor/destructor: */
36 UIMachineLogicSeamless(QObject *pParent, UISession *pSession);
37 ~UIMachineLogicSeamless();
38
39 /* Check if this logic is available: */
40 bool checkAvailability();
41
42 /* Multi-screen stuff: */
43 int hostScreenForGuestScreen(int iScreenId) const;
44 bool hasHostScreenForGuestScreen(int iScreenId) const;
45
46private slots:
47
48 void sltGuestMonitorChange(KGuestMonitorChangedEventType changeType, ulong uScreenId, QRect screenGeo);
49
50private:
51
52 /* Prepare helpers: */
53 void prepareActionGroups();
54 void prepareMachineWindows();
55
56 /* Cleanup helpers: */
57 void cleanupMachineWindows();
58 void cleanupActionGroups();
59
60 /* Variables: */
61 UIMultiScreenLayout *m_pScreenLayout;
62
63 /* Friend classes: */
64 friend class UIMachineLogic;
65 friend class UIMachineWindowSeamless;
66 friend class UIMachineViewSeamless;
67};
68
69#endif // __UIMachineLogicSeamless_h__
70
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette