# namespace hiro::gui

## Overview

Control structures for customization and automatic generation of GUI. More…

    namespace gui {

    // classes

    class Button;
    class Checkbox;
    class CheckboxList;
    class Droplist;
    class Element;
    class Label;

    template <typename T, typename C>
    class LinkedElement;

    class NumericFloat;
    class NumericInt;
    class Panel;
    class SlidingFloat;
    class SlidingInt;

    template <typename C>
    class TElement;

    // global functions

    void AddColorGui(hiro::GuiGenerator& gui, cogs::Color3f& color);
    void AddMaterialGui(hiro::GuiGenerator& gui, hiro::shader::Material& material, bool include_color = true);
    hiro::gui::Droplist* AddColorMapSelector(hiro::GuiGenerator& gui, const std::string& title = "Color map");

    } // namespace gui

## Detailed Documentation

Control structures for customization and automatic generation of GUI.

### Global Functions

    void AddColorGui(hiro::GuiGenerator& gui, cogs::Color3f& color)

Adds color selection elements to gui. Object color should not be destroyed while gui exists.

    void AddMaterialGui(hiro::GuiGenerator& gui, hiro::shader::Material& material, bool include_color = true)

Adds material parameters to gui. Object color should not be destroyed while gui exists.

    hiro::gui::Droplist* AddColorMapSelector(hiro::GuiGenerator& gui, const std::string& title = "Color map")

Adds droplist control iwth items corresponding to cogs::ColorMap elements.