Hello, I wanted to change the color of my main tab, it didn't work then I wanted to add a text field, same..
When I comment the panels[1].SetColor, no color is set, but when I don't comment it, the color is set for all tabs.
So today I'm asking for your help to fix both, or are they broken(not working) ? Not sure..
Screenshot
Code:
#include "UltraEngine.h"
using namespace UltraEngine;
int main(int argc, const char* argv[])
{
auto displays = GetDisplays();
auto window = CreateWindow("Joked", 0, 0, 800, 600, displays[0], WINDOW_TITLEBAR | WINDOW_CENTER);
auto ui = CreateInterface(window);
auto sz = ui->root->GetSize();
auto tabber = CreateTabber(10, 10, sz.x - 20, sz.y - 20, ui->root);
tabber->AddItem("Main", true);
tabber->AddItem("Settings");
std::array<std::shared_ptr<Widget>, 3> panels;
sz = tabber->ClientSize();
panels[0] = CreatePanel(0, 0, sz.x, sz.y, tabber);
panels[0]->SetColor(54, 57, 63, 1);
panels[1] = CreatePanel(0, 0, sz.x, sz.y, tabber);
panels[1]->SetColor(0.1, 0.15, 0.1, 1);
panels[1]->Hidden(true);
auto textfield = CreateTextField(20, 20, 300, 32, panels[0], TEXTFIELD_DEFAULT);
textfield->SetText("Here is some text!");
textfield->SelectText(0, textfield->text.size());
//auto scriptEditing = CreateTextField(20, 20, 400,40, ui->root);
while (true)
{
const Event ev = WaitEvent();
switch (ev.id)
{
case EVENT_WIDGETACTION:
Print("Item " + String(ev.data) + " action");
break;
case EVENT_WIDGETSELECT:
if (ev.source == tabber)
{
for (int n = 0; n < tabber->items.size(); ++n)
{
n == ev.data ? panels[n]->Hidden(false) : panels[n]->Hidden(true);
}
}
break;
break;
case EVENT_QUIT:
case EVENT_WINDOWCLOSE:
return 0;
break;
default: break;
}
}
return 0;
}
Regards.