Multipatformní renderovací jádro webového prohlížeče Servo je na crates.io. S vydáním verze 0.1.0 (LTS).
Nadace FreeBSD Foundation před týdnem oznámila projekt Laptop Integration Testing. Vyzvala dobrovolníky, aby pomocí nástroje otestovali podporu FreeBSD na svých zařízeních a výsledky odeslali vývojářům. Vznikla stránka Nejlepší notebooky pro FreeBSD.
Na začátku srpna vstoupí v účinnost nová evropská pravidla transparentnosti pro umělou inteligenci (AI). Zavádějí povinnost jakýkoli AI obsah označit, informovat o takzvaných deepfakes a upozornit uživatele, že komunikuje s umělou inteligencí. Cílem opatření je omezit šíření manipulativního či klamavého obsahu, zvýšit důvěru v digitální prostředí a chránit uživatele.
Connor Byrne z USA používal pro přihlašování na svůj iPhone 13 s iOS 18 heslo obsahující háček. Po aktualizaci na iOS 26.4 se už ale do telefonu nepřihlásí. Při přihlašování nelze tento háček zadat. Apple jej prostě odstranil [The Register].
Linus Torvalds vydal jádro Linux 7.0. Podrobný výčet změn je ke zhlédnutí na stránce Kernel Newbies, stručné výběry v LWN (část první, druhá).
Na čem aktuálně pracují vývojáři GNOME? Pravidelný přehled novinek v Týden v GNOME. Vypíchnout lze novou verzi 2026.1 přehrávače hudby Amberol (Flathub).
Byla vydána verze 12.0 s kódovým jménem Ecne linuxové distribuce Trisquel GNU/Linux. Založena je na Ubuntu 24.04 LTS a podporována bude do roku 2029. Trisquel patří mezi svobodné distribuce doporučované Nadací pro svobodný software (FSF).
Open-source citační manažer Zotero (Wikipedie, GitHub) byl vydán v nové major verzi 9. Přehled novinek v příspěvku na blogu.
Libre Graphics Meeting 2026, tj. čtyřdenní konference a setkání vývojářů a uživatelů svobodných a otevřených grafických softwarů, proběhne od 22. do 25. dubna v Norimberku. Dění lze sledovat na Mastodonu.
Vývojář Alexandre Gomes Gaigalas na GitHubu zveřejnil c89cc.sh, parser a kompilátor jazyka C89 napsaný v pouhém jediném skriptu o přibližně 8000 řádcích čistého bashe (bez dalších externích závislostí), který generuje ELF64 binárky pro x86-64. Jedná se o velmi jednoduchý kompilátor, který nepodporuje direktivy #include a dokonce ani funkci printf (lze použít puts), všechny dostupné deklarace lze nalézt v proměnné _BUILTIN_LIBC na konci skriptu. Skript je volně dostupný pod ISC licencí.
#include QApplication
#include QPushButton
#include QLabel
#include QHBoxLayout //slouží k zarovnání prvků, snažší než zadávat souřadnice
#include QCheckBox
class trida_check : public QWidget
{
public:
/*
* Jako argument konstruktoru se předává rodič,
* v případě že se jedná o hlavní okno tak žádný
* rodič, v našem případě 0
*/
trida_check(QWidget* parent = 0);
};
trida_check::trida_check(QWidget*){
QHBoxLayout* radek = new QHBoxLayout(this);
QPushButton* tlacitko = new QPushButton(tr("Check this motherfucker!"));
QCheckBox* zaskrtavaci_pole = new QCheckBox();
//tlačítko lze zamáčknout
tlacitko->setCheckable(true);
//propojí objekty, třetí parametr je ukazatel na instanci objektu Qt, jehož slot se má spustit v reakci na signál.
connect(tlacitko, SIGNAL(clicked()), zaskrtavaci_pole, SLOT(toogle()));
connect(zaskrtavaci_pole, SIGNAL(clicked()), tlacitko, SLOT(toogle()));
//přidá do lajny naše objekty
radek->addWidget(tlacitko);
radek->addWidget(zaskrtavaci_pole);
//použije daný řádek (layout)
setLayout(radek);
}
int main(int argc, char** argv)
{
//instance třídy Qapplication, předávají se argumenty shellu, musí být v každém GUI programu
QApplication app(argc, argv);
QLabel win("Hello fucking world!"); //instance popisku
QPushButton tlacitko("&Quit"); //instance buttonou
//qApp, ukazatel na třídu QApplication, connect, přetížená metoda na propojení třídy qApp a buttonu
//QObject:: se pak může i vynechat z důvodu častého výskytu
QObject::connect(&tlacitko, SIGNAL(clicked()), qApp, SLOT(quit()));
/*
* Signál je zvláštní metoda, která nemá tělo a nevrací hodnotu, má pouze prototyp.
* Slot je metoda, která se zavolá v reakci na nějaký signál
*/
trida_check objekt;
//zobrazení okna, pzn...nečekaně
tlacitko.show();
win.show();
return app.exec(); //vracení výsledku metody app
}
Řešení dotazu:
Tiskni
Sdílej: