Spořič/Šetřič obrazovky (screensaver) - Hodiny
16. 3. 2008 15:27
Hodiny (Clock) v1.1
This screensaver is clone of kclock.kss originally created by Melchior Franz
from KDE. It is written from scratch without any code from original project
because it is written in Delphi. This release is only in Czech localization.
installer
(472,8kB)
zip
archiv (190,6kB) – just unpack to Windows folder
Hodiny v1.1
automatický
instalátor (472,8kB)
zip
archiv (190,6kB) – archiv stačí jen rozbalit do adresáře Windows
(nejčastěji c:\windows) a vybrat v nastavení, že ho chcete.
Jedná se o klon kclock.kss, jehož původním autorem je Melchior Franz z KDE.
verze 1.2/2008-?
- TODO: přidat podporu pro GNU gettext, aby byly možné lokalizované verze do jiných jazyků.
verze 1.1.189/2008–1
- Experimentální podpora OpenGl
- V nastavení vyberte, že chcete používat OpenGL vykreslování.
verze 1.1/2007-? Stále se připravuje a je ve stádiu návrhu
- Bude umožňovat vykreslování hodin pomocí DirectX nebo OpenGL, čímž se zatížení procesoru sníží z asi 20% na 0% (testováno na AMD Sempron @ 1600MHz)
verze 1.0.187/2007–7
- Opravena podpora pro počítače s více monitory. Nyní se černá plocha roztáhne na všechny a hodiny se zobrazí na jednom náhodně vybraném monitoru.
verze 1.0.183/2006–12
- Volba antialiasingu – vyhlazování (bez, 2×, 4×)
- Změnu barev ručiček, pozadí, …
- Uložení nastavení
- Režim s náhodným pohybem po obrazovce a režim vycentrovaně
předchozí verze
- zobrazení bílých hodin na černém pozadí bez možnosti nastavení parametrů
- o této verzi se pravděpodobně mluví na blogu http://lukasjankovic.blog.sme.sk/…razovky.html
Díky za reklamu ;)
Ještě musím uvést klíčové slovo „zdarma“ abych se umisťoval ve vyhledáváčích výš ;)
Nejsem správný obchodník a proto zveřejňuji odkaz na konkurenční port stejného spořiče na windows – Klock od Oskara A další konkurence, tentokrát na MacOS X http://clocksaver.sourceforge.net/ Zatím uvažuji, jak se mám postavit ke zdrojáku, protože jsem použil volně dostupnou komponentu, kterou jsem ale od základu přepsal a opravil, takže nezbyl ani její název, jen komentáře uvnitř zdrojáku. Takže níže je odkaz a zatím bez licence (zasloužilo by si GPL nebo BSD)
Co je dobré vědět při vytváření vlastního spořiče
Spořič obrazovky je obyčejný EXE soubor, pouze má příponu .scr a
řídí se příkazy z příkazové řádky.
/A se týká hesel
/S spustí samotný screensaver
/P spustí režim náhledu (předá v druhém parametru handle okna, kam se má
náhled vykreslovat)
/C spustí režim nastavování parametrů (tento parametr spouští Wwindows XP
ve tvaru /C:223424 takže je potřeba testovat jen první dvě písmena na
správný parametr, to číslo by mohl být handle rodičovského okna, abysme
mohli dialog pěkně vycentrovat)
Komponenta TJBClock
Původní komponentu jsem stáhl od Jakuba Vaníka [4], ale vůbec se mi nelíbila. :D Některé části byly naprogramovány moc hezky, ale nad některými prasárnami jsem musel chvíli zavírat oči, než jsem je přepsal ku obrazu svému.
- Zoptimalizoval jsem vykreslování, takže se pozadí ručiček vykresluje jen když se změní parametry, které ho ovlivňují, jinak je stále uloženo v paměti již vykreslené.
- Ručičky se překreslují pouze, když se změní čas, takže každou vteřinu a né každou desetinu vteřiny, jak to bylo původně. Samozřejmě se překreslí i ve chvíli, když okno dostane zprávu WM_PAINT.
- Je možné nastavit délku všech ručiček (v procentech ku velikosti hodin)
- Opravil jsem chybu zobrazování, takže teď hodiny opravdu ukazují správný čas a ne o 3˚ posunutý.
- Přejmenoval jsem komponentu (jak je mým dobrým zvykem) z TClock na TJBClock, aby nekolidovala s tou původní
- A zrůdnost globálních proměnných, které se používaly na ukládání nejinternějších věcí komponenty jsem také napravil.
To je vše, pokud se vám spořič líbí, tak ho klidně používejte a šiřte dál. Zanedlouho vydám další verzi, která bude opravovat pár minoritních chyb a snad už v ní bude antialiasing hran, aby to už vypadalo k světu.
Zdrojové kódy na požádání.
Odkazy:
[1] http://www.mindspring.com/…crnsavr.html
[2] http://community.borland.com/…9534,00.html
[3] http://nono40.developpez.com/…screensaver/
[4] http://delphipages.wz.cz/?…

