diff --git a/apps/openmw/mwgui/bookpage.cpp b/apps/openmw/mwgui/bookpage.cpp index d014910c74..2c58ca3b72 100644 --- a/apps/openmw/mwgui/bookpage.cpp +++ b/apps/openmw/mwgui/bookpage.cpp @@ -105,13 +105,13 @@ namespace MWGui Styles mStyles; MyGUI::IntRect mRect; - void setColour(int section, int line, int run, MyGUI::Colour colour) const override + void setColour(size_t section, size_t line, size_t run, const MyGUI::Colour& colour) const override { - if (section < 0 || section >= static_cast(mSections.size())) + if (section >= mSections.size()) return; - if (line < 0 || line >= static_cast(mSections[section].mLines.size())) + if (line >= mSections[section].mLines.size()) return; - if (run < 0 || run >= static_cast(mSections[section].mLines[line].mRuns.size())) + if (run >= mSections[section].mLines[line].mRuns.size()) return; mSections[section].mLines[line].mRuns[run].mStyle->mNormalColour = colour; diff --git a/apps/openmw/mwgui/bookpage.hpp b/apps/openmw/mwgui/bookpage.hpp index 34dae0cc0e..bb85130b7f 100644 --- a/apps/openmw/mwgui/bookpage.hpp +++ b/apps/openmw/mwgui/bookpage.hpp @@ -32,7 +32,7 @@ namespace MWGui virtual std::pair getSize() const = 0; /// Used to highlight journal indices - virtual void setColour(int section, int line, int run, MyGUI::Colour colour) const = 0; + virtual void setColour(size_t section, size_t line, size_t run, const MyGUI::Colour& colour) const = 0; virtual ~TypesetBook() = default; }; diff --git a/apps/openmw/mwgui/journalwindow.cpp b/apps/openmw/mwgui/journalwindow.cpp index e9c927cda4..8302f4faea 100644 --- a/apps/openmw/mwgui/journalwindow.cpp +++ b/apps/openmw/mwgui/journalwindow.cpp @@ -477,7 +477,7 @@ namespace } if (Settings::gui().mControllerMenus) - setIndexControllerFocus(mSelectedIndex, true); + setIndexControllerFocus(true); } void notifyJournal(MyGUI::Widget* _sender) @@ -489,7 +489,7 @@ namespace MWBase::Environment::get().getWindowManager()->updateControllerButtonsOverlay(); } - void addControllerButtons(Gui::MWList* _list, int _selectedIndex) + void addControllerButtons(Gui::MWList* _list, size_t _selectedIndex) { mButtons.clear(); for (size_t i = 0; i < _list->getItemCount(); i++) @@ -497,9 +497,8 @@ namespace MyGUI::Button* listItem = _list->getItemWidget(_list->getItemNameAt(i)); if (listItem) { - listItem->setTextColour(static_cast(mButtons.size()) == _selectedIndex - ? MWGui::journalHeaderColour - : MyGUI::Colour::Black); + listItem->setTextColour( + mButtons.size() == _selectedIndex ? MWGui::journalHeaderColour : MyGUI::Colour::Black); mButtons.push_back(listItem); } } @@ -700,21 +699,21 @@ namespace return &mControllerButtons; } - void setIndexControllerFocus(int index, bool focused) + void setIndexControllerFocus(bool focused) { int col, row; bool isRussian = (mEncoding == ToUTF8::WINDOWS_1251); if (isRussian) { // Cyrillic = 30 (10 + 10 + 10) - col = index / 10; - row = index % 10; + col = mSelectedIndex / 10; + row = mSelectedIndex % 10; } else { // Latin = 26 (13 + 13) - col = index / 13; - row = index % 13; + col = mSelectedIndex / 13; + row = mSelectedIndex % 13; } mTopicIndexBook->setColour(col, row, 0, focused ? MWGui::journalHeaderColour : MyGUI::Colour::Black); @@ -831,7 +830,7 @@ namespace } else if (mOptionsMode) { - setIndexControllerFocus(mSelectedIndex, false); + setIndexControllerFocus(false); if (isRussian) { // Cyrillic = 30 (10 + 10 + 10) @@ -854,7 +853,7 @@ namespace else mSelectedIndex--; } - setIndexControllerFocus(mSelectedIndex, true); + setIndexControllerFocus(true); setText(PageOneNum, 1); // Redraw the list } return true; @@ -871,7 +870,7 @@ namespace } else if (mOptionsMode) { - setIndexControllerFocus(mSelectedIndex, false); + setIndexControllerFocus(false); if (isRussian) { // Cyrillic = 30 (10 + 10 + 10) @@ -894,7 +893,7 @@ namespace else mSelectedIndex++; } - setIndexControllerFocus(mSelectedIndex, true); + setIndexControllerFocus(true); setText(PageOneNum, 1); // Redraw the list } return true; @@ -905,7 +904,7 @@ namespace notifyPrevPage(getWidget(PrevPageBTN)); else if (mOptionsMode && !mQuestMode && !mTopicsMode) { - setIndexControllerFocus(mSelectedIndex, false); + setIndexControllerFocus(false); if (isRussian) { // Cyrillic = 30 (10 + 10 + 10) @@ -916,7 +915,7 @@ namespace // Latin = 26 (13 + 13) mSelectedIndex = (mSelectedIndex + 13) % 26; } - setIndexControllerFocus(mSelectedIndex, true); + setIndexControllerFocus(true); setText(PageOneNum, 1); // Redraw the list } return true; @@ -927,7 +926,7 @@ namespace notifyNextPage(getWidget(NextPageBTN)); else if (mOptionsMode && !mQuestMode && !mTopicsMode) { - setIndexControllerFocus(mSelectedIndex, false); + setIndexControllerFocus(false); if (isRussian) { // Cyrillic = 30 (10 + 10 + 10) @@ -938,7 +937,7 @@ namespace // Latin = 26 (13 + 13) mSelectedIndex = (mSelectedIndex + 13) % 26; } - setIndexControllerFocus(mSelectedIndex, true); + setIndexControllerFocus(true); setText(PageOneNum, 1); // Redraw the list } return true; @@ -959,14 +958,14 @@ namespace return false; } - void setControllerFocusedQuest(int index) + void setControllerFocusedQuest(size_t index) { - int listSize = static_cast(mButtons.size()); - if (mSelectedQuest >= 0 && mSelectedQuest < listSize) + size_t listSize = mButtons.size(); + if (mSelectedQuest < listSize) mButtons[mSelectedQuest]->setTextColour(MyGUI::Colour::Black); mSelectedQuest = index; - if (mSelectedQuest >= 0 && mSelectedQuest < listSize) + if (mSelectedQuest < listSize) { mButtons[mSelectedQuest]->setTextColour(MWGui::journalHeaderColour); @@ -977,7 +976,7 @@ namespace else { int offset = 0; - for (int i = 0; i < mSelectedQuest - 3; i++) + for (int i = 0; i < static_cast(mSelectedQuest) - 3; i++) offset += mButtons[i]->getHeight() + 3; list->setViewOffset(-offset); } diff --git a/apps/openmw/mwgui/journalwindow.hpp b/apps/openmw/mwgui/journalwindow.hpp index e324133b44..4a1f686ff1 100644 --- a/apps/openmw/mwgui/journalwindow.hpp +++ b/apps/openmw/mwgui/journalwindow.hpp @@ -33,10 +33,10 @@ namespace MWGui std::string_view getWindowIdForLua() const override { return "Journal"; } std::vector mButtons; - int mSelectedQuest = 0; - int mSelectedIndex = 0; - void setIndexControllerFocus(int index, bool focused); - void setControllerFocusedQuest(int index); + size_t mSelectedQuest = 0; + size_t mSelectedIndex = 0; + void setIndexControllerFocus(bool focused); + void setControllerFocusedQuest(size_t index); }; }