aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/options/optw_interfacelookglobal.cpp
diff options
context:
space:
mode:
authorGravatar Fabio Bas2009-02-27 15:11:49 +0000
committerGravatar Fabio Bas2009-02-27 15:11:49 +0000
commitcdb7d60c0c6c81d909715e7dcd99f3c63ed3d575 (patch)
tree37c5c3310e9b5856a6e42cd62736eea270069506 /src/modules/options/optw_interfacelookglobal.cpp
parentsmall fix for openbox (diff)
downloadKVIrc-cdb7d60c0c6c81d909715e7dcd99f3c63ed3d575.tar.gz
KVIrc-cdb7d60c0c6c81d909715e7dcd99f3c63ed3d575.tar.bz2
KVIrc-cdb7d60c0c6c81d909715e7dcd99f3c63ed3d575.zip
support for real transparency using compositing under X11
removed old kde3 "krootpixmap" fake transparency git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@3104 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/options/optw_interfacelookglobal.cpp')
-rw-r--r--src/modules/options/optw_interfacelookglobal.cpp52
1 files changed, 21 insertions, 31 deletions
diff --git a/src/modules/options/optw_interfacelookglobal.cpp b/src/modules/options/optw_interfacelookglobal.cpp
index ad0a6be3a..4a028780b 100644
--- a/src/modules/options/optw_interfacelookglobal.cpp
+++ b/src/modules/options/optw_interfacelookglobal.cpp
@@ -27,6 +27,7 @@
#include "kvi_settings.h"
#include "kvi_options.h"
#include "kvi_locale.h"
+#include "kvi_app.h"
#include "kvi_tal_tooltip.h"
#include <QLayout>
@@ -61,19 +62,15 @@ KviThemeTransparencyOptionsWidget::KviThemeTransparencyOptionsWidget(QWidget * p
{
#ifdef COMPILE_PSEUDO_TRANSPARENCY
- #ifdef COMPILE_KDE_SUPPORT
- createLayout();
- #else
- createLayout();
- #endif
+ createLayout();
m_pUseTransparencyBoolSelector = addBoolSelector(0,0,1,0,__tr2qs_ctx("Enable fake transparency","options"),KviOption_boolUseGlobalPseudoTransparency);
- #ifdef COMPILE_KDE_SUPPORT
+ #ifdef COMPILE_X11_SUPPORT
mergeTip(m_pUseTransparencyBoolSelector,
__tr2qs_ctx("<center>This option makes all KVIrc windows look " \
"transparent.<br>You must choose a blending " \
"background image to below or check the " \
- "\"Use KDE desktop for transparency\" option.</center>","options"));
+ "\"real transparency option below\" option.</center>","options"));
#else
mergeTip(m_pUseTransparencyBoolSelector,
__tr2qs_ctx("<center>This option makes all KVIrc windows look " \
@@ -93,28 +90,30 @@ KviThemeTransparencyOptionsWidget::KviThemeTransparencyOptionsWidget(QWidget * p
KVI_OPTION_BOOL(KviOption_boolUseGlobalPseudoTransparency));
connect(m_pUseTransparencyBoolSelector,SIGNAL(toggled(bool)),c,SLOT(setEnabled(bool)));
-// addRowSpacer(0,13,0,13);
-#ifdef COMPILE_KDE_SUPPORT
- m_pObtainBackgroundFromKdeBoolSelector = addBoolSelector(0,4,1,4,__tr2qs_ctx("Use KDE desktop for transparency","options"),KviOption_boolObtainGlobalBackgroundFromKde,
+#ifdef COMPILE_X11_SUPPORT
+ m_pUseCompositingForTransparencyBoolSelector = addBoolSelector(0,4,1,4,__tr2qs_ctx("Use compositing for real transparency","options"),KviOption_boolUseCompositingForTransparency,
KVI_OPTION_BOOL(KviOption_boolUseGlobalPseudoTransparency));
- connect(m_pUseTransparencyBoolSelector,SIGNAL(toggled(bool)),m_pObtainBackgroundFromKdeBoolSelector,SLOT(setEnabled(bool)));
- connect(m_pObtainBackgroundFromKdeBoolSelector,SIGNAL(toggled(bool)),this,SLOT(enableUpdateKdeBackgroundBoolSelector(bool)));
-
- m_pUpdateKdeBackgroundOnChangeBoolSelector = addBoolSelector(0,5,1,5,__tr2qs_ctx("Keep in sync with KDE background changes","options"),KviOption_boolUpdateKdeBackgroundOnChange,
- KVI_OPTION_BOOL(KviOption_boolUseGlobalPseudoTransparency) && KVI_OPTION_BOOL(KviOption_boolObtainGlobalBackgroundFromKde));
m_pGlobalBackgroundPixmapSelector = addPixmapSelector(0,6,1,6,__tr2qs_ctx("Transparency blend image:","options"),KviOption_pixmapGlobalTransparencyBackground,
- KVI_OPTION_BOOL(KviOption_boolUseGlobalPseudoTransparency) && !KVI_OPTION_BOOL(KviOption_boolObtainGlobalBackgroundFromKde));
+ KVI_OPTION_BOOL(KviOption_boolUseGlobalPseudoTransparency) && !KVI_OPTION_BOOL(KviOption_boolUseCompositingForTransparency));
layout()->setRowStretch(6,1);
- connect(m_pObtainBackgroundFromKdeBoolSelector,SIGNAL(toggled(bool)),this,SLOT(enableGlobalBackgroundPixmapSelector(bool)));
-#else //!COMPILE_KDE_SUPPORT
+ if(g_pApp->supportsCompositing())
+ {
+ connect(m_pUseTransparencyBoolSelector,SIGNAL(toggled(bool)),m_pUseCompositingForTransparencyBoolSelector,SLOT(setEnabled(bool)));
+ connect(m_pUseCompositingForTransparencyBoolSelector,SIGNAL(toggled(bool)),this,SLOT(enableGlobalBackgroundPixmapSelector(bool)));
+ } else {
+ m_pUseCompositingForTransparencyBoolSelector->setEnabled(false);
+ m_pUseCompositingForTransparencyBoolSelector->setChecked(false);
+ enableGlobalBackgroundPixmapSelector(true);
+ }
+
+#else //!COMPILE_X11_SUPPORT
m_pGlobalBackgroundPixmapSelector = addPixmapSelector(0,4,1,4,__tr2qs_ctx("Transparency blend image:","options"),KviOption_pixmapGlobalTransparencyBackground,
KVI_OPTION_BOOL(KviOption_boolUseGlobalPseudoTransparency));
layout()->setRowStretch(4,1);
-#endif //!COMPILE_KDE_SUPPORT
+#endif //!COMPILE_X11_SUPPORT
connect(m_pUseTransparencyBoolSelector,SIGNAL(toggled(bool)),this,SLOT(enableGlobalBackgroundPixmapSelector(bool)));
- connect(m_pUseTransparencyBoolSelector,SIGNAL(toggled(bool)),this,SLOT(enableUpdateKdeBackgroundBoolSelector(bool)));
#else
createLayout();
addRowSpacer(0,0,0,0);
@@ -128,23 +127,14 @@ KviThemeTransparencyOptionsWidget::~KviThemeTransparencyOptionsWidget()
void KviThemeTransparencyOptionsWidget::enableGlobalBackgroundPixmapSelector(bool)
{
#ifdef COMPILE_PSEUDO_TRANSPARENCY
- #ifdef COMPILE_KDE_SUPPORT
- m_pGlobalBackgroundPixmapSelector->setEnabled(m_pUseTransparencyBoolSelector->isChecked() && !(m_pObtainBackgroundFromKdeBoolSelector->isChecked()));
+ #ifdef COMPILE_X11_SUPPORT
+ m_pGlobalBackgroundPixmapSelector->setEnabled(m_pUseTransparencyBoolSelector->isChecked() && !(m_pUseCompositingForTransparencyBoolSelector->isChecked()));
#else
m_pGlobalBackgroundPixmapSelector->setEnabled(m_pUseTransparencyBoolSelector->isChecked());
#endif
#endif
}
-void KviThemeTransparencyOptionsWidget::enableUpdateKdeBackgroundBoolSelector(bool)
-{
-#ifdef COMPILE_PSEUDO_TRANSPARENCY
- #ifdef COMPILE_KDE_SUPPORT
- m_pUpdateKdeBackgroundOnChangeBoolSelector->setEnabled(m_pUseTransparencyBoolSelector->isChecked() && m_pObtainBackgroundFromKdeBoolSelector->isChecked());
- #endif
-#endif
-}
-
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////