InputWindow.h 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. #ifndef __INPUTWINDOW
  2. #define __INPUTWINDOW
  3. #include "lib/ballistics/ballistics.h"
  4. #include <FL/Fl.H>
  5. #include <FL/Fl_Window.H>
  6. #include <FL/Fl_Help_Dialog.H>
  7. #include <FL/Fl_Output.H>
  8. #include <FL/Fl_File_Chooser.H>
  9. #include <FL/Fl_BMP_Image.H>
  10. #include <FL/Fl_Button.H>
  11. #include <FL/Fl_Input.H>
  12. #include <FL/Fl_Round_Button.H>
  13. #include <FL/Fl_Int_Input.H>
  14. #include <FL/Fl_Float_Input.H>
  15. #include <FL/Fl_Check_Button.H>
  16. #include <FL/Fl_Menu_Item.H>
  17. #include <FL/Fl_Menu_Bar.H>
  18. #include <FL/Fl_Multiline_Output.H>
  19. #include <FL/Fl_Box.H>
  20. #include <FL/Fl_Text_Display.H>
  21. #include <stdlib.h>
  22. #include <stdio.h>
  23. #include "GBCSolution.h"
  24. #include "RangeWindow.h"
  25. #include "AboutWindow.h"
  26. #include "LicenseWindow.h"
  27. #include "PlotWindow.h"
  28. class InputWindow : public Fl_Window{
  29. public:
  30. InputWindow(int w, int h, const char* title );
  31. ~InputWindow();
  32. Fl_Button* btSolve;
  33. Fl_Button* btReset;
  34. Fl_Button* btStdAtmosphere;
  35. Fl_Button* btShowChart;
  36. Fl_Button* btPlot;
  37. Fl_Button* btCompare;
  38. Fl_Button* btSaveSolution;
  39. Fl_Button* btLoadSolution;
  40. double* Solution;
  41. double* Smem1;
  42. double* Smem2;
  43. double* Smem3;
  44. double* Smem4;
  45. double* Smem5;
  46. double* Smem6;
  47. double* Smem7;
  48. double* Smem8;
  49. GBCSolution* gsln;
  50. GBCSolution* mem1;
  51. GBCSolution* mem2;
  52. GBCSolution* mem3;
  53. GBCSolution* mem4;
  54. GBCSolution* mem5;
  55. GBCSolution* mem6;
  56. GBCSolution* mem7;
  57. GBCSolution* mem8;
  58. int useSolution;
  59. // Drag function selection pointers.
  60. Fl_Round_Button* inG1;
  61. Fl_Round_Button* inG2;
  62. Fl_Round_Button* inG5;
  63. Fl_Round_Button* inG6;
  64. Fl_Round_Button* inG7;
  65. Fl_Round_Button* inG8;
  66. Fl_Check_Button* ckWeather;
  67. Fl_Input* inName;
  68. Fl_Int_Input* inWeight;
  69. Fl_Float_Input* inBC;
  70. Fl_Float_Input* inSH;
  71. Fl_Int_Input* inMV;
  72. Fl_Int_Input* inAngle;
  73. Fl_Int_Input* inZero;
  74. Fl_Int_Input* inVwind;
  75. Fl_Int_Input* inAwind;
  76. Fl_Int_Input* inTemp; Fl_Float_Input* inPressure;
  77. Fl_Int_Input* inHumidity;
  78. Fl_Int_Input* inAltitude;
  79. Fl_Menu_Bar *menu;
  80. Fl_Menu_Item *pmenuitems;
  81. // Menu Item Declarations.
  82. Fl_Menu_Item m_File;
  83. Fl_Menu_Item mc_New;
  84. Fl_Menu_Item mc_Open;
  85. Fl_Menu_Item mc_Save;
  86. Fl_Menu_Item mc_Export;
  87. Fl_Menu_Item mc_Quit;
  88. Fl_Menu_Item m_Edit;
  89. Fl_Menu_Item mc_Copy;
  90. Fl_Menu_Item mc_Paste;
  91. Fl_Menu_Item mc_Options;
  92. Fl_Menu_Item m_Analyze;
  93. Fl_Menu_Item mc_Table;
  94. Fl_Menu_Item mc_Plot;
  95. Fl_Menu_Item mc_Compare;
  96. Fl_Menu_Item m_Aids;
  97. Fl_Menu_Item mc_RangeCard;
  98. Fl_Menu_Item mc_ClickChart;
  99. Fl_Menu_Item mc_RangeTable;
  100. Fl_Menu_Item m_Solution;
  101. Fl_Menu_Item mc_Solve;
  102. Fl_Menu_Item mc_Data;
  103. Fl_Menu_Item mc_Advanced;
  104. Fl_Menu_Item m_Help;
  105. Fl_Menu_Item mc_Help;
  106. Fl_Menu_Item mc_License;
  107. Fl_Menu_Item mc_About;
  108. Fl_Menu_Item mc_Bug;
  109. Fl_Multiline_Output* oStatus;
  110. // Fl_Menu_Item mc_Store1,mc_Store2, mc_Store3, mc_Store4, mc_Store5;
  111. // FL Outputs
  112. Fl_Output* out;
  113. private:
  114. static void cb_Solve(Fl_Widget*, void*);
  115. //inline void cb_copy_i();
  116. //static void cb_quit(Fl_Widget*, void*);
  117. //inline void cb_quit_i();
  118. static void cb_Quit(Fl_Widget*, void*);
  119. static void cb_Nothing(Fl_Widget*, void*);
  120. static void cb_ckWeather(Fl_Widget*, void*);
  121. static void cb_Clear(Fl_Widget*, void*);
  122. static void cb_mNew(Fl_Widget*, void*);
  123. static void EnableMenu(void*);
  124. static void DisableMenu(void*);
  125. static void cb_RangeTable(Fl_Widget*, void* );
  126. static void cb_Paste(Fl_Widget*, void* v);
  127. static void cb_Copy(Fl_Widget*, void* v);
  128. static void cb_HelpWindow(Fl_Widget*, void*v);
  129. static void cb_LicenseWindow(Fl_Widget*, void*v);
  130. static void cb_AboutWindow(Fl_Widget*,void*v);
  131. static void cb_Save(Fl_Widget*, void*);
  132. static void cb_Open(Fl_Widget*, void*);
  133. static void cb_Plot(Fl_Widget*, void*);
  134. static void cb_Options(Fl_Widget*, void*);
  135. static void cb_Store1(Fl_Widget*, void*);
  136. static void cb_Store2(Fl_Widget*, void*);
  137. static void cb_Store3(Fl_Widget*, void*);
  138. static void cb_Store4(Fl_Widget*, void*);
  139. static void cb_Store5(Fl_Widget*, void*);
  140. static void cb_Store6(Fl_Widget*, void*);
  141. static void cb_Store7(Fl_Widget*, void*);
  142. static void cb_Store8(Fl_Widget*, void*);
  143. static void cb_PBR(Fl_Widget*, void*);
  144. void Paste(void);
  145. void Copy(void);
  146. };
  147. #include "PBRWindow.h"
  148. #endif