diff --git a/libraries/ZWidget/include/zwidget/widgets/tabwidget/tabwidget.h b/libraries/ZWidget/include/zwidget/widgets/tabwidget/tabwidget.h index 357ef8f3b..1751cfc41 100644 --- a/libraries/ZWidget/include/zwidget/widgets/tabwidget/tabwidget.h +++ b/libraries/ZWidget/include/zwidget/widgets/tabwidget/tabwidget.h @@ -20,6 +20,11 @@ public: int AddTab(Widget* page, const std::string& label); int AddTab(Widget* page, const std::shared_ptr& icon, const std::string& label); + void SetTabText(int index, const std::string& text); + void SetTabText(Widget* page, const std::string& text); + void SetTabIcon(int index, const std::shared_ptr& icon); + void SetTabIcon(Widget* page, const std::shared_ptr& icon); + int GetCurrentIndex() const; Widget* GetCurrentWidget() const; @@ -50,6 +55,9 @@ public: int AddTab(const std::string& label); int AddTab(const std::shared_ptr& icon, const std::string& label); + void SetTabText(int index, const std::string& text); + void SetTabIcon(int index, const std::shared_ptr& icon); + int GetCurrentIndex() const; void SetCurrentIndex(int pageIndex); diff --git a/libraries/ZWidget/src/widgets/tabwidget/tabwidget.cpp b/libraries/ZWidget/src/widgets/tabwidget/tabwidget.cpp index d22b7e2e6..cbac877aa 100644 --- a/libraries/ZWidget/src/widgets/tabwidget/tabwidget.cpp +++ b/libraries/ZWidget/src/widgets/tabwidget/tabwidget.cpp @@ -30,6 +30,30 @@ int TabWidget::AddTab(Widget* page, const std::shared_ptr& icon, const st return pageIndex; } +void TabWidget::SetTabText(int index, const std::string& text) +{ + Bar->SetTabText(index, text); +} + +void TabWidget::SetTabText(Widget* page, const std::string& text) +{ + int index = GetPageIndex(page); + if (index != -1) + SetTabText(index, text); +} + +void TabWidget::SetTabIcon(int index, const std::shared_ptr& icon) +{ + Bar->SetTabIcon(index, icon); +} + +void TabWidget::SetTabIcon(Widget* page, const std::shared_ptr& icon) +{ + int index = GetPageIndex(page); + if (index != -1) + SetTabIcon(index, icon); +} + int TabWidget::GetCurrentIndex() const { return Bar->GetCurrentIndex(); @@ -113,6 +137,18 @@ int TabBar::AddTab(const std::shared_ptr& icon, const std::string& label) return pageIndex; } +void TabBar::SetTabText(int index, const std::string& text) +{ + Tabs[index]->SetText(text); + OnGeometryChanged(); +} + +void TabBar::SetTabIcon(int index, const std::shared_ptr& icon) +{ + Tabs[index]->SetIcon(icon); + OnGeometryChanged(); +} + int TabBar::GetCurrentIndex() const { return CurrentIndex; diff --git a/src/launcher/launcherwindow.cpp b/src/launcher/launcherwindow.cpp index ae0551ad9..55158ccc5 100644 --- a/src/launcher/launcherwindow.cpp +++ b/src/launcher/launcherwindow.cpp @@ -72,6 +72,8 @@ void LauncherWindow::Exit() void LauncherWindow::UpdateLanguage() { + // Pages->SetTabText(PlayGame, GStrings("PICKER_TAB_PLAY")); + // Pages->SetTabText(Settings, GStrings("PICKER_TAB_SETTINGS")); Banner->UpdateLanguage(); PlayGame->UpdateLanguage(); Settings->UpdateLanguage();