If-Koubou

Kā KDE programmas spēj palaist GNOME ietvaros?

Kā KDE programmas spēj palaist GNOME ietvaros? (Kā)

Vizuālās atšķirības starp GNOME un KDE darbvirsmas vidēm ir viegli redzamas, tādēļ, kā var palaist lietotni no vienas zem otras bez problēmām? Šodienas SuperUser Q & A ziņai ir atbilde.

Šodienas jautājumu un atbilžu sesija mums priecājas par SuperUser - Stack Exchange dalību, kas ir kopienas vadīta Q & A tīmekļa vietņu grupa.

Klipkopas "Shaking Hands" pieklājīgi no Clker.com.

Jautājums

SuperUser lasītājs LeNoob vēlas uzzināt, kā KDE programmas var darboties GNOME ietvaros:

Ja GNOME izmanto GTK + un KDE izmanto Qt, kā darbojas KDE programmas saskaņā ar GNOME?

Kas ļauj KDE lietojumprogrammām gludi darboties GNOME ietvaros?

Atbilde

SuperUser ieguldītājs gravitāte ir atbilde mums:

Tas ir iespējams, jo šīs darbvirsmas vides izmanto to pašu grafikas sistēmu X11. Visas grafiskās programmas runā tikai ar X11 protokolu ar X serveri (parasti Xorg), nosūta komandas, lai to izdarītu vai saņemtu ievades notikumus (peli, tastatūru utt.).

Katrs UI rīku komplekts, piemēram, GTK vai Qt, ir bibliotēku veidā, uz kuriem grafiskā programma attiecas. Izmantos GNOME rakstītu programmu libgdk un libgtk, un KDE programma izmantos libQtCore ar libQtGui. Abi rīku komplekti vienkārši izmanto tās pašas X11 funkcijas, lai zīmētu visu attiecīgajā programmas logā.

Lielākā daļa mūsdienu rīku, piemēram, GTK, Qt vai EFL, veic visu zīmējumu paši un vienkārši nosūta gatavā attēla visu logu virs X11. Vecāki rīkkopa, piemēram, Xaw vai Motif, vietā nosūta komandas, lai pievērstu primitīvas, piemēram, līnijas vai taisnstūros, un X serveris dara visu renderēšanu.

X11 protokols attiecas arī uz logu pārvaldību, tāpēc katrai darbvirsmas videi būs "logu pārvaldnieks" programma, kas izveido logu rāmjus ("rotājumi"), ļauj pārvietot un mainīt logus utt. Mūsdienu "salikšanas" logu vadītāji faktiski pārņem Xorg darbu, veidojot visus logus uz gala ekrāna attēlu, ļaujot pievienot lietas, piemēram, ēnas vai efektus.

Tastatne vienā un tajā pašā grafikas sistēmā vienkāršai "savietojamībai" ir lieliska lieta, un lieliski, ja vēlaties, lai visas jūsu iecienītākās lietotnes darbotos vienā un tajā pašā darbvirsmas vidē!

Vai kaut ko pievienot paskaidrojumam? Skatieties komentāros. Vēlaties lasīt citas atbildes no citiem tehnoloģiju savvy Stack Exchange lietotājiem? Šeit skatiet pilnu diskusiju pavedienu.