correct size on all resolutions
This commit is contained in:
parent
60890cecad
commit
8e93120555
2 changed files with 19 additions and 35 deletions
|
|
@ -282,31 +282,24 @@ void MainWindow::compose() {
|
|||
screenRes.getCoords(&srx1, &sry1, &srx2, &sry2);
|
||||
log_debugcpp("(for Percentage) Screen Res: " + std::to_string(srx1) + " " + std::to_string(srx2)+" " + std::to_string(sry1) + " " + std::to_string(sry2));
|
||||
|
||||
dpr = screen->devicePixelRatio();
|
||||
log_to_file("dpr: %f \n", dpr);
|
||||
uint64_t windowWidth = ((uint64_t)std::abs(screenRes.width()) * widthRatio) * dpr;
|
||||
|
||||
uint64_t windowWidth = (((uint64_t)std::abs(screenRes.width())) * widthRatio);
|
||||
uint64_t screenHeight = (uint64_t)std::abs(screenRes.height());
|
||||
log_debugcpp("Window Width: " + std::to_string(windowWidth));
|
||||
log_to_file("Window Width: %d \n", windowWidth);
|
||||
|
||||
QFontMetrics fontMetrics = this->fontMetrics();
|
||||
int maxCharWidth = fontMetrics.maxWidth();
|
||||
int charHeight = fontMetrics.height();
|
||||
//QSize QFontMetrics::size(int flags, const QString &text, int tabStops = 0, int *tabArray = nullptr) const
|
||||
|
||||
this->createLayout(new QGridLayout());
|
||||
//scrollArea->verticalScrollBar()->setMinimumWidth(windowWidth * (widthRatio));
|
||||
//scrollArea->verticalScrollBar()->setMaximumWidth(windowWidth * (widthRatio));
|
||||
/*
|
||||
* this->setAttribute(Qt::WA_DontShowOnScreen, true);
|
||||
* this->show();
|
||||
* this->widget->layout()->update();
|
||||
* this->hide();
|
||||
* this->setAttribute(Qt::WA_DontShowOnScreen, false);
|
||||
*/
|
||||
|
||||
this->scrollArea->setMaximumWidth((int)windowWidth);
|
||||
this->scrollArea->setMinimumWidth((int)windowWidth);
|
||||
this->mainMenuBar->setMinimumWidth((int)windowWidth);
|
||||
this->mainMenuBar->setMaximumWidth((int)windowWidth);
|
||||
for (auto *epw : ews) {
|
||||
if (!epw) continue;
|
||||
epw->calculateSize(windowWidth, screenHeight);
|
||||
|
||||
epw->calculateSize(windowWidth - scrollArea->verticalScrollBar()->sizeHint().width()
|
||||
- widgetLayout->contentsMargins().left()
|
||||
, screenHeight);
|
||||
log_debugcpp("epw loop");
|
||||
log_debugcpp("epw roles: " + print_as_binary((epw->getEndpointHandler()->getRoles())));
|
||||
//std::bitset<sizeof(uint8_t)> content =
|
||||
|
|
@ -324,7 +317,6 @@ void MainWindow::compose() {
|
|||
ews[i]->layout()->getContentsMargins(&left, &top, &right, &bottom);
|
||||
windowHeight += ews[i]->sizeHint().height();
|
||||
windowHeight += top * 3;
|
||||
//windowHeight += bottom;
|
||||
log_debugcpp("windowHeight loop: " + std::to_string(windowHeight));
|
||||
}
|
||||
windowHeight += mainMenuBar->sizeHint().height();
|
||||
|
|
@ -522,16 +514,6 @@ ChannelWidget::ChannelWidget(uint32_t channelCount, EndpointHandler* eph, QWidge
|
|||
this->setLayout(widgetLayout);
|
||||
}
|
||||
|
||||
/*
|
||||
* QSize ChannelWidget::minimumSizeHint() const {
|
||||
* return minimum;
|
||||
* }
|
||||
*
|
||||
* void ChannelWidget::setMinimum(QSize minimum) {
|
||||
* this->minimum = minimum;
|
||||
* }
|
||||
*/
|
||||
|
||||
void ChannelWidget::updateChannel(int channel) {
|
||||
this->channelSliders.at(channel)->blockSignals(true);
|
||||
this->channelSliders.at(channel)->setValue((int)((eph->getCallbackInfo()->channelVolumes[channel] + roundingFactor) * 100));
|
||||
|
|
@ -553,6 +535,7 @@ EndpointWidget::EndpointWidget(EndpointHandler* eph, QWidget *parent, uint64_t i
|
|||
this->eph->setState(EndpointState::ENDPOINT_ACTIVE, idx);
|
||||
this->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Fixed);
|
||||
widgetLayout = new QGridLayout(this);
|
||||
//this->setContentsMargins(0, 0, 0, 0);
|
||||
//this->setLayout(widgetLayout);
|
||||
log_debugcpp("epw main layout parent: " + std::to_string((intptr_t)(widgetLayout->parent())));
|
||||
if (parent == nullptr) { log_debugcpp("ayooooo?"); }
|
||||
|
|
@ -796,7 +779,7 @@ void MainWindow::removeEndpointWidget(CustomWidgetEvent<uint64_t>* ev){
|
|||
}
|
||||
|
||||
void MainWindow::addEndpointWidget(CustomWidgetEvent<EndpointHandler*>* ev){
|
||||
EndpointWidget* epw = new EndpointWidget(ev->payload, widget, this->ews.size());
|
||||
EndpointWidget* epw = new EndpointWidget(ev->payload, containerWidget, this->ews.size());
|
||||
//epw->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
|
||||
//this->widgetLayout->addWidget(epw);
|
||||
ews.push_back(epw);
|
||||
|
|
@ -952,7 +935,7 @@ void MainWindow::createLayout(QGridLayout *newLayout) {
|
|||
log_debugcpp("createLayout");
|
||||
widgetLayout->removeItem(lastRowSpacer);
|
||||
delete this->widgetLayout;
|
||||
widget->setLayout(newLayout);
|
||||
containerWidget->setLayout(newLayout);
|
||||
this->widgetLayout = newLayout;
|
||||
|
||||
bool areEndpoints = false;
|
||||
|
|
@ -1011,7 +994,8 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) {
|
|||
|
||||
ewsUpdateTimer = new QTimer(this);
|
||||
recentlyClosedTimer = new QTimer(this);
|
||||
widget = new QWidget();
|
||||
containerWidget = new QWidget();
|
||||
//widget->setContentsMargins(0, 0, 0, 0);
|
||||
widgetLayout = new QGridLayout();
|
||||
trayIcon = new QSystemTrayIcon();
|
||||
trayIconMenu = new QMenu();
|
||||
|
|
@ -1032,7 +1016,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) {
|
|||
*/
|
||||
scrollArea = new QScrollArea(this);
|
||||
//widget->setAttribute(Qt::WA_TranslucentBackground);
|
||||
scrollArea->setWidget(widget);
|
||||
scrollArea->setWidget(containerWidget);
|
||||
scrollArea->setWidgetResizable(true);
|
||||
scrollArea->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded);
|
||||
scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||||
|
|
@ -1297,7 +1281,7 @@ void MainWindow::reloadEndpointWidgets() {
|
|||
if (osh->getPlaybackEndpointHandlers().at(i)->getState() == EndpointState::ENDPOINT_ACTIVE){
|
||||
log_debugcpp("EPWidget creation");
|
||||
//osh->getPlaybackEndpointHandlers().at(i)->getCallbackInfo()->caller = osh->getGuid();
|
||||
EndpointWidget *epw = new EndpointWidget(osh->getPlaybackEndpointHandlers().at(i), widget);
|
||||
EndpointWidget *epw = new EndpointWidget(osh->getPlaybackEndpointHandlers().at(i), containerWidget);
|
||||
|
||||
log_wdebugcpp(L"epw name: " + epw->getEndpointHandler()->getName());
|
||||
if ((epw->getEndpointHandler()->getRoles() == Roles::ROLE_ALL) ||
|
||||
|
|
|
|||
|
|
@ -207,7 +207,7 @@ private:
|
|||
|
||||
std::vector<EndpointWidget*> ews;
|
||||
std::vector<std::pair<Roles, std::wstring>> roleBucketList;
|
||||
QWidget *widget;
|
||||
QWidget *containerWidget;
|
||||
QGridLayout *widgetLayout;
|
||||
|
||||
QSystemTrayIcon *trayIcon;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue