VirtualBox

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

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

FE/Qt: Runtime UI: Multi-screen support: Make sure view-menu is updated properly under mac-host.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.9 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 void sltHostScreenCountChanged(int cScreenCount);
50
51private:
52
53 /* Prepare helpers: */
54 void prepareActionGroups();
55 void prepareMachineWindows();
56 void prepareMenu();
57
58 /* Cleanup helpers: */
59 //void cleanupMenu() {}
60 void cleanupMachineWindows();
61 void cleanupActionGroups();
62
63 /* Variables: */
64 UIMultiScreenLayout *m_pScreenLayout;
65
66 /* Friend classes: */
67 friend class UIMachineLogic;
68 friend class UIMachineWindowSeamless;
69 friend class UIMachineViewSeamless;
70};
71
72#endif // __UIMachineLogicSeamless_h__
73
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