summaryrefslogtreecommitdiff
path: root/music/pokeredmusicdisasm/Console.h
diff options
context:
space:
mode:
Diffstat (limited to 'music/pokeredmusicdisasm/Console.h')
-rw-r--r--music/pokeredmusicdisasm/Console.h20
1 files changed, 16 insertions, 4 deletions
diff --git a/music/pokeredmusicdisasm/Console.h b/music/pokeredmusicdisasm/Console.h
index c6fe1833..1de9ee55 100644
--- a/music/pokeredmusicdisasm/Console.h
+++ b/music/pokeredmusicdisasm/Console.h
@@ -3,6 +3,7 @@
#include <iostream>
#include <string>
+#include <sstream>
// Just a Console Utility Library
class Console
@@ -19,11 +20,22 @@ public:
static void ErrorLn(const char* value);
// Higher
- static void Ask(const char* question, char* answer);
- static void Ask(const char* question, std::string& answer);
+ //static void Ask(const char* question, char* answer);
+ //static void Ask(const char* question, std::string& answer);
- // Better Error Handling
- static int atoi_ex(const char* input, bool supress = false);
+ template<class T>
+ static void Ask(const char* question, T& answer, std::ios_base::fmtflags flags = std::ios_base::dec)
+ {
+ std::stringstream _tmpstr;
+ std::string _tmp;
+
+ Print(question);
+ Get(_tmp);
+
+ _tmpstr << _tmp;
+ _tmpstr.flags(flags);
+ _tmpstr >> answer;
+ }
};
#endif // CONSOLE_H