docs: def create_tab_header_label(tab_name, icons):
      """Create the tab header labels for notebook tabs. If USE_ICONS_AS_TAB_LABELS is set to True in the gui_config,
      icons are used as headers. Otherwise, the titles of the tabs are rotated by 90 degrees.
  
      :param tab_name: The label text of the tab, written in small letters and separated by underscores, e.g. states_tree
      :param icons: A dict mapping each tab_name to its corresponding icon
      :return: The GTK Eventbox holding the tab label
      """
      tooltip_event_box = Gtk.EventBox()
      tooltip_event_box.set_tooltip_text(tab_name)
      tab_label = Gtk.Label()
      if global_gui_config.get_config_value('USE_ICONS_AS_TAB_LABELS', True):
          tab_label.set_markup('<span font_desc="%s %s">&#x%s;</span>' %
                              (constants.ICON_FONT,
                              constants.FONT_SIZE_BIG,
                              icons[tab_name]))
      else:
          tab_label.set_text(get_widget_title(tab_name))
          tab_label.set_angle(90)
      tab_label.show()
      tooltip_event_box.add(tab_label)
      tooltip_event_box.set_visible_window(False)
      tooltip_event_box.show()
      return tooltip_event_box