78 void* value =
const_cast<void*
>(valueCopy);
96 sp =
static_cast<std::string*
>(value);
106 sp =
static_cast<std::string*
>(value);
114 if(checkNumberAsString(value))
117 sp =
static_cast<std::string*
>(value);
120 m_dValue = string2Double(*sp);
126 dValue =
static_cast<double*
>(value);
135 if(checkNumberAsString(value))
138 sp =
static_cast<std::string*
>(value);
141 m_fValue = string2Float(*sp);
147 fValue =
static_cast<float*
>(value);
156 if(checkNumberAsString(value))
159 sp =
static_cast<std::string*
>(value);
162 m_lValue = string2Long(*sp);
168 lValue =
static_cast<long*
>(value);
177 if(checkNumberAsString(value))
180 sp =
static_cast<std::string*
>(value);
183 m_iValue = string2Int(*sp);
189 iValue =
static_cast<int*
>(value);
198 bValue =
static_cast<bool*
>(value);
207 sp =
static_cast<std::string*
>(value);
220 m_colorValue = *colorValue;
228 catch (std::exception
const& e)
231 std::cerr << e.what() <<
"Failed - te::layout::Variant: convert to " << s_type << std::endl;
279 m_sValue =
"unknown";
291 std::string s_convert;
292 std::stringstream ss;
300 if(m_sValue.compare(
"unknown") != 0)
302 s_convert = m_sValue;
304 else if(m_dValue != -1000.)
307 s_convert = ss.str();
309 else if(m_iValue != -1000)
312 s_convert = ss.str();
314 else if(m_lValue != -1000)
317 s_convert = ss.str();
319 else if(m_fValue != -1000.)
322 s_convert = ss.str();
341 void* value =
const_cast<void*
>(valueCopy);
349 sp =
static_cast<std::string*
>(value);
353 std::string res = (std::string)*sp;
357 std::istringstream buffer(res);
371 catch(
const std::exception& e)
386 str.erase( str.find_last_not_of(
" \f\n\r\t\v" ) + 1 );
389 std::istringstream ss( str );
395 throw std::runtime_error(
"Failed: convert string to double.");
408 str.erase( str.find_last_not_of(
" \f\n\r\t\v" ) + 1 );
411 std::istringstream ss( str );
417 throw std::runtime_error(
"Failed: convert string to int.");
430 str.erase( str.find_last_not_of(
" \f\n\r\t\v" ) + 1 );
433 std::istringstream ss( str );
439 throw std::runtime_error(
"Failed: convert string to float.");
452 str.erase( str.find_last_not_of(
" \f\n\r\t\v" ) + 1 );
455 std::istringstream ss( str );
461 throw std::runtime_error(
"Failed: convert string to long.");
std::string convertToString()
void convertValue(const void *valueCopy)
float string2Float(std::string str)
double string2Double(std::string str)
std::string getLayoutPropertyDataType(int enumVal)
int string2Int(std::string str)
LayoutPropertyDataType getType()
A helper class for 32-bit RGBA (Red-Green-Blue-Alpha channel) color.
long string2Long(std::string str)
te::color::RGBAColor toColor()
LayoutPropertyDataType
Enum LayoutPropertyDataType.
bool checkNumberAsString(const void *valueCopy)