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í
×
    včera 16:44 | IT novinky

    Počítačová hra Tetris slaví 40 let. Alexej Pažitnov dokončil první hratelnou verzi 6. června 1984. Mezitím vznikla celá řada variant. Například Peklo nebo Nebe. Loni měl premiéru film Tetris.

    Ladislav Hagara | Komentářů: 9
    včera 10:44 | Nová verze

    MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.23.0. V přehledu novinek je vypíchnuta podpora dynamických USB zařízení nebo nové moduly openamp, tls a vfs.

    Ladislav Hagara | Komentářů: 0
    včera 10:22 | Nová verze

    Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.

    Ladislav Hagara | Komentářů: 2
    včera 01:00 | Nová verze Ladislav Hagara | Komentářů: 0
    4.6. 19:55 | IT novinky

    Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.

    Ladislav Hagara | Komentářů: 0
    4.6. 13:44 | IT novinky

    Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.

    Ladislav Hagara | Komentářů: 0
    4.6. 13:22 | Nová verze

    Byla vydána nová verze 14.1 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    4.6. 12:55 | Zajímavý software

    Společnost Kaspersky vydala svůj bezplatný Virus Removal Tool (KVRT) také pro Linux.

    Ladislav Hagara | Komentářů: 11
    4.6. 12:33 | Nová verze

    Grafický editor dokumentů LyX, založený na TeXu, byl vydán ve verzi 2.4.0 shrnující změny za šest let vývoje. Novinky zahrnují podporu Unicode jako výchozí, export do ePub či DocBook 5 a velké množství vylepšení uživatelského rozhraní a prvků editoru samotného (např. rovnic, tabulek, citací).

    Fluttershy, yay! | Komentářů: 2
    4.6. 12:00 | Nová verze

    Byla vydána (𝕏) nová verze 7.0 LTS open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.

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

    Dotaz: Jak na gnome applet

    Jardík avatar 26.4.2009 13:01 Jardík | skóre: 40 | blog: jarda_bloguje
    Jak na gnome applet
    Přečteno: 458×

    Snažím se napsat "visťácké" menu pro gnome. Zatím pracuji na tlačítku, ale nedaří se mi ho zobrazit v panelu. Když kód zkompiluju jako normální aplikaci, tak se obrázek tlačítka zobrazí, když ho zkompiluju jako applet, tak se na panel přidá akorát tečka - jediný pixel, představující můj applet. Neví někdo, co je ještě třeba udělat?

    #include <string.h>
    #include <gtk/gtk.h>
    #include <panel-applet.h>
    
    #define START_PREFIX "/home/jarda/.themes/WE Ergo/gtk-2.0/PanelMenu/WE Ergo/"
    
    #define START_NORMAL START_PREFIX "start-here.png"
    #define START_HOVER  START_PREFIX "start-here-glow.png"
    #define START_PRESS  START_PREFIX "start-here-depressed.png"
    
    class PanelButton
    {
    	GtkWidget* eventBox;
    	GtkWidget* image;
    	
    	bool hover;
    	bool pressed;
    public:
    	PanelButton()
    	{
    		eventBox = gtk_event_box_new();
    		
    		image = gtk_image_new_from_file(START_NORMAL);
    		
    		gtk_container_add(GTK_CONTAINER(eventBox), image);
    	}
    	
    	~PanelButton()
    	{
    		
    	}
    	
    	GtkWidget* mainWidget() const { return eventBox; }
    };
    
    
    static void applet_destroy(GtkWidget *widget, gpointer *ptr)
    {
    	PanelButton *button = (PanelButton*)ptr;
    	delete button;
    }
    
    // #define __TEST
    
    #ifndef __TEST
    
    static gboolean init_applet(PanelApplet *applet, const gchar *iid, gpointer data)
    {
    	if (strcmp(iid, "OAFIID:Example") != 0)
    	{
    		return 0;
    	}
    	
    	PanelButton* button = new PanelButton();
    	gtk_container_add(GTK_CONTAINER(applet), button->mainWidget());
    	g_signal_connect(G_OBJECT(applet), "destroy", G_CALLBACK(applet_destroy), button);
    	
    	gtk_widget_show_all(GTK_WIDGET(applet));
    	
    	return 1;
    }
    
    PANEL_APPLET_BONOBO_FACTORY("OAFIID:WEErgoMenu", PANEL_TYPE_APPLET, "WE Ergo Menu", "0", init_applet, NULL)
    
    #else
    
    int main(int argc, char **argv)
    {
    	gtk_init(&argc, &argv);
    	GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    	PanelButton* button = new PanelButton();
    	gtk_container_add(GTK_CONTAINER(window), button->mainWidget());
    	g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(applet_destroy), button);
    	gtk_widget_show_all(GTK_WIDGET(window));
    	gtk_main();
    	return 0;
    }
    
    #endif
    
    
    Věřím v jednoho Boha.

    Odpovědi

    26.4.2009 16:34 depka | skóre: 20 | blog: eterity
    Rozbalit Rozbalit vše Re: Jak na gnome applet

    resize?

    Jardík avatar 26.4.2009 22:26 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: Jak na gnome applet
    resize? Vždyť GTK si velikost počítá samo z gtk_widget_size_request, to okno se např. samo zvětší na minimální velikost podle obrázku. A gtk_widget_set_size_request jsem zkoušel jak na ten PanelApplet, na GtkEventBox i GtkImage a stejně je to tam jako tečka ...
    Věřím v jednoho Boha.

    Založit nové vláknoNahoru

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

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