-
Notifications
You must be signed in to change notification settings - Fork 1
/
UI.fl
1730 lines (1720 loc) · 65.6 KB
/
UI.fl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# data file for the Fltk User Interface Designer (fluid)
header_name {.h}
code_name {.cxx}
decl {\#ifdef WIN32
\# pragma warning( disable : 4311 4312 4244 4267 4800)
\#endif} {public global
}
decl {class ModelViewController;} {public global
}
class GUI {open
} {
Function {GUI()} {open
} {
Fl_Window mainWindow {
label {RepSnapper by Kulitorum www.kulitorum.com} open
xywh {452 69 1290 837} type Double box UP_BOX color 39 selection_color 39 labelsize 12 hide resizable
} {
Fl_Box MVC {
label {An instace of ModelViewController}
xywh {10 25 700 805} box UP_BOX align 16
code0 {\#include "config.h"
\#include "stdafx.h"
\#include "File.h"}
code1 {\#ifndef M_PI
\#define M_PI 3.14159265358979323846
\#endif}
class ModelViewController
}
Fl_Tabs Tabs {
callback {// here} open
xywh {710 5 575 825} align 5 when 1
} {
Fl_Group {} {
label Simple open selected
xywh {715 25 555 765}
} {
Fl_Group {} {
label Model open
xywh {720 157 530 139} box ENGRAVED_FRAME color 39
} {
Fl_Button {} {
label {Load STL}
callback {FileChooser::ioDialog (MVC, FileChooser::OPEN, FileChooser::STL, true);}
xywh {735 175 145 25}
}
Fl_Button {} {
label {Convert to GCode}
callback {MVC->ConvertToGCode();}
xywh {735 205 145 25}
}
Fl_Text_Display {} {
label {Then you want to load an STL model}
xywh {880 175 15 25} box NO_BOX align 8
}
Fl_Text_Display {} {
label {And convert it into GCODE}
xywh {880 205 15 25} box NO_BOX align 8
}
Fl_Button {} {
label {Load GCode}
callback {FileChooser::ioDialog (MVC, FileChooser::OPEN, FileChooser::GCODE);}
xywh {735 255 145 25}
}
Fl_Text_Display {} {
label {Or just load previously generated GCODE directly}
xywh {880 255 15 25} box NO_BOX align 8
}
Fl_Box {} {
label {-----------------------------------------------------------------------------------------------------}
xywh {730 230 510 25}
}
}
Fl_Group {} {
label Printer
xywh {720 47 535 88} box ENGRAVED_FRAME color 39
} {
Fl_Value_Input SerialSpeedInputSimple {
label {Speed:}
callback {MVC->setSerialSpeed(o->value());}
xywh {1040 97 205 24}
}
Fl_Light_Button ConnectToPrinterSimpleButton {
label {Connect to printer}
callback {MVC->serialConnected();
MVC->ConnectToPrinter(o->value());}
xywh {735 61 145 25} selection_color 2
}
Fl_Text_Display {} {
label {First lets connect to the printer}
xywh {885 60 15 25} box NO_BOX align 8
}
Fl_Input_Choice portInputSimple {
label {Port:}
callback {MVC->setPort(std::string(o->input()->value()));} open
xywh {770 95 215 25} when 1
} {
MenuItem {} {
label COM1
user_data 1 user_data_type long
xywh {20 20 100 20} value 1
}
MenuItem {} {
label COM2
user_data 2 user_data_type long
xywh {30 30 100 20} value 1
}
MenuItem {} {
label COM3
user_data 3 user_data_type long
xywh {40 40 100 20} value 1
}
MenuItem {} {
label COM4
user_data 4 user_data_type long
xywh {50 50 100 20} value 1
}
MenuItem {} {
label COM5
user_data 5 user_data_type long
xywh {60 60 100 20} value 1
}
MenuItem {} {
label COM6
user_data 6 user_data_type long
xywh {70 70 100 20} value 1
}
MenuItem {} {
label COM7
user_data 7 user_data_type long
xywh {80 80 100 20} value 1
}
MenuItem {} {
label COM8
user_data 8 user_data_type long
xywh {90 90 100 20} value 1
}
MenuItem {} {
label COM9
user_data 8 user_data_type long
xywh {100 100 100 20} value 1
}
}
}
Fl_Group {} {
label Print open
xywh {720 329 535 56} box ENGRAVED_FRAME color 39
} {
Fl_Text_Display {} {
label {Make a print}
xywh {885 342 15 25} box NO_BOX align 8
}
Fl_Button {} {
label Print
callback {MVC->SimplePrint();}
xywh {735 342 145 25}
}
}
Fl_Group {} {
label Calibrate open
xywh {720 416 535 54} box ENGRAVED_FRAME color 39
} {
Fl_Text_Display {} {
label {Makes a test print with various settings. (Disabled)}
xywh {885 429 15 25} box NO_BOX align 8
}
Fl_Button {} {
label {Calibration Print}
xywh {735 429 145 25} labelcolor 29
}
}
}
Fl_Group {} {
label {Input file} open
xywh {715 25 560 790} hide
} {
Fl_Button {} {
label {Load STL}
callback {FileChooser::ioDialog (MVC, FileChooser::OPEN, FileChooser::STL);}
xywh {725 35 130 25}
}
Fl_Light_Button FixSTLerrorsButton {
label {Fix STL errors}
callback {MVC->redraw()}
xywh {995 35 135 25} value 1 selection_color 63
}
Fl_Button {} {
label {Save STL}
callback {FileChooser::ioDialog (MVC, FileChooser::SAVE, FileChooser::STL);}
xywh {855 35 135 25} deactivate
}
Fl_Group {} {
label {Object rotation} open
xywh {720 740 535 50} box FLAT_BOX color 39
} {
Fl_Button AutoRotateButton {
label {Auto rotate}
callback {MVC->OptimizeRotation();
MVC->CalcBoundingBoxAndZoom();
MVC->redraw();}
xywh {730 750 125 25}
}
Fl_Button RotateXButton {
label {Rotate X}
callback {MVC->RotateObject(1,0,0, (float)(M_PI/4));
MVC->CalcBoundingBoxAndZoom();
MVC->redraw();}
xywh {860 750 125 25}
}
Fl_Button RotateYButton {
label {Rotate Y}
callback {MVC->RotateObject(0,1,0, (float)(M_PI/4));
MVC->CalcBoundingBoxAndZoom();
MVC->redraw();}
xywh {990 750 125 25}
}
Fl_Button RotateZButton {
label {Rotate Z}
callback {MVC->RotateObject(0,0,1, (float)(M_PI/4));
MVC->CalcBoundingBoxAndZoom();
MVC->redraw();}
xywh {1120 750 125 25}
}
}
Fl_Button {} {
label {Save settings}
callback {MVC->ProcessControl.SaveSettings();}
xywh {1130 35 135 25}
}
Fl_Button {} {
label {Load RFO}
callback {FileChooser::ioDialog (MVC, FileChooser::OPEN, FileChooser::RFO);}
xywh {725 65 130 25}
}
Fl_Box RFP_Browser {
label {RFO file}
callback {MVC->redraw();}
xywh {725 125 355 440} box UP_BOX align 16 when 1 resizable
code0 {\#include "Flu_Tree_Browser.h"}
class Flu_Tree_Browser
}
Fl_Group {} {
label Translate open
xywh {1085 165 180 40} box ENGRAVED_FRAME color 39
} {
Fl_Value_Input TranslateX {
label X
callback {MVC->Translate("X", o->value());}
xywh {1100 176 45 23} minimum -300 maximum 300 step 0.1
}
Fl_Value_Input TranslateY {
label Y
callback {MVC->Translate("Y", o->value());}
xywh {1160 177 45 23} minimum -300 maximum 300 step 0.1
}
Fl_Value_Input TranslateZ {
label Z
callback {MVC->Translate("Z", o->value());}
xywh {1215 177 45 23} minimum -300 maximum 300 step 0.01
}
}
Fl_Group {} {
label Rotate open
xywh {1085 230 180 40} box ENGRAVED_FRAME color 39
} {
Fl_Value_Input RotateX {
label X
callback {MVC->RotateObject(1,0,0, o->value());}
xywh {1100 241 45 23} minimum -360 maximum 360 step 1
}
Fl_Value_Input RotateY {
label Y
callback {MVC->RotateObject(0,1,0, o->value());}
xywh {1160 242 45 23} minimum -360 maximum 360 step 1
}
Fl_Value_Input RotateZ {
label Z
callback {MVC->RotateObject(0,0,1, o->value());}
xywh {1215 242 45 23} minimum -360 maximum 360 step 1
}
}
Fl_Group {} {
label Scale open
xywh {1085 290 180 70} box ENGRAVED_FRAME color 39
} {
Fl_Value_Input ScaleX {
label X
callback {MVC->Scale("X", o->value());}
xywh {1100 301 45 23} minimum -100 maximum 100 step 0.01 value 1
}
Fl_Value_Input ScaleY {
label Y
callback {MVC->Scale("Y", o->value());}
xywh {1160 302 45 23} minimum -100 maximum 100 step 0.01 value 1
}
Fl_Value_Input ScaleZ {
label Z
callback {MVC->Scale("Z", o->value());}
xywh {1215 302 45 23} minimum -100 maximum 100 step 0.01 value 1
}
Fl_Light_Button ScaleAllAxies {
label {All axis}
xywh {1100 330 160 20} value 1 selection_color 2
}
}
Fl_Input FileLocationInput {
label {File location}
callback {MVC->setFileLocation(o->value());}
xywh {1085 421 180 24} align 5
}
Fl_Input FileTypeInput {
label Filetype
callback {MVC->setFileType(o->value());}
xywh {1085 466 180 24} align 5
}
Fl_Input FileMaterialInput {
label {File material}
callback {MVC->setFileMaterial(o->value());}
xywh {1085 511 180 24} align 5
}
Fl_Input ObjectNameInput {
label {Object name}
callback {MVC->setObjectname(o->value());}
xywh {1085 376 180 24} align 5
}
Fl_Button {} {
label {New RFO Object}
callback {MVC->newObject();}
xywh {855 65 135 25}
}
Fl_Button {} {
label {Save RFO}
callback {FileChooser::ioDialog (MVC, FileChooser::SAVE, FileChooser::RFO);}
xywh {1130 95 135 25}
}
Fl_Button {} {
label Delete
callback {MVC->ProcessControl.rfo.DeleteSelected(MVC);}
xywh {995 95 135 25}
}
Fl_Button {} {
label Duplicate
callback {MVC->Duplicate();}
xywh {1130 125 135 25}
}
Fl_Button {} {
label {Save Settings As...}
callback {Fl_File_Chooser chooser(MVC->ProcessControl.SettingsPath.c_str(), "*.xml", Fl_File_Chooser::SINGLE|Fl_File_Chooser::CREATE, "Save Settings As...");
chooser.show();
while (chooser.shown())
Fl::wait();
if(chooser.value() == 0)
return;
std::string dir(chooser.value());
if(dir.length())
{
MVC->ProcessControl.SettingsPath = dir;
MVC->ProcessControl.SaveSettingsAs(dir);
};}
xywh {1130 65 135 25}
}
Fl_Button {} {
label {Load Settings...}
callback {Fl_File_Chooser chooser(MVC->ProcessControl.SettingsPath.c_str(), "*.xml", Fl_File_Chooser::SINGLE, "Load settings as...");
chooser.show();
while (chooser.shown())
Fl::wait();
if(chooser.value() == 0)
return;
std::string dir(chooser.value());
if(dir.length())
{
MVC->ProcessControl.SettingsPath = dir;
MVC->ProcessControl.LoadXML(dir);
MVC->CopySettingsToGUI();
};}
xywh {995 65 135 25}
}
}
Fl_Group {} {
label {Print options} open
xywh {710 25 555 755} hide
} {
Fl_Group {} {
label Infill open
xywh {720 50 535 170} box ENGRAVED_FRAME color 39
} {
Fl_Value_Slider InfillRotationSlider {
label Rotation
callback {MVC->SetInfillRotation(o->value());}
xywh {730 110 515 20} type {Horz Knob} selection_color 2 align 5 maximum 360 step 1 value 45 textsize 14
}
Fl_Value_Slider InfillRotationPrLayerSlider {
label {InFill Rotation pr. Layer}
callback {MVC->SetInfillRotationPrLayer(o->value());}
xywh {730 150 515 20} type {Horz Knob} selection_color 2 align 5 maximum 360 step 1 value 90 textsize 14
}
Fl_Value_Slider InfillDistanceSlider {
label {Infill Distance}
callback {MVC->SetInfillDistance(o->value());}
xywh {730 190 515 20} type {Horz Knob} selection_color 2 align 5 minimum 0.1 maximum 10 step 0.1 value 2 textsize 14
}
Fl_Light_Button ShellOnlyButton {
label {Shell Only - no infill}
callback {MVC->SetShellOnly(o->value());}
xywh {730 70 255 20} selection_color 63
}
Fl_Value_Slider ShellCountSlider {
label {Shell count}
callback {MVC->SetShellCount(o->value());}
xywh {990 70 255 20} type {Horz Knob} selection_color 2 align 5 minimum 1 maximum 10 step 1 value 1 textsize 14
}
}
Fl_Group {} {
label {Shrinking quality} open
xywh {725 460 535 110} box ENGRAVED_FRAME color 2
} {
Fl_Choice shrinkAlgorithm {
label {Shrinking Algorithm:} open
xywh {870 475 270 25} down_box BORDER_BOX
} {
MenuItem {} {
label {Fast, can have errors}
callback {MVC->SetShrinkQuality("Fast");
MVC->redraw();}
xywh {5 5 30 20}
}
MenuItem {} {
label {Much slower, perfect, small details}
callback {MVC->SetShrinkQuality("Nice");
MVC->redraw();}
xywh {15 15 30 20}
}
MenuItem {} {
label {Logick's Algorithm}
callback {MVC->SetShrinkQuality("Logick");
MVC->redraw();}
xywh {15 15 30 20}
}
}
Fl_Value_Slider OptimizationSlider {
label Optimization
callback {MVC->SetOptimization(o->value());}
xywh {735 540 515 20} type {Horz Knob} selection_color 2 align 5 minimum 0.001 step 0.001 value 0.05 textsize 14
}
}
Fl_Group {} {
label {Alternate Infill Layers} open
xywh {720 240 535 120} box ENGRAVED_FRAME color 39
} {
Fl_Input AltInfillLayersInput {
label Layers
callback {MVC->SetAltInfillLayersText(o->value());}
xywh {780 290 465 25}
}
Fl_Text_Display {} {
label {Comma separated layer numbers, 0 is the lowest layer, -1 is the highest}
xywh {720 245 10 25} box NO_BOX align 8
}
Fl_Text_Display {} {
label {(eg. 0,1,-1,-2 means the top and bottom two layers)}
xywh {720 265 10 25} box NO_BOX align 8
}
Fl_Value_Slider AltInfillDistanceSlider {
label {Infill Distance}
callback {MVC->SetAltInfillDistance(o->value());}
xywh {735 330 515 20} type {Horz Knob} selection_color 2 align 5 minimum 0.1 maximum 10 step 0.1 value 2 textsize 14
}
}
Fl_Button {} {
label {Printer Settings}
callback {printerSettingsWindow->show();}
xywh {725 580 535 25}
}
Fl_Group {} {
label Raft open
xywh {725 380 535 45} box ENGRAVED_FRAME color 39
} {
Fl_Light_Button RaftEnableButton {
label Enable
callback {MVC->SetRaftEnable(o->value());
MVC->redraw();}
xywh {730 390 170 25}
}
Fl_Light_Button {} {
label Preview
callback {MVC->SetApronPreview(o->value());}
xywh {1075 390 175 25} deactivate
}
Fl_Button {} {
label {Raft Settings}
callback {raftSettingsWindow->show();}
xywh {905 390 165 25}
}
}
}
Fl_Group {} {
label GCode open
xywh {715 25 540 790} hide
} {
Fl_Button {} {
label {Load Gcode}
callback {FileChooser::ioDialog (MVC, FileChooser::OPEN, FileChooser::GCODE);}
xywh {715 75 145 25}
code0 {\#include <FL/Fl_File_Chooser.H>}
}
Fl_Output GCodeLengthText {
xywh {865 76 225 24}
}
Fl_Button {} {
label {Convert to GCode}
callback {MVC->ConvertToGCode();}
xywh {715 45 145 25}
}
Fl_Tabs {} {open
xywh {715 105 525 710} color 66 selection_color 31
} {
Fl_Text_Editor GCodeStart {
label Start
xywh {715 125 525 690} selection_color 31 hide
code0 {Fl_Text_Buffer *startbuff = new Fl_Text_Buffer();}
code1 {o->buffer(startbuff);}
}
Fl_Text_Editor GCodeLayer {
label {Next layer}
xywh {715 125 525 690} selection_color 31 hide
code0 {Fl_Text_Buffer *layerbuff = new Fl_Text_Buffer();}
code1 {o->buffer(layerbuff);}
}
Fl_Text_Editor GCodeEnd {
label {End code}
xywh {715 125 525 690} selection_color 31 hide
code0 {Fl_Text_Buffer *endbuff = new Fl_Text_Buffer();}
code1 {o->buffer(endbuff);}
}
Fl_Text_Editor GCodeResult {
label Result
xywh {715 125 525 690} selection_color 31
code0 {Fl_Text_Buffer *resultbuff = new Fl_Text_Buffer();}
code1 {o->buffer(resultbuff);}
}
}
Fl_Button {} {
label {Save Gcode}
callback {FileChooser::ioDialog (MVC, FileChooser::SAVE, FileChooser::GCODE);}
xywh {1095 75 145 25}
code0 {\#include <FL/Fl_File_Chooser.H>}
}
}
Fl_Group {} {
label {Display options} open
xywh {715 25 545 805} color 47 hide
} {
Fl_Group {} {
label {STL rendering} open
xywh {715 45 535 305} box ENGRAVED_FRAME color 39
} {
Fl_Light_Button DisplayPolygonsButton {
label {Display Polygons}
callback {MVC->SetDisplayPolygons(o->value());}
xywh {750 55 220 20} value 1 selection_color 63
}
Fl_Light_Button DisplayWireframeButton {
label {Display Wireframe}
callback {MVC->SetDisplayWireframe(o->value());}
xywh {1015 55 140 20} selection_color 63
}
Fl_Light_Button DisplayNormalsButton {
label {Display Normals}
callback {MVC->SetDisplayNormals(o->value());}
xywh {750 180 220 20} selection_color 63
}
Fl_Light_Button DisplayEndpointsButton {
label {Display Endpoints}
callback {MVC->SetDisplayEndpoints(o->value());}
xywh {1015 180 220 20} selection_color 63
}
Fl_Value_Slider PolygonValSlider {
label Val
callback {MVC->SetPolygonVal(o->value());
MVC->redraw();}
xywh {750 120 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider PolygonSatSlider {
label Sat
callback {MVC->SetPolygonSat(o->value());
MVC->redraw();}
xywh {750 100 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider PolygonHueSlider {
label Hue
callback {MVC->SetPolygonHue(o->value());
MVC->redraw();}
xywh {750 80 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider WireframeValSlider {
label Val
callback {MVC->SetWireframeVal(o->value());
MVC->redraw();}
xywh {1015 120 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider WireframeSatSlider {
label Sat
callback {MVC->SetWireframeSat(o->value());
MVC->redraw();}
xywh {1015 100 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider WireframeHueSlider {
label Hue
callback {MVC->SetWireframeHue(o->value());
MVC->redraw();}
xywh {1015 80 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider NormalValSlider {
label Val
callback {MVC->SetNormalsVal(o->value());
MVC->redraw();}
xywh {750 245 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider NormalSatSlider {
label Sat
callback {MVC->SetNormalsSat(o->value());
MVC->redraw();}
xywh {750 225 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider NormalHueSlider {
label Hue
callback {MVC->SetNormalsHue(o->value());
MVC->redraw();}
xywh {750 205 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider EndpointValSlider {
label Val
callback {MVC->SetEndpointsVal(o->value());
MVC->redraw();}
xywh {1015 245 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider EndpointSatSlider {
label Sat
callback {MVC->SetEndpointsSat(o->value());
MVC->redraw();}
xywh {1015 225 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider EndpointHueSlider {
label Hue
callback {MVC->SetEndpointsHue(o->value());
MVC->redraw();}
xywh {1015 205 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Light_Button DisplayBBoxButton {
label {Display Bounding Box}
callback {MVC->SetDisplayBBox(o->value());}
xywh {750 325 220 20} selection_color 63
}
Fl_Value_Slider HighlightSlider {
label Highlight
callback {MVC->SetHighlight(o->value());
MVC->redraw();}
xywh {1015 325 220 20} type {Horz Knob} selection_color 2 align 5 value 0.5 textsize 14
}
Fl_Value_Slider NormalLengthSlider {
label {Normals length}
callback {MVC->SetNormalsLength(o->value());
MVC->redraw();}
xywh {750 285 220 20} type {Horz Knob} selection_color 2 align 5 minimum 1 maximum 30 step 0.1 value 10 textsize 14
}
Fl_Value_Slider EndpointSizeSlider {
label {Endpoints size}
callback {MVC->SetEndPointSize(o->value());
MVC->redraw();}
xywh {1015 285 220 20} type {Horz Knob} selection_color 2 align 5 minimum 1 maximum 20 step 0.1 value 8 textsize 14
}
Fl_Light_Button DisplayWireframeShadedButton {
label Shaded
callback {MVC->SetDisplayWireframeShaded(o->value());}
xywh {1160 55 75 20} selection_color 63
}
Fl_Value_Slider PolygonOpasitySlider {
label Opa
callback {MVC->SetPolygonOpasity(o->value());
MVC->redraw();}
xywh {750 140 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
}
Fl_Group {} {
label {GCode rendering} open
xywh {715 370 535 175} box ENGRAVED_FRAME color 39
} {
Fl_Light_Button DisplayGCodeButton {
label {Display GCode}
callback {MVC->SetDisplayGCode(o->value());
MVC->redraw();}
xywh {750 380 220 20} value 1 selection_color 63
}
Fl_Value_Slider GCodeExtrudeValSlider {
label Val
callback {MVC->SetGCodeExtrudeVal(o->value());
MVC->redraw();}
xywh {750 445 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider GCodeExtrudeSatSlider {
label Sat
callback {MVC->SetGCodeExtrudeSat(o->value());
MVC->redraw();}
xywh {750 425 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider GCodeExtrudeHueSlider {
label Hue
callback {MVC->SetGCodeExtrudeHue(o->value());
MVC->redraw();}
xywh {750 405 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Light_Button LuminanceShowsSpeedButton {
label {Luminance shows speed}
callback {MVC->SetLuminanceShowsSpeed(o->value());
MVC->redraw();}
xywh {1015 380 220 20} value 1 selection_color 63
}
Fl_Button {} {
label {Crop Range}
callback {float start = GCodeDrawStartSlider->value();
float end = GCodeDrawEndSlider->value();
GCodeDrawStartSlider->range(start,end);
GCodeDrawEndSlider->range(start,end);
GCodeDrawStartSlider->redraw();
GCodeDrawEndSlider->redraw();}
xywh {750 520 220 20}
}
Fl_Button {} {
label {Reset crop range}
callback {GCodeDrawStartSlider->range(0,1);
GCodeDrawEndSlider->range(0,1);
GCodeDrawStartSlider->redraw();
GCodeDrawEndSlider->redraw();}
xywh {1020 520 220 20}
}
Fl_Slider GCodeDrawStartSlider {
label From
callback {MVC->SetGCodeDrawStart(o->value());}
xywh {750 470 490 20} type {Horz Knob} color 39 selection_color 2 align 4
}
Fl_Slider GCodeDrawEndSlider {
label To
callback {MVC->SetGCodeDrawEnd(o->value());}
xywh {750 495 490 20} type {Horz Knob} color 39 selection_color 2 align 4
}
Fl_Value_Slider GCodeMoveValSlider {
label Val
callback {MVC->SetGCodeMoveVal(o->value());
MVC->redraw();}
xywh {1015 445 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider GCodeMoveSatSlider {
label Sat
callback {MVC->SetGCodeMoveSat(o->value());
MVC->redraw();}
xywh {1015 425 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
Fl_Value_Slider GCodeMoveHueSlider {
label Hue
callback {MVC->SetGCodeMoveHue(o->value());
MVC->redraw();}
xywh {1015 405 220 20} type {Horz Knob} selection_color 2 align 4 value 0.5 textsize 14
}
}
Fl_Group {} {
label {Layer preview} open
xywh {715 565 540 120} box ENGRAVED_FRAME color 39
} {
Fl_Value_Slider CuttingPlaneValueSlider {
label Cuttingplane
callback {MVC->SetCuttingPlaneValue(o->value());}
xywh {725 615 515 20} type {Horz Knob} align 5 value 0.5 textsize 14
}
Fl_Light_Button DisplayCuttingPlaneButton {
label {Display CuttingPlane}
callback {MVC->SetDisplayCuttingPlane(o->value());}
xywh {725 575 170 20} selection_color 63
}
Fl_Light_Button DisplayinFillButton {
label {Display inFill}
callback {MVC->SetDisplayinFill(o->value());}
xywh {900 575 165 20} selection_color 63
}
Fl_Light_Button DisplayAllLayersButton {
label {Display all layers}
callback {MVC->SetDisplayAllLayers(o->value());}
xywh {1070 575 170 20} selection_color 63
}
Fl_Light_Button DrawCuttingPlaneVertexNumbersButton {
label {Vertex numbers}
callback {MVC->SetDrawCuttingPlaneVertexNumbers(o->value());}
xywh {725 645 180 25} selection_color 63
}
Fl_Light_Button DrawCuttingPlaneLineNumbersButton {
label {Line numbers}
callback {MVC->SetDrawCuttingPlaneLineNumbers(o->value());}
xywh {910 645 160 25} selection_color 63
}
Fl_Light_Button DrawCuttingPlanePolygonNumbersButton {
label {Polygon numbers}
callback {MVC->SetDrawCuttingPlanePolyNumbers(o->value());}
xywh {1075 645 165 25} selection_color 63
}
}
Fl_Group {} {
label Lights open
xywh {715 695 540 70} box ENGRAVED_FRAME color 39
} {
Fl_Light_Button {} {
label {Enable light 0}
callback {MVC->SetEnableLight(0, o->value());}
xywh {725 710 120 20} value 1 selection_color 63
}
Fl_Light_Button {} {
label {Enable light 1}
callback {MVC->SetEnableLight(1, o->value());}
xywh {725 735 120 20} selection_color 63
}
Fl_Light_Button {} {
label {Enable light 2}
callback {MVC->SetEnableLight(2, o->value());}
xywh {985 710 120 20} selection_color 63
}
Fl_Light_Button {} {
label {Enable light 3}
callback {MVC->SetEnableLight(3, o->value());}
xywh {985 735 120 20} value 1 selection_color 63
}
Fl_Button {} {
label {Edit light 0}
xywh {850 710 130 20} deactivate
}
Fl_Button {} {
label {Edit light 1}
xywh {850 735 130 20} deactivate
}
Fl_Button {} {
label {Edit light 2}
xywh {1110 710 130 20} deactivate
}
Fl_Button {} {
label {Edit light 3}
xywh {1110 735 130 20} deactivate
}
}
Fl_Light_Button DisplayDebuginFillButton {
label {Display Debug inFill}
callback {MVC->SetDisplayDebuginFill(o->value());}
xywh {800 795 145 25} selection_color 63
}
Fl_Light_Button DisplayDebugButton {
label Debug
callback {if(o->value())
{
DisplayDebuginFillButton->show();
ExamineSlider->show();
}
else
{
DisplayDebuginFillButton->hide();
ExamineSlider->hide();
}
MVC->redraw();}
xywh {725 795 70 25} selection_color 63
}
Fl_Light_Button DrawVertexNumbersButton {
label {Draw vertex numbers}
callback {MVC->SetDrawVertexNumbers(o->value());}
xywh {950 795 155 25} selection_color 63
}
Fl_Light_Button DrawLineNumbersButton {
label {Draw line numbers}
callback {MVC->SetDrawLineNumbers(o->value());}
xywh {1105 795 155 25} selection_color 63
}
Fl_Value_Slider ExamineSlider {
label Examine
callback {MVC->SetExamine(o->value());}
xywh {785 770 470 20} type Horizontal align 4 step 0.001 value 0.098 textsize 14
}
}
Fl_Group PrintTab {
label Print open
xywh {710 25 575 805} color 47 hide
} {
Fl_Tabs {} {open
xywh {710 230 575 600}
} {
Fl_Group {} {
label {Communication Logs} open
xywh {710 255 575 575} hide
} {
Fl_Tabs {} {open
xywh {710 260 570 470}
} {
Fl_Group {} {
label {Communication Log} open
xywh {715 285 565 445}
} {
Fl_Browser CommunationLog {
label {Errors / warnings}
xywh {715 290 560 435} selection_color 31 align 16
code0 {\#include <FL/Fl_Multi_Browser.H>}
class Fl_Multi_Browser
}
}
Fl_Group {} {
label {Errors / warnings} open
xywh {710 285 565 445} hide
} {
Fl_Browser ErrorLog {
label {Errors / warnings}
xywh {715 290 560 435} selection_color 31 align 16
code0 {\#include <FL/Fl_Multi_Browser.H>}
class Fl_Multi_Browser
}
}
Fl_Group {} {
label Echo open
xywh {715 285 560 445} hide
} {
Fl_Browser Echo {
label Echo
xywh {715 290 560 435} selection_color 31 align 16
code0 {\#include <FL/Fl_Multi_Browser.H>}
class Fl_Multi_Browser
}
}
}
Fl_Light_Button AutoscrollButton {
label {Auto scroll}
xywh {725 755 105 25} value 1 selection_color 2
}
Fl_Value_Slider LinesToKeepSlider {
label {Keep only the last \# lines:}
callback {MVC->SetKeepLines(o->value());}
xywh {835 755 400 25} type {Horz Knob} align 5 minimum 100 maximum 100000 step 1 value 1000 textsize 14
}
Fl_Light_Button FileLogginEnabledButton {
label LogFiles
callback {MVC->SetFileLogging(o->value());}
xywh {725 785 105 25} value 1 selection_color 2
}
Fl_Light_Button ClearLogfilesWhenPrintStartsButton {
label {Clear logs when print starts}
callback {MVC->SetLogFileClear(o->value());}
xywh {835 785 205 25} value 1 selection_color 2
}
Fl_Button {} {
label {Clear logs now}
callback {MVC->ClearLogs();}
xywh {1090 785 145 25}
}
}
Fl_Group {} {
label {Interactive control} open
xywh {725 260 535 570} selection_color 31
} {
Fl_Light_Button SwitchHeatOnButton {
label {Switch heat on}
callback {MVC->SwitchHeat(o->value(), TargetTempText->value());}
xywh {730 427 220 25}
}
Fl_Value_Input TargetTempText {
label {Target temp}
callback {MVC->SetTargetTemp(o->value());}
xywh {1185 428 55 24} maximum 300 value 200
}
Fl_Light_Button RunExtruderButton {
label {Run extruder}
callback {MVC->RunExtruder();}
xywh {730 457 115 25}
}
Fl_Light_Button SetExtruderDirectionButton {
label Reverse
callback {MVC->SetExtruderDirection(o->value());}
xywh {850 457 100 25}
}
Fl_Button {} {
label Home
callback {MVC->Home("X");}
xywh {740 265 83 25}
}
Fl_Button {} {
label Home
callback {MVC->Home("Y");}
xywh {740 295 83 25}
}
Fl_Button {} {
label Home
callback {MVC->Home("Z");}
xywh {740 325 83 25}