@Projects.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. /******************************************************************************/
  2. /******************************************************************************/
  3. class Projects
  4. {
  5. class Elm
  6. {
  7. UID id;
  8. Str local_name, server_name, name, path, desc; // 'path' must have 'tailSlash'
  9. CheckBox synchronize;
  10. int sync_val;
  11. public:
  12. Elm();
  13. };
  14. Text t_proj_path, t_server_login, t_server, t_email, t_pass, t_path_desc, t_login_desc, t_logged_in, t_projects,
  15. t_editor_network_interface, t_editor_network_interface_desc;
  16. TextLine proj_path, email, pass, server;
  17. WindowIO proj_path_io, import_proj_io, import_proj_1_0_io;
  18. Button proj_path_explore, proj_path_sel, connect, forgot_pass, disconnect, change_pass, new_proj, import_proj, import_proj_1_0, editor_network_interface, vid_opt;
  19. ComboBox menu;
  20. Menu proj_menu;
  21. UID proj_menu_id;
  22. Memx<Elm> proj_data;
  23. List<Elm> proj_list;
  24. Region proj_region;
  25. MemberDesc proj_list_sync_sort;
  26. TextBlack ts_left, ts_left_down, ts_small_left_up;
  27. Elm* findProj(C UID &id);
  28. static void SelectPath ( Projects &projs);
  29. static void SelectPath (C Str &name, Projects &projs);
  30. static void PathExplore( Projects &projs);
  31. static void PathChanged( Projects &projs);
  32. static void Connect ( Projects &projs);
  33. static void Disconnect ( Projects &projs);
  34. static void ForgotPass ( Projects &projs);
  35. static void ChangePass ( Projects &projs);
  36. static void NewProj ( Projects &projs);
  37. static void ImportProj(Projects &projs);
  38. static void ImportProj(C Str &name, ptr user);
  39. static void ImportProj_1_0(Projects &projs);
  40. static void ImportProj_1_0(C Str &name, ptr user);
  41. static void HostEditorServer(Projects &projs);
  42. static void Open ();
  43. static void Rename ();
  44. static void Remove ();
  45. static void ExploreProj();
  46. static void CompareProj();
  47. static void ToggleSynchronize(Elm &elm);
  48. void create();
  49. void resize();
  50. void forgotPass();
  51. void connectDo();
  52. void refresh();
  53. void selectProj(C UID &proj_id, bool kb_focus=true);
  54. bool newProj(C Str &name);
  55. bool toggleSynchronizeProj(C UID &proj_id, C Str &name);
  56. bool renameProj(C UID &proj_id, Str name);
  57. bool removeProj(C UID &proj_id);
  58. bool open(Elm &proj, bool ignore_lock=false);
  59. void show();
  60. void hide();
  61. void projMenu(C Vec2 &pos, bool touch);
  62. void update();
  63. public:
  64. Projects();
  65. };
  66. /******************************************************************************/
  67. /******************************************************************************/
  68. extern Projects Projs;
  69. /******************************************************************************/