void TabBar::startDrag(int index) { int sessionId = sessionAtTab(index); m_startPos.setX(0); m_startPos.setY(0); int x = index ? m_tabWidths.at(index - 1) : m_skin->tabBarPosition().x(); int tabWidth = m_tabWidths.at(index) - x; QString title = tabTitle(sessionId); QPixmap tab(tabWidth, height()); QColor fillColor(Settings::backgroundColor()); if (m_mainWindow->useTranslucency()) fillColor.setAlphaF(qreal(Settings::backgroundColorOpacity()) / 100); tab.fill(fillColor); QPainter painter(&tab); painter.initFrom(this); painter.setPen(m_skin->tabBarTextColor()); drawButton(0, 0, index, painter); painter.end(); QMimeData* mimeData = new QMimeData; mimeData->setText(QVariant(sessionId).toString()); QDrag* drag = new QDrag(this); drag->setMimeData(mimeData); drag->setPixmap(tab); drag->exec(Qt::MoveAction); return; }
bool UIMachineSettingsNetwork::validate(QString &strWarning, QString &strTitle) { /* Pass if adapter is disabled: */ if (!m_pEnableAdapterCheckBox->isChecked()) return true; /* Validate alternatives: */ bool fValid = true; switch (attachmentType()) { case KNetworkAttachmentType_Bridged: { if (alternativeName().isNull()) { strWarning = tr("no bridged network adapter is selected"); fValid = false; } break; } case KNetworkAttachmentType_Internal: { if (alternativeName().isNull()) { strWarning = tr("no internal network name is specified"); fValid = false; } break; } case KNetworkAttachmentType_HostOnly: { if (alternativeName().isNull()) { strWarning = tr("no host-only network adapter is selected"); fValid = false; } break; } case KNetworkAttachmentType_Generic: { if (alternativeName().isNull()) { strWarning = tr("no generic driver is selected"); fValid = false; } break; } default: break; } /* Validate MAC-address length: */ if (fValid && m_pMACEditor->text().size() < 12) { strWarning = tr("the MAC address must be 12 hexadecimal digits long."); fValid = false; } /* Make sure MAC-address is unicast: */ if (fValid && m_pMACEditor->text().size() >= 2) { QRegExp validator("^[0-9A-Fa-f][02468ACEace]"); if (validator.indexIn(m_pMACEditor->text()) != 0) { strWarning = tr("the second digit in the MAC address may not be odd " "as only unicast addresses are allowed."); fValid = false; } } if (!fValid) strTitle += ": " + vboxGlobal().removeAccelMark(tabTitle()); return fValid; }