Odpověď Evropské komise (pdf) k evropské občanské iniciativě Stop Destroying Videogames, jež je součástí hnutí Stop Killing Games: "Komise se domnívá, že v této fázi nemůže navrhnout právní povinnost zachovat hratelnost videoher poté, co přestaly být poskytovány komerčně. Důvodem jsou i stávající práva duševního vlastnictví. Podle autorského práva EU mají nositelé práv výlučná práva ke svým výtvorům. Kromě autorských práv mohou být
… více »Byl vydán Mozilla Firefox 152.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 152 bude brzy k dispozici také na Flathubu a Snapcraftu.
Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.7 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.
Hříčka xsnow, která na ploše spustí sněžení, je protestware. Pokud jste v Rusku (LANG=ru), zobrazuje ukrajinské vlajky.
UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala beta verzi Ubuntu Touch 24.04-2.0. Nová verze již počítá s výřezy pro fotoaparát (notch) a zaoblenými rohy displeje. Webový prohlížeče Morph přešel z Chromia 87 na Chromium 134. Do shellu Lomiri byl přidán editor snímků obrazovky.
V Praze probíhá Flock 2026, tj. konference pro přispěvatele a příznivce Fedory. Přednášky lze sledovat také na YouTube.
Node-RED (Wikipedie, GitHub), webová aplikace postavená na Node.js pro vizuální programování a propojování hardwarových zařízení, API a online služeb, byl vydán ve verzi 5.0. Přehled novinek v příspěvku na blogu.
Byla vydána nová verze 3.27.0 FreeRDP, tj. svobodné implementace protokolu RDP (Remote Desktop Protocol). Opraveno bylo 5 zranitelností.
Řídící výbor GCC schválil záměr do GCC začlenit backend WebAssembly.
Po 9 týdnech vývoje od vydání Linuxu 7.0 oznámil Linus Torvalds vydání Linuxu 7.1. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a časem také na Linux Kernel Newbies.
# unique_ID, Q#, Status Icon, Name, Size, Progress, Message, Seeders,
# Peers, DL, UL, ETA, Share
self.torrent_model = gtk.ListStore(int, gobject.TYPE_UINT,
gtk.gdk.Pixbuf, str, gobject.TYPE_UINT64, float, str, int, int,
int, int, int, int, gobject.TYPE_UINT64, float, float)
Rozhodně nechci psát, že vývojáři deluge použili špatné řešení, nevím jaké měli důvody to řešit zrovna takto a ani jsem pořádně neviděl zdrojáky. Ale přijde mi přirozenější v objektově orientovaném jazyce v TreeModel uchovávat přímo objekty. Jenže pak nastane problém s jejich zobrazováním. Typ objektu gobject.TYPE_* využívají třídy CellRenderer*, které jsou součástí GTK, ale pokud je typ nastaven na gobject.TYPE_PYOBJECT, CellRendererText si neporadí s __repr__. Navíc, často je potřeba vypsat v různých sloupcích různé atributy. Na irc.gnome.org#gtk mi poradili jednoduchý trik.
Pro jednoduchost - zobrazení textové informace o našem objektu: Vytvořit novou třídu zděděnou z CellRendererText, přidat novou "property", jejíž "setter" nastaví property "text" na požadovanou hodnotu. Zděděné metody z CellRendererText se pak už postarají o správne zobrazení.
class Nas: # ukazkova trida - v TreeView chceme zobrazit atribut "t"
def __init__(self):
self.t = "zobraz me"
class NasRenderer(gtk.CellRendererText):
# nas_helper(hodnota) nastavi property "text" naseho Rendereru na "hodnota.t"
# property "text" pote bude pouzita metody zdedenymy z CellRendererText k spravnemu
# zobrazeni textu
def nas_helper(object):
self.set_property("text",object.t)
# pri nastaveni property "nas" na "hodnota" pust "nas_helper(hodnota)"
nas = gobject.property(setter=nas_helper)
model = gtk.ListStore(gobject.TYPE_PYOBJECT)
view = gtk.TreeView()
view.set_model(model)
# prida sloupec, ktery bude zobrazen pomoci NasRenderer, pred zobrazenim
# se nastavi property (objektu NasRenderer) "nas" postupne (po radcich) na objekty v prvnim sloupci
view.append_column(gtk.TreeViewColumn("title",NasRenderer(),nas=0))
model.append((Nas(),)) # zkouska
Stejně je samozřejmě možné nastavovat i jiné properties "CellRendererů".
Jasně, jedná se o základní použití, ale snad to někomu pomůže.
Tiskni
Sdílej:
Přikláním se k pokračování. Základních příkladu GTK je hafo, ale v praxi narazíte na problémy, které se nikde neřeší. Pak si s tím lámete hlavu klidně týden.