| Top |  |  |  |  | 
    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkContainer
                ╰── GtkBin
                    ├── GtkWindow
                    ├── GtkActionBar
                    ├── GtkAlignment
                    ├── GtkComboBox
                    ├── GtkFrame
                    ├── GtkButton
                    ├── GtkMenuItem
                    ├── GtkEventBox
                    ├── GtkExpander
                    ├── GtkFlowBoxChild
                    ├── GtkHandleBox
                    ├── GtkListBoxRow
                    ├── GtkToolItem
                    ├── GtkOverlay
                    ├── GtkScrolledWindow
                    ├── GtkPopover
                    ├── GtkRevealer
                    ├── GtkSearchBar
                    ├── GtkStackSidebar
                    ╰── GtkViewport
The GtkBin widget is a container with just one child. It is not very useful itself, but it is useful for deriving subclasses, since it provides common code needed for handling a single child widget.
Many GTK+ widgets are subclasses of GtkBin, including GtkWindow, GtkButton, GtkFrame, GtkHandleBox or GtkScrolledWindow.