VirtualBox

source: vbox/trunk/src/VBox/Frontends/VirtualBox/ui/VBoxVMParallelPortSettings.ui.h@ 10621

Last change on this file since 10621 was 8155, checked in by vboxsync, 17 years ago

The Big Sun Rebranding Header Change

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.7 KB
Line 
1/**
2 *
3 * VBox frontends: Qt GUI ("VirtualBox"):
4 * "VM parallel port settings" dialog UI include (Qt Designer)
5 */
6
7/*
8 * Copyright (C) 2006-2007 Sun Microsystems, Inc.
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 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
19 * Clara, CA 95054 USA or visit http://www.sun.com if you need
20 * additional information or have any questions.
21 */
22
23/****************************************************************************
24** ui.h extension file, included from the uic-generated form implementation.
25**
26** If you wish to add, delete or rename functions or slots use
27** Qt Designer which will update this file, preserving your code. Create an
28** init() function in place of a constructor, and a destroy() function in
29** place of a destructor.
30*****************************************************************************/
31
32
33void VBoxVMParallelPortSettings::init()
34{
35 /* setup validation */
36
37 mIRQLine->setValidator (new QIULongValidator (0, 255, this));
38 mIOPortLine->setValidator (new QIULongValidator (0, 0xFFFF, this));
39
40 mPortPathLine->setValidator (new QRegExpValidator (QRegExp (".+"), this));
41
42 /* setup constraints */
43
44 mIRQLine->setMaximumWidth (mIRQLine->fontMetrics().width ("888888")
45 + mIRQLine->frameWidth() * 2);
46 mIRQLine->setMinimumWidth (mIRQLine->minimumWidth());
47
48 mIOPortLine->setMaximumWidth (mIOPortLine->fontMetrics().width ("8888888")
49 + mIOPortLine->frameWidth() * 2);
50 mIOPortLine->setMinimumWidth (mIOPortLine->minimumWidth());
51
52 /* set initial values */
53
54 mPortNumCombo->insertStringList (vboxGlobal().LPTPortNames());
55 mPortNumCombo->insertItem (vboxGlobal().toLPTPortName (0, 0));
56}
57
58void VBoxVMParallelPortSettings::getFromPort (const CParallelPort &aPort)
59{
60 mPort = aPort;
61
62 mParallelPortBox->setChecked (mPort.GetEnabled());
63
64 ulong IRQ = mPort.GetIRQ();
65 ulong IOBase = mPort.GetIOBase();
66 mPortNumCombo->setCurrentText (vboxGlobal().toLPTPortName (IRQ, IOBase));
67 mIRQLine->setText (QString::number (IRQ));
68 mIOPortLine->setText ("0x" + QString::number (IOBase, 16).upper());
69
70 mPortPathLine->setText (mPort.GetPath());
71
72 /* ensure everything is up-to-date */
73 mParallelPortBox_toggled (mParallelPortBox->isChecked());
74}
75
76void VBoxVMParallelPortSettings::putBackToPort()
77{
78 mPort.SetEnabled (mParallelPortBox->isChecked());
79
80 mPort.SetIRQ (mIRQLine->text().toULong (NULL, 0));
81 mPort.SetIOBase (mIOPortLine->text().toULong (NULL, 0));
82
83 mPort.SetPath (QDir::convertSeparators (mPortPathLine->text()));
84}
85
86bool VBoxVMParallelPortSettings::isUserDefined()
87{
88 ulong a, b;
89 return !vboxGlobal().toLPTPortNumbers (mPortNumCombo->currentText(), a, b);
90}
91
92void VBoxVMParallelPortSettings::mParallelPortBox_toggled (bool aOn)
93{
94 if (aOn)
95 mPortNumCombo_activated (mPortNumCombo->currentText());
96}
97
98void VBoxVMParallelPortSettings::mPortNumCombo_activated (const QString &aText)
99{
100 ulong IRQ, IOBase;
101 bool std = vboxGlobal().toLPTPortNumbers (aText, IRQ, IOBase);
102
103 mIRQLine->setEnabled (!std);
104 mIOPortLine->setEnabled (!std);
105 if (std)
106 {
107 mIRQLine->setText (QString::number (IRQ));
108 mIOPortLine->setText ("0x" + QString::number (IOBase, 16).upper());
109 }
110}
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