fix empty text rendering, remove useless regex in numeric input
This commit is contained in:
parent
30c4205dab
commit
57a95154c2
|
@ -2,8 +2,6 @@
|
|||
#define BWIDGETS_NUMERIC_INPUT_HPP_
|
||||
|
||||
#include <limits>
|
||||
// TODO: we don't really need any regex…
|
||||
#include <regex>
|
||||
#include <type_traits>
|
||||
|
||||
#include <basic_widgets/core/math.hpp>
|
||||
|
@ -156,11 +154,7 @@ namespace bwidgets::widget
|
|||
if constexpr(std::is_signed_v<T>)
|
||||
{
|
||||
std::string displayed_value = Input<T>::input_text();
|
||||
if (input.at(0) == '-'
|
||||
&& !std::regex_search(
|
||||
displayed_value,
|
||||
std::regex("[^\\s]")
|
||||
))
|
||||
if (input.at(0) == '-' && displayed_value.empty())
|
||||
valid = true;
|
||||
}
|
||||
return valid;
|
||||
|
|
|
@ -67,22 +67,23 @@ namespace bwidgets::core
|
|||
const SDL_Color& bg)
|
||||
{
|
||||
std::function<SDL_Surface* ()> renderer;
|
||||
const char* c_str = str.empty() ? " " : str.c_str();
|
||||
|
||||
switch (m)
|
||||
{
|
||||
case RenderMode::BLENDED:
|
||||
renderer = [&fg, &str, this]() {
|
||||
return TTF_RenderUTF8_Blended(c_pod, str.c_str(), fg);
|
||||
renderer = [&fg, c_str, this]() {
|
||||
return TTF_RenderUTF8_Blended(c_pod, c_str, fg);
|
||||
};
|
||||
break;
|
||||
case RenderMode::SHADED:
|
||||
renderer = [&bg, &fg, &str, this]() {
|
||||
return TTF_RenderUTF8_Shaded(c_pod, str.c_str(), fg, bg);
|
||||
renderer = [&bg, &fg, c_str, this]() {
|
||||
return TTF_RenderUTF8_Shaded(c_pod, c_str, fg, bg);
|
||||
};
|
||||
break;
|
||||
case RenderMode::SOLID:
|
||||
renderer = [&fg, &str, this]() {
|
||||
return TTF_RenderUTF8_Solid(c_pod, str.c_str(), fg);
|
||||
renderer = [&fg, c_str, this]() {
|
||||
return TTF_RenderUTF8_Solid(c_pod, c_str, fg);
|
||||
};
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue