{
qDebug() << "create items for general skin view";
- QBrush backBrush(QColor(244, 244, 244));
- QPen linePen(QColor(205, 205, 205), 1, Qt::SolidLine);
QSize size = win->getUiInfo()->getMainSize();
- scene()->addRect(BORDER_SIZE, BORDER_SIZE, size.width() - BORDER_SIZE * 2, HEADER_HEIGHT, QPen(Qt::NoPen), backBrush);
- scene()->addLine(BORDER_SIZE, HEADER_HEIGHT + BORDER_SIZE, size.width() - BORDER_SIZE, HEADER_HEIGHT + BORDER_SIZE, linePen);
+
+ // header bar
+ scene()->addRect(0, 0, size.width(), HEADER_BAR_HEIGHT,
+ QPen(Qt::NoPen), QBrush(win->getUiInfo()->getVMColor()));
+ // header
+ QBrush brush(QColor(244, 244, 244));
+ scene()->addRect(0, HEADER_BAR_HEIGHT, size.width(), HEADER_HEIGHT, QPen(Qt::NoPen), brush);
if (BORDER_SIZE > 0) {
- QPen boaderPen(win->getUiInfo()->getVMColor(), BORDER_SIZE * 2, Qt::SolidLine);
- scene()->addRect(0, 0, size.width(), size.height(), boaderPen);
+ float osize = OUT_LINE_SIZE / 2;
+ float isize = INNER_LINE_SIZE / 2;
+ float bsize = (BORDER_SIZE - INNER_LINE_SIZE - OUT_LINE_SIZE) / 2;
+
+ // out line
+ if (osize > 0) {
+ QPen outPen(QColor(153, 153, 153), OUT_LINE_SIZE, Qt::SolidLine);
+ // left
+ scene()->addLine(osize, HEADER_BAR_HEIGHT + osize, osize, size.height(), outPen);
+ // bottom
+ scene()->addLine(osize, size.height() - osize, size.width() - osize, size.height() - osize, outPen);
+ // right
+ scene()->addLine(size.width() - osize, HEADER_BAR_HEIGHT + osize, size.width() - osize, size.height(), outPen);
+ }
+
+ // border line
+ if (bsize > 0) {
+ QPen borderPen(QColor(244, 244, 244), BORDER_SIZE - INNER_LINE_SIZE - OUT_LINE_SIZE, Qt::SolidLine);
+ float offset = OUT_LINE_SIZE + bsize;
+ // left
+ scene()->addLine(offset, HEADER_HEIGHT + bsize, offset, size.height() - offset, borderPen);
+ // bottom
+ scene()->addLine(offset, size.height() - offset, size.width() - offset, size.height() - offset, borderPen);
+ // right
+ scene()->addLine(size.width() - offset, HEADER_HEIGHT + bsize, size.width() - offset, size.height() - offset, borderPen);
+ }
+ // inner line
+ if (isize > 0) {
+ QPen innerPen(QColor(153, 153, 153), INNER_LINE_SIZE, Qt::SolidLine);
+ // top
+ scene()->addLine(BORDER_SIZE - isize, HEADER_HEIGHT - isize,
+ size.width() - BORDER_SIZE + isize, HEADER_HEIGHT - isize, innerPen);
+ // left
+ scene()->addLine(BORDER_SIZE - isize, HEADER_HEIGHT - isize,
+ BORDER_SIZE - isize, size.height() - BORDER_SIZE + isize, innerPen);
+ // bottom
+ scene()->addLine(BORDER_SIZE - isize, size.height() - BORDER_SIZE + isize,
+ size.width() - BORDER_SIZE, size.height() - BORDER_SIZE + isize, innerPen);
+ // right
+ scene()->addLine(size.width() - BORDER_SIZE + isize, HEADER_HEIGHT - isize,
+ size.width() - BORDER_SIZE + isize, size.height() - BORDER_SIZE + isize, innerPen);
+ }
}
QGraphicsTextItem *title = new QGraphicsTextItem(win->getUiInfo()->getVmName());
title->setDefaultTextColor(QColor(88, 88, 88));
scene()->addItem(title);
QRectF rect = title->boundingRect();
- int y = (HEADER_HEIGHT - rect.height()) / 2;
- title->setPos(BORDER_SIZE + 5, BORDER_SIZE + y);
+ int y = (HEADER_HEIGHT - HEADER_BAR_HEIGHT - rect.height()) / 2;
+ title->setPos(BORDER_SIZE + 5, HEADER_BAR_HEIGHT + y);
}
QSize GeneralSkinView::getMainSize()
skinImg[LayoutForm::normal].size() * win->getUiInfo()->getUiState()->getScaleFactor();
size.setWidth(size.width() + BORDER_SIZE * 2);
- size.setHeight(size.height() + HEADER_HEIGHT + BORDER_SIZE * 2);
+ size.setHeight(size.height() + HEADER_HEIGHT + BORDER_SIZE);
return size;
}
QImage regionImage = mainImage->scaled(
mainImage->width() * win->getUiInfo()->getUiState()->getScaleFactor() + BORDER_SIZE * 2,
mainImage->height() * win->getUiInfo()->getUiState()->getScaleFactor()
- + HEADER_HEIGHT + BORDER_SIZE * 2).createAlphaMask();
+ + HEADER_HEIGHT + BORDER_SIZE).createAlphaMask();
return QRegion(QBitmap::fromImage(regionImage));
}