Microsoft Defender nově podporuje linuxové desktopy.
Oficiální Epic Games Launcher je v nové preview verzi poprvé dostupný i pro Linux (FAQ). Pracuje se na novém Easy Anti-Cheatu pro Linux (EAC Linux v2) a podpoře hry Fortnite na Linuxu.
Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.8. Novinky zahrnují lepší podporu vzdálené plochy, sdílení a nahrávání obrazovky a řadu drobností napříč uživatelským rozhraním (úplný seznam změn, shrnutí ve wiki).
Apple představil 7palcový displej Apple HomeView s podporou Apple Intelligence a Siri AI pro ovládání chytré domácnosti, novou řadu vybavení chytré domácnosti Apple Home Collection, další generaci HomePodu mini a novou Apple TV 4K. Apple HomeView není v Evropské unii v prodeji, jelikož umělá inteligence Siri v rámci systému iOS v EU momentálně není k dispozici. Apple spolupracuje s EU a snaží se najít cestu, jak situaci vyřešit.
KDE slaví 30 let. Přesně před 30 lety, 14. října 1996, poslal Matthias Ettrich do diskusní skupiny comp.os.linux.misc zprávu, která započala historii projektu KDE. Důležité milníky jsou zobrazeny na časové ose.
Byl vydán Mozilla Firefox 158.0. Stejně jako Chrome 155 s podporou JPEG XL (test). 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 158 bude brzy k dispozici také na Flathubu a Snapcraftu.
Svobodný kancelářský balík ONLYOFFICE (Wikipedie) byl vydán ve verzi 10.0. Jak online Docs, tak i offline Desktop Editors. Přehled novinek také na YouTube.
Mozilla představuje Firefox Enterprise určený jako podnikový prohlížeč pro organizace s přísnými požadavky na bezpečnost, správu a dodržování předpisů. S profesionální podporou. Dostupný je zatím ve Francii, Německu, Rakousku a Švýcarsku.
Kybernetický útok zasáhl nejméně 150 supermarketů Intermarché a několik prodejen řetězců Leclerc a Coopérative U. Chladicí jednotky napadených obchodních domů byly nastaveny na nepřetržité odmrazování a teplota v nich mnohdy vystouala až nad 50°C. Škody napáchané na chlazeném a mraženém zboží budou patrně dosahovat miliónů eur.
… více »Stát Kalifornie zažaloval výrobce 3D tiskových filamentů Polymaker. Vrchní soud San Diego County tvrdí, že firma propagací svých výrobků mezi příznivci 3D tištěných zbraní podporovala výrobu takzvaných 'ghost guns' (DIY zbraní) a že její PLA filament pro 3D tiskárny lze za těchto okolností považovat za součást určenou k výrobě střelné zbraně. Žaloba požaduje mimo jiné finanční sankce a soudní zákaz činnosti, Polymaker se hájí tím, že filament je běžný a sám o sobě legální produkt. Celý text žaloby (PDF na Google Drive).
Zdravím místní odborníky na PERL.
Mám velkou prosbu. Zasekl jsem se ve skriptíku, co si bastlím v GTK2 + PERL (pozn. pro Pythonýry: Ano vím, že PERL je pro masochisty, ale mně vyhovuje).
Potřeboval bych zjistit, které ToggleButtony z nabídky jsou stisknuty a které ne, ale zaboha nemůžu přijít na to, jakým způsobem. Prolezl jsem kdejaký manuál, ale nejsem z toho vůbec moudrý 
Zkoušel jsem tohle,
$button = Gtk2::ToggleButton->new("Buttonek 3");
$button->signal_connect(toggled=> sub {
my @widget = @_;
print "Čudl: @widget\n";
} );
abych zjistil, co z toho vlastně leze, ale to vyplivne akorát pro každý čudlík jiný HASH bez rozdílu, zda je "up" nebo "down"
$ktery = Gtk2::ToggleButton::get_active();ani
$ktery = Gtk2::ToggleButton::get_active($button);mi nefunguje a na žádný příklad jsem ani po celém dni gůglení nenarazil
Nemůžu přijít na to, co dělám špatně.
Našel by se někdo, kdo by mě nasměroval k řešení? Příklad s dvěma čudlíky by byl naprostou spásou. Děkuju moc.
gboolean gtk_toggle_button_get_active (GtkToggleButton *toggle_button);
Queries a GtkToggleButton and returns its current state. Returns TRUE if the toggle button is pressed in and FALSE if it is raised.
toggle_button: a GtkToggleButton.
Returns: a gboolean value
Z toho plyne, že si v nějaké smyčce prolezeš všechny toggle buttony a zjistíš si jejich stav pomocí výše zmíněné funkce. To, že se ti to chová tak jak popisuješ, je dobře, při toggled události vlezeš do obsluhy signálu a vypíšeš "instanci" widgetu, který zavolal obsluhu signálu, ale ne jeho stav. Pro zjištění stavu by se asi mělo použít (nejsem Perlista):
stav = @widget::get_active()
Především díky za konzultaci. Nicméně buď jsem to blbě pochopil nebo to nefunguje, resp. to buď do té proměnné $stav1 = Gtk::ToggleButton:get_active(button1) vloží nulu ať je ten čudl "up" nebo "down" nebo to v případě $stav = @widget::get_active() vyhodí chybu.
Já už jsem z toho fakt magor; prolezl jsem komplet manuál GTK k ToggleButtonům, ale zatímco se zbytkem widgetů jsem se jakžtakž popral, tak z tohohle jsem tak akorát zmatený
$b = Gtk2::ToggleButton->new("Foo");
...
if $b->get_active() {
print "Foo je down";
} else {
print "Foo je up";
}
Jo jo jo! Tisíceré díky! Pochopil si to naprosto přesně. Tohle přesně jsem potřeboval. Jen ještě malá podotázka -> pokud potřebuju testovat stav více ToggleButtonů, tak musí mít každý přiřazenou jinou proměnnou nebo to na základě toho generovaného hashe lze nějak odlišit?
Myslím jestli to jde jen takhle:
$button1 = Gtk2::ToggleButton->new("Button1");
...
$button2 = Gtk2::ToggleButton->new("Button2");
...
if ($button1->get_active()) ...
if ($button2->get_active()) ...
nebo i nějak takhle:
$button = Gtk2::ToggleButton->new("Button1");
...
$button = Gtk2::ToggleButton->new("Button2");
...
if ($button->get_active()) ... Můžu zjistit podle něčeho, co mi předá ta událost clicked/toggled, který to byl button?
Ta první varianta samozřejmě jede. Ta druhá mi vyhodí chybu, tak jsem chtěl jen vědět jestli dělám úplnou blbost nebo mám jen někde špatnou syntaxi atd. Ještě jednou díky za pomoc.
Odpovím si sám ... heuréka, díky všem výše uvedeným jsem se konečně dobral k cíli.
Stačí, když jako callback spojený s událostí toggled/clicked pošlete i nějaký text, např. takhle:
$button = Gtk2::ToggleButton->new('button 2');
$button->signal_connect(toggled => \&callback, 'button2');
a pak v proceduře callback testujete nejen staus widgetu, ale i text, který ten widget poslal:
sub callback
{
my ($widget, $data) = @_;
if ($widget->get_active()) {
print "$data je down\n";
} else {
print "$data je up\n";
}
}
aneb slovy klasika: "jak prosté milý Watsone...", jen kdybych se s tím nedusil skoro týden :-|
Tiskni
Sdílej: