From 4aed2c8219774f5d797760606b8489a92ddc5163 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kscreensaver/AUTHORS | 23 +++ kscreensaver/ChangeLog | 93 +++++++++++ kscreensaver/KBlankscreen.desktop | 323 ++++++++++++++++++++++++++++++++++++++ kscreensaver/KRandom.desktop | 321 +++++++++++++++++++++++++++++++++++++ kscreensaver/Makefile.am | 27 ++++ kscreensaver/blankscrn.cpp | 135 ++++++++++++++++ kscreensaver/blankscrn.h | 56 +++++++ kscreensaver/random.cpp | 246 +++++++++++++++++++++++++++++ kscreensaver/random.h | 38 +++++ 9 files changed, 1262 insertions(+) create mode 100644 kscreensaver/AUTHORS create mode 100644 kscreensaver/ChangeLog create mode 100644 kscreensaver/KBlankscreen.desktop create mode 100644 kscreensaver/KRandom.desktop create mode 100644 kscreensaver/Makefile.am create mode 100644 kscreensaver/blankscrn.cpp create mode 100644 kscreensaver/blankscrn.h create mode 100644 kscreensaver/random.cpp create mode 100644 kscreensaver/random.h (limited to 'kscreensaver') diff --git a/kscreensaver/AUTHORS b/kscreensaver/AUTHORS new file mode 100644 index 000000000..fda66bb39 --- /dev/null +++ b/kscreensaver/AUTHORS @@ -0,0 +1,23 @@ + blank - Copyright (c) 1997 Martin Jones + banner - Copyright (c) 1997 Martin Jones + polygon - Copyright (c) 1997 Martin Jones + lines - Copyright (c) 1997 Dirk Staneker + blob - Copyright (c) 1997 Tiaan Wessels + +Ported from xlockmore: (but blame Martin if they don't work) + rock - Copyright (c) 1992 Jamie Zawinski + flame - Copyright (c) 1991 Scott Draves + pyro - Copyright (c) 1991 Patrick J. Naughton + laser - Copyright (c) 1995 Pascal Pensa + +Ported from xlockmore by Emanuel Pirker : + bat - Copyright (c) 1988 Sun Microsystems + forest - Copyright (c) 1995 Pascal Pensa + hop - Copyright (c) 1991 Patrick J. Naughton + lissie - Copyright (c) Alexander Jolk + slip - Copyright (c) 1992 Scott Draves + swarm - Copyright (c) 1991 Patrick J. Naughton + morph3d - Copyright (c) 1997 by Marcelo F. Vianna + +Ported from xscreensaver by Alex Zepeda + bsod - Copyright (c) 1998 Jamie Zawinski diff --git a/kscreensaver/ChangeLog b/kscreensaver/ChangeLog new file mode 100644 index 000000000..52a485af7 --- /dev/null +++ b/kscreensaver/ChangeLog @@ -0,0 +1,93 @@ +2001-03-10 Martin R. Jones + * added libkscreensaver and ported KDE savers to it. + * big cleanup. + +2000-01-10 Alexander Neundorf + * banner.h, banner.cpp: + -added cycling color option + -added "show current time" option + -replaced the readEntry()'s with the appropriate read*Entry()'s + * replaced the glocale->translate with i18n in + attraction.cpp, banner.cpp, bat.cpp, blankscrn.cpp, blob.cpp, + bouboule.cpp, flame.cpp, forest.cpp, hop.cpp, laser.cpp, lines.cpp, + lissie.cpp, main.cpp, morph3d.cpp, pipes.cpp, polygon.cpp, pyro.cpp, rock.cpp, + slidescreen.cpp, slideshow.cpp, slip.cpp, space.cpp, swarm.cpp + +1999-04-28 Christophe Prud'homme + + * bouboule.cpp: the global variable initialized in bouboule is + used also in qt2. I just renamed the variable to + bouboule_initialized. However it is just a hack, and I think that + such global variables are C pratice and not C++ + +1998-12-13 Christian Esken + + * Calling kcheckpass (only on Shadow systems). This checks if the password + database can be acessed. This uses the new return code (#2) by kcheckpass. + +1998-10-24 Alex Zepeda + + * bsod.cpp (BSODSaver::BSODSaver): Use srandomdev where available. + +1998-10-23 Alex Zepeda + + * bsod.cpp (BSODSaver::BSODSaver): initialize the random seed correctly. + + * amiga.xpm, atari.xbm, bsod.cpp, bsod.h, mac.xbm, AUTHORS, Makefile.am: + New screensaver: BSOD. Yay! Still needs some final polishing however (such as a + configuration dialog box). + + * saver.h: Add correct C style prototypes for startScreenSaver and friends. + + * main.cpp: Make startScreenSaver and friends use C style name mangling. + +Version 0.3.7 + +added geometry management to all screensaver setups except kmorph3d (Mario +Weilguni ) + +Version 0.3.6 + +added "blob" saver from Tiaan Wessels + +Version 0.3.5 + +fixes from Emanuel Pirker for ported xlock savers. + +Version 0.3.4 + +More xlock ports from Emanuel Pirker + +Version 0.3.3 + +Fix small window problem under kwm (hopefully) +Fixes for Qt-1.2 + + +Version 0.3.2 + +Updated lines +added About dialogs for all savers +Shadow password support added by Martin Hartig +Use libkdeui for colour dialog + + +Version 0.3.1 + +Ported some xlock savers. Basic interface code done, but will need more work + for some savers yet to be ported. +Included "lines" (contributed by Dirk Staneker + ) +locking bug fix + +Version 0.3 + +fixes to password stuff + +Version 0.2 + +kscreensaver.h/cpp external control files +SIGUSR1 causes the screen saver to lock immediately +hopefully StaysOnTop and windows opening after ss invoked will not display + over saver window anymore +minor bug fixes diff --git a/kscreensaver/KBlankscreen.desktop b/kscreensaver/KBlankscreen.desktop new file mode 100644 index 000000000..182d48f04 --- /dev/null +++ b/kscreensaver/KBlankscreen.desktop @@ -0,0 +1,323 @@ +[Desktop Entry] +Exec=kblankscrn.kss +Icon=kscreensaver +Type=Application +Actions=Setup;InWindow;Root; +OnlyShowIn=KDE; +Name=Blank Screen +Name[af]=Leë Skerm +Name[ar]=شاشة فارغة +Name[az]=Boş Ekran +Name[be]=Чысты экран +Name[bg]=Празен екран +Name[bn]=ফাঁকা স্ক্রীণ +Name[br]=Skramm goullo +Name[bs]=Prazan ekran +Name[ca]=Pantalla en blanc +Name[cs]=Prázdná obrazovka +Name[csb]=Czôrny ekran +Name[cy]=Sgrîn Gwag +Name[da]=Blank skærm +Name[de]=Leerer Bildschirm +Name[el]=Κενή οθόνη +Name[eo]=Nigra ekrano +Name[es]=Pantalla negra +Name[et]=Tühi ekraan +Name[eu]=Leiho beltza +Name[fa]=پردۀ خالی +Name[fi]=Tyhjä ruutu +Name[fr]=Écran vide +Name[fy]=Leech skerm +Name[ga]=Scáileán Glan +Name[gl]=Pantalla baleira +Name[he]=מסך ריק +Name[hi]=स्क्रीन शून्य करें +Name[hr]=Prazan zaslon +Name[hu]=Üres képernyő +Name[id]=Layar Kosong +Name[is]=Svartur skjár +Name[it]=Schermo nero +Name[ja]=なし +Name[ka]=ცარიელი ეკრანი +Name[kk]=Бос экран +Name[km]=អេក្រង់​ទទេ +Name[ko]=빈 화면 +Name[lo]=ຈໍວ່າງ +Name[lt]=Tuščias ekranas +Name[lv]=Tukšs Ekrāns +Name[mk]=Празен екран +Name[mn]=Хоосон дэлгэц +Name[ms]=Skrin Kosong +Name[mt]=Skrin Vojt +Name[nb]=Tom skjerm +Name[nds]=Leddig Schirm +Name[ne]=खाली पर्दा +Name[nl]=Leeg scherm +Name[nn]=Tom skjerm +Name[nso]=Pontsho yeo Esenago Selo +Name[oc]=Ecran blanc +Name[pa]=ਖਾਲੀ ਸਕਰੀਨ +Name[pl]=Czarny ekran +Name[pt]=Ecrã Vazio +Name[pt_BR]=Limpar Tela +Name[ro]=Ecran gol +Name[ru]=Пустой экран +Name[rw]=Mugaragaza Itanditseho +Name[se]=Guorus šearbma +Name[sk]=Prázdna obrazovka +Name[sl]=Prazen zaslon +Name[sr]=Празан екран +Name[sr@Latn]=Prazan ekran +Name[ss]=Skrini lesingenalutfo +Name[sv]=Tom skärm +Name[ta]=வெற்று திரை +Name[te]=ఖాళి తెర +Name[tg]=Пардаи сафед +Name[th]=หน้าจอว่าง +Name[tr]=Boş Ekran +Name[tt]=Buş Küräk +Name[uk]=Порожній екран +Name[uz]=Boʻsh ekran +Name[uz@cyrillic]=Бўш экран +Name[ven]=Tshikirini tshi sina tshithu +Name[vi]=Màn hình Trống +Name[wa]=Noere waitroûle +Name[xh]=Ikhusi Elingenanto +Name[zh_CN]=空屏幕 +Name[zh_TW]=空白螢幕 +Name[zu]=Iskrini Esingenalutho + +[Desktop Action Setup] +Exec=kblankscrn.kss -setup +Name=Setup... +Name[af]=Opstelling... +Name[ar]=إعداد... +Name[az]=Qurğular... +Name[be]=Настаўленні... +Name[bg]=Настройване... +Name[bn]=সেট-আপ... +Name[br]=Kefluniadur ... +Name[bs]=Postavke... +Name[ca]=Configuració... +Name[cs]=Nastavení... +Name[csb]=Ùstôw... +Name[cy]=Gosod... +Name[da]=Opsætning... +Name[de]=Einrichtung ... +Name[el]=Ρύθμιση... +Name[eo]=Agordo... +Name[es]=Configuración... +Name[et]=Seadistused... +Name[eu]=Konfigurazioa... +Name[fa]=برپایی... +Name[fi]=Asetukset... +Name[fr]=Configuration... +Name[fy]=Opset... +Name[ga]=Cumraigh... +Name[gl]=Configuración... +Name[he]=הגדרות... +Name[hi]=सेटअप... +Name[hr]=Postavke... +Name[hu]=Beállítás... +Name[id]=Aturan... +Name[is]=Stillingar... +Name[it]=Impostazioni... +Name[ja]=セットアップ... +Name[ka]=კონფიგურაცია... +Name[kk]=Баптау... +Name[km]=ដំឡើង... +Name[ko]=설정... +Name[lo]=ຕິດຕັ້ງ.. +Name[lt]=Nustatymas... +Name[lv]=Uzstādīšana... +Name[mk]=Постави... +Name[mn]=Тохируулга... +Name[ms]=Tetapan... +Name[nb]=Oppsett … +Name[nds]=Instellen... +Name[ne]=सेटअप... +Name[nl]=Instellingen... +Name[nn]=Oppsett … +Name[nso]=Beakanya... +Name[oc]=Configuracion... +Name[pa]=ਸੈੱਟਅੱਪ... +Name[pl]=Ustawienia... +Name[pt]=Configurar... +Name[pt_BR]=Configurar... +Name[ro]=Opțiuni... +Name[ru]=Настройка... +Name[rw]=Iboneza... +Name[se]=Heiveheapmi … +Name[sk]=Nastavenie... +Name[sl]=Nastavitve ... +Name[sr]=Подеси... +Name[sr@Latn]=Podesi... +Name[ss]=Lungiselela... +Name[sv]=Inställningar... +Name[ta]=அமைப்பு... +Name[te]=సెటప్... +Name[tg]=Танзимот... +Name[th]=ตั้งค่า... +Name[tr]=Kurulum... +Name[tt]=Caylaw... +Name[uk]=Встановити... +Name[uz]=Oʻrnatish +Name[uz@cyrillic]=Ўрнатиш +Name[ven]=Vhekanya... +Name[vi]=Cài đặt... +Name[wa]=Apontyî... +Name[xh]=Iyacwangciswa... +Name[zh_CN]=设置... +Name[zh_TW]=設定... +Name[zu]=Iyalungiselela... +Icon=kscreensaver + +[Desktop Action InWindow] +Exec=kblankscrn.kss -window-id %w +Name=Display in Specified Window +Name[af]=Vertoon in gespesifiseerde venster +Name[ar]=أعرض في النافذة المحددة +Name[az]=Bildirilən Pəncərədə Göstər +Name[be]=Паказваць у вызначаным акне +Name[bg]=Стартиране в избран прозорец +Name[bn]=নির্দিষ্ট উইণ্ডোয় দেখাও +Name[br]=Diskwel er prenestr spisaet +Name[bs]=Prikaži u navedenom prozoru +Name[ca]=Mostra a la finestra especificada +Name[cs]=Zobrazit v určeném okně +Name[csb]=Wëskrzëni w pòdónym òknie +Name[cy]=Dangos mewn Ffenestr Benodol +Name[da]=Visning i angivet vindue +Name[de]=In angegebenem Fenster anzeigen +Name[el]=Προβολή στο καθορισμένο παράθυρο +Name[eo]=Montru en indikita fenestro +Name[es]=Mostrar en la ventana especificada +Name[et]=Määratud aknas näitamine +Name[eu]=Erakutsi adierazitako leihoan +Name[fa]=نمایش در پنجرۀ مشخص‌شده +Name[fi]=Näytä määrätyssä ikkunassa +Name[fr]=Affichage dans la fenêtre spécifiée +Name[fy]=Werjefte yn in definiëare finster +Name[ga]=Taispeáin san Fhuinneog Sonraithe +Name[gl]=Mostrar na fiestra especificada +Name[he]=הצג בחלון המצוין +Name[hi]=निर्दिष्ट विंडो में प्रदर्शित करें +Name[hr]=Prikaži u odabranom prozoru +Name[hu]=Megjelenítés egy megadott ablakban +Name[is]=Birta í völdum glugga +Name[it]=Mostra nella finestra specificata +Name[ja]=特定のウィンドウで表示 +Name[ka]=მოცემულ ფანჯარაში ასახვა +Name[kk]=Келтірілген терезеде көрсету +Name[km]=បង្ហាញ​ក្នុង​បង្អួច​ដែល​បាន​បញ្ជាក់​លម្អិត +Name[ko]=지정한 창에 보이기 +Name[lt]=Rodyti nurodytame lange +Name[lv]=Rādīt norādītajā logā +Name[mk]=Прикажи во наведениот прозорец +Name[ms]=Paparan dalam Tetingkap Yang Dinyatakan +Name[mt]=Uri f'window speċifika +Name[nb]=Vis i det valgte vinduet +Name[nds]=In't utsöchte Finster wiesen +Name[ne]=निर्दिष्ट गरिएको सञ्झ्यालमा प्रदर्शन गर्नुहोस् +Name[nl]=In een gedefinieerd venster weergeven +Name[nn]=Vis i vald vindauge +Name[pa]=ਦਿੱਤੇ ਝਰੋਖੇ ਵਿੱਚ ਵੇਖਾਓ +Name[pl]=Wyświetl w podanym oknie +Name[pt]=Mostrar na Janela Indicada +Name[pt_BR]=Mostrar em janela especificada +Name[ro]=Afișează în fereastra specificată +Name[ru]=Показать в указанном окне +Name[rw]=Kwerekana mu Idirishya Ryihariye +Name[se]=Čájet meroštuvvon láses +Name[sk]=Zobraziť v zadanom okne +Name[sl]=Prikaz v določenemu oknu +Name[sr]=Прикажи у задатом прозору +Name[sr@Latn]=Prikaži u zadatom prozoru +Name[sv]=Visa i angivet fönster +Name[ta]=குறிப்பிடப்பட்ட சாளரத்தில் காட்டு +Name[th]=แสดงในหน้าต่างที่กำหนด +Name[tr]=Belirtilen Pencerede Göster +Name[tt]=Äytelgän Täräzädä Kürsät +Name[uk]=Відобразити у вказаному вікні +Name[uz]=Koʻrsatilgan oynada koʻrsatish +Name[uz@cyrillic]=Кўрсатилган ойнада кўрсатиш +Name[vi]=Hiển thị trong một Cửa sổ Đặc biệt +Name[wa]=Håyner dins l' purnea specifyî +Name[zh_CN]=在指定窗口中显示 +Name[zh_TW]=在指定的視窗中顯示 +NoDisplay=true + +[Desktop Action Root] +Exec=kblankscrn.kss -root +Name=Display in Root Window +Name[af]=Vertoon in root venster +Name[ar]=أعرض في النافذة الجذرية +Name[az]=Kök Pəncərədə Göstər +Name[be]=Паказваць у галоўным акне +Name[bg]=Стартиране в главния прозорец +Name[bn]=রুট উইণ্ডোয় দেখাও +Name[br]=Diskwel er prenestr gwrizienn +Name[bs]=Prikaži u korijenskom prozoru +Name[ca]=Mostra a la finestra root +Name[cs]=Zobrazit na pozadí plochy +Name[csb]=Wëskrzëni w przédnym òknie +Name[cy]=Dangos mewn Ffenestr Wraidd +Name[da]=Visning i root-vindue +Name[de]=Im Basisfenster (Root Window) anzeigen +Name[el]=Προβολή στο βασικό παράθυρο +Name[eo]=Montru en radika fenestro +Name[es]=Mostrar en la ventana raíz +Name[et]=Juuraknas näitamine +Name[eu]=Erakutsi leiho nagusian +Name[fa]=نمایش در پنجرۀ ریشه +Name[fi]=Näytä juuri-ikkunassa +Name[fr]=Affichage dans la fenêtre racine +Name[fy]=Werjefte yn haadfinster +Name[ga]=Taispeáin sa bhFréamhfhuinneog +Name[gl]=Mostrar na fiestra raiz +Name[he]=הצג בחלון השורש +Name[hi]=रूट विंडो में प्रदर्शित करें +Name[hr]=Prikaži u korijenskom prozoru +Name[hu]=Megjelenítés a gyökérablakban +Name[is]=Birta í bakgrunni skjáborðs +Name[it]=Mostra sulla finestra di sfondo +Name[ja]=ルートウィンドウで表示 +Name[ka]=ძირეულ ფანჯარაში ასახვა +Name[kk]=Root терезесінде көрсету +Name[km]=បង្ហាញ​ក្នុង​បង្អួច Root +Name[ko]=전체 화면에 보이기 +Name[lt]=Rodyti root lange +Name[lv]=Rādīt saknes logā +Name[mk]=Прикажи во кореновиот прозорец +Name[ms]=Papar dalam Tetingkap Root +Name[mt]=Uri fil-window ewlenija +Name[nb]=Vis i rotvinduet +Name[nds]=In't Hööftfinster wiesen +Name[ne]=रुट सञ्झ्यालमा प्रदर्शन गर्नुहोस् +Name[nl]=In hoofdvenster weergeven +Name[nn]=Vis i rotvindauget +Name[pa]=ਰੂਟ(Root) ਝਰੋਖੇ ਵਿੱਚ ਵੇਖਾਓ +Name[pl]=Wyświetl w oknie głównym +Name[pt]=Mostrar na Janela de Fundo +Name[pt_BR]=Mostrar na janela-raiz +Name[ro]=Afișează în fereastra rădăcină +Name[ru]=Показать в корневом окне +Name[rw]=Kwerekana mu Idirishya Umuzi +Name[se]=Čájet ruohtasláses +Name[sk]=Zobraziť v koreňovom okne +Name[sl]=Prikaz v korenskem oknu +Name[sr]=Прикажи у кореном прозору +Name[sr@Latn]=Prikaži u korenom prozoru +Name[sv]=Visa i rotfönstret +Name[ta]=மூல சாளரத்தில் காட்டு +Name[th]=แสดงในหน้าต่างหลัก +Name[tr]=Kök Pencerede Göster +Name[tt]=Root Täräzäsendä Kürsät +Name[uk]=Відобразити на тлі екрана +Name[uz]=Tub oynada koʻrsatish +Name[uz@cyrillic]=Туб ойнада кўрсатиш +Name[vi]=Hiển thị trong Cửa sổ của Gốc +Name[wa]=Håyner e purnea raecene (li fond do scribanne) +Name[zh_CN]=在 Root 窗口中显示 +Name[zh_TW]=在 Root 視窗中顯示 +NoDisplay=true diff --git a/kscreensaver/KRandom.desktop b/kscreensaver/KRandom.desktop new file mode 100644 index 000000000..f93c8abe1 --- /dev/null +++ b/kscreensaver/KRandom.desktop @@ -0,0 +1,321 @@ +[Desktop Entry] +Exec=krandom.kss +Icon=kscreensaver +Type=Application +Actions=Setup;InWindow;Root; +OnlyShowIn=KDE; +Name=Random +Name[af]=Lukrake +Name[ar]=عشوائي +Name[az]=Təsadüfi +Name[be]=Выпадковы +Name[bg]=Произволен +Name[bn]=এলোমেলোভাবে +Name[br]=Dre zegouezh +Name[bs]=Bilo koji +Name[ca]=Aleatori +Name[cs]=Náhodný +Name[csb]=Przëtrôfkòwi +Name[cy]=Ar Hap +Name[da]=Tilfældig +Name[de]=Zufällig +Name[el]=Τυχαία +Name[eo]=Hazardo +Name[es]=Aleatorio +Name[et]=Juhuslik +Name[eu]=Ausazkoa +Name[fa]=تصادفی +Name[fi]=Satunnainen +Name[fr]=Aléatoire +Name[fy]=Samar in +Name[ga]=Fánach +Name[gl]=Aleatório +Name[he]=אקראי +Name[hi]=बेतरतीब +Name[hr]=Nasumice +Name[hu]=Véletlenszerű +Name[id]=Acak +Name[is]=Slembið +Name[it]=Casuale +Name[ja]=ランダム +Name[ka]=შემთხვევითი +Name[kk]=Кездейсоқ +Name[km]=ចៃដន្យ +Name[ko]=아무거나 +Name[lo]=ສຸ່ມ +Name[lt]=Atsitiktinis +Name[lv]=Gadījuma +Name[mk]=Случаен +Name[mn]=Дурын +Name[ms]=Rawak +Name[mt]=Imtella' bil-Polza +Name[nb]=Tilfeldig +Name[nds]=Tofall +Name[ne]=अनियमित +Name[nl]=Willekeurig +Name[nn]=Tilfeldig +Name[nso]=Kago Rarela +Name[oc]=Aleatori +Name[pa]=ਰਲਵਾਂ +Name[pl]=Losowy +Name[pt]=Aleatório +Name[pt_BR]=Aleatório +Name[ro]=Aleator +Name[ru]=Случайный +Name[rw]=Bibonetse +Name[se]=Sáhtodohko +Name[sk]=Náhodný +Name[sl]=Naključno +Name[sr]=Случајно +Name[sr@Latn]=Slučajno +Name[sv]=Slumpmässig +Name[ta]=ஒழுங்கற்ற +Name[tg]=Тассодуфӣ +Name[th]=สุ่ม +Name[tr]=Rastgele +Name[tt]=Oçraqlı +Name[uk]=Випадковий +Name[uz]=Tasodifiy +Name[uz@cyrillic]=Тасодифий +Name[ven]=Zwothe +Name[vi]=Ngẫu nhiên +Name[wa]=A l' astcheyance +Name[xh]=Ngaphandle kwenjongo +Name[zh_CN]=随机 +Name[zh_TW]=隨機 +Name[zu]=Okungenaphethini + +[Desktop Action Setup] +Exec=krandom.kss -setup +Name=Setup... +Name[af]=Opstelling... +Name[ar]=إعداد... +Name[az]=Qurğular... +Name[be]=Настаўленні... +Name[bg]=Настройване... +Name[bn]=সেট-আপ... +Name[br]=Kefluniadur ... +Name[bs]=Postavke... +Name[ca]=Configuració... +Name[cs]=Nastavení... +Name[csb]=Ùstôw... +Name[cy]=Gosod... +Name[da]=Opsætning... +Name[de]=Einrichtung ... +Name[el]=Ρύθμιση... +Name[eo]=Agordo... +Name[es]=Configuración... +Name[et]=Seadistused... +Name[eu]=Konfigurazioa... +Name[fa]=برپایی... +Name[fi]=Asetukset... +Name[fr]=Configuration... +Name[fy]=Opset... +Name[ga]=Cumraigh... +Name[gl]=Configuración... +Name[he]=הגדרות... +Name[hi]=सेटअप... +Name[hr]=Postavke... +Name[hu]=Beállítás... +Name[id]=Aturan... +Name[is]=Stillingar... +Name[it]=Impostazioni... +Name[ja]=セットアップ... +Name[ka]=კონფიგურაცია... +Name[kk]=Баптау... +Name[km]=ដំឡើង... +Name[ko]=설정... +Name[lo]=ຕິດຕັ້ງ.. +Name[lt]=Nustatymas... +Name[lv]=Uzstādīšana... +Name[mk]=Постави... +Name[mn]=Тохируулга... +Name[ms]=Tetapan... +Name[nb]=Oppsett … +Name[nds]=Instellen... +Name[ne]=सेटअप... +Name[nl]=Instellingen... +Name[nn]=Oppsett … +Name[nso]=Beakanya... +Name[oc]=Configuracion... +Name[pa]=ਸੈੱਟਅੱਪ... +Name[pl]=Ustawienia... +Name[pt]=Configurar... +Name[pt_BR]=Configurar... +Name[ro]=Opțiuni... +Name[ru]=Настройка... +Name[rw]=Iboneza... +Name[se]=Heiveheapmi … +Name[sk]=Nastavenie... +Name[sl]=Nastavitve ... +Name[sr]=Подеси... +Name[sr@Latn]=Podesi... +Name[ss]=Lungiselela... +Name[sv]=Inställningar... +Name[ta]=அமைப்பு... +Name[te]=సెటప్... +Name[tg]=Танзимот... +Name[th]=ตั้งค่า... +Name[tr]=Kurulum... +Name[tt]=Caylaw... +Name[uk]=Встановити... +Name[uz]=Oʻrnatish +Name[uz@cyrillic]=Ўрнатиш +Name[ven]=Vhekanya... +Name[vi]=Cài đặt... +Name[wa]=Apontyî... +Name[xh]=Iyacwangciswa... +Name[zh_CN]=设置... +Name[zh_TW]=設定... +Name[zu]=Iyalungiselela... +Icon=kscreensaver + +[Desktop Action InWindow] +Exec=krandom.kss -window-id %w +Name=Display in Specified Window +Name[af]=Vertoon in gespesifiseerde venster +Name[ar]=أعرض في النافذة المحددة +Name[az]=Bildirilən Pəncərədə Göstər +Name[be]=Паказваць у вызначаным акне +Name[bg]=Стартиране в избран прозорец +Name[bn]=নির্দিষ্ট উইণ্ডোয় দেখাও +Name[br]=Diskwel er prenestr spisaet +Name[bs]=Prikaži u navedenom prozoru +Name[ca]=Mostra a la finestra especificada +Name[cs]=Zobrazit v určeném okně +Name[csb]=Wëskrzëni w pòdónym òknie +Name[cy]=Dangos mewn Ffenestr Benodol +Name[da]=Visning i angivet vindue +Name[de]=In angegebenem Fenster anzeigen +Name[el]=Προβολή στο καθορισμένο παράθυρο +Name[eo]=Montru en indikita fenestro +Name[es]=Mostrar en la ventana especificada +Name[et]=Määratud aknas näitamine +Name[eu]=Erakutsi adierazitako leihoan +Name[fa]=نمایش در پنجرۀ مشخص‌شده +Name[fi]=Näytä määrätyssä ikkunassa +Name[fr]=Affichage dans la fenêtre spécifiée +Name[fy]=Werjefte yn in definiëare finster +Name[ga]=Taispeáin san Fhuinneog Sonraithe +Name[gl]=Mostrar na fiestra especificada +Name[he]=הצג בחלון המצוין +Name[hi]=निर्दिष्ट विंडो में प्रदर्शित करें +Name[hr]=Prikaži u odabranom prozoru +Name[hu]=Megjelenítés egy megadott ablakban +Name[is]=Birta í völdum glugga +Name[it]=Mostra nella finestra specificata +Name[ja]=特定のウィンドウで表示 +Name[ka]=მოცემულ ფანჯარაში ასახვა +Name[kk]=Келтірілген терезеде көрсету +Name[km]=បង្ហាញ​ក្នុង​បង្អួច​ដែល​បាន​បញ្ជាក់​លម្អិត +Name[ko]=지정한 창에 보이기 +Name[lt]=Rodyti nurodytame lange +Name[lv]=Rādīt norādītajā logā +Name[mk]=Прикажи во наведениот прозорец +Name[ms]=Paparan dalam Tetingkap Yang Dinyatakan +Name[mt]=Uri f'window speċifika +Name[nb]=Vis i det valgte vinduet +Name[nds]=In't utsöchte Finster wiesen +Name[ne]=निर्दिष्ट गरिएको सञ्झ्यालमा प्रदर्शन गर्नुहोस् +Name[nl]=In een gedefinieerd venster weergeven +Name[nn]=Vis i vald vindauge +Name[pa]=ਦਿੱਤੇ ਝਰੋਖੇ ਵਿੱਚ ਵੇਖਾਓ +Name[pl]=Wyświetl w podanym oknie +Name[pt]=Mostrar na Janela Indicada +Name[pt_BR]=Mostrar em janela especificada +Name[ro]=Afișează în fereastra specificată +Name[ru]=Показать в указанном окне +Name[rw]=Kwerekana mu Idirishya Ryihariye +Name[se]=Čájet meroštuvvon láses +Name[sk]=Zobraziť v zadanom okne +Name[sl]=Prikaz v določenemu oknu +Name[sr]=Прикажи у задатом прозору +Name[sr@Latn]=Prikaži u zadatom prozoru +Name[sv]=Visa i angivet fönster +Name[ta]=குறிப்பிடப்பட்ட சாளரத்தில் காட்டு +Name[th]=แสดงในหน้าต่างที่กำหนด +Name[tr]=Belirtilen Pencerede Göster +Name[tt]=Äytelgän Täräzädä Kürsät +Name[uk]=Відобразити у вказаному вікні +Name[uz]=Koʻrsatilgan oynada koʻrsatish +Name[uz@cyrillic]=Кўрсатилган ойнада кўрсатиш +Name[vi]=Hiển thị trong một Cửa sổ Đặc biệt +Name[wa]=Håyner dins l' purnea specifyî +Name[zh_CN]=在指定窗口中显示 +Name[zh_TW]=在指定的視窗中顯示 +NoDisplay=true + +[Desktop Action Root] +Exec=krandom.kss -root +Name=Display in Root Window +Name[af]=Vertoon in root venster +Name[ar]=أعرض في النافذة الجذرية +Name[az]=Kök Pəncərədə Göstər +Name[be]=Паказваць у галоўным акне +Name[bg]=Стартиране в главния прозорец +Name[bn]=রুট উইণ্ডোয় দেখাও +Name[br]=Diskwel er prenestr gwrizienn +Name[bs]=Prikaži u korijenskom prozoru +Name[ca]=Mostra a la finestra root +Name[cs]=Zobrazit na pozadí plochy +Name[csb]=Wëskrzëni w przédnym òknie +Name[cy]=Dangos mewn Ffenestr Wraidd +Name[da]=Visning i root-vindue +Name[de]=Im Basisfenster (Root Window) anzeigen +Name[el]=Προβολή στο βασικό παράθυρο +Name[eo]=Montru en radika fenestro +Name[es]=Mostrar en la ventana raíz +Name[et]=Juuraknas näitamine +Name[eu]=Erakutsi leiho nagusian +Name[fa]=نمایش در پنجرۀ ریشه +Name[fi]=Näytä juuri-ikkunassa +Name[fr]=Affichage dans la fenêtre racine +Name[fy]=Werjefte yn haadfinster +Name[ga]=Taispeáin sa bhFréamhfhuinneog +Name[gl]=Mostrar na fiestra raiz +Name[he]=הצג בחלון השורש +Name[hi]=रूट विंडो में प्रदर्शित करें +Name[hr]=Prikaži u korijenskom prozoru +Name[hu]=Megjelenítés a gyökérablakban +Name[is]=Birta í bakgrunni skjáborðs +Name[it]=Mostra sulla finestra di sfondo +Name[ja]=ルートウィンドウで表示 +Name[ka]=ძირეულ ფანჯარაში ასახვა +Name[kk]=Root терезесінде көрсету +Name[km]=បង្ហាញ​ក្នុង​បង្អួច Root +Name[ko]=전체 화면에 보이기 +Name[lt]=Rodyti root lange +Name[lv]=Rādīt saknes logā +Name[mk]=Прикажи во кореновиот прозорец +Name[ms]=Papar dalam Tetingkap Root +Name[mt]=Uri fil-window ewlenija +Name[nb]=Vis i rotvinduet +Name[nds]=In't Hööftfinster wiesen +Name[ne]=रुट सञ्झ्यालमा प्रदर्शन गर्नुहोस् +Name[nl]=In hoofdvenster weergeven +Name[nn]=Vis i rotvindauget +Name[pa]=ਰੂਟ(Root) ਝਰੋਖੇ ਵਿੱਚ ਵੇਖਾਓ +Name[pl]=Wyświetl w oknie głównym +Name[pt]=Mostrar na Janela de Fundo +Name[pt_BR]=Mostrar na janela-raiz +Name[ro]=Afișează în fereastra rădăcină +Name[ru]=Показать в корневом окне +Name[rw]=Kwerekana mu Idirishya Umuzi +Name[se]=Čájet ruohtasláses +Name[sk]=Zobraziť v koreňovom okne +Name[sl]=Prikaz v korenskem oknu +Name[sr]=Прикажи у кореном прозору +Name[sr@Latn]=Prikaži u korenom prozoru +Name[sv]=Visa i rotfönstret +Name[ta]=மூல சாளரத்தில் காட்டு +Name[th]=แสดงในหน้าต่างหลัก +Name[tr]=Kök Pencerede Göster +Name[tt]=Root Täräzäsendä Kürsät +Name[uk]=Відобразити на тлі екрана +Name[uz]=Tub oynada koʻrsatish +Name[uz@cyrillic]=Туб ойнада кўрсатиш +Name[vi]=Hiển thị trong Cửa sổ của Gốc +Name[wa]=Håyner e purnea raecene (li fond do scribanne) +Name[zh_CN]=在 Root 窗口中显示 +Name[zh_TW]=在 Root 視窗中顯示 +NoDisplay=true diff --git a/kscreensaver/Makefile.am b/kscreensaver/Makefile.am new file mode 100644 index 000000000..75cf37640 --- /dev/null +++ b/kscreensaver/Makefile.am @@ -0,0 +1,27 @@ +# Makefile.am for kscreensaver. +# + +AM_CPPFLAGS = -UQT_NO_ASCII_CAST + +INCLUDES = $(all_includes) +AM_LDFLAGS = $(all_libraries) $(KDE_RPATH) + +bin_PROGRAMS = krandom.kss kblankscrn.kss + +krandom_kss_SOURCES = random.cpp +krandom_kss_LDADD = $(LIB_KDEUI) -lm + +kblankscrn_kss_SOURCES = blankscrn.cpp +kblankscrn_kss_LDADD = $(LIB_KDEUI) -lkscreensaver -lm + +METASOURCES = AUTO + +messages: + $(XGETTEXT) *.cpp *.h -o $(podir)/kscreensaver.pot + +########## Meta objects ########## + +desktop_DATA = KRandom.desktop KBlankscreen.desktop +desktopdir = $(kde_appsdir)/System/ScreenSavers + +EXTRA_DIST = $(desktop_DATA) diff --git a/kscreensaver/blankscrn.cpp b/kscreensaver/blankscrn.cpp new file mode 100644 index 000000000..6b0b974c9 --- /dev/null +++ b/kscreensaver/blankscrn.cpp @@ -0,0 +1,135 @@ +//----------------------------------------------------------------------------- +// +// kblankscrn - Basic screen saver for KDE +// +// Copyright (c) Martin R. Jones 1996 +// +// 1998/04/19 Layout management added by Mario Weilguni +// 2001/03/04 Converted to use libkscreensaver by Martin R. Jones + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "blankscrn.h" +#include "blankscrn.moc" + +// libkscreensaver interface +extern "C" +{ + KDE_EXPORT const char *kss_applicationName = "kblankscrn.kss"; + KDE_EXPORT const char *kss_description = I18N_NOOP( "KBlankScreen" ); + KDE_EXPORT const char *kss_version = "2.2.0"; + + KDE_EXPORT KScreenSaver* kss_create( WId id ) + { + return new KBlankSaver( id ); + } + + KDE_EXPORT QDialog* kss_setup() + { + return new KBlankSetup(); + } +} + +//----------------------------------------------------------------------------- +// dialog to setup screen saver parameters +// +KBlankSetup::KBlankSetup( QWidget *parent, const char *name ) + : KDialogBase( parent, name, true, i18n( "Setup Blank Screen Saver" ), + Ok|Cancel, Ok, true ) +{ + readSettings(); + + QFrame *main = makeMainWidget(); + QGridLayout *grid = new QGridLayout(main, 4, 2, 0, spacingHint() ); + + QLabel *label = new QLabel( i18n("Color:"), main ); + grid->addWidget(label, 0, 0); + + KColorButton *colorPush = new KColorButton( color, main ); + colorPush->setMinimumWidth(80); + connect( colorPush, SIGNAL( changed(const QColor &) ), + SLOT( slotColor(const QColor &) ) ); + grid->addWidget(colorPush, 1, 0); + + preview = new QWidget( main ); + preview->setFixedSize( 220, 165 ); + preview->setBackgroundColor( black ); + preview->show(); // otherwise saver does not get correct size + saver = new KBlankSaver( preview->winId() ); + grid->addMultiCellWidget(preview, 0, 2, 1, 1); + + grid->setRowStretch( 2, 10 ); + grid->setRowStretch( 3, 20 ); + + setMinimumSize( sizeHint() ); +} + +// read settings from config file +void KBlankSetup::readSettings() +{ + KConfig *config = KGlobal::config(); + config->setGroup( "Settings" ); + + color = config->readColorEntry( "Color", &black ); +} + +void KBlankSetup::slotColor( const QColor &col ) +{ + color = col; + saver->setColor( color ); +} + +// Ok pressed - save settings and exit +void KBlankSetup::slotOk() +{ + KConfig *config = KGlobal::config(); + config->setGroup( "Settings" ); + config->writeEntry( "Color", color ); + config->sync(); + + accept(); +} + +//----------------------------------------------------------------------------- + + +KBlankSaver::KBlankSaver( WId id ) : KScreenSaver( id ) +{ + readSettings(); + blank(); +} + +KBlankSaver::~KBlankSaver() +{ +} + +// set the color +void KBlankSaver::setColor( const QColor &col ) +{ + color = col; + blank(); +} + +// read configuration settings from config file +void KBlankSaver::readSettings() +{ + KConfig *config = KGlobal::config(); + config->setGroup( "Settings" ); + + color = config->readColorEntry( "Color", &black ); +} + +void KBlankSaver::blank() +{ + setBackgroundColor( color ); + erase(); +} + diff --git a/kscreensaver/blankscrn.h b/kscreensaver/blankscrn.h new file mode 100644 index 000000000..667920cb1 --- /dev/null +++ b/kscreensaver/blankscrn.h @@ -0,0 +1,56 @@ +//----------------------------------------------------------------------------- +// +// kblankscrn - Basic screen saver for KDE +// +// Copyright (c) Martin R. Jones 1996 +// + +#ifndef __BLANKSCRN_H__ +#define __BLANKSCRN_H__ + +#include +#include +#include + +class KColorButton; + + +class KBlankSaver : public KScreenSaver +{ + Q_OBJECT +public: + KBlankSaver( WId drawable ); + virtual ~KBlankSaver(); + + void setColor( const QColor &col ); + +private: + void readSettings(); + void blank(); + +private: + QColor color; +}; + +class KBlankSetup : public KDialogBase +{ + Q_OBJECT +public: + KBlankSetup( QWidget *parent = NULL, const char *name = NULL ); + +protected: + void readSettings(); + +private slots: + void slotColor( const QColor & ); + void slotOk(); + +private: + QWidget *preview; + KBlankSaver *saver; + + QColor color; +}; + +#endif + diff --git a/kscreensaver/random.cpp b/kscreensaver/random.cpp new file mode 100644 index 000000000..df971d238 --- /dev/null +++ b/kscreensaver/random.cpp @@ -0,0 +1,246 @@ +//----------------------------------------------------------------------------- +// +// Screen savers for KDE +// +// Copyright (c) Martin R. Jones 1999 +// +// This is an extremely simple program that starts a random screensaver. +// + +#include + +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "kscreensaver_vroot.h" +#include "random.h" + +#define MAX_ARGS 20 + +void usage(char *name) +{ + puts(i18n("Usage: %1 [-setup] [args]\n" + "Starts a random screen saver.\n" + "Any arguments (except -setup) are passed on to the screen saver.").arg( name ).local8Bit().data()); +} + +static const char appName[] = "random"; + +static const char description[] = I18N_NOOP("Start a random KDE screen saver"); + +static const char version[] = "2.0.0"; + +static const KCmdLineOptions options[] = +{ + { "setup", I18N_NOOP("Setup screen saver"), 0 }, + { "window-id wid", I18N_NOOP("Run in the specified XWindow"), 0 }, + { "root", I18N_NOOP("Run in the root XWindow"), 0 }, + // { "+-- [options]", I18N_NOOP("Options to pass to the screen saver"), 0 } + KCmdLineLastOption +}; + +//---------------------------------------------------------------------------- + +int main(int argc, char *argv[]) +{ + KLocale::setMainCatalogue("kscreensaver"); + KCmdLineArgs::init(argc, argv, appName, I18N_NOOP("Random screen saver"), description, version); + + KCmdLineArgs::addCmdLineOptions(options); + + KApplication app; + + Window windowId = 0; + + KCmdLineArgs *args = KCmdLineArgs::parsedArgs(); + + if (args->isSet("setup")) + { + KRandomSetup setup; + setup.exec(); + exit(0); + } + + if (args->isSet("window-id")) + { + windowId = atol(args->getOption("window-id")); + } + + if (args->isSet("root")) + { + windowId = RootWindow(qt_xdisplay(), qt_xscreen()); + } + + KGlobal::dirs()->addResourceType("scrsav", + KGlobal::dirs()->kde_default("apps") + + "apps/ScreenSavers/"); + KGlobal::dirs()->addResourceType("scrsav", + KGlobal::dirs()->kde_default("apps") + + "System/ScreenSavers/"); + QStringList tempSaverFileList = KGlobal::dirs()->findAllResources("scrsav", + "*.desktop", false, true); + + QStringList saverFileList; + + KConfig type("krandom.kssrc"); + type.setGroup("Settings"); + bool opengl = type.readBoolEntry("OpenGL"); + bool manipulatescreen = type.readBoolEntry("ManipulateScreen"); + bool fortune = !KStandardDirs::findExe("fortune").isEmpty(); + + for (uint i = 0; i < tempSaverFileList.count(); i++) + { + kdDebug() << "Looking at " << tempSaverFileList[i] << endl; + KDesktopFile saver(tempSaverFileList[i], true); + if(!saver.tryExec()) + continue; + kdDebug() << "read X-KDE-Type" << endl; + QString saverType = saver.readEntry("X-KDE-Type"); + + if (saverType.isEmpty()) // no X-KDE-Type defined so must be OK + { + saverFileList.append(tempSaverFileList[i]); + } + else + { + QStringList saverTypes = QStringList::split(";", saverType); + for (QStringList::ConstIterator it = saverTypes.begin(); it != saverTypes.end(); ++it ) + { + kdDebug() << "saverTypes is "<< *it << endl; + if (*it == "ManipulateScreen") + { + if (manipulatescreen) + { + saverFileList.append(tempSaverFileList[i]); + } + } + else + if (*it == "OpenGL") + { + if (opengl) + { + saverFileList.append(tempSaverFileList[i]); + } + } + if (*it == "Fortune") + { + if (fortune) + { + saverFileList.append(tempSaverFileList[i]); + } + } + + } + } + } + + KRandomSequence rnd; + int indx = rnd.getLong(saverFileList.count()); + QString filename = *(saverFileList.at(indx)); + + KDesktopFile config(filename, true); + + QString cmd; + if (windowId && config.hasActionGroup("InWindow")) + { + config.setActionGroup("InWindow"); + } + else if ((windowId == 0) && config.hasActionGroup("Root")) + { + config.setActionGroup("Root"); + } + cmd = config.readPathEntry("Exec"); + + QTextStream ts(&cmd, IO_ReadOnly); + QString word; + ts >> word; + QString exeFile = KStandardDirs::findExe(word); + + if (!exeFile.isEmpty()) + { + char *sargs[MAX_ARGS]; + sargs[0] = new char [strlen(word.ascii())+1]; + strcpy(sargs[0], word.ascii()); + + int i = 1; + while (!ts.atEnd() && i < MAX_ARGS-1) + { + ts >> word; + if (word == "%w") + { + word = word.setNum(windowId); + } + + sargs[i] = new char [strlen(word.ascii())+1]; + strcpy(sargs[i], word.ascii()); + kdDebug() << "word is " << word.ascii() << endl; + + i++; + } + + sargs[i] = 0; + + execv(exeFile.ascii(), sargs); + } + + // If we end up here then we couldn't start a saver. + // If we have been supplied a window id or root window then blank it. + Window win = windowId ? windowId : RootWindow(qt_xdisplay(), qt_xscreen()); + XSetWindowBackground(qt_xdisplay(), win, + BlackPixel(qt_xdisplay(), qt_xscreen())); + XClearWindow(qt_xdisplay(), win); +} + + +KRandomSetup::KRandomSetup( QWidget *parent, const char *name ) + : KDialogBase( parent, name, true, i18n( "Setup Random Screen Saver" ), + Ok|Cancel, Ok, true ) +{ + + QFrame *main = makeMainWidget(); + QGridLayout *grid = new QGridLayout(main, 4, 2, 0, spacingHint() ); + + openGL = new QCheckBox( i18n("Use OpenGL screen savers"), main ); + grid->addWidget(openGL, 0, 0); + + manipulateScreen = new QCheckBox(i18n("Use screen savers that manipulate the screen"), main); + grid->addWidget(manipulateScreen, 1, 0); + + setMinimumSize( sizeHint() ); + + KConfig config("krandom.kssrc"); + config.setGroup("Settings"); + openGL->setChecked(config.readBoolEntry("OpenGL", true)); + manipulateScreen->setChecked(config.readBoolEntry("ManipulateScreen", true)); +} + +void KRandomSetup::slotOk() +{ + KConfig config("krandom.kssrc"); + config.setGroup("Settings"); + config.writeEntry("OpenGL", openGL->isChecked()); + config.writeEntry("ManipulateScreen", manipulateScreen->isChecked()); + + accept(); +} + +#include "random.moc" diff --git a/kscreensaver/random.h b/kscreensaver/random.h new file mode 100644 index 000000000..9f47a1002 --- /dev/null +++ b/kscreensaver/random.h @@ -0,0 +1,38 @@ +/* + Copyright (c) 2003 Chris Howells + + ************************************************************************* + * * + * This program is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; version * + * 2 of the License. * + * * + ************************************************************************* +*/ + +#ifndef RANDOM_H +#define RANDOM_H + +class QWidget; +class QCheckBox; + +class KRandomSetup : public KDialogBase +{ + Q_OBJECT + public: + KRandomSetup( QWidget *parent = NULL, const char *name = NULL ); + + private: + + QWidget *preview; + QCheckBox *openGL; + QCheckBox *manipulateScreen; + + private slots: + + void slotOk(); + +}; + +#endif -- cgit v1.2.3