Portál AbcLinuxu, 1. prosince 2025 10:19
Bylo by dobré, kdyby jsi své problémy popsal
Máš nějaký rozumný důvod proč rovnou nepoužít libglade? Je to knihovna, která Ti zajistí načtení XML souboru s popisem rozhraní *.glade za běhu programu. Přijde mi to šikovné, pěkně se tím oddělí definice vzhledu od funkce.
Zkus si znovu přečíst můj první příspěvek a trochu se nad ním zamyslet. Generovat zdrojáky s popisem rozhraní je prasečina. Tudíž místo toho definici rozhrání vygeneruješ pouze do XML souboru *.glade a tento soubor pak použiješ pomocí knihovny libglade v libovolném programovacím jazyce např. C, C++, Python, Perl, Ada, Ruby, Java.
a co vam brani pouzit indent ? nebo si ty funkce psat kompletne sam...
tutorial
konkretne k cemu? make, gcc, psani kodu v C?
kdyztak (muj nick)@jabber.cz

)
knihovny dlog a pxb jsou moje vlastni, docela bych se divil, kdybyte mel v systemu neco se stejnym nazvem
jinak jeste k te rychlosti - jedine zpomaleni je v nacitani XML souboru, jinak je to stejne rychle, jako kompilovane GUI (pro coz je pomerne vystizne jiz pouzite slovo prasarna, zvlaste u vetsich projektu)
nebo popis GUI ulozit do souboru *.glade a GTK cast poustet zpusobem (ukazkovy priklad z helpu, sam ho pouzivam)
rc = gtk_init_check(&argc, &argv);
/* load the interface */
xml = glade_xml_new("popis_gui.glade", NULL, NULL);
/* connect the signals in the interface */
glade_xml_signal_autoconnect(xml);
/* start the event loop */
gtk_main();
s tim, ze si pak muzete napsat (pro vyvoj) svuj vlastni Makefile, ktery muze vypadat treba podobne:
LIBS=-lm -lz -ldlog -lpxb `pkg-config libglade-2.0 --libs`
INCLUDE=`pkg-config --cflags-only-I libglade-2.0`
DEBUG=-g3 -ggdb -Wall -DDEBUG=1
FLAGS=-funsigned-char -D_GNU_SOURCE
CFLAGS=$(DEBUG) $(INCLUDE) $(FLAGS)
CC=gcc $(DEBUG)
DEPS=sig_proc.o ui_callback.o ui_events.o ui_test.o pxb-gtk.o zoom.o mouse_events.o
program: prg_main.o $(DEPS)
$(CC) $(LIBS) $(DEPS) prg_main.o -o $@ -export-dynamic
mozna rychlejsi, nez lustit, kam presne pridavat sve soubory
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.