summaryrefslogtreecommitdiff
path: root/src/gui/widgets
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2012-08-17 16:34:36 +0300
committerAndrei Karas <akaras@inbox.ru>2012-08-17 16:34:36 +0300
commitc6c4eef4e49bb4de90845408af9f642a1a4e224b (patch)
tree81d192e85b3c075cb2e52671bea4c3c0499dc3f2 /src/gui/widgets
parent093e392dd84c920d26bca17d48ac6611393d087c (diff)
downloadplus-c6c4eef4e49bb4de90845408af9f642a1a4e224b.tar.gz
plus-c6c4eef4e49bb4de90845408af9f642a1a4e224b.tar.bz2
plus-c6c4eef4e49bb4de90845408af9f642a1a4e224b.tar.xz
plus-c6c4eef4e49bb4de90845408af9f642a1a4e224b.zip
Improve size calculations.
Diffstat (limited to 'src/gui/widgets')
-rw-r--r--src/gui/widgets/browserbox.cpp9
-rw-r--r--src/gui/widgets/emoteshortcutcontainer.cpp7
-rw-r--r--src/gui/widgets/itemcontainer.cpp2
-rw-r--r--src/gui/widgets/layout.cpp8
-rw-r--r--src/gui/widgets/progressindicator.cpp2
-rw-r--r--src/gui/widgets/tabbedarea.cpp7
-rw-r--r--src/gui/widgets/tablemodel.cpp2
-rw-r--r--src/gui/widgets/textbox.cpp5
-rw-r--r--src/gui/widgets/textfield.cpp4
9 files changed, 25 insertions, 21 deletions
diff --git a/src/gui/widgets/browserbox.cpp b/src/gui/widgets/browserbox.cpp
index 534bd1d19..cf2a9ea88 100644
--- a/src/gui/widgets/browserbox.cpp
+++ b/src/gui/widgets/browserbox.cpp
@@ -120,6 +120,7 @@ void BrowserBox::addRow(const std::string &row, bool atTop)
// Check for links in format "@@link|Caption@@"
idx1 = tmp.find("@@");
+ const int sz = static_cast<int>(mTextRows.size());
while (idx1 != std::string::npos)
{
size_t idx2 = tmp.find("|", idx1);
@@ -129,7 +130,7 @@ void BrowserBox::addRow(const std::string &row, bool atTop)
break;
bLink.link = tmp.substr(idx1 + 2, idx2 - (idx1 + 2));
bLink.caption = tmp.substr(idx2 + 1, idx3 - (idx2 + 1));
- bLink.y1 = static_cast<int>(mTextRows.size()) * font->getHeight();
+ bLink.y1 = sz * font->getHeight();
bLink.y2 = bLink.y1 + font->getHeight();
newRow += tmp.substr(0, idx1);
@@ -224,19 +225,19 @@ void BrowserBox::addRow(const std::string &row, bool atTop)
i != i_end; ++ i)
{
std::string tempRow = *i;
- for (unsigned int j = 0; j < tempRow.size(); j++)
+ for (unsigned int j = 0, sz = tempRow.size(); j < sz; j++)
{
std::string character = tempRow.substr(j, 1);
x += font->getWidth(character);
nextChar = j + 1;
// Wraping between words (at blank spaces)
- if (nextChar < tempRow.size() && tempRow.at(nextChar) == ' ')
+ if (nextChar < sz && tempRow.at(nextChar) == ' ')
{
int nextSpacePos = static_cast<int>(
tempRow.find(" ", (nextChar + 1)));
if (nextSpacePos <= 0)
- nextSpacePos = static_cast<int>(tempRow.size()) - 1;
+ nextSpacePos = static_cast<int>(sz) - 1;
unsigned nextWordWidth = font->getWidth(
tempRow.substr(nextChar,
diff --git a/src/gui/widgets/emoteshortcutcontainer.cpp b/src/gui/widgets/emoteshortcutcontainer.cpp
index 17d825909..2347edd0c 100644
--- a/src/gui/widgets/emoteshortcutcontainer.cpp
+++ b/src/gui/widgets/emoteshortcutcontainer.cpp
@@ -131,17 +131,18 @@ void EmoteShortcutContainer::draw(gcn::Graphics *graphics)
graphics->setColor(getForegroundColor());
g->drawText(key, emoteX + 2, emoteY + 2, gcn::Graphics::LEFT);
}
+ unsigned sz = mEmoteImg.size();
for (unsigned i = 0; i < mMaxItems; i++)
{
- if (i < mEmoteImg.size() && mEmoteImg[i] && mEmoteImg[i]->sprite)
+ if (i < sz && mEmoteImg[i] && mEmoteImg[i]->sprite)
{
mEmoteImg[i]->sprite->draw(g, (i % mGridWidth) * mBoxWidth + 2,
(i / mGridWidth) * mBoxHeight + 10);
}
}
- if (mEmoteMoved && mEmoteMoved < static_cast<unsigned>(
- mEmoteImg.size()) + 1 && mEmoteMoved > 0)
+ if (mEmoteMoved && mEmoteMoved < static_cast<unsigned>(sz) + 1
+ && mEmoteMoved > 0)
{
// Draw the emote image being dragged by the cursor.
const EmoteSprite* sprite = mEmoteImg[mEmoteMoved - 1];
diff --git a/src/gui/widgets/itemcontainer.cpp b/src/gui/widgets/itemcontainer.cpp
index e315a336c..f16852673 100644
--- a/src/gui/widgets/itemcontainer.cpp
+++ b/src/gui/widgets/itemcontainer.cpp
@@ -551,7 +551,7 @@ void ItemContainer::updateMatrix()
mShowMatrix[idx] = -1;
}
- for (unsigned idx = 0; idx < sortedItems.size(); idx ++)
+ for (size_t idx = 0, sz = sortedItems.size(); idx < sz; idx ++)
delete sortedItems[idx];
}
diff --git a/src/gui/widgets/layout.cpp b/src/gui/widgets/layout.cpp
index 990937e06..b7856da81 100644
--- a/src/gui/widgets/layout.cpp
+++ b/src/gui/widgets/layout.cpp
@@ -338,6 +338,8 @@ void LayoutArray::reflow(int nx, int ny, int nw, int nh)
std::vector<int> widths = getSizes(0, nw);
std::vector<int> heights = getSizes(1, nh);
+ const int szW = static_cast<int>(widths.size());
+ const int szH = static_cast<int>(heights.size());
int y = ny;
for (int gridY = 0; gridY < gridH; ++gridY)
{
@@ -348,10 +350,8 @@ void LayoutArray::reflow(int nx, int ny, int nw, int nh)
if (cell && cell->mType != LayoutCell::NONE)
{
int dx = x, dy = y, dw = 0, dh = 0;
- align(dx, dw, 0, *cell, &widths[gridX],
- static_cast<int>(widths.size() - gridX));
- align(dy, dh, 1, *cell, &heights[gridY],
- static_cast<int>(heights.size() - gridY));
+ align(dx, dw, 0, *cell, &widths[gridX], szW - gridX);
+ align(dy, dh, 1, *cell, &heights[gridY], szH - gridY);
cell->reflow(dx, dy, dw, dh);
}
x += widths[gridX] + mSpacing;
diff --git a/src/gui/widgets/progressindicator.cpp b/src/gui/widgets/progressindicator.cpp
index 6adb5a2fa..681da7ae4 100644
--- a/src/gui/widgets/progressindicator.cpp
+++ b/src/gui/widgets/progressindicator.cpp
@@ -42,7 +42,7 @@ ProgressIndicator::ProgressIndicator()
Animation *anim = new Animation;
if (images)
{
- for (ImageSet::size_type i = 0; i < images->size(); ++i)
+ for (ImageSet::size_type i = 0, sz = images->size(); i < sz; ++i)
anim->addFrame(images->get(i), 100, 0, 0, 100);
mIndicator = new SimpleAnimation(anim);
diff --git a/src/gui/widgets/tabbedarea.cpp b/src/gui/widgets/tabbedarea.cpp
index 96e81b534..43e829a4e 100644
--- a/src/gui/widgets/tabbedarea.cpp
+++ b/src/gui/widgets/tabbedarea.cpp
@@ -342,7 +342,7 @@ void TabbedArea::updateTabsWidth()
void TabbedArea::updateVisibleTabsWidth()
{
mVisibleTabsWidth = 0;
- for (unsigned int i = mTabScrollIndex; i < mTabs.size(); ++i)
+ for (size_t i = mTabScrollIndex, sz = mTabs.size(); i < sz; ++i)
{
if (mTabs[i].first)
mVisibleTabsWidth += mTabs[i].first->getWidth();
@@ -352,14 +352,15 @@ void TabbedArea::updateVisibleTabsWidth()
void TabbedArea::adjustTabPositions()
{
int maxTabHeight = 0;
- for (unsigned i = 0; i < mTabs.size(); ++i)
+ size_t sz = mTabs.size();
+ for (size_t i = 0; i < sz; ++i)
{
if (mTabs[i].first && mTabs[i].first->getHeight() > maxTabHeight)
maxTabHeight = mTabs[i].first->getHeight();
}
int x = mArrowButton[0]->isVisible() ? mArrowButton[0]->getWidth() : 0;
- for (unsigned i = mTabScrollIndex; i < mTabs.size(); ++i)
+ for (size_t i = mTabScrollIndex; i < sz; ++i)
{
gcn::Tab* tab = mTabs[i].first;
if (!tab)
diff --git a/src/gui/widgets/tablemodel.cpp b/src/gui/widgets/tablemodel.cpp
index bc5d2ead6..04f81fdd6 100644
--- a/src/gui/widgets/tablemodel.cpp
+++ b/src/gui/widgets/tablemodel.cpp
@@ -163,7 +163,7 @@ int StaticTableModel::getWidth() const
{
int width = 0;
- for (unsigned int i = 0; i < mWidths.size(); i++)
+ for (size_t i = 0, sz = mWidths.size(); i < sz; i++)
width += mWidths[i];
return width;
diff --git a/src/gui/widgets/textbox.cpp b/src/gui/widgets/textbox.cpp
index cd5b4bf99..048051bb9 100644
--- a/src/gui/widgets/textbox.cpp
+++ b/src/gui/widgets/textbox.cpp
@@ -191,9 +191,10 @@ void TextBox::keyPressed(gcn::KeyEvent& keyEvent)
{
++ mCaretRow;
- if (mCaretRow >= static_cast<int>(mTextRows.size()))
+ const int sz = static_cast<int>(mTextRows.size());
+ if (mCaretRow >= sz)
{
- mCaretRow = static_cast<int>(mTextRows.size()) - 1;
+ mCaretRow = sz - 1;
if (mCaretRow < 0)
mCaretRow = 0;
diff --git a/src/gui/widgets/textfield.cpp b/src/gui/widgets/textfield.cpp
index d5fb58cb9..79c48beac 100644
--- a/src/gui/widgets/textfield.cpp
+++ b/src/gui/widgets/textfield.cpp
@@ -241,7 +241,7 @@ void TextField::keyPressed(gcn::KeyEvent &keyEvent)
case 6: // Ctrl+f
{
- unsigned sz = static_cast<unsigned>(mText.size());
+ const unsigned sz = static_cast<unsigned>(mText.size());
while (mCaretPosition < sz)
{
++mCaretPosition;
@@ -356,7 +356,7 @@ void TextField::keyPressed(gcn::KeyEvent &keyEvent)
case Input::KEY_GUI_RIGHT:
{
consumed = true;
- unsigned sz = static_cast<unsigned>(mText.size());
+ const unsigned sz = static_cast<unsigned>(mText.size());
while (mCaretPosition < sz)
{
++mCaretPosition;