outputFlag.hh 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  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. };