Portál AbcLinuxu, 24. dubna 2024 01:05


Dotaz: Obsolete funkce v GTK+ API

Jiří Svoboda avatar 22.9.2004 16:45 Jiří Svoboda | skóre: 37 | blog: cat /dev/mind | Prostějov
Obsolete funkce v GTK+ API
Přečteno: 122×
Odpovědět | Admin
Potrebuji zkompilovat jistou aplikaci vyuzivajici GTK+. Bohuzel vsak zdrojovy kod nebyl nejakou dobu aktualizovan a to zpusobilo, ze aplikace proti aktualnimu GTK+ zkompilovat nejde. Konkretne pouziva 'GtkOptionMenu', ktere je od GTK+ v2.4 obsolete a je nahrazeno 'GtkComboBox'.
Nekde jsem zahledl, ze by snad mely jit nejak zapnout obsolete funkce pomoci vhodneho #define, ale nemuzu k tomu nic najit.
Otazka tedy zni: Jde to nejak zkompilovat bez uprav a nebo musim aplikaci premigrovat na 'GtkComboBox'?
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

22.9.2004 18:39 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Obsolete funkce v GTK+ API
Odpovědět | | Sbalit | Link | Blokovat | Admin
To bude nějaký omyl, protože celá řada 2.x je zdrojově i binárně kompatibilní, všechny třídy a funkce lze normálně používat v novejší verzích, i když jsou deprecated (celkem běžně to dělám). Tedy pokud program někde explicitně nezapíná
#define GTK_DISABLE_DEPRECATED
ale to už je pak jeho boj...

Takže zkus grepnout GTK_DISABLE_DEPRECATED (může být i v Makefilech).
Jiří Svoboda avatar 22.9.2004 23:05 Jiří Svoboda | skóre: 37 | blog: cat /dev/mind | Prostějov
Rozbalit Rozbalit vše Re: Obsolete funkce v GTK+ API
Diky! Bylo to v Makefile. Jednak me tam predtim z nejakeho duvodu nenapadlo kouknout a druhak jsem grepoval 'OBSOLETE', heh.
22.9.2004 20:28 Maude Lebowski
Rozbalit Rozbalit vše Re: Obsolete funkce v GTK+ API
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pouzij a prilinkuj gtk1.2, mela jsem podobny problem a na dotaz v gtk konferenci me rekli, ze rozdil mezi gtk1.2 a gtk2.4 je asi takovy jako mezi gtk a qt:) Melo by jit bez problemu na jednom systemu pouzivat obe knihovny. Vzhled gtk1.2 je sice trochu retro, ale minimalne do doby nez se to predela to muze bezet. Diky neustalym zmenam v API kdy jsem mela podobne problemy s gtk1.0 a gtk1.2 jsem presla od gtk k wxWindows.
22.9.2004 20:56 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: Obsolete funkce v GTK+ API
GtkOptionMenu je deprecated až od 2.4 a od 2.2 se liší skoro jenom tím ifndef. Takže s 1.2 by si jenom přidělával starosti.
22.9.2004 21:11 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Obsolete funkce v GTK+ API
Nešiř FUD.

Předně, pokud program někdo napsal tomto tisíciletí, bude nejspíš pod Gtk+ 2.x, a s Gtk+ 1.x ho neslinkuješ.

Dále, jaké změny v API? Jak už jsem napsal, celá řada 2.x je plně zpětně kompatibilní. Sice přibývají nové věci, ale staré se nemění, zejména ne jejich API.

Jednoduché Gtk+ 1.x programy navíc často fungují i s Gtk+ 2.x, protože žádný Gtk+ 1.x widget nebyl v Gtk+ 2.x odstraněn, byť tři skutečně rozbité teď vyžadují #define GTK_ENABLE_BROKEN při kompilaci.

A co s wxWindows? Když chceš cokoli netriválního (např. widget zobrazující text ;-) musíš stejně použít nativní widgety, takže to je z bláta do louže...

Založit nové vláknoNahoru

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

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.