Subversion Repositories Kolibri OS

Rev

Rev 7521 | Blame | Last modification | View Log | Download | RSS feed

  1. /*
  2.  * Network testing utility
  3.  * Leency 2018
  4. */
  5.  
  6. #define MEMSIZE 4096*10
  7.  
  8. #include "../lib/fs.h"
  9. #include "../lib/gui.h"
  10. #include "../lib/events.h"
  11.  
  12. //===================================================//
  13. //                                                   //
  14. //                       DATA                        //
  15. //                                                   //
  16. //===================================================//
  17.  
  18. char download_file[] = "-d http://kolibri-n.org/files/KolibriN9.zip";
  19.  
  20. EVENTS button;
  21. EVENTS key;
  22.  
  23. //===================================================//
  24. //                                                   //
  25. //                       CODE                        //
  26. //                                                   //
  27. //===================================================//
  28.  
  29. void main()
  30. {
  31.         loop() switch(WaitEvent())
  32.         {
  33.                 case evButton:
  34.                         button.press( GetButtonID() );
  35.                         break;
  36.          
  37.                 case evKey:
  38.                         GetKeys();
  39.                         key.press( key_scancode );
  40.                         break;
  41.                  
  42.                 case evReDraw:
  43.                         draw_window();
  44.                         break;
  45.         }
  46. }
  47.  
  48. void draw_window()
  49. {
  50.         sc.get();
  51.         DefineAndDrawWindow(215, 100, 350, 300, 0x34, sc.work, "Network testing utility",0);
  52.         button.init(10);
  53.         key.init(10);
  54.  
  55.         WriteText(10,10, 0x90, sc.work_text, "Download via:");
  56.         AddEvent(10, 30, #EventRunAsmDownloader, SCAN_CODE_F1, "ASM Downloader [F1]");
  57.         AddEvent(10, 60, #EventRunCmmDownloader, SCAN_CODE_F2, "C-- Downloader [F2]");
  58.         AddEvent(10, 120, #EventRunNetStat, SCAN_CODE_F3, "NetStat [F3]");
  59.         AddEvent(10, 150, #EventRunNetCfg, SCAN_CODE_F4, "NetCfg [F4]");
  60.         AddEvent(10, 180, #EventRunBoard, SCAN_CODE_F5, "Board [F5]");
  61.         button.add_n(1, #ExitProcess);
  62.         key.add_n(SCAN_CODE_ESC, #ExitProcess);
  63. }
  64.  
  65. void AddEvent(dword bx, by, event, hotkey, text)
  66. {
  67.         DrawStandartCaptButton(bx, by, button.add(event), text);
  68.         key.add_n(hotkey, event);
  69. }
  70.  
  71. //===================================================//
  72. //                                                   //
  73. //                      EVENTS                       //
  74. //                                                   //
  75. //===================================================//
  76.  
  77. void EventRunAsmDownloader()
  78. {
  79.         RunProgram("/sys/network/downloader", #download_file+3);
  80. }
  81.  
  82. void EventRunCmmDownloader()
  83. {
  84.         RunProgram("/sys/network/webview", #download_file);
  85. }
  86.  
  87. void EventRunNetStat()
  88. {
  89.         RunProgram("/sys/network/netstat", NULL);
  90. }
  91.  
  92. void EventRunNetCfg()
  93. {
  94.         RunProgram("/sys/network/netcfg", NULL);
  95. }
  96.  
  97. void EventRunBoard()
  98. {
  99.         RunProgram("/sys/develop/board", NULL);
  100. }
  101.  
  102.