From f689ce5646abfaa0743e7c3c0314839ff0809886 Mon Sep 17 00:00:00 2001 From: LoRd_MuldeR Date: Wed, 19 Dec 2012 23:43:27 +0100 Subject: [PATCH] Some style-specific tweaks. --- src/Config.h | 2 +- src/Dialog_About.cpp | 4 ++-- src/Dialog_MainWindow.cpp | 47 ++++++++++++++++++++++++++++++++++------------- 3 files changed, 37 insertions(+), 16 deletions(-) diff --git a/src/Config.h b/src/Config.h index 56b74048..67c87771 100644 --- a/src/Config.h +++ b/src/Config.h @@ -30,7 +30,7 @@ #define VER_LAMEXP_MINOR_LO 7 #define VER_LAMEXP_TYPE Alpha #define VER_LAMEXP_PATCH 7 -#define VER_LAMEXP_BUILD 1220 +#define VER_LAMEXP_BUILD 1221 /////////////////////////////////////////////////////////////////////////////// // Tool versions (minimum expected versions!) diff --git a/src/Dialog_About.cpp b/src/Dialog_About.cpp index 9d1818ff..ed26a412 100644 --- a/src/Dialog_About.cpp +++ b/src/Dialog_About.cpp @@ -126,8 +126,8 @@ AboutDialog::AboutDialog(SettingsModel *settings, QWidget *parent, bool firstSta connect(ui->tabWidget, SIGNAL(currentChanged(int)), this, SLOT(tabChanged(int))); //Make transparent - QStyle *style = qApp->style(); - if((dynamic_cast(style)) || (dynamic_cast(style))) + const type_info &styleType = typeid(*qApp->style()); + if((typeid(QWindowsVistaStyle) == styleType) || (typeid(QWindowsXPStyle) == styleType)) { MAKE_TRANSPARENT(ui->infoScrollArea); MAKE_TRANSPARENT(ui->contributorsScrollArea); diff --git a/src/Dialog_MainWindow.cpp b/src/Dialog_MainWindow.cpp index 364a7987..9351706c 100644 --- a/src/Dialog_MainWindow.cpp +++ b/src/Dialog_MainWindow.cpp @@ -142,6 +142,14 @@ while(0) } \ while(0) +#define MAKE_TRANSPARENT(WIDGET, FLAG) do \ +{ \ + QPalette _p = (WIDGET)->palette(); \ + _p.setColor(QPalette::Background, Qt::transparent); \ + (WIDGET)->setPalette(FLAG ? _p : QPalette()); \ +} \ +while(0) + #define LINK(URL) QString("%2").arg(URL).arg(QString(URL).replace("-", "−")) #define FSLINK(PATH) QString("%2").arg(PATH).arg(QString(PATH).replace("-", "−")) #define USE_NATIVE_FILE_DIALOG (lamexp_themes_enabled() || ((QSysInfo::windowsVersion() & QSysInfo::WV_NT_based) < QSysInfo::WV_XP)) @@ -1745,6 +1753,11 @@ void MainWindow::styleActionActivated(QAction *action) changeEvent(e); LAMEXP_DELETE(e); } + + //Make transparent + const type_info &styleType = typeid(*qApp->style()); + const bool bTransparent = ((typeid(QWindowsVistaStyle) == styleType) || (typeid(QWindowsXPStyle) == styleType)); + MAKE_TRANSPARENT(ui->scrollArea, bTransparent); } /* @@ -3122,20 +3135,28 @@ void MainWindow::outputFolderMouseEventOccurred(QWidget *sender, QEvent *event) if((sender == ui->outputFoldersFovoritesLabel) || (sender == ui->outputFoldersEditorLabel) || (sender == ui->outputFoldersGoUpLabel)) { - switch(event->type()) + const type_info &styleType = typeid(*qApp->style()); + if((typeid(QPlastiqueStyle) == styleType) || (typeid(QWindowsStyle) == styleType)) { - case QEvent::Enter: - dynamic_cast(sender)->setFrameShadow(ui->outputFolderView->isEnabled() ? QFrame::Raised : QFrame::Plain); - break; - case QEvent::MouseButtonPress: - dynamic_cast(sender)->setFrameShadow(ui->outputFolderView->isEnabled() ? QFrame::Sunken : QFrame::Plain); - break; - case QEvent::MouseButtonRelease: - dynamic_cast(sender)->setFrameShadow(ui->outputFolderView->isEnabled() ? QFrame::Raised : QFrame::Plain); - break; - case QEvent::Leave: - dynamic_cast(sender)->setFrameShadow(ui->outputFolderView->isEnabled() ? QFrame::Plain : QFrame::Plain); - break; + switch(event->type()) + { + case QEvent::Enter: + dynamic_cast(sender)->setFrameShadow(ui->outputFolderView->isEnabled() ? QFrame::Raised : QFrame::Plain); + break; + case QEvent::MouseButtonPress: + dynamic_cast(sender)->setFrameShadow(ui->outputFolderView->isEnabled() ? QFrame::Sunken : QFrame::Plain); + break; + case QEvent::MouseButtonRelease: + dynamic_cast(sender)->setFrameShadow(ui->outputFolderView->isEnabled() ? QFrame::Raised : QFrame::Plain); + break; + case QEvent::Leave: + dynamic_cast(sender)->setFrameShadow(ui->outputFolderView->isEnabled() ? QFrame::Plain : QFrame::Plain); + break; + } + } + else + { + dynamic_cast(sender)->setFrameShadow(QFrame::Plain); } if((event->type() == QEvent::MouseButtonRelease) && ui->outputFolderView->isEnabled() && (mouseEvent)) -- 2.11.0