# data file for the Fltk User Interface Designer (fluid) version 1.0110 header_name {.h} code_name {.cxx} comment { /********************************************************************************************** This file is part of PriiDash(TM), an enhanced instrument panel and data logger for the Prius and more. Copyright (C) 2011 by TeamPrii at sourceforge.net PriiDash(TM) is provided "AS IS" under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version, WITH ADDITIONAL TERMS in paragraphs below. This program is distributed in the hope that it will be useful, but Without Any Warranty; without even the implied warranty of Merchantability or Fitness For A Particular Purpose. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . ADDITIONAL TERMS IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, DEATH; INJURY; COLLISION AND/OR DAMAGE TO VEHICLES; LIABILITY FOR ACCIDENTS AND/OR TRAFFIC VIOLATIONS; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE OR INABILITY TO USE THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. THE AUTHOR RESERVES ALL RIGHTS OF OWNERSHIP OF THE NAME OF THE SOFTWARE, PriiDash(TM). ALL MODIFIED VERSIONS MUST BE CLEARLY MARKED AS BEING DIFFERENT FROM THE ORIGINAL, AND MUST CARRY ACKNOWLEDGEMENT TO THE ORIGINAL AUTHOR, TeamPrii at sourceforge.net. ALL ADVERTISING MATERIALS MENTIONING FEATURES OR USE OF THIS SOFTWARE MUST DISPLAY THE FOLLOWING ACKNOWLEDGEMENT: This product includes the software PriiDash(TM) developed by TeamPrii at sourceforge.net. To contact the author: look up TeamPrii at sourceforge.net. Project home page: http://priidash.sourceforge.net/ ************************************************************************************************/ } {in_source in_header } decl {\#include "OS.h"} {} decl {\#include } {} decl {\#include } {} decl {\#include } {} decl {\#include "UI.h"} {} decl {\#include "ini.h"} {} decl {\#include "Util.h"} {} decl {\#include "LogToCSV.h"} {} decl {bool QuitProgram; //Signal Quit button press -> runUI() to stop looping} {public } decl {bool QuitShowLic; //Signal Accept button press -> showLic() to stop looping} {public } decl {boost::thread workerThread; //thread for runUI()} {} Function {set_log_filename_CB()} {open private } { code {Fl_File_Chooser f(log_filename->value(),"*.txt",Fl_File_Chooser::CREATE,"Set log filename"); f.preview(0); f.show(); while(f.shown()){Fl::check();} if (f.count()>0){ log_filename->value(f.value()); log_path->value(f.directory()); };} {} } Function {set_csv_filename_CB()} {open private } { code {Fl_File_Chooser f(log_filename->value(),"*.csv\\t*.txt",Fl_File_Chooser::CREATE,"Set csv filename"); f.preview(0); f.show(); while(f.shown()){Fl::check();} if (f.count()>0){ csv_filename->value(f.value()); log_path->value(f.directory()); };} {} } Function {convert_log_csv_CB()} {open private } { code {//boost::thread thrlogtocsv; // printf("logtocsv() thread starting ... ");fflush(stdout); // thrlogtocsv=boost::thread(logtocsv, log_filename->value(), csv_filename->value()); // printf("logtocsv() thread started\\n");fflush(stdout); logtocsv(log_filename->value(), csv_filename->value());} {} } Function {go_button_CB(Fl_Widget*, void* userdata)} {open private } { code {printf("%s > Go button pressed\\n",(const char*)userdata);fflush(stdout); switch (UIstate){ case Stopped:{ UIstate = Running; setUIstate(UIstate); break; } case Running:{ UIstate = Stopped; setUIstate(UIstate); break; } }} {} } Function {main_window_CB()} {open private } { code {printf("main_window quit button pressed\\n");fflush(stdout); QuitProgram=true; printf("waiting for runUI() thread to end\\n");fflush(stdout); \#ifdef VC_WIN //SDH sorry need these now or other threads get stuck Fl::flush(); Fl::unlock(); \#endif workerThread.join(); printf("thread ended. Exitting...\\n");fflush(stdout); //Fl::flush(); //Fl::unlock(); exit(0);} {} } decl {\#include "icon.h"} {} Function {} {open } { code {printf("**********************************************************************\\n" " PriiDash(TM) Copyright (C) 2011 by TeamPrii at sourceforge.net\\n" " This program is licensed under the GNU General Public License,\\n" " with ADDITIONAL TERMS. For details click\\n" " \\"About PriiDash(TM) ...\\" button in \\"Main Control\\" window.\\n" "**********************************************************************\\n"); fflush(stdout);} {} Fl_Window main_window { label {Main Control - PriiDash(TM) 201206} callback main_window_CB open xywh {95 48 825 395} type Double color 38 hide } { Fl_Group run_group {open xywh {710 4 114 168} box ROUNDED_BOX color 33 } { Fl_Button go_button { label Go user_data {"Main Control"} callback go_button_CB xywh {721 8 93 94} type Toggle box ROUND_UP_BOX down_box ROUND_UP_BOX color 61 selection_color 73 labelfont 1 labelsize 24 } Fl_Choice run_type_choice { label {run type} open xywh {716 129 101 19} box UP_BOX down_box BORDER_BOX color 37 labelfont 1 labelcolor 26 align 1 } { MenuItem run_type_normal { label Normal callback {UIruntype=Normal;} xywh {0 0 36 21} } MenuItem run_type_simulation { label Simulation callback {UIruntype=Simulation;} xywh {0 0 36 21} } MenuItem run_type_ATMAlogonly { label {ATMA log only} callback {UIruntype=ATMAlogonly;} xywh {10 10 36 21} } MenuItem run_type_ATMAonly { label {ATMA only} callback {UIruntype=ATMAonly;} xywh {20 20 36 21} } MenuItem run_type_queryonly { label {query only} callback {UIruntype=queryonly;} xywh {30 30 36 21} } MenuItem run_type_2OBDUSB { label {2 OBDUSB} callback {UIruntype=TwoOBDUSB;} xywh {10 10 36 21} } } } Fl_Group settings_group {open xywh {5 53 700 339} box ROUNDED_BOX color 32 } { Fl_Input OBDUSB_portname { callback {ini.portname.assign(OBDUSB_portname->value()); ini.save(xmlfilename);} tooltip {Enter serial (COM) port name.} xywh {162 108 183 28} color 84 labelcolor 94 code0 {o->value("/dev/ttyS6");//"/dev/ttyUSB0");} } Fl_Button set_OBDUSB_portname { label {Set OBDUSB port} callback {Fl_File_Chooser f("/dev/","ttyU*",Fl_File_Chooser::SINGLE,"Set OBDUSB port"); f.preview(0); f.show(); while(f.shown()){Fl::check();} if (f.count()>0){OBDUSB_portname->value(f.value());} ini.portname.assign(OBDUSB_portname->value()); ini.save(xmlfilename);} tooltip {Set serial (COM) port name. Or enter directly in the field to the right.} xywh {10 102 150 37} box ROUND_UP_BOX color 72 labelfont 1 labelcolor 3 align 16 } Fl_Input OBDUSB_portname2 { callback {ini.portname2.assign(OBDUSB_portname2->value()); ini.save(xmlfilename);} tooltip {Enter 2nd serial (COM) port name. Only for using 2 OBD-USB devices in parallel.} xywh {197 69 183 28} color 84 labelcolor 94 code0 {o->value("/dev/ttyS5");//"/dev/ttyUSB0");} } Fl_Button set_OBDUSB_portname2 { label {Set OBDUSB port 2} callback {Fl_File_Chooser f("/dev/","ttyU*",Fl_File_Chooser::SINGLE,"Set OBDUSB port 2"); f.preview(0); f.show(); while(f.shown()){Fl::check();} if (f.count()>0){OBDUSB_portname2->value(f.value());} ini.portname2.assign(OBDUSB_portname2->value()); ini.save(xmlfilename);} tooltip {Set 2nd serial (COM) port name. Or enter directly in the field to the right. Only for using 2 OBD-USB devices in parallel.} xywh {45 63 150 37} box ROUND_UP_BOX color 72 labelfont 1 labelcolor 3 align 16 } Fl_Output log_path { label {Log file path} tooltip {File path of log files. Click "Set log filename" or "Set csv filename" to change.} xywh {165 160 536 25} color 30 labelfont 1 labelcolor 29 textcolor 7 code0 {o->value("");} } Fl_Output log_filename { xywh {164 190 536 25} color 140 } Fl_Button set_log_filename { label {Set log filename} callback set_log_filename_CB tooltip {Choose existing log txt file to be converted to csv file.} xywh {10 182 150 37} box ROUND_UP_BOX color 136 labelfont 1 labelcolor 6 align 16 } Fl_Output csv_filename { xywh {164 223 536 25} color 101 code0 {//o->value("/media/Home/OBDlog/test.csv");} } Fl_Button set_csv_filename { label {Set csv filename} callback set_csv_filename_CB tooltip {Set filename for converted csv file.} xywh {10 221 150 37} box ROUND_UP_BOX color 57 labelfont 1 labelcolor 119 align 16 } Fl_Button convert_log_csv { label {Convert log->csv} callback convert_log_csv_CB tooltip {Convert above existing log txt file to csv file with data entry spaced every ___ second (set with input to the right).} xywh {231 251 150 37} box ROUND_UP_BOX color 60 labelfont 1 labelcolor 56 align 16 } Fl_Choice baud_rate_choice { label {Baud Rate} open tooltip {Set the serial (COM) port baud rate on the PC side. The OBD-USB device also needs to be set accordingly.} xywh {355 107 95 25} down_box BORDER_BOX color 113 labelfont 1 labelcolor 16 align 8 } { MenuItem baud_rate_2M { label 2M callback {ini.baudchoice=0; setbaudRate(); ini.save(xmlfilename);} xywh {0 0 30 20} labelfont 1 } MenuItem baud_rate_1M { label 1M callback {ini.baudchoice=1; setbaudRate(); ini.save(xmlfilename);} xywh {10 10 30 20} labelfont 1 } MenuItem baud_rate_500K { label 500K callback {ini.baudchoice=2; setbaudRate(); ini.save(xmlfilename);} xywh {20 20 30 20} labelfont 1 } MenuItem baud_rate_115200 { label 115200 callback {ini.baudchoice=3; setbaudRate(); ini.save(xmlfilename);} xywh {30 30 30 20} labelfont 1 } } Fl_Choice baud_rate_choice2 { label {Baud Rate 2} open tooltip {Set 2nd serial (COM) port baud rate on the PC side. Only for using 2 OBD-USB devices in parallel.} xywh {390 68 95 25} down_box BORDER_BOX color 113 labelfont 1 labelcolor 16 align 8 } { MenuItem baud_rate2_2M { label 2M callback {ini.baudchoice2=0; setbaudRate(); ini.save(xmlfilename);} xywh {10 10 30 20} labelfont 1 } MenuItem baud_rate2_1M { label 1M callback {ini.baudchoice2=1; setbaudRate(); ini.save(xmlfilename);} xywh {20 20 30 20} labelfont 1 } MenuItem baud_rate2_500K { label 500K callback {ini.baudchoice2=2; setbaudRate(); ini.save(xmlfilename);} xywh {30 30 30 20} labelfont 1 } MenuItem baud_rate2_115200 { label 115200 callback {ini.baudchoice2=3; setbaudRate(); ini.save(xmlfilename);} xywh {40 40 30 20} labelfont 1 } } Fl_Value_Input fuel_cost_input { label {Fuel Cost} callback {ini.fuelcost=o->value(); printf(" ini.fuelcost=%lf\\n",ini.fuelcost); ini.save(xmlfilename);} tooltip {Enter fuel cost if trip cost calculation is desired.} xywh {103 322 90 28} color 22 labelfont 1 labelcolor 95 textfont 1 textsize 18 code0 {o->step(0.001); // limit increment of cost to $0.001} } Fl_Value_Input odo_input { label {ODO input} callback {ini.odo=o->value(); printf(" ini.odo=%lf\\n",ini.odo); ini.save(xmlfilename);} tooltip {Enter odometer reading at beginning of trip.} xywh {103 357 190 29} color 22 labelfont 1 labelcolor 16 textfont 1 textsize 18 code0 {o->step(0.01); // limit increment of cost to $0.001} } Fl_Choice gas_vol_unit_choice { label {Fuel Vol Unit} open tooltip {Choose unit for fuel consumption/efficiency calculation.} xywh {107 286 80 25} down_box BORDER_BOX color 137 labelfont 1 labelcolor 16 } { MenuItem gas_vol_unit_usgal { label {US Gal} callback {ini.gasvolunit = USGal; setLiterToGal(ini.gasvolunit,g_literToGal); ini.save(xmlfilename);} xywh {0 0 30 20} labelfont 1 } MenuItem gas_vol_unit_ukgal { label {UK Gal} callback {ini.gasvolunit = UKGal; setLiterToGal(ini.gasvolunit,g_literToGal); ini.save(xmlfilename);} xywh {10 10 30 20} labelfont 1 } MenuItem gas_vol_unit_liter { label Liter callback {ini.gasvolunit = Liter; setLiterToGal(ini.gasvolunit,g_literToGal); ini.save(xmlfilename);} xywh {20 20 30 20} labelfont 1 } } Fl_Choice gas_cost_unit_choice { label per open tooltip {Choose volume unit for fuel cost (not fuel consumption/efficiency).} xywh {223 324 80 25} down_box BORDER_BOX color 98 labelfont 1 labelcolor 95 } { MenuItem gas_cost_unit_usgal { label {US Gal} callback {ini.gascostunit = USGal; setLiterToGal(ini.gascostunit,g_literToGalCost); ini.save(xmlfilename);} xywh {10 10 30 20} labelfont 1 } MenuItem gas_cost_unit_ukgal { label {UK Gal} callback {ini.gascostunit = UKGal; setLiterToGal(ini.gascostunit,g_literToGalCost); ini.save(xmlfilename);} xywh {20 20 30 20} labelfont 1 } MenuItem gas_cost_unit_liter { label Liter callback {ini.gascostunit = Liter; setLiterToGal(ini.gascostunit,g_literToGalCost); ini.save(xmlfilename);} xywh {30 30 30 20} labelfont 1 } } Fl_Choice odo_unit_choice {open tooltip {Choose unit of distance.} xywh {294 357 70 30} down_box BORDER_BOX } { MenuItem odo_unit_mile { label mile callback {ini.odounit = 0; setkm2mile(); ini.save(xmlfilename);} xywh {0 0 30 20} labelfont 1 } MenuItem odo_unit_km { label km callback {ini.odounit = 1; setkm2mile(); ini.save(xmlfilename);} xywh {10 10 30 20} labelfont 1 } } Fl_Choice car_type_choice { label {Car Type} open tooltip {Choose gen 2 Prius or all others} xywh {415 355 115 30} down_box BORDER_BOX color 27 labelfont 1 labelcolor 25 align 5 hide deactivate } { MenuItem gen_2_Prius { label {gen 2 Prius} callback {ini.cartype = 0; setcartype(); ini.save(xmlfilename);} xywh {10 10 30 20} labelfont 1 } MenuItem all_others { label {all others} callback {ini.cartype = 1; setcartype(); ini.save(xmlfilename);} xywh {20 20 30 20} labelfont 1 } } Fl_Value_Input csv_every_sec { label every tooltip {Enter time interval (in seconds) between data entries in the converted csv file.} xywh {425 255 50 28} color 57 labelfont 1 labelcolor 63 textfont 1 textcolor 63 code0 {o->value(0.2);} } Fl_Text_Display sec_label { label sec private xywh {505 254 15 30} box ROUNDED_FRAME color 32 labelfont 1 labelcolor 63 align 4 textcolor 63 } Fl_Button reset_ini_settings { label {Reset INI Settings} callback {ini.reset(xmlfilename);} tooltip {Reset some settings to default.} xywh {615 306 80 79} box ROUND_UP_BOX color 89 labelfont 1 align 128 } } Fl_Button about_button { label {About PriiDash(TM) ...} callback {//QuitShowLic=false; //boost::thread thr1; //thr1=boost::thread(showLic); if (!about_window) {make_about_window();} //about_window->fullscreen(); about_window->show(); Fl::flush();} tooltip {Show license agreement.} xywh {25 8 235 39} labelfont 1 labelsize 18 } } code {init_filenames(); UIstate = Stopped; Fl::lock(); seticonfixed(main_window); QuitProgram=false; printf("runUI() thread starting ... ");fflush(stdout); //boost::thread workerThread(runUI); workerThread = boost::thread(runUI); printf("runUI() thread started\\n");fflush(stdout); //if (!about_window) {make_about_window();} //about_window->fullscreen(); //about_window->show(); //while (!QuitShowLic){wait(0.5);} FILE *fp; fp = fopen("LicRead.txt","r"); // if (fp==NULL) { QuitShowLic=false; boost::thread thr1; printf("showLic() thread starting ... ");fflush(stdout); thr1=boost::thread(showLic); printf("showLic() thread started\\n");fflush(stdout); } else { fclose(fp); };} {} } decl {\#include "Fl_Gauge.H"} {public global } class Gauges {open } { Function {Gauges()} {open } { Fl_Window gauges_window { label {Gauges - PriiDash(TM) 201206} open xywh {36 192 895 575} type Double color 32 code0 {o->cursor(FL_CURSOR_DEFAULT,FL_YELLOW,FL_RED);} code1 {Fl::flush();} visible } { Fl_Box iceT_G { label {ICE T(F)} xywh {2 2 208 208} box ROUNDED_BOX color 30 labelfont 1 labelsize 18 labelcolor 252 align 17 code0 {o->type(FL_GAUGE_ROUND);o->valuedisplaydelta(0.1);} code1 {o->greenzonecolorG(FL_GREEN);o->greenzonecolorR(FL_RED);o->dialcolorR(FL_RED);o->redlinecolorR(FL_YELLOW);o->greenzonecolor(my_fl_dark_M);o->greenzonecolor0(my_fl_dark_M);} code2 {o->max(205);o->min(100);o->step(10);o->stepdiv(5);o->redlinestart(195);o->greenzoneend(157);o->greenzonestart(104);} code3 {o->pointercolor(o->labelcolor());o->pointercolor0(o->labelcolor());o->pointercolorG(o->labelcolor());o->pointercolorR(FL_BLUE);} class Fl_Gauge } Fl_Box wT_G { label {wT(F)} xywh {430 144 124 64} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 133 align 17 code0 {o->valuefontsize(28);} class Fl_Gauge } Fl_Box speed_G { label MPH xywh {305 2 170 121} box ROUNDED_BOX color 30 labelfont 2 labelsize 16 labelcolor 199 align 26 hide deactivate code0 {o->type(FL_GAUGE_SPEED);o->valuedisplaydelta(0.1);} code1 {o->valuefontsize(120);} code2 {o->redlinestart(41);o->greenzoneend(40.99);o->greenzonestart(34);} class Fl_Gauge } Fl_Box amp_G { label A xywh {590 265 300 130} box ROUNDED_BOX color 30 labelfont 1 labelsize 20 labelcolor 218 align 18 code0 {o->valuedisplaydelta(0.15);} class Fl_Gauge } Fl_Box soc_G { label {SOC(%)} xywh {240 294 121 77} box ROUNDED_BOX color 30 labelfont 1 labelcolor 218 align 17 hide deactivate code0 {o->valuedisplaydelta(0.2);} class Fl_Gauge } Fl_Box rpm_G { label RPM xywh {215 2 208 208} box ROUNDED_BOX color 30 labelfont 1 labelsize 18 labelcolor 133 align 17 code0 {o->type(FL_GAUGE_ROUND);o->framecolor(fl_lighter(o->labelcolor()));} code1 {o->greenzonecolorG(FL_WHITE);o->dialcolorG(FL_DARK_GREEN);o->greenzonecolorR(FL_RED);o->dialcolorR(FL_DARK_CYAN);o->greenzonecolor(my_fl_dark_green);o->greenzonecolor0(my_fl_dark_green);} code2 {o->pointercolor(FL_BLACK);o->pointercolor0(FL_BLACK);o->pointercolorG(FL_BLACK);o->pointercolorR(FL_YELLOW);} code3 {o->valuedisplaydelta(16);} class Fl_Gauge } Fl_Box ign_G { label IGN xywh {435 4 205 70} box ROUNDED_BOX color 30 labelfont 1 labelcolor 133 align 20 code0 {o->greenzonecolorG(FL_GREEN);o->pointercolor(FL_WHITE);o->pointercolor0(FL_WHITE);} code1 {o->valuefontsize(36);} class Fl_Gauge } Fl_Box hvV_G { label {HV(V)} xywh {692 400 99 76} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 61 align 17 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=3; int DecPlace=0;o->valueplaces(RealPlace,DecPlace);o->valuedisplaydelta(2);} class Fl_Gauge } Fl_Box auxV_G { label 12V xywh {590 481 100 84} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 61 align 22 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->pointercolor(fl_lighter(o->labelcolor()));} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=5; int DecPlace=2; o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box dsc_G { label {dsc(%)} xywh {795 400 99 76} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 218 align 17 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));o->valuefontsize(20);} code3 {int RealPlace=3; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box oaT_G { label {OAT(F)} xywh {805 -1 90 66} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 52 align 22 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(28);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box intakeT_G { label {intake T(F)} xywh {800 65 95 56} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 133 align 22 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=3; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box atm_G { label {atm(kPa)} xywh {815 121 80 58} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 52 align 18 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=1; int DecPlace=0;o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box inv1T_G { label {Inv1 T(C)} xywh {2 215 80 330} box ROUNDED_BOX color 30 labelfont 1 labelcolor 181 align 130 code0 {o->type(FL_GAUGE_VERTICAL);} code1 {o->redlinestart(55);} class Fl_Gauge } Fl_Box inv2T_G { label {Inv2 T(C)} xywh {85 215 80 330} box ROUNDED_BOX color 30 labelfont 1 labelcolor 126 align 130 code0 {o->type(FL_GAUGE_VERTICAL);} code1 {o->redlinestart(55);} class Fl_Gauge } Fl_Box mg1T_G { label {mg1 T(C)} xywh {251 215 80 330} box ROUNDED_BOX color 30 labelfont 1 labelcolor 181 align 130 code0 {o->type(FL_GAUGE_VERTICAL);} code1 {o->redlinestart(55);} class Fl_Gauge } Fl_Box mg2T_G { label {mg2 T(C)} xywh {335 215 80 330} box ROUNDED_BOX color 30 labelfont 1 labelcolor 126 align 130 code0 {o->type(FL_GAUGE_VERTICAL);} code1 {o->redlinestart(55);} class Fl_Gauge } Fl_Box cnvT_G { label {Cnvt T(C)} xywh {168 215 80 330} box ROUNDED_BOX color 30 labelfont 1 labelcolor 158 align 130 code0 {o->type(FL_GAUGE_VERTICAL);} code1 {o->redlinestart(55);} class Fl_Gauge } Fl_Box blC_G { label blC xywh {420 215 80 330} box ROUNDED_BOX color 30 labelfont 1 labelcolor 218 align 130 code0 {o->type(FL_GAUGE_VERTICAL);} code1 {o->redlinestart(40);} class Fl_Gauge } Fl_Box buC_G { label buC xywh {505 215 80 330} box ROUNDED_BOX color 30 labelfont 1 labelcolor 218 align 130 code0 {o->type(FL_GAUGE_VERTICAL);} code1 {o->redlinestart(40);} class Fl_Gauge } Fl_Box catT1_G { label {cat1 T(C)} xywh {650 4 104 64} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 90 align 22 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(32);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=3; int DecPlace=0;o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box catT2_G { label {cat2 T(C)} xywh {648 76 104 64} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 90 align 22 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(32);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=3; int DecPlace=0;o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box rpmt_G { label RPMT xywh {689 500 110 37} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 121 align 17 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));o->valuefontsize(24);} code3 {int RealPlace=4; int DecPlace=0; o->valueplaces(RealPlace,DecPlace);o->valuedisplaydelta(16);} class Fl_Gauge } Fl_Box mg1rpm_G { label {MG1 RPM} xywh {692 538 110 37} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 189 align 17 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));o->valuefontsize(24);} code3 {int RealPlace=5; int DecPlace=0; o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box mg2rpm_G { label {MG2 RPM} xywh {695 462 110 37} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 125 align 17 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));o->valuefontsize(24);} code3 {int RealPlace=5; int DecPlace=0; o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Output clock_G { xywh {695 180 200 35} color 32 labelcolor 25 align 0 textfont 1 textsize 16 textcolor 149 hide deactivate code0 {char str[20];} code1 {getdatetimeclockstr(str);} code2 {o->value(str);} } Fl_Box psd_G { label PSD xywh {770 314 125 147} box ROUNDED_BOX color 30 labelfont 1 labelsize 18 labelcolor 195 align 17 hide deactivate code0 {o->min(-6500);o->max(6500);o->type(FL_GAUGE_PSD);o->v2mode(FL_GAUGE_V2_ON);} code1 {o->valuefontsize(12);o->framecolor(fl_darker(o->labelcolor()));o->pointercolorall(o->framecolor());} code2 {int rp=5,dp=0; o->valueplaces(rp,dp);} code3 {o->textcolor(fl_lighter(o->labelcolor()));o->textcolor0(o->textcolor());o->redlinestart(2000);o->greenzoneend(1800);o->greenzonestart(900);} class Fl_Gauge } Fl_Button go_button { label Go user_data {"Gauges"} callback go_button_CB xywh {800 481 93 94} type Toggle box ROUND_UP_BOX down_box ROUND_UP_BOX color 61 selection_color 73 labelfont 1 labelsize 24 labelcolor 51 } Fl_Box mpg_G { label MPG xywh {685 70 115 56} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 175 align 18 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box dtcdist_G { label {DTC dist} xywh {540 541 152 34} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 199 align 22 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(18);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box wTobd_G { label {wTobd(F)} xywh {560 144 124 64} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 250 align 17 code0 {o->valuefontsize(28);} class Fl_Gauge } Fl_Box odo_G { label ODO xywh {770 267 125 48} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 199 align 26 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(20);o->minmaxfontsize(10);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=2;o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box timeDelta_G { label {time delta (s)} xywh {341 484 199 44} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 199 align 26 hide deactivate code0 {o->type(FL_GAUGE_SQUARE_CLOCK);o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(28);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=6; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box mpgmean_G { label {avg MPG} xywh {685 0 120 70} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 175 align 18 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(36);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->pointercolor(fl_lighter(o->labelcolor()));} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box fuel_G { label {fuel(gal)} xywh {770 215 125 55} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 190 align 22 hide deactivate code0 {o->type(FL_GAUGE_LINEAR);o->max(11);o->min(0);o->step(1);o->stepdiv(0.5);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->greenzonestart(0);o->greenzoneend(2.7);} code2 {o->framecolor(fl_darker(o->labelcolor()));o->dialcolorG(FL_RED);o->textcolorG(FL_YELLOW);o->pointercolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=3; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->pointercolor0(fl_darker(o->labelcolor()));} class Fl_Gauge } Fl_Box load_G { label {LOAD(%)} xywh {435 76 95 64} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 173 align 18 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->valuedisplaydelta(0.1);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box acc_G { label acc xywh {340 374 110 110} box ROUNDED_BOX color 30 labelsize 12 labelcolor 133 align 17 hide deactivate code0 {o->type(FL_GAUGE_XY);o->min(-50);o->max(50);o->step(20);o->stepdiv(10);} code1 {int RealPlace=2; int DecPlace=0;o->valueplaces(RealPlace,DecPlace);} code2 {o->valuedisplaydelta(3);} class Fl_Gauge } Fl_Box aLR_G { label aLR xywh {361 333 79 41} box ROUNDED_BOX color 30 labelsize 12 labelcolor 93 align 17 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=2; int DecPlace=0; o->valueplaces(RealPlace,DecPlace);o->valuedisplaydelta(3);} class Fl_Gauge } Fl_Output shift_G { xywh {480 280 30 30} color 0 labelcolor 25 align 16 textfont 1 textsize 32 textcolor 149 hide deactivate code0 {o->value("?");} } Fl_Output light_G { xywh {480 245 30 30} box ROUND_DOWN_BOX color 0 labelcolor 25 align 16 textfont 1 textsize 32 textcolor 85 hide deactivate code0 {o->value("?");} } Fl_Output door_G { xywh {480 210 30 30} color 0 labelcolor 25 align 16 textfont 1 textsize 32 textcolor 121 hide deactivate code0 {o->value("?");} } Fl_Box trip_G { label Trip xywh {685 126 127 53} box ROUNDED_BOX color 30 labelfont 2 labelsize 10 labelcolor 247 align 26 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(36);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->pointercolor(fl_lighter(o->labelcolor()));} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=2;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box kW_G { label kW xywh {690 144 100 64} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 173 align 22 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->valuedisplaydelta(0.1);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box eff_G { label {eff(%)} xywh {535 76 105 64} box ROUNDED_BOX color 30 labelfont 2 labelsize 10 labelcolor 173 align 22 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->valuedisplaydelta(0.1);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box eff2_G { label {eff2(%)} xywh {625 249 65 42} box ROUNDED_BOX color 30 labelfont 2 labelsize 10 labelcolor 173 align 22 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->valuedisplaydelta(0.1);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box kW2_G { label kW2 xywh {795 144 97 64} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 173 align 22 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->valuedisplaydelta(0.1);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box gal_G { label gal xywh {440 529 100 46} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 175 align 18 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=5; int DecPlace=3;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box dhvBV_G { label {dhvBV(%)} xywh {590 400 99 76} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 218 align 17 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=3; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box hvFanV_G { label hvFanV xywh {695 479 95 86} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 61 align 18 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->pointercolor(fl_lighter(o->labelcolor()));} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=5; int DecPlace=2; o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box cost_G { label {fuel cost} xywh {340 528 100 47} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 175 align 18 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=5; int DecPlace=2;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box gph_G { label gph xywh {450 431 85 52} box ROUNDED_BOX color 30 labelfont 1 labelsize 12 labelcolor 175 align 18 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->valuedisplaydelta(0.01);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=5; int DecPlace=2;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box gaspdl_G { label gaspdl selected xywh {760 4 132 64} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 175 align 18 code0 {o->type(FL_GAUGE_SQRT);o->valuefontsize(28);o->min(-0.01);o->max(100);o->step(20);o->stepdiv(5);} code1 {o->pointercolor(fl_darker(o->labelcolor()));o->pointercolor0(fl_darker(o->labelcolor()));o->pointercolorR(FL_GREEN);o->pointercolorG(FL_CYAN);o->greenzonecolor(my_fl_dark_C);o->greenzonecolor0(my_fl_dark_C);} code2 {o->framecolor(fl_darker(o->labelcolor()));o->greenzonestart(0);o->greenzoneend(8);o->redlinestart(25);o->greenzonecolorG(my_fl_dark_blue);o->redlinecolorR(FL_DARK_RED);} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->valuedisplaydelta(0.4);o->textcolor(my_fl_dark_gray);o->textcolor0(my_fl_dark_gray);o->textcolorG(my_fl_dark_gray);o->textcolorR(my_fl_dark_gray);} class Fl_Gauge } Fl_Box brake_G { label brake xywh {758 76 132 64} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 167 align 18 code0 {o->type(FL_GAUGE_SQRT);o->valuefontsize(28);o->min(-128);o->max(0.01);o->step(32);o->stepdiv(8);} code1 {o->pointercolor(fl_darker(o->labelcolor()));o->pointercolor0(fl_darker(o->labelcolor()));o->pointercolorR(FL_YELLOW);o->pointercolorG(FL_MAGENTA);o->greenzonecolor(my_fl_dark_red);o->greenzonecolor0(my_fl_dark_red);} code2 {o->framecolor(fl_darker(o->labelcolor()));o->greenzonestart(-128);o->greenzoneend(-20);o->redlinestart(-5);o->greenzonecolorG(my_fl_dark_blue);o->redlinecolorR(FL_DARK_RED);} code3 {int RealPlace=2; int DecPlace=0;o->valueplaces(RealPlace,DecPlace);o->valuedisplaydelta(0.9);o->textcolor(my_fl_dark_gray);o->textcolor0(my_fl_dark_gray);o->textcolorG(my_fl_dark_gray);o->textcolorR(my_fl_dark_gray);} class Fl_Gauge } Fl_Box icekWt_G { label icekWt xywh {515 293 100 43} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 121 align 22 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->valuedisplaydelta(0.1);o->pointercolor(fl_lighter(o->labelcolor()));} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box frickW_G { label frickW xywh {615 333 80 42} box ROUNDED_BOX color 30 labelsize 10 labelcolor 173 align 22 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->valuedisplaydelta(0.1);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box frickW2_G { label frickW2 xywh {615 375 80 42} box ROUNDED_BOX color 30 labelsize 10 labelcolor 173 align 22 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->valuedisplaydelta(0.1);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box regenkW_G { label regenkW xywh {795 212 97 50} box ROUNDED_BOX color 30 labelsize 10 labelcolor 173 align 22 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->valuedisplaydelta(0.1);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box mg1kW_G { label {MG1 kW} xywh {590 212 99 50} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 189 align 22 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->valuedisplaydelta(0.1);o->pointercolor(fl_lighter(o->labelcolor()));} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box mg2kW_G { label {MG2 kW} xywh {693 212 99 50} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 125 align 22 code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);o->valuedisplaydelta(0.1);o->pointercolor(fl_lighter(o->labelcolor()));} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=4; int DecPlace=1;o->valueplaces(RealPlace,DecPlace);o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box psdpwr_G { label PSD xywh {695 219 74 242} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 195 align 17 hide deactivate code0 {o->min(-10);o->max(20);o->type(FL_GAUGE_PSDPWR);o->v2mode(FL_GAUGE_V2_ON);} code1 {o->valuefontsize(20);o->framecolor(fl_darker(o->labelcolor()));o->pointercolorall(o->framecolor());} code2 {int rp=4,dp=1; o->valueplaces(rp,dp);o->greenzonemode(FL_GAUGE_GZ_OFF);o->redlinemode(FL_GAUGE_RL_OFF);} code3 {o->textcolor(fl_lighter(o->labelcolor()));o->textcolor0(o->textcolor());o->fontface(o->labelfont());} class Fl_Gauge } Fl_Box linepers_G { label {line/s} xywh {150 301 90 36} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 125 align 22 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));o->valuefontsize(24);} code3 {int RealPlace=5; int DecPlace=0; o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box reqpers_G { label {req/s} xywh {150 338 90 36} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 125 align 22 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));o->valuefontsize(24);} code3 {int RealPlace=5; int DecPlace=0; o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Box odoint_G { label {ODO int} xywh {540 507 145 33} box ROUNDED_BOX color 30 labelfont 1 labelsize 10 labelcolor 199 align 22 hide deactivate code0 {o->greenzonemode(FL_GAUGE_GZ_OFF);o->valuefontsize(24);} code1 {o->redlinemode(FL_GAUGE_RL_OFF);} code2 {o->framecolor(fl_darker(o->labelcolor()));} code3 {int RealPlace=6; int DecPlace=0;o->valueplaces(RealPlace,DecPlace);} class Fl_Gauge } Fl_Output lockup_G { xywh {650 473 30 30} color 0 labelcolor 25 align 16 textfont 1 textsize 32 textcolor 88 hide deactivate code0 {o->value(" ");} } } code {int RealPlace=5;int DecPlace=1;iceT_G->valueplaces(RealPlace,DecPlace); iceT_G->v2mode(FL_GAUGE_V2_ON); iceT_G->framecolor(fl_darker(iceT_G->labelcolor())); iceT_G->v2color(wT_G->labelcolor()); // since we draw wT here as value 2 iceT_G->valuefontsize(48); wT_G->max(205);wT_G->min(110);//wT_G->step(10);wT_G->stepdiv(5); wT_G->type(FL_GAUGE_SQUARE);//_DIGITAL); wT_G->redlinestart(190);wT_G->greenzoneend(157);wT_G->greenzonestart(30); RealPlace=5; DecPlace=1;wT_G->valueplaces(RealPlace,DecPlace); wT_G->pointercolor(wT_G->labelcolor());wT_G->pointercolor0(wT_G->labelcolor()); wT_G->pointercolorG(FL_GREEN);wT_G->pointercolorR(FL_RED); wT_G->framecolor(fl_darker(wT_G->labelcolor())); wTobd_G->max(205);wTobd_G->min(110);//wTobd_G->step(10);wTobd_G->stepdiv(5); wTobd_G->type(FL_GAUGE_SQUARE);//_DIGITAL); wTobd_G->redlinestart(190);wTobd_G->greenzoneend(157);wTobd_G->greenzonestart(30); RealPlace=5; DecPlace=1;wTobd_G->valueplaces(RealPlace,DecPlace); wTobd_G->pointercolor(wTobd_G->labelcolor());wTobd_G->pointercolor0(wTobd_G->labelcolor()); wTobd_G->pointercolorG(FL_GREEN);wTobd_G->pointercolorR(FL_RED); wTobd_G->framecolor(fl_darker(wTobd_G->labelcolor()));} {} code {speed_G->max(200);speed_G->min(0);//speed_G->step(200);speed_G->stepdiv(100); RealPlace=2; DecPlace=0;speed_G->valueplaces(RealPlace,DecPlace); speed_G->pointercolor(speed_G->labelcolor());speed_G->pointercolor0(speed_G->labelcolor()); speed_G->pointercolorG(FL_GREEN);speed_G->pointercolorR(FL_YELLOW); speed_G->fontface(speed_G->labelfont()); speed_G->framecolor(fl_darker(speed_G->labelcolor())); amp_G->max(100);amp_G->min(-100);amp_G->step(20);amp_G->stepdiv(5); amp_G->type(FL_GAUGE_SQRT);//_LINEAR);//_DIGITAL); amp_G->greenzonestart(-100);amp_G->greenzoneend(-8);amp_G->redlinestart(8); RealPlace=5; DecPlace=1;amp_G->valueplaces(RealPlace,DecPlace); amp_G->greenzonecolorG(my_fl_dark_blue);amp_G->redlinecolorR(FL_DARK_RED); amp_G->pointercolor(FL_WHITE);amp_G->pointercolor0(FL_WHITE); amp_G->pointercolorR(FL_YELLOW);amp_G->pointercolorG(FL_CYAN); amp_G->textcolor(my_fl_dark_gray);amp_G->textcolor0(my_fl_dark_gray); amp_G->textcolorG(my_fl_dark_gray);amp_G->textcolorR(my_fl_dark_gray); amp_G->valuefontsize(42); soc_G->max(100);soc_G->min(0);//soc_G->step(10);soc_G->stepdiv(5); soc_G->type(FL_GAUGE_SQUARE);//_DIGITAL); soc_G->redlinestart(65);soc_G->greenzoneend(50);soc_G->greenzonestart(0); RealPlace=4; DecPlace=1;soc_G->valueplaces(RealPlace,DecPlace); //soc_G->greenzonecolor(FL_BLUE);soc_G->greenzonecolor0(FL_BLUE); soc_G->pointercolorG(FL_MAGENTA);soc_G->pointercolorR(FL_GREEN); soc_G->pointercolor(/*FL_BLUE*/my_fl_light_gray);soc_G->pointercolor0(/*FL_BLUE*/my_fl_light_gray); soc_G->valuefontsize(42); soc_G->framecolor(fl_darker(soc_G->labelcolor()));} {} code {rpm_G->max(2200);rpm_G->min(800);rpm_G->step(200);rpm_G->stepdiv(100); rpm_G->redlinestart(2050);rpm_G->greenzoneend(2000);rpm_G->greenzonestart(900); RealPlace=4; DecPlace=0;rpm_G->valueplaces(RealPlace,DecPlace); rpm_G->v2mode(FL_GAUGE_V2_ON); rpm_G->scaleplaces(RealPlace,DecPlace); rpm_G->framecolor(fl_darker(rpm_G->labelcolor())); rpm_G->v2color(rpmt_G->labelcolor()); // since we draw rpmt here as value 2 rpm_G->valuefontsize(48); ign_G->max(19);ign_G->min(9);//ign_G->step(10);ign_G->stepdiv(5); ign_G->type(FL_GAUGE_DIGITAL);//_DIGITAL); ign_G->redlinestart(18);ign_G->greenzoneend(15);ign_G->greenzonestart(13); RealPlace=4; DecPlace=1;ign_G->valueplaces(RealPlace,DecPlace); ign_G->greenzonecolor(FL_BLUE);ign_G->greenzonecolor0(FL_BLUE); ign_G->textcolorG(FL_GREEN);} {} } Function {show()} {open } { code {gauges_window->show();} {} } } Function {make_about_window()} {open } { code {Fl_Text_Buffer *buff = new Fl_Text_Buffer(); buff->text(LicText);} {} Fl_Window about_window { label {About - PriiDash(TM)} open xywh {91 124 785 505} type Double hide } { Fl_Scroll {} {open xywh {5 0 777 450} box FLAT_BOX color 50 } { Fl_Text_Display about_textdisplay { label {License Agreement} xywh {7 31 773 342} box BORDER_FRAME color 54 labelfont 9 labelsize 18 labelcolor 59 code1 {o->buffer(buff);} } Fl_Button accept_button { label {Accept License} callback {QuitShowLic=true; FILE *fp; fp = fopen("LicRead.txt","w"); // if (fp==NULL){printf("!!! Error creating \\"LicRead.txt\\"!!!");} ((Fl_Window*)((o->parent())->parent()))->hide();} xywh {305 379 195 66} color 63 labelfont 9 labelsize 20 } } Fl_Output homepage_txt { label {PriiDash(TM) Home Page:} xywh {335 477 305 26} box FLAT_BOX color 23 labelfont 1 textfont 1 code0 {o->value("http://priidash.sourceforge.net/");} } } }