Eric Lengyel dobrovolně uvolnil jako volné dílo svůj patentovaný algoritmus Slug. Algoritmus vykresluje text a vektorovou grafiku na GPU přímo z dat Bézierových křivek, aniž by využíval texturové mapy obsahující jakékoli předem vypočítané nebo uložené obrázky a počítá přesné pokrytí pro ostré a škálovatelné zobrazení písma, referenční ukázka implementace v HLSL shaderech je na GitHubu. Slug je volným dílem od 17. března letošního
… více »Sashiko (GitHub) je open source automatizovaný systém pro revizi kódu linuxového jádra. Monitoruje veřejné mailing listy a hodnotí navrhované změny pomocí umělé inteligence. Výpočetní zdroje a LLM tokeny poskytuje Google.
Cambalache, tj. RAD (rapid application development) nástroj pro GTK 4 a GTK 3, dospěl po pěti letech vývoje do verze 1.0. Instalovat jej lze i z Flathubu.
KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 10.0.0 (𝕏). Přehled novinek v příspěvku na blogu.
Letošní Turingovou cenu (2025 ACM A.M. Turing Award, Nobelova cena informatiky) získali Charles H. Bennett a Gilles Brassard za základní přínosy do oboru kvantové informatiky, které převrátily pojetí bezpečné neprolomitelné komunikace a výpočetní techniky. Jejich protokol BB84 z roku 1984 umožnil fyzikálně zaručený bezpečný přenos šifrovacích klíčů, zatímco jejich práce o kvantové teleportaci položila teoretické základy pro budoucí kvantový internet. Jejich práce spojila fyziku s informatikou a ovlivnila celou generaci vědců.
Firefox 149 dostupný od 24. března přinese bezplatnou vestavěnou VPN s 50 GB přenesených dat měsíčně (s CZ a SK se zatím nepočítá) a zobrazení dvou webových stránek vedle sebe v jednom panelu (split view). Firefox Labs 149 umožní přidat poznámky k panelům (tab notes, videoukázka).
Byla vydána nová stabilní verze 7.9 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 146. Přehled novinek i s náhledy v příspěvku na blogu.
Dle plánu byla vydána Opera GX pro Linux. Ke stažení je .deb i .rpm. V plánu je flatpak. Opera GX je webový prohlížeč zaměřený na hráče počítačových her.
GNUnet (Wikipedie) byl vydán v nové major verzi 0.27.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.
Byly publikovány informace (technické detaily) o bezpečnostním problému Snapu. Jedná se o CVE-2026-3888. Neprivilegovaný lokální uživatel může s využitím snap-confine a systemd-tmpfiles získat práva roota.
from gi.repository import Gtk
w = Gtk.Window()
w.connect('destroy', Gtk.main_quit)
e = Gtk.Expander.new('Expand Me!')
e.set_tooltip_text('This is the expander.')
w.add(e)
h = Gtk.Box()
e.add(h)
b = Gtk.Button.new_with_label('Click Me!')
b.set_tooltip_text('This is the button.')
h.add(b)
w.show_all()
Gtk.main()
Toto ti nefunguje, jak má? (Gtk+ 3.2.3)
toto je python?
ja to píšem v C. Ak je to python tak výsledok je toto:
$ python gtkexp.py
Traceback (most recent call last):
File "gtkexp.py", line 1, in
from gi.repository import Gtk
File "/usr/lib/python2.7/dist-packages/gi/__init__.py", line 23, in
from ._gi import _API, Repository
ImportError: /usr/lib/python2.7/dist-packages/gi/_gi.so: undefined symbol: g_callable_info_skip_return
#include [gtk/gtk.h]
int
main(int argc, char *argv[])
{
gtk_init(&argc, &argv);
GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
g_signal_connect(window, "destroy", G_CALLBACK(gtk_main_quit), NULL);
GtkWidget *expander = gtk_expander_new("Expand Me!");
gtk_widget_set_tooltip_text(expander, "This is the expander.");
gtk_container_add(GTK_CONTAINER(window), expander);
GtkWidget *hbox = gtk_hbox_new(FALSE, 0);
gtk_container_add(GTK_CONTAINER(expander), hbox);
GtkWidget *button = gtk_button_new_with_label("Click Me!");
gtk_widget_set_tooltip_text(button, "This is the button.");
gtk_container_add(GTK_CONTAINER(hbox), button);
gtk_widget_show_all(window);
gtk_main();
return 0;
}
Zkompilovatelné s Gtk+ 2 i 3 a s obojím (2.24.8 a 3.2.2) se chová identicky - správně.
nooooo... tak to je zaujímavé, ja používam toto: http://developer.gnome.org/gtk/2.24/GtkTooltips.html a tu ked to čítam sa píše:
GtkTooltips has been deprecated in GTK+ 2.12, in favor of the new GtkTooltip API.
a ukazuje to tu: http://developer.gnome.org/gtk/2.24/GtkTooltip.html . Citujem:
Basic tooltips can be realized simply by using gtk_widget_set_tooltip_text()
No je to čo ty používaš. Takže zajtra sa na to pôjdem a asi to celé prerobím.... A myslím že tým pádom je to asi vyriešené...
GtkWidget *button2 = gtk_button_new_with_label("Or Me!");
gtk_container_add(GTK_CONTAINER(hbox), button2);
A ked na neho nabehneš myšou tak sa tam objavi tip z expanderu
inak to mam 3x python 2.5 , 2.6 a 2.7. Toto hore bolo z defaultného pythona, teda asi 2.7, verzia 2.5 dáva toto:
$ python2.5 gtkexp.py
Traceback (most recent call last):
File "gtkexp.py", line 1, in <module>
from gi.repository import Gtk
ImportError: No module named gi.repository
ešte doplnil, štruktúra widgetov nie je dvojurovnova ale je to dost rozvetvený strom, napríklad:
+ GtkWidget
+----GtkContainer
+----GtkBox
+----GtkVBox
+----GtkFileChooserWidget
a každý "parent" ma spravidla viac childov. V tomto príklade uvádzam stale len jeden child...
sice nový pointer je definovaný ako gtkwidget * , ale samotný widget sa tvorí funkciou v tomto prípade:
gtk_file_chooser_widget_new()
Tiskni
Sdílej: