1
1

outputFlag.hh 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. /**
  2. * outputFlag.hh for jsonstroller
  3. *
  4. * Author: isundil <isundill@gmail.com>
  5. **/
  6. #pragma once
  7. class OutputFlag
  8. {
  9. public:
  10. OutputFlag(short mode =0);
  11. virtual ~OutputFlag();
  12. /**
  13. * get/set SELECTED byte
  14. **/
  15. bool selected() const;
  16. bool selected(bool v);
  17. /**
  18. * get/set SEARCH byte
  19. **/
  20. bool searched() const;
  21. bool searched(bool v);
  22. /**
  23. * get/set item's type
  24. **/
  25. char type() const;
  26. char type(char t);
  27. protected:
  28. /**
  29. * item mode bitmask
  30. **/
  31. short mode;
  32. /**
  33. * item type
  34. **/
  35. char _type;
  36. public:
  37. static const short MODE_SELECTED = 1;
  38. static const short MODE_SEARCHED = 2;
  39. static const char TYPE_UNKNOWN;
  40. static const char TYPE_STRING;
  41. static const char TYPE_NUMBER;
  42. static const char TYPE_BOOL;
  43. static const char TYPE_OBJ;
  44. static const char TYPE_OBJKEY;
  45. static const char TYPE_ARR;
  46. static const char TYPE_NULL;
  47. static const char SPECIAL_NONE;
  48. static const char SPECIAL_SEARCH;
  49. static const char SPECIAL_ERROR;
  50. static const char SPECIAL_INPUTNAME;
  51. static const char SPECIAL_ACTIVEINPUTNAME;
  52. };