Nepedia
Back to Discover
Fluent Reader
💻

GTK

technology Maturity 7-9 war conflict Next article →

This article covers sensitive topics: war_conflict. Parents can manage visibility in Parental Controls.

GTK is a special toolkit used to build graphical user interfaces. A graphical user interface is the set of visual parts you see on a screen.

The GTK toolkit
The GTK toolkit

These parts are called widgets. They include things like buttons, menus, and text boxes. These widgets help people talk to their computers. GTK is free and open-source software. This means anyone can use it or help improve it. It is mostly used for Linux and the GNOME desktop environment.

GIMP 2.8 in Single Window Mode running on Ubuntu
GIMP 2.8 in Single Window Mode running on Ubuntu

To make a program look right, GTK follows a specific way of working. It uses a library of graphical control elements. Version 3.22.16 of the toolkit has 186 active widgets. It also has 36 widgets that are no longer used.

GTK+ software architecture
GTK+ software architecture

The toolkit is written in a programming language called C. It uses a system called GObject to organize its parts. To draw images on the screen, GTK uses tools like Vulkan or GL. It can even change how widgets look using different display engines. This helps the program match the look of your computer.

GTK has a long history that began with a drawing tool. It was first made for the GIMP program. A person named Peter Mattis started writing it to replace an older toolkit. He called it the GIMP Toolkit. Later, it was rewritten to be object-oriented. This change led to it being called GTK+.

GDK software architecture
GDK software architecture

The GNOME Foundation later took over its maintenance. In February 2019, the team dropped the plus sign from the name. Now, it is simply known as GTK. The team releases new versions on a regular basis.

There are many important facts about how GTK runs on different computers. It uses things called backends to show applications on different systems. For example, it uses Wayland or X11 on Unix-like systems. It uses Win32 to run on Microsoft Windows. It also uses Quartz to work on macOS.

Free and open-source-software display servers and UI toolkits
Free and open-source-software display servers and UI toolkits

Developers can also use a tool called GtkBuilder. This allows them to design interfaces using an XML file. This means they can design the look without writing lots of code. This makes the design separate from the programming language.

Many famous programs you might know use GTK every day. The Mozilla Firefox web browser is a great example. The LibreOffice office suite also uses this toolkit.

Other tools like the GIMP graphics editor and the Inkscape editor use it too. Even the Transmission BitTorrent client uses GTK. If you use a desktop like Cinnamon or MATE, you are seeing GTK in action. It helps keep these different programs looking and working well together. It is a very important part of the digital world.

435 words

Where will your curiosity go next?

Keep exploring at your chosen reading level.

🖼️ Images & Media (7)
File:The GTK toolkit.png
The GTK toolkit.png
File:GTK+ software architecture.svg
GTK+ software architecture.svg
File:GDK software architecture.svg
GDK software architecture.svg
File:Camabalache's interface.png
Camabalache's interface.png
File:Gtk-inspector.png
Gtk-inspector.png
File:Free and open-source-software display servers and UI toolkits.svg
Free and open-source-software display...
File:GIMP 2.8 in Single Window Mode running on Ubuntu.png
GIMP 2.8 in Single Window Mode running on...
More to explore

🔬 Go deeper

More advanced topics to explore

🪜 Step back

Simpler topics to build understanding

What is Nepedia?

A free, ad-free encyclopedia for children. Every article is written at five reading levels, so the same page works for a five-year-old and a fifteen-year-old — use the level switcher above to see this one change. No account needed to read.