VirtualBox

source: vbox/trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.h@ 69500

Last change on this file since 69500 was 69500, checked in by vboxsync, 7 years ago

*: scm --update-copyright-year

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.3 KB
Line 
1/* $Id: UIMachineWindowScale.h 69500 2017-10-28 15:14:05Z vboxsync $ */
2/** @file
3 * VBox Qt GUI - UIMachineWindowScale class declaration.
4 */
5
6/*
7 * Copyright (C) 2010-2017 Oracle Corporation
8 *
9 * This file is part of VirtualBox Open Source Edition (OSE), as
10 * available from http://www.virtualbox.org. This file is free software;
11 * you can redistribute it and/or modify it under the terms of the GNU
12 * General Public License (GPL) as published by the Free Software
13 * Foundation, in version 2 as it comes in the "COPYING" file of the
14 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16 */
17
18#ifndef ___UIMachineWindowScale_h___
19#define ___UIMachineWindowScale_h___
20
21/* GUI includes: */
22#include "UIMachineWindow.h"
23
24/** UIMachineWindow reimplementation,
25 * providing GUI with machine-window for the scale mode. */
26class UIMachineWindowScale : public UIMachineWindow
27{
28 Q_OBJECT;
29
30protected:
31
32 /** Constructor, passes @a pMachineLogic and @a uScreenId to the UIMachineWindow constructor. */
33 UIMachineWindowScale(UIMachineLogic *pMachineLogic, ulong uScreenId);
34
35private:
36
37 /** Prepare main-layout routine. */
38 void prepareMainLayout();
39#ifdef VBOX_WS_MAC
40 /** Prepare visual-state routine. */
41 void prepareVisualState();
42#endif /* VBOX_WS_MAC */
43 /** Load settings routine. */
44 void loadSettings();
45
46 /** Save settings routine. */
47 void saveSettings();
48#ifdef VBOX_WS_MAC
49 /** Cleanup visual-state routine. */
50 void cleanupVisualState();
51#endif /* VBOX_WS_MAC */
52
53 /** Updates visibility according to visual-state. */
54 void showInNecessaryMode();
55
56 /** Restores cached window geometry. */
57 virtual void restoreCachedGeometry() /* override */;
58
59 /** Performs window geometry normalization according to guest-size and host's available geometry.
60 * @param fAdjustPosition Determines whether is it necessary to adjust position as well. */
61 virtual void normalizeGeometry(bool fAdjustPosition) /* override */;
62
63 /** Common @a pEvent handler. */
64 bool event(QEvent *pEvent);
65
66 /** Returns whether this window is maximized. */
67 bool isMaximizedChecked();
68
69 /** Holds the current window geometry. */
70 QRect m_normalGeometry;
71
72 /** Factory support. */
73 friend class UIMachineWindow;
74};
75
76#endif /* !___UIMachineWindowScale_h___ */
77
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