Remove unnecessary updating of size, on paint events, for SvgWidgets.

Also updated RAM & EEPROM inspection icon styles
This commit is contained in:
Nav
2021-11-08 19:56:12 +00:00
parent cd63dd5035
commit c2e44c214e
4 changed files with 15 additions and 18 deletions

View File

@@ -308,22 +308,22 @@ QScrollBar::sub-line:vertical {
}
#bottom-menu-bar #ram-inspection-btn {
min-width: 71px;
min-width: 73px;
}
#bottom-menu-bar #eeprom-inspection-btn {
min-width: 97px;
min-width: 99px;
}
#bottom-menu-bar #ram-inspection-btn #ram-inspection-btn-icon,
#bottom-menu-bar #eeprom-inspection-btn #eeprom-inspection-btn-icon {
margin-left: 7px;
margin-left: 6px;
margin-top: 1px;
}
#bottom-menu-bar #ram-inspection-btn #ram-inspection-btn-label,
#bottom-menu-bar #eeprom-inspection-btn #eeprom-inspection-btn-label {
margin-left: 1px;
margin-left: 5px;
}
#bottom-menu-bar QToolButton:hover,

View File

@@ -320,7 +320,7 @@
<number>22</number>
</property>
<property name="containerWidth">
<number>22</number>
<number>26</number>
</property>
<property name="svgFilePath">
<string>:/compiled/src/Insight/UserInterfaces/InsightWindow/Widgets/TargetMemoryInspectionPane/Images/memory-inspection-icon.svg</string>
@@ -371,7 +371,7 @@
<number>22</number>
</property>
<property name="containerWidth">
<number>22</number>
<number>26</number>
</property>
<property name="svgFilePath">
<string>:/compiled/src/Insight/UserInterfaces/InsightWindow/Widgets/TargetMemoryInspectionPane/Images/memory-inspection-icon.svg</string>

View File

@@ -6,9 +6,6 @@
using namespace Bloom::Widgets;
SvgWidget::SvgWidget(QWidget* parent): QFrame(parent) {
this->containerWidth = parent->width();
this->containerHeight = parent->height();
this->setFixedSize(this->containerWidth, this->containerHeight);
this->renderer.setAspectRatioMode(Qt::AspectRatioMode::KeepAspectRatioByExpanding);
}
@@ -16,27 +13,25 @@ void SvgWidget::paintEvent(QPaintEvent* paintEvent) {
auto painter = QPainter(this);
auto svgSize = this->renderer.defaultSize();
auto margins = this->contentsMargins();
const auto containerSize = this->frameSize();
painter.setRenderHints(QPainter::RenderHint::Antialiasing | QPainter::RenderHint::SmoothPixmapTransform, true);
this->setFixedHeight(this->containerHeight + margins.top() + margins.bottom());
this->setFixedWidth(this->containerWidth + margins.left() + margins.right());
if (this->angle % 360 != 0) {
painter.translate(
std::ceil(static_cast<float>(this->containerWidth / 2)),
std::ceil(static_cast<float>(this->containerHeight / 2))
std::ceil(static_cast<float>(containerSize.width() / 2)),
std::ceil(static_cast<float>(containerSize.height() / 2))
);
painter.rotate(this->angle);
painter.translate(
-std::ceil(static_cast<float>(this->containerWidth / 2)),
-std::ceil(static_cast<float>(this->containerHeight / 2))
-std::ceil(static_cast<float>(containerSize.width() / 2)),
-std::ceil(static_cast<float>(containerSize.height() / 2))
);
}
this->renderer.render(&painter, QRectF(
std::ceil(static_cast<float>(this->containerWidth - svgSize.width()) / 2 + static_cast<float>(margins.left())),
std::ceil(static_cast<float>(this->containerHeight - svgSize.height()) / 2 + static_cast<float>(margins.top())),
std::ceil(static_cast<float>(containerSize.width() - svgSize.width()) / 2 + static_cast<float>(margins.left())),
std::ceil(static_cast<float>(containerSize.height() - svgSize.height()) / 2 + static_cast<float>(margins.top())),
svgSize.width(),
svgSize.height()
));

View File

@@ -39,6 +39,7 @@ namespace Bloom::Widgets
void setContainerWidth(int containerWidth) {
this->containerWidth = containerWidth;
this->setFixedWidth(this->containerWidth);
}
[[nodiscard]] int getContainerWidth() const {
@@ -47,6 +48,7 @@ namespace Bloom::Widgets
void setContainerHeight(int containerHeight) {
this->containerHeight = containerHeight;
this->setFixedHeight(this->containerHeight);
}
[[nodiscard]] int getContainerHeight() const {