diff options
Diffstat (limited to 'kcontrol/xinerama')
-rw-r--r-- | kcontrol/xinerama/CMakeLists.txt | 33 | ||||
-rw-r--r-- | kcontrol/xinerama/Makefile.am | 18 | ||||
-rw-r--r-- | kcontrol/xinerama/kcmxinerama.cpp | 254 | ||||
-rw-r--r-- | kcontrol/xinerama/kcmxinerama.h | 62 | ||||
-rw-r--r-- | kcontrol/xinerama/xinerama.desktop | 202 | ||||
-rw-r--r-- | kcontrol/xinerama/xineramawidget.ui | 326 | ||||
-rw-r--r-- | kcontrol/xinerama/xineramawidget.ui.h | 14 |
7 files changed, 909 insertions, 0 deletions
diff --git a/kcontrol/xinerama/CMakeLists.txt b/kcontrol/xinerama/CMakeLists.txt new file mode 100644 index 000000000..1a7419eb0 --- /dev/null +++ b/kcontrol/xinerama/CMakeLists.txt @@ -0,0 +1,33 @@ +################################################# +# +# (C) 2010-2011 Serghei Amelian +# serghei (DOT) amelian (AT) gmail.com +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +include_directories( + ${CMAKE_CURRENT_BINARY_DIR} + ${TDE_INCLUDE_DIR} + ${TQT_INCLUDE_DIRS} +) + +link_directories( + ${TQT_LIBRARY_DIRS} +) + +##### other data ################################ + +install( FILES xinerama.desktop DESTINATION ${APPS_INSTALL_DIR}/.hidden ) + + +##### kcm_xinerama (module) ##################### + +tde_add_kpart( kcm_xinerama AUTOMOC + SOURCES kcmxinerama.cpp xineramawidget.ui + LINK tdeui-shared + DESTINATION ${PLUGIN_INSTALL_DIR} +) diff --git a/kcontrol/xinerama/Makefile.am b/kcontrol/xinerama/Makefile.am new file mode 100644 index 000000000..c7be54e04 --- /dev/null +++ b/kcontrol/xinerama/Makefile.am @@ -0,0 +1,18 @@ +AM_CPPFLAGS = $(all_includes) + +kde_module_LTLIBRARIES = kcm_xinerama.la + +kcm_xinerama_la_SOURCES = kcmxinerama.cpp xineramawidget.ui + +kcm_xinerama_la_LDFLAGS = $(all_libraries) -module -avoid-version -no-undefined +kcm_xinerama_la_LIBADD = -ltdeui + +METASOURCES = AUTO + +noinst_HEADERS = kcmxinerama.h + +messages: rc.cpp + $(XGETTEXT) *.cpp -o $(podir)/kcmxinerama.pot + +xinerama_datadir = $(kde_appsdir)/.hidden +xinerama_data_DATA = xinerama.desktop diff --git a/kcontrol/xinerama/kcmxinerama.cpp b/kcontrol/xinerama/kcmxinerama.cpp new file mode 100644 index 000000000..d32adc1b8 --- /dev/null +++ b/kcontrol/xinerama/kcmxinerama.cpp @@ -0,0 +1,254 @@ +/** + * kcmxinerama.cpp + * + * Copyright (c) 2002-2004 George Staikos <[email protected]> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + + +#include "kcmxinerama.h" +#include <dcopclient.h> +#include <tdeaboutdata.h> +#include <tdeapplication.h> +#include <tdeconfig.h> +#include <kdialog.h> +#include <tdeglobal.h> +#include <tdeglobalsettings.h> +#include <tdelocale.h> +#include <tdemessagebox.h> +#include <twin.h> + +#include <tqcheckbox.h> +#include <tqlayout.h> +#include <tqlabel.h> +#include <tqcombobox.h> +#include <tqtable.h> +#include <tqcolor.h> +#include <tqpushbutton.h> + + +KCMXinerama::KCMXinerama(TQWidget *parent, const char *name) + : TDECModule(parent, name) { + _indicators.setAutoDelete(true); + + TDEAboutData *about = + new TDEAboutData(I18N_NOOP("kcmxinerama"), + I18N_NOOP("TDE Multiple Monitor Configurator"), + 0, 0, TDEAboutData::License_GPL, + I18N_NOOP("(c) 2002-2003 George Staikos")); + + about->addAuthor("George Staikos", 0, "[email protected]"); + setAboutData( about ); + + setQuickHelp( i18n("<h1>Multiple Monitors</h1> This module allows you to configure TDE support" + " for multiple monitors.")); + + config = new TDEConfig("kdeglobals", false, false); + ksplashrc = new TDEConfig("ksplashrc", false, false); + + connect(&_timer, TQT_SIGNAL(timeout()), this, TQT_SLOT(clearIndicator())); + + TQGridLayout *grid = new TQGridLayout(this, 1, 1, KDialog::marginHint(), + KDialog::spacingHint()); + + // Setup the panel + _displays = TQApplication::desktop()->numScreens(); + + if (TQApplication::desktop()->isVirtualDesktop()) { + TQStringList dpyList; + xw = new XineramaWidget(this); + grid->addWidget(xw, 0, 0); + TQString label = i18n("Display %1"); + + xw->headTable->setNumRows(_displays); + + for (int i = 0; i < _displays; i++) { + TQString l = label.arg(i+1); + TQRect geom = TQApplication::desktop()->screenGeometry(i); + xw->_unmanagedDisplay->insertItem(l); + xw->_ksplashDisplay->insertItem(l); + dpyList.append(l); + xw->headTable->setText(i, 0, TQString::number(geom.x())); + xw->headTable->setText(i, 1, TQString::number(geom.y())); + xw->headTable->setText(i, 2, TQString::number(geom.width())); + xw->headTable->setText(i, 3, TQString::number(geom.height())); + } + + xw->_unmanagedDisplay->insertItem(i18n("Display Containing the Pointer")); + + xw->headTable->setRowLabels(dpyList); + + connect(xw->_ksplashDisplay, TQT_SIGNAL(activated(int)), + this, TQT_SLOT(windowIndicator(int))); + connect(xw->_unmanagedDisplay, TQT_SIGNAL(activated(int)), + this, TQT_SLOT(windowIndicator(int))); + connect(xw->_identify, TQT_SIGNAL(clicked()), + this, TQT_SLOT(indicateWindows())); + + connect(xw, TQT_SIGNAL(configChanged()), this, TQT_SLOT(changed())); + } else { // no Xinerama + TQLabel *ql = new TQLabel(i18n("<qt><p>This module is only for configuring systems with a single desktop spread across multiple monitors. You do not appear to have this configuration.</p></qt>"), this); + grid->addWidget(ql, 0, 0); + } + + grid->activate(); + + load(); +} + +KCMXinerama::~KCMXinerama() { + _timer.stop(); + delete ksplashrc; + ksplashrc = 0; + delete config; + config = 0; + clearIndicator(); +} + +#define KWIN_XINERAMA "XineramaEnabled" +#define KWIN_XINERAMA_MOVEMENT "XineramaMovementEnabled" +#define KWIN_XINERAMA_PLACEMENT "XineramaPlacementEnabled" +#define KWIN_XINERAMA_MAXIMIZE "XineramaMaximizeEnabled" +#define KWIN_XINERAMA_FULLSCREEN "XineramaFullscreenEnabled" + +void KCMXinerama::load() { + load( false ); +} + +void KCMXinerama::load(bool useDefaults) { + if (TQApplication::desktop()->isVirtualDesktop()) { + int item = 0; + config->setReadDefaults( useDefaults ); + config->setGroup("Windows"); + xw->_enableXinerama->setChecked(config->readBoolEntry(KWIN_XINERAMA, true)); + xw->_enableResistance->setChecked(config->readBoolEntry(KWIN_XINERAMA_MOVEMENT, true)); + xw->_enablePlacement->setChecked(config->readBoolEntry(KWIN_XINERAMA_PLACEMENT, true)); + xw->_enableMaximize->setChecked(config->readBoolEntry(KWIN_XINERAMA_MAXIMIZE, true)); + xw->_enableFullscreen->setChecked(config->readBoolEntry(KWIN_XINERAMA_FULLSCREEN, true)); + item = config->readNumEntry("Unmanaged", TQApplication::desktop()->primaryScreen()); + if ((item < 0 || item >= _displays) && (item != -3)) + xw->_unmanagedDisplay->setCurrentItem(TQApplication::desktop()->primaryScreen()); + else if (item == -3) // pointer warp + xw->_unmanagedDisplay->setCurrentItem(_displays); + else xw->_unmanagedDisplay->setCurrentItem(item); + + ksplashrc->setGroup("Xinerama"); + item = ksplashrc->readNumEntry("KSplashScreen", TQApplication::desktop()->primaryScreen()); + if (item < 0 || item >= _displays) + xw->_ksplashDisplay->setCurrentItem(TQApplication::desktop()->primaryScreen()); + else xw->_ksplashDisplay->setCurrentItem(item); + + emit changed(useDefaults); + } + else + emit changed( false ); +} + + +void KCMXinerama::save() { + if (TQApplication::desktop()->isVirtualDesktop()) { + config->setGroup("Windows"); + config->writeEntry(KWIN_XINERAMA, + xw->_enableXinerama->isChecked()); + config->writeEntry(KWIN_XINERAMA_MOVEMENT, + xw->_enableResistance->isChecked()); + config->writeEntry(KWIN_XINERAMA_PLACEMENT, + xw->_enablePlacement->isChecked()); + config->writeEntry(KWIN_XINERAMA_MAXIMIZE, + xw->_enableMaximize->isChecked()); + config->writeEntry(KWIN_XINERAMA_FULLSCREEN, + xw->_enableFullscreen->isChecked()); + int item = xw->_unmanagedDisplay->currentItem(); + config->writeEntry("Unmanaged", item == _displays ? -3 : item); + config->sync(); + + if (!kapp->dcopClient()->isAttached()) + kapp->dcopClient()->attach(); + kapp->dcopClient()->send("twin", "", "reconfigure()", TQString("")); + + ksplashrc->setGroup("Xinerama"); + ksplashrc->writeEntry("KSplashScreen", xw->_enableXinerama->isChecked() ? xw->_ksplashDisplay->currentItem() : -2 /* ignore Xinerama */); + ksplashrc->sync(); + } + + KMessageBox::information(this, i18n("Your settings will only affect newly started applications."), i18n("TDE Multiple Monitors"), "nomorexineramaplease"); + + emit changed(false); +} + +void KCMXinerama::defaults() { + load( true ); +} + +void KCMXinerama::indicateWindows() { + _timer.stop(); + + clearIndicator(); + for (int i = 0; i < _displays; i++) + _indicators.append(indicator(i)); + + _timer.start(1500, true); +} + +void KCMXinerama::windowIndicator(int dpy) { + if (dpy >= _displays) + return; + + _timer.stop(); + + clearIndicator(); + _indicators.append(indicator(dpy)); + + _timer.start(1500, true); +} + +TQWidget *KCMXinerama::indicator(int dpy) { + TQLabel *si = new TQLabel(TQString::number(dpy+1), 0, "Screen Indicator", (WFlags)WX11BypassWM ); + + TQFont fnt = TDEGlobalSettings::generalFont(); + fnt.setPixelSize(100); + si->setFont(fnt); + si->setFrameStyle(TQFrame::Panel); + si->setFrameShadow(TQFrame::Plain); + si->setAlignment(Qt::AlignCenter); + + TQPoint screenCenter(TQApplication::desktop()->screenGeometry(dpy).center()); + TQRect targetGeometry(TQPoint(0,0), si->sizeHint()); + targetGeometry.moveCenter(screenCenter); + si->setGeometry(targetGeometry); + si->show(); + + return si; +} + +void KCMXinerama::clearIndicator() { + _indicators.clear(); +} + +extern "C" { + KDE_EXPORT TDECModule *create_xinerama(TQWidget *parent, const char *name) { + TDEGlobal::locale()->insertCatalogue("kcmxinerama"); + return new KCMXinerama(parent, name); + } + + KDE_EXPORT bool test_xinerama() { + return TQApplication::desktop()->isVirtualDesktop(); + } +} + + +#include "kcmxinerama.moc" + diff --git a/kcontrol/xinerama/kcmxinerama.h b/kcontrol/xinerama/kcmxinerama.h new file mode 100644 index 000000000..83fdf6de9 --- /dev/null +++ b/kcontrol/xinerama/kcmxinerama.h @@ -0,0 +1,62 @@ +/** + * kcmxinerama.h + * + * Copyright (c) 2002-2004 George Staikos <[email protected]> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef _KCM_XINERAMA_H +#define _KCM_XINERAMA_H + +#include <tdecmodule.h> +#include <tqptrlist.h> +#include <tqtimer.h> + +#include "xineramawidget.h" + +class TDEConfig; +class TQWidget; + +class KCMXinerama : public TDECModule { + Q_OBJECT +public: + KCMXinerama(TQWidget *parent = 0L, const char *name = 0L); + virtual ~KCMXinerama(); + + void load(); + void load(bool useDefaults ); + void save(); + void defaults(); + +public slots: + void windowIndicator(int dpy); + void clearIndicator(); + + void indicateWindows(); + +private: + TQWidget* indicator(int dpy); + TDEConfig *config, *ksplashrc; + XineramaWidget *xw; + TQTimer _timer; + TQPtrList<TQWidget> _indicators; + + int _displays; + +}; + +#endif + diff --git a/kcontrol/xinerama/xinerama.desktop b/kcontrol/xinerama/xinerama.desktop new file mode 100644 index 000000000..0e22bb38d --- /dev/null +++ b/kcontrol/xinerama/xinerama.desktop @@ -0,0 +1,202 @@ +[Desktop Entry] +Icon=identity +Type=Application +Exec=tdecmshell xinerama +X-DocPath=kcontrol/multiplemonitors.html + +X-TDE-Library=xinerama +X-TDE-Test-Module=true +Name=Multiple Monitors +Name[af]=Veelvuldige Skerms +Name[ar]=شاشات متعددة +Name[be]=Некалькі манітораў +Name[bg]=Многомониторен режим +Name[bn]=একাধিক মনিটর +Name[br]=Lies skramm +Name[bs]=Višestruki monitori +Name[ca]=Múltiples monitors +Name[cs]=Více monitorů +Name[csb]=Wiele mònitorów +Name[cy]=Dangosyddion Lluosol +Name[da]=Flere skærme +Name[de]=Mehrere Monitore +Name[el]=Πολλαπλές οθόνες +Name[eo]=Oblaj ekranoj +Name[es]=Varios monitores +Name[et]=Mitu monitori +Name[eu]=Monitore anitz +Name[fa]=نمایشگرهای چندگانه +Name[fi]=Useita näyttöjä +Name[fr]=Moniteurs multiples +Name[fy]=Meardere byldskermen +Name[ga]=Scáileáin Iomadúla +Name[gl]=Múltiplos Monitores +Name[he]=מספר מסכים +Name[hi]=अनेक मॉनीटर्स +Name[hr]=Višestruki monitori +Name[hu]=Több képernyő kezelése +Name[is]=Margir skjáir +Name[it]=Monitor multipli +Name[ja]=マルチモニタ +Name[ka]=რამდენიმე მონიტორი +Name[kk]=Бірнеше мониторлар +Name[km]=ម៉ូនីទ័រច្រើន +Name[ko]=다중 모니터 +Name[lt]=Keli monitoriai +Name[lv]=Vairāki monitori +Name[mk]=Повеќе монитори +Name[mn]=Олон монитор +Name[ms]=Berbilang Monitor +Name[mt]=Skrinijiet multipli +Name[nb]=Flere skjermer +Name[nds]=Mehr as een Schirm +Name[ne]=बहुविध मोनिटर +Name[nl]=Meerdere monitoren +Name[nn]=Fleire skjermar +Name[pa]=ਬਹੁ ਮਾਨੀਟਰ +Name[pl]=Wiele monitorów +Name[pt]=Vários Monitores +Name[pt_BR]=Múltiplos Monitores +Name[ro]=Monitoare multiple +Name[ru]=Несколько мониторов +Name[rw]=Mugaragaza Zitandukanye +Name[se]=Máŋggaid searpma +Name[sk]=Viac monitorov +Name[sl]=Več zaslonov +Name[sr]=Више монитора +Name[sr@Latn]=Više monitora +Name[sv]=Flera bildskärmar +Name[ta]=பல திரைகள் +Name[tg]=Чанд намоишгар +Name[th]=หลายจอภาพ +Name[tr]=Çoklu Monitör +Name[tt]=Berniçä Küräk +Name[uk]=Комбінація моніторів +Name[uz]=Bir nechta monitor +Name[uz@cyrillic]=Бир нечта монитор +Name[vi]=Nhiều Màn hình +Name[wa]=Multi-waitroûles +Name[zh_CN]=多个监视器 +Name[zh_TW]=多重顯示器 +Comment=Configure TDE for multiple monitors +Comment[af]=Stel TDE vir veelvuldige skerms op +Comment[ar]=إعداد TDE لإستعمال الشاشات المتعددة +Comment[be]=Настаўленні TDE для працы з некалькімі маніторамі +Comment[bg]=Настройване на системата за поддръжка на много монитори +Comment[bn]=একাধিক মনিটরের জন্য কে.ডি.ই কনফিগার করুন +Comment[br]=Kefluniañ TDE gant meur a skrammoù +Comment[bs]=Podesite TDE za više monitora +Comment[ca]=Configura TDE per a múltiples monitors +Comment[cs]=Nastavení TDE pro více monitorů +Comment[csb]=Kònfigùracëjô TDE przë wielu mònitorach +Comment[cy]=Ffurfweddu dangosyddion lluosol i TDE +Comment[da]=Indstil TDE for flere skærme +Comment[de]=TDE für mehrere Monitore einrichten +Comment[el]=Ρύθμιση του TDE για πολλαπλές οθόνες +Comment[eo]=Agordu TDE por oblaj ekranoj +Comment[es]=Configuración de TDE para varios monitores +Comment[et]=TDE seadistamine mitme monitori kasutamiseks +Comment[eu]=Konfiguratu TDE monitore aniztasunerako +Comment[fa]=پیکربندی نمایشگرهای چندگانه +Comment[fi]=Muokkaa TDE sopivaksi usealle näytölle +Comment[fr]=Configuration de TDE pour l'utilisation de moniteurs multiples +Comment[fy]=Hjir kinne jo TDE foar meardere byldskermen ynstelle +Comment[gl]=Configurar TDE para múltiplos monitores +Comment[he]=הגדר את TDE לשימוש במספר מסכים +Comment[hi]=अनेक मॉनीटर्स के लिए केडीई कॉन्फ़िगर करें +Comment[hr]=Konfiguriranje TDE-a za više monitora +Comment[hu]=Több monitor használata a TDE-ben +Comment[is]=Stilla TDE fyrir marga skjái +Comment[it]=Configura TDE per utilizzare più monitor +Comment[ja]=TDE を複数のモニタ向けに設定 +Comment[ka]=რამდენიმე მონიტორისთვის TDE -ს კონფიგურაცია +Comment[kk]=TDE-ні бірнеше мониторлар үшін баптау +Comment[km]=កំណត់រចនាសម្ព័ន្ធ TDE សម្រាប់ម៉ូនីទ័រច្រើន +Comment[ko]=TDE 다중 모니터 설정 +Comment[lt]=Konfigūruoti TDE keliems monitoriams +Comment[lv]=Konfigure TDE priekš vairākiem monitoriem +Comment[mk]=Конфигурирајте го TDE за повеќе монитори +Comment[mn]=КДЭ олон монитор тохируулах +Comment[ms]=Konfigur TDE untuk berbilang monitor +Comment[mt]=Konfigurazzjoni tal-TDE għal skrinijiet multipli +Comment[nb]=Tilpass TDE for flere skjermer +Comment[nds]=TDE för mehr as een Schirm instellen +Comment[ne]=बहुविध मोनिटरका लागि TDE कन्फिगर गर्नुहोस् +Comment[nl]=Hier kunt u TDE voor meerdere monitoren instellen +Comment[nn]=Set opp TDE for fleire skjermar +Comment[pa]=ਕਈ ਮਾਨੀਟਰਾਂ ਲਈ TDE ਸੰਰਚਨਾ ਕਰੋ +Comment[pl]=Konfiguracja TDE przy wielu monitorach +Comment[pt]=Configuração do TDE para vários monitores +Comment[pt_BR]=Configura o TDE para o uso de múltiplos monitores +Comment[ro]=Configurează TDE pentru monitoare multiple +Comment[ru]=Настройка TDE для нескольких мониторов +Comment[rw]=Kuboneza TDE kuri mugaragaza zitandukanye +Comment[se]=Heivet TDE:a máŋggaid šearpma várás +Comment[sk]=Nastavenie TDE pre viac monitorov +Comment[sl]=Nastavite TDE za več zaslonov +Comment[sr]=Подешавање TDE-а за више монитора +Comment[sr@Latn]=Podešavanje TDE-a za više monitora +Comment[sv]=Anpassa TDE för flera bildskärmar +Comment[ta]=பலவிதமான திரைகளுக்கு TDEஐ வடிவமை +Comment[tg]=Танзими TDE барои намоишгарҳои виртуалӣ +Comment[th]=ปรับแต่ง TDE สำหรับใช้กับจอภาพหลายจอ +Comment[tr]=TDE'yi çoklu monitör kullanmak için yapılandır +Comment[tt]=TDE'nıñ berniçä küräk belän eşläw caylawı +Comment[uk]=Налаштування декількох моніторів для TDE +Comment[uz]=TDE'ni bir nechta monitor uchun moslash +Comment[uz@cyrillic]=TDE'ни бир нечта монитор учун мослаш +Comment[vi]=Cấu hình TDE cho nhiều màn hình +Comment[wa]=Apontyî TDE po on håynaedje so sacwantès waitroûles +Comment[zh_CN]=配置 TDE 的多个监视器 +Comment[zh_TW]=設定 TDE 支援多重顯示器 +Keywords=Xinerama;dual head;multihead;monitor; +Keywords[ar]=Xinerama;dual head;multihead;monitor;ثنائي الرؤوس;متعدد الرؤوس;شاشة; +Keywords[be]=Два маніторы;Манітор;Некалькі манітораў;Дысплей;Xinerama;dual head;multihead;monitor; +Keywords[bg]=много; монитори; монитор; екран; дисплей; Xinerama; dual head; multihead; monitor; +Keywords[ca]=Xinerama;dual head;doble dispositiu;multihead;multiples dispositius;monitor; +Keywords[csb]=Xinerama;dwa mònitorë;wiele mònitorów;mònitor; +Keywords[cy]=Xinerama;pen deuol;amlben;dangosydd; +Keywords[da]=Xinerama;dualt hovede;multihovede;skærm; +Keywords[de]=inerama;dual head;multihead;monitor; +Keywords[el]=Xinerama;dual head;multihead;οθόνη; +Keywords[eo]=duobla;duoblaj;oblaj;ekrano;ekranoj; +Keywords[et]=Xinerama;kaks monitori;mitu monitori;monitor; +Keywords[eu]=Xinerama;dual head;multihead;monitorea; +Keywords[fa]=Xinerama، سرآیند دوگان، سرآیند چندگانه، نمایشگر; +Keywords[fi]=Xinerama;näyttö;kaksi näyttöä;useita näyttöjä; +Keywords[fr]=Xinerama;dual head;multihead;moniteur;multitête;double écran; multiécran; +Keywords[fy]=Xinerama;dual head;multihead;monitor;byldskerm; +Keywords[gl]=Xinerama;cabeza dual;cabeza múltiple;monitor; +Keywords[he]=Xinerama;דו ראשי;רב ראשי;מסך; dual head;multihead;monitor; +Keywords[hi]=सिनेरामा;ड्यूएल हेड;मल्टी-हेड;मॉनीटर; +Keywords[hr]=Xinerama;dual head;multihead;monitor;višestruki monitori; +Keywords[hu]=Xinerama;két fejes;két fej;monitor; +Keywords[it]=Xinerama;dual head;multihead;monitor;monitor multipli; +Keywords[ja]=Xinerama;デュアルヘッド;マルチヘッド;モニタ; +Keywords[km]=Xinerama;ក្បាលពីរ;ក្បាលច្រើន;ម៉ូនីទ័រ; +Keywords[lt]=Xinerama;dual head;multihead;monitor;dviejų monitorių;monitorius; +Keywords[lv]=Xinerama;dual head;multihead;monitori; +Keywords[mk]=Xinerama;dual head;multihead;monitor;монитор; +Keywords[mn]=Xinerama;dual head;multihead;монитор; +Keywords[nb]=Xinerama;to skjermer;flere skjermer;skjerm;monitor; +Keywords[nds]=Xinerama;dual head;multihead;monitor;Mehrschirmbedrief;Dubbelschirm; +Keywords[ne]=जिनेरामा; डअल हेड; मल्टिहेड; मनिटर; +Keywords[nl]=Xinerama;dual head;multihead;monitor;beeldscherm; +Keywords[nn]=Xinerama;to skjermar;fleire skjermar;skjerm;monitor; +Keywords[pa]=Xinerama;dual head;multihead;monitor; ਦੋ ਮਾਨੀਟਰ; ਮਾਨੀਟਰ; +Keywords[pl]=Xinerama;dwa monitory;wiele monitorów;monitor; +Keywords[pt]=xinerama;vários monitores;multihead;monitor; +Keywords[pt_BR]=Xinerama;monitores;multihead;monitor; +Keywords[rw]=Xinerama;umutwe nyabibiri;mitwemyinshi;mugaragaza ; +Keywords[sl]=Xinerama;dual head;multihead;monitor;zaslon;dva; +Keywords[sr]=Xinerama;dual head;multihead;monitor;монитор;више монитора; +Keywords[sr@Latn]=Xinerama;dual head;multihead;monitor;monitor;više monitora; +Keywords[sv]=Xinerama;dubbla skärmar;flera skärmar;bildskärm; +Keywords[ta]= Xinerama;இரட்டை தலைப்பு;பலதலைப்பு;திரை; +Keywords[th]=Xinerama;หัวต่อคู่;หลายหัวต่อ;จอภาพ; +Keywords[tr]=Xinerama;çift ekran;çoklu ekran;monitör; +Keywords[uk]=Xinerama;dual head;multihead;монітор;комбінація моніторів; +Keywords[uz@cyrillic]=Xinerama;dual head;multihead;монитор; +Keywords[vi]=Xinerama;đầu kép;đa đầu;màn hình; +Keywords[wa]=Xinerama;deus waitroûles;multi-waitroûles;waitroûle;dual head;multihead; +Keywords[zh_CN]=Xinerama;dual head;multihead;monitor;双头;多头;监视器;显示器; diff --git a/kcontrol/xinerama/xineramawidget.ui b/kcontrol/xinerama/xineramawidget.ui new file mode 100644 index 000000000..a5e3664de --- /dev/null +++ b/kcontrol/xinerama/xineramawidget.ui @@ -0,0 +1,326 @@ +<!DOCTYPE UI><UI version="3.3" stdsetdef="1"> +<class>XineramaWidget</class> +<widget class="TQWidget"> + <property name="name"> + <cstring>XineramaWidget</cstring> + </property> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>658</width> + <height>389</height> + </rect> + </property> + <grid> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="TQTable" row="1" column="0" rowspan="1" colspan="2"> + <column> + <property name="text"> + <string>X Coordinate</string> + </property> + </column> + <column> + <property name="text"> + <string>Y Coordinate</string> + </property> + </column> + <column> + <property name="text"> + <string>Width</string> + </property> + </column> + <column> + <property name="text"> + <string>Height</string> + </property> + </column> + <property name="name"> + <cstring>headTable</cstring> + </property> + <property name="sizePolicy"> + <sizepolicy> + <hsizetype>1</hsizetype> + <vsizetype>1</vsizetype> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="vScrollBarMode"> + <enum>Auto</enum> + </property> + <property name="hScrollBarMode"> + <enum>Auto</enum> + </property> + <property name="numRows"> + <number>2</number> + </property> + <property name="numCols"> + <number>4</number> + </property> + <property name="showGrid"> + <bool>true</bool> + </property> + <property name="readOnly"> + <bool>true</bool> + </property> + <property name="selectionMode"> + <enum>NoSelection</enum> + </property> + <property name="focusStyle"> + <enum>FollowStyle</enum> + </property> + </widget> + <widget class="TQButtonGroup" row="0" column="0" rowspan="1" colspan="2"> + <property name="name"> + <cstring>ButtonGroup1</cstring> + </property> + <property name="title"> + <string>Multiple Monitor Support</string> + </property> + <vbox> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="TQCheckBox"> + <property name="name"> + <cstring>_enableXinerama</cstring> + </property> + <property name="text"> + <string>Enable multiple monitor virtual desktop support</string> + </property> + </widget> + <widget class="TQCheckBox"> + <property name="name"> + <cstring>_enableResistance</cstring> + </property> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="text"> + <string>Enable multiple monitor window resistance support</string> + </property> + </widget> + <widget class="TQCheckBox"> + <property name="name"> + <cstring>_enablePlacement</cstring> + </property> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="text"> + <string>Enable multiple monitor window placement support</string> + </property> + </widget> + <widget class="TQCheckBox"> + <property name="name"> + <cstring>_enableMaximize</cstring> + </property> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="text"> + <string>Enable multiple monitor window maximize support</string> + </property> + </widget> + <widget class="TQCheckBox"> + <property name="name"> + <cstring>_enableFullscreen</cstring> + </property> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="text"> + <string>Enable multiple monitor window fullscreen support</string> + </property> + </widget> + </vbox> + </widget> + <widget class="TQPushButton" row="3" column="1"> + <property name="name"> + <cstring>_identify</cstring> + </property> + <property name="text"> + <string>&Identify All Displays</string> + </property> + </widget> + <spacer row="3" column="0"> + <property name="name"> + <cstring>spacer2</cstring> + </property> + <property name="orientation"> + <enum>Horizontal</enum> + </property> + <property name="sizeType"> + <enum>Expanding</enum> + </property> + <property name="sizeHint"> + <size> + <width>431</width> + <height>21</height> + </size> + </property> + </spacer> + <widget class="TQLayoutWidget" row="2" column="0" rowspan="1" colspan="2"> + <property name="name"> + <cstring>layout2</cstring> + </property> + <grid> + <property name="name"> + <cstring>unnamed</cstring> + </property> + <widget class="TQLabel" row="0" column="0"> + <property name="name"> + <cstring>TextLabel2</cstring> + </property> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="text"> + <string>Show unmanaged windows on:</string> + </property> + <property name="buddy" stdset="0"> + <cstring>_unmanagedDisplay</cstring> + </property> + </widget> + <widget class="TQComboBox" row="1" column="1"> + <property name="name"> + <cstring>_ksplashDisplay</cstring> + </property> + <property name="enabled"> + <bool>false</bool> + </property> + </widget> + <widget class="TQLabel" row="1" column="0"> + <property name="name"> + <cstring>TextLabel2_2</cstring> + </property> + <property name="enabled"> + <bool>false</bool> + </property> + <property name="text"> + <string>Show TDE splash screen on:</string> + </property> + <property name="buddy" stdset="0"> + <cstring>_unmanagedDisplay</cstring> + </property> + </widget> + <widget class="TQComboBox" row="0" column="1"> + <property name="name"> + <cstring>_unmanagedDisplay</cstring> + </property> + <property name="enabled"> + <bool>false</bool> + </property> + </widget> + </grid> + </widget> + </grid> +</widget> +<connections> + <connection> + <sender>_enableXinerama</sender> + <signal>toggled(bool)</signal> + <receiver>_enableResistance</receiver> + <slot>setEnabled(bool)</slot> + </connection> + <connection> + <sender>_enableXinerama</sender> + <signal>toggled(bool)</signal> + <receiver>_enablePlacement</receiver> + <slot>setEnabled(bool)</slot> + </connection> + <connection> + <sender>_enableXinerama</sender> + <signal>toggled(bool)</signal> + <receiver>_enableMaximize</receiver> + <slot>setEnabled(bool)</slot> + </connection> + <connection> + <sender>_enableXinerama</sender> + <signal>toggled(bool)</signal> + <receiver>TextLabel2</receiver> + <slot>setEnabled(bool)</slot> + </connection> + <connection> + <sender>_enableXinerama</sender> + <signal>toggled(bool)</signal> + <receiver>_unmanagedDisplay</receiver> + <slot>setEnabled(bool)</slot> + </connection> + <connection> + <sender>_enableXinerama</sender> + <signal>clicked()</signal> + <receiver>XineramaWidget</receiver> + <slot>emitConfigChanged()</slot> + </connection> + <connection> + <sender>_enableResistance</sender> + <signal>clicked()</signal> + <receiver>XineramaWidget</receiver> + <slot>emitConfigChanged()</slot> + </connection> + <connection> + <sender>_enablePlacement</sender> + <signal>clicked()</signal> + <receiver>XineramaWidget</receiver> + <slot>emitConfigChanged()</slot> + </connection> + <connection> + <sender>_enableMaximize</sender> + <signal>clicked()</signal> + <receiver>XineramaWidget</receiver> + <slot>emitConfigChanged()</slot> + </connection> + <connection> + <sender>_unmanagedDisplay</sender> + <signal>activated(int)</signal> + <receiver>XineramaWidget</receiver> + <slot>emitConfigChanged()</slot> + </connection> + <connection> + <sender>_enableXinerama</sender> + <signal>toggled(bool)</signal> + <receiver>TextLabel2_2</receiver> + <slot>setEnabled(bool)</slot> + </connection> + <connection> + <sender>_enableXinerama</sender> + <signal>toggled(bool)</signal> + <receiver>_ksplashDisplay</receiver> + <slot>setEnabled(bool)</slot> + </connection> + <connection> + <sender>_ksplashDisplay</sender> + <signal>activated(int)</signal> + <receiver>XineramaWidget</receiver> + <slot>emitConfigChanged()</slot> + </connection> + <connection> + <sender>_enableFullscreen</sender> + <signal>clicked()</signal> + <receiver>XineramaWidget</receiver> + <slot>emitConfigChanged()</slot> + </connection> + <connection> + <sender>_enableXinerama</sender> + <signal>toggled(bool)</signal> + <receiver>_enableFullscreen</receiver> + <slot>setEnabled(bool)</slot> + </connection> +</connections> +<includes> + <include location="local" impldecl="in implementation">kdialog.h</include> + <include location="local" impldecl="in implementation">xineramawidget.ui.h</include> +</includes> +<Q_SIGNALS> + <signal>configChanged()</signal> +</Q_SIGNALS> +<Q_SLOTS> + <slot access="private">emitConfigChanged()</slot> +</Q_SLOTS> +<layoutdefaults spacing="3" margin="6"/> +<layoutfunctions spacing="KDialog::spacingHint" margin="KDialog::marginHint"/> +</UI> diff --git a/kcontrol/xinerama/xineramawidget.ui.h b/kcontrol/xinerama/xineramawidget.ui.h new file mode 100644 index 000000000..8373eadd2 --- /dev/null +++ b/kcontrol/xinerama/xineramawidget.ui.h @@ -0,0 +1,14 @@ +/**************************************************************************** +** ui.h extension file, included from the uic-generated form implementation. +** +** If you wish to add, delete or rename functions or slots use +** Qt Designer which will update this file, preserving your code. Create an +** init() function in place of a constructor, and a destroy() function in +** place of a destructor. +*****************************************************************************/ + + +void XineramaWidget::emitConfigChanged() +{ +emit configChanged(); +} |