summaryrefslogtreecommitdiffstats
path: root/src/ui/control.cpp
diff options
context:
space:
mode:
authorPiotr Dziwinski <piotrdz@gmail.com>2013-12-03 00:11:26 +0100
committerPiotr Dziwinski <piotrdz@gmail.com>2013-12-04 00:15:39 +0100
commit8deb1305726966b3b583865dec1ba7ba1327d8cb (patch)
tree291627fbe0123dc35c015b1f398585f204afe8ea /src/ui/control.cpp
parentdae8d8738908a65a4ee4ef14d88681e196825126 (diff)
downloadcolobot-8deb1305726966b3b583865dec1ba7ba1327d8cb.tar.gz
colobot-8deb1305726966b3b583865dec1ba7ba1327d8cb.tar.bz2
colobot-8deb1305726966b3b583865dec1ba7ba1327d8cb.zip
Changed char[] to std::string in restext
Experimental changes
Diffstat (limited to 'src/ui/control.cpp')
-rw-r--r--src/ui/control.cpp26
1 files changed, 18 insertions, 8 deletions
diff --git a/src/ui/control.cpp b/src/ui/control.cpp
index bed84dd..501350e 100644
--- a/src/ui/control.cpp
+++ b/src/ui/control.cpp
@@ -57,9 +57,6 @@ CControl::~CControl()
bool CControl::Create(Math::Point pos, Math::Point dim, int icon, EventType eventType)
{
- char text[200];
- std::string str_text;
-
if ( eventType == EVENT_NULL )
eventType = GetUniqueEventType();
@@ -72,17 +69,17 @@ bool CControl::Create(Math::Point pos, Math::Point dim, int icon, EventType even
pos.y = m_pos.y + m_dim.y;
GlintCreate(pos);
+ std::string text;
GetResource(RES_EVENT, m_eventType, text);
- str_text = std::string(text);
- auto p = str_text.find("\\");
- if ( p == std::string::npos )
+ auto p = text.find("\\");
+ if (p == std::string::npos)
{
if ( icon != -1 )
- m_tooltip = str_text;
+ m_tooltip = text;
}
else
{
- m_tooltip = str_text.substr(p + 1);
+ m_tooltip = text.substr(p + 1);
}
return true;
@@ -837,5 +834,18 @@ bool CControl::Detect(Math::Point pos)
pos.y <= m_pos.y + m_dim.y );
}
+std::string CControl::GetResourceName(EventType eventType)
+{
+ std::string name;
+ GetResource(RES_EVENT, eventType, name);
+ auto index = name.find('\\');
+ if (index != std::string::npos)
+ {
+ name = name.substr(0, index);
+ }
+ return name;
+}
+
+
}