abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    31.5. 23:55 | Nová verze

    Byla vydána nová stabilní verze 24.05 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Uakari. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.

    Ladislav Hagara | Komentářů: 0
    31.5. 17:33 | Nová verze

    Byla vydána nová verze 1.48.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Fernando F. Mancera. Mimo jiné se v nastavení místo mac-address-blacklist nově používá mac-address-denylist.

    Ladislav Hagara | Komentářů: 11
    31.5. 17:11 | Komunita

    Před 25 lety, 31. května 1999, započal vývoj grafického editoru Krita (Wikipedie). Tenkrát ještě pod názvem KImageShop a později pod názvem Krayon.

    Ladislav Hagara | Komentářů: 3
    31.5. 12:55 | Nová verze

    Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 24.05.0 editoru videa Kdenlive (Wikipedie). Ke stažení brzy také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    31.5. 11:22 | Zajímavý článek

    David Revoy, autor mj. komiksu Pepper&Carrot, se rozepsal o své aktuální grafické pracovní stanici: Debian 12 Bookworm, okenní systém X11, KDE Plasma 5.27, …

    Ladislav Hagara | Komentářů: 9
    30.5. 22:44 | Nová verze

    Wayland (Wikipedie) byl vydán ve verzi 1.23.0. Z novinek lze vypíchnout podporu OpenBSD.

    Ladislav Hagara | Komentářů: 0
    30.5. 21:22 | Zajímavý článek

    Craig Loewen na blogu Microsoftu představil novinky ve Windows Subsystému pro Linux (WSL). Vypíchnout lze GUI aplikaci pro nastavování WSL nebo správu WSL z Dev Home.

    Ladislav Hagara | Komentářů: 0
    30.5. 12:44 | Pozvánky

    V sobotu 1. června lze navštívit Maker Faire Ostrava, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    30.5. 12:22 | Nová verze

    Webový server Caddy (Wikipedie) s celou řadou zajímavých vlastností byl vydán ve verzi 2.8 (𝕏). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 16
    29.5. 22:11 | Nová verze

    Byla vydána verze 3.0 (@, 𝕏) svobodného softwaru HAProxy (The Reliable, High Performance TCP/HTTP Load Balancer; Wikipedie) řešícího vysokou dostupnost, vyvažování zátěže a reverzní proxy. Detailní přehled novinek v příspěvku na blogu společnosti HAProxy Technologies.

    Ladislav Hagara | Komentářů: 7
    Rozcestník

    Stav Toolkitu

    5.8.2006 17:54 | Přečteno: 872× | Linux | poslední úprava: 5.8.2006 19:41

    Stále mě ještě nepřestalo bavit pracovat na Toolkitu. Dnes jsem se definitivně rozhodl, že nebude defaultně vytvořená statická knihovna, ale jen dynamická. Velikost knihovny je zatím 276 kB (překládáno s parametrem -fPIC). Defaultně jí nebudu stripovat, ale bude možné to udělat příkazem make strip. Po stripnutí má nějakých 70 kB. configure skriptu bude možné předat parametr --enable-static. To bude mít za následek i vytvoření statické knihovny.

    Tak a teď k tomu stavu Toolkitu. Mám zatím dokončenu implementaci jen těchto widgetů:

    Dále jsou dokončeny třídy AnsiString, WideString a UnicodeString s možností konverze mezi jednotlivými znakovými sadami nebo kódováními, třídy pro čtení a zápis souborů (File, InputFile, OutputFile) a nakonec třídy Array a Application.

    Následuje zdrojový kód (pro ukázku), který je již opravdu přeložitelný (ten posledně byl jen návrh). Nejsou v něm ukázány všechny dosavadně implementované možnosti Toolkitu, spíš takové minimum. Je to prostě jen ukázka.

    #include <Toolkit/Application.h>
    #include <Toolkit/Window.h>
    #include <Toolkit/Label.h>
     
    Toolkit::Application *app;
    
    class MainWindow: public Toolkit::Window{
    public:
    	MainWindow()
    	{
    		setTitle( app->getName() );
    		setDefaultSize( 500, 480 );
    		new Toolkit::Label( L"Hello world!\nHlavní okno", this );
    	}
    	~MainWindow()
    	{
    		app->quit(0);
    	}
    };
    
    class ChildWindow: public Toolkit::Window{
    public:
    	ChildWindow()
    	{
    		setDefaultSize( 400, 250 );
    		setTitle( L"Modální dialog" );
    		new Toolkit::Label( L"Hello world!\nModální okno", this );
    	}
    	~ChildWindow()
    	{
    		
    	}
    };
    
    MainWindow *mainWindow;
    ChildWindow *childWindow;
     
    int main( int argc, char **argv )
    {
    	app = new Toolkit::Application( &argc, &argv );
    	app->init( L"JXP Commander" );
    	
    	mainWindow = new MainWindow;
    	mainWindow->showAll();
    	
    	childWindow = new ChildWindow;
    	childWindow->setTransientFor(mainWindow);
    	childWindow->setSkipTaskbarHint(true);
    	childWindow->setModal(true);
    	childWindow->showAll();
    	
    	return app->run();
    }
    

    Update: Jedna výborná zpráva - glib obsahuje konverzní funkce pro řetězce používající iconv. Licence tedy zůstává BSD.

           

    Hodnocení: 67 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    Josef Kufner avatar 5.8.2006 20:22 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Stav Toolkitu
    A co udělat místo toolkitu GUI? Blami se o tomhle kdysi dávno zmínil a je to celkem zajímavá myšlenka.

    Jde o to, že místo sem dej tohle, támhle todle se udělá jakési obecné gui, které bude vyhovovat všem aplikacím. Pak tvorba programu bude vypadat asi tak, že se inicializuje GUI, řekne: "Chci pohled na dokument, tady jsou funkce, které to umí, tady je kód na vykreslení dokumentu, tady jsou callbacky na tyhle události."

    Program se vůbec nemusí zabývat tvorbou GUI, jen definuje relativně obecný typ a pár základních vlastností. Např: pohled na dokument, konfigurační dialog, paleta s nástroji, zobrazení informace/otázka,...

    Ve výsledku by všechny programy měly stejné GUI, plně konfigurovatelné a na desktopu nezávislé. Bez sebemenšího zásahu do programu by bylo možné používat stejný program na PC, PDA, tabletu,... Bylo by možné překonfigurovat ovládání tak, že by se okna otočily naruby a ještě dělaly kotrmelce ;-)

    Mohla by vzniknout nová vrstva mezi programem a X serverem. Jakýsi správce GUI, který by zobrazoval palety s nástroji zadokované v pevných docích na okraji displeje (nikoliv okna, ani jako samostatné okno) a menu by mohlo být jako je už dlouho na Macu. Jen by to šlo daleko dál.

    Prakticky by mohl přestat existovat současný desktop s okny. Myšlenka zachycená Ionem by se mohla dál rozvinout,... pak by uživatel přepnul téma a koukal by na desktop ve stylu Windows 3.1, žádné panely, jen okna...

    Tohle by ale neznamenalo konec toolkitu jako takového, ten by byl použit na vykreslování tlačítek, menu,... prostě to co dělá teď, jen by ho nepoužíval program, ale nějaký ten správce GUI.

    Pak je ještě problém se zobrazením onoho dokumentu. To může být prakticky cokoliv, nemyslím tím jen kus textu či obrázek, ale třeba i hru, mail klient, terminál, prostě cokoliv. Jak tohle zapasovat do tak obecného návrhu je trošku problém. Viděl bych to tak, že by se program prostě staral o ten jeden widget. Ale jen o ten.
    Hello world ! Segmentation fault (core dumped)
    7.8.2006 12:50 David Jaša | skóre: 44 | blog: Dejvův blog
    Rozbalit Rozbalit vše Re: Stav Toolkitu
    Ač neprogramátor, tak mě už něco podobného taky napadlo. Akorát jsem to nerozvíjel. :-)

    BTW nesnaží se o něco podobného wxwidgets?
    5.8.2006 21:55 ajikdpoe | skóre: 23 | blog: dvh
    Rozbalit Rozbalit vše Re: Stav Toolkitu
    Jardík avatar 6.8.2006 14:02 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Stav Toolkitu
    Zkoušel jsem ho už před pár dny. Není vůbec špatný. Jenom by potřeboval dodělat :) Jenže já to chci mít pod Gtk. Gtk má ale pro mě hnusné API a proto dělám ten Toolkit (je to wrapper pro Gtk).
    Věřím v jednoho Boha.
    6.8.2006 15:00 Deleted [8409] | skóre: 14 | blog: darkblog
    Rozbalit Rozbalit vše Re: Stav Toolkitu
    Co je tak neuvěřitelného na gtk?
    6.8.2006 03:45 Deleted [8409] | skóre: 14 | blog: darkblog
    Rozbalit Rozbalit vše Re: Stav Toolkitu
    Xlib->gdk->gtk->Toolkit->aplikace

    Nevím, ale 70kb se mi zdá trošku moc, na to že to je jen wrapper pro 5 widgetů.
    Jardík avatar 6.8.2006 14:14 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Stav Toolkitu
    V tom seznamu ti ještě chybí glib, ale to je jedno. Nevím, co si tim chtěl říct.
    libgtkmm má 3,3 MB. 70kb rozhodně moc není (jen 8,75kB), ale já psal 70kB (musel jsem si rejpnout) ale to podle mě také moc není.
    Věřím v jednoho Boha.
    6.8.2006 14:58 Deleted [8409] | skóre: 14 | blog: darkblog
    Rozbalit Rozbalit vše Re: Stav Toolkitu
    glib tam není úmyslně, šlo mi čistě o vrstvu, která se dostane k xlib.

    Jde o to jestli není lepší mít toolkit který je nativně napsaný v jazyce ve kterém se budou psát i aplikace, C++ wrapper pro C++ toolkit by totiž asi nikdo nedělal a bylo by to jenom dobře.
    6.8.2006 16:55 Deleted [8409] | skóre: 14 | blog: darkblog
    Rozbalit Rozbalit vše Re: Stav Toolkitu
    Jenom by mě zajímalo jestli se ve Vašem příkladě korektně uvolní ty vytvořené widgety?
    Jardík avatar 7.8.2006 19:43 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Stav Toolkitu
    Widgety automaticky handlují (nebo jak to nazvat) signál "delete-event". Mám ošetřeno, jestli je nejprve zavolán destruktor (v tom případě se volá gtk_widget_destroy) nebo je nejprve zavolána callback fce pro "delete-event" (zavolá se delete this).
    Věřím v jednoho Boha.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.