Console.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. //---------------------------------------------------------------------------
  2. #ifndef ConsoleH
  3. #define ConsoleH
  4. //---------------------------------------------------------------------------
  5. #define CONSOLE_MAPPING "WinSCPConsoleMapping"
  6. #define CONSOLE_EVENT_REQUEST "WinSCPConsoleEventRequest"
  7. #define CONSOLE_EVENT_RESPONSE "WinSCPConsoleEventResponse"
  8. #define CONSOLE_EVENT_CANCEL "WinSCPConsoleEventCancel"
  9. //---------------------------------------------------------------------------
  10. struct TConsoleCommStruct
  11. {
  12. enum TVersion
  13. {
  14. Version0 = 0,
  15. CurrentVersion = Version0,
  16. MinVersion = Version0,
  17. MaxVersion = CurrentVersion
  18. };
  19. struct TPrintEvent
  20. {
  21. char Message[10240];
  22. bool FromBeginning;
  23. };
  24. struct TInputEvent
  25. {
  26. bool Echo;
  27. bool Result;
  28. char Str[10240];
  29. };
  30. struct TChoiceEvent
  31. {
  32. char Options[64];
  33. int Cancel;
  34. int Break;
  35. int Result;
  36. };
  37. struct TTitleEvent
  38. {
  39. char Title[10240];
  40. };
  41. size_t Size;
  42. int Version;
  43. enum { NONE, PRINT, INPUT, CHOICE, TITLE } Event;
  44. union
  45. {
  46. TPrintEvent PrintEvent;
  47. TInputEvent InputEvent;
  48. TChoiceEvent ChoiceEvent;
  49. TTitleEvent TitleEvent;
  50. };
  51. };
  52. //---------------------------------------------------------------------------
  53. #endif // ConsoleH