@@ -18,6 +18,8 @@ class W_Marker extends Widget {
1818 private final int MARKER_UI_GRID_CELL_HEIGHT = 30 ;
1919 private final int MAX_NUMBER_OF_MARKER_BUTTONS = 8 ;
2020 private final int MARKER_UI_GRID_EXTERIOR_PADDING = 10 ;
21+ private final int MARKER_UI_GRID_ROWS = 4 ;
22+ private final int MARKER_UI_GRID_COLUMNS = 4 ;
2123 private Button [] markerButtons = new Button [MAX_NUMBER_OF_MARKER_BUTTONS ];
2224 private Grid markerUIGrid;
2325
@@ -35,8 +37,8 @@ class W_Marker extends Widget {
3537 private int PAD_FIVE = 5 ;
3638 private int GRAPH_PADDING = 30 ;
3739
38- private MarkerCount markerCount = MarkerCount . FOUR ; // Default number of markers to display
39- private MarkerWindow markerWindow = MarkerWindow . TEN ;
40+ private MarkerVertScale markerVertScale = MarkerVertScale . EIGHT ;
41+ private MarkerWindow markerWindow = MarkerWindow . FIVE ;
4042
4143 W_Marker (PApplet _parent ){
4244 super (_parent); // calls the parent CONSTRUCTOR method of Widget (DON'T REMOVE)
@@ -49,11 +51,11 @@ class W_Marker extends Widget {
4951 createMarkerButtons();
5052
5153 updateGraphDims();
54+ addDropdown(" markerVertScaleDropdown" , " Vert Scale" , markerVertScale. getEnumStringsAsList(), markerVertScale. getIndex());
5255 addDropdown(" markerWindowDropdown" , " Window" , markerWindow. getEnumStringsAsList(), markerWindow. getIndex());
53- addDropdown(" markerCountDropdown" , " Count" , markerCount. getEnumStringsAsList(), markerCount. getIndex());
54- markerBar = new MarkerBar (_parent, MAX_NUMBER_OF_MARKER_BUTTONS , markerWindow. getValue(), markerCount. getValue(), graphX, graphY, graphW, graphH);
56+ markerBar = new MarkerBar (_parent, MAX_NUMBER_OF_MARKER_BUTTONS , markerWindow. getValue(), markerVertScale. getValue(), graphX, graphY, graphW, graphH);
5557
56- markerUIGrid = new Grid (4 , 4 , MARKER_UI_GRID_CELL_HEIGHT );
58+ markerUIGrid = new Grid (MARKER_UI_GRID_ROWS , MARKER_UI_GRID_COLUMNS , MARKER_UI_GRID_CELL_HEIGHT );
5759 markerUIGrid. setDrawTableBorder(false );
5860 markerUIGrid. setDrawTableInnerLines(false );
5961 markerUIGrid. setTableFontAndSize(p4, 14 );
@@ -133,9 +135,8 @@ class W_Marker extends Widget {
133135
134136 // Update positions of marker buttons
135137 for (int i = 0 ; i < MAX_NUMBER_OF_MARKER_BUTTONS ; i++ ) {
136- // int column = i % (markerCount.getValue() / 2);
137- int row = i < 4 ? 0 : 1 ;
138- int column = i % (4 );
138+ int row = i < MARKER_UI_GRID_COLUMNS ? 0 : 1 ;
139+ int column = i % (MARKER_UI_GRID_COLUMNS );
139140 RectDimensions cellDims = markerUIGrid. getCellDims(row, column);
140141 markerButtons[i]. setPosition(cellDims. x + CELL_PADDING , cellDims. y + HALF_CELL_PADDING );
141142 markerButtons[i]. setSize(cellDims. w - CELL_PADDING_TOTAL , cellDims. h - CELL_PADDING );
@@ -160,7 +161,7 @@ class W_Marker extends Widget {
160161 }
161162
162163 private Button createMarkerButton (final int markerNumber , int _x , int _y ) {
163- Button newButton = createButton(localCP5, " markerButton" + markerNumber, " Insert Marker " + markerNumber, _x, _y, MARKER_BUTTON_WIDTH , MARKER_BUTTON_HEIGHT , p5, 12 , colorNotPressed, OPENBCI_DARKBLUE );
164+ Button newButton = createButton(localCP5, " markerButton" + markerNumber, " Insert " + markerNumber, _x, _y, MARKER_BUTTON_WIDTH , MARKER_BUTTON_HEIGHT , p5, 12 , colorNotPressed, OPENBCI_DARKBLUE );
164165 newButton. setBorderColor(OBJECT_BORDER_GREY );
165166 newButton. onRelease(new CallbackListener () {
166167 public void controlEvent (CallbackEvent theEvent ) {
@@ -309,24 +310,17 @@ class W_Marker extends Widget {
309310 markerBar. adjustTimeAxis(markerWindow. getValue());
310311 }
311312
312- public void setMarkerCount (int n ) {
313- markerCount = markerCount. values()[n];
314- markerBar. adjustYAxis(markerCount. getValue());
315- for (int i = 0 ; i < MAX_NUMBER_OF_MARKER_BUTTONS ; i++ ) {
316- if (i < markerCount. getValue()) {
317- markerButtons[i]. setVisible(true );
318- } else {
319- markerButtons[i]. setVisible(false );
320- }
321- }
313+ public void setMarkerVertScale (int n ) {
314+ markerVertScale = markerVertScale. values()[n];
315+ markerBar. adjustYAxis(markerVertScale. getValue());
322316 }
323317
324318 public MarkerWindow getMarkerWindow () {
325319 return markerWindow;
326320 }
327321
328- public MarkerCount getMarkerCount () {
329- return markerCount ;
322+ public MarkerVertScale getMarkerVertScale () {
323+ return markerVertScale ;
330324 }
331325
332326 public String getMarkerReceiveIP () {
@@ -349,27 +343,20 @@ class MarkerBar {
349343
350344 private GPlot plot; // the actual grafica-based GPlot that will be rendering the Time Series trace
351345 private GPointsArray markerPointsArray;
352- private int numMarkers;
353-
354346 private final String PLOT_LAYER = " layer1" ;
355347
356348 private int nPoints;
357- private int numSeconds = 20 ; // default to 20 seconds
349+ private int numSeconds;
350+ private int yAxisMax;
358351 private float timeBetweenPoints;
359352 private float [] markerTimeArray;
360353 private int numSamplesToProcess;
361- private float minX, minY, minZ;
362- private float maxX, maxY, maxZ;
363- private float minVal;
364- private float maxVal;
365-
366- private int lastProcessedDataPacketInd = 0 ;
367354
368355 private DataSource markerBoard;
369356
370- MarkerBar (PApplet _parent , int _numMarkers , int markerWindow , float yLimit , int _x , int _y , int _w , int _h ) { // channel number, x/y location, height, width
357+ MarkerBar (PApplet _parent , int _yAxisMax , int markerWindow , float yLimit , int _x , int _y , int _w , int _h ) { // channel number, x/y location, height, width
371358
372- numMarkers = _numMarkers ;
359+ yAxisMax = _yAxisMax ;
373360 numSeconds = markerWindow;
374361
375362 // This widget is only instantiated when the board is accel capable, so we don't need to check
@@ -389,7 +376,7 @@ class MarkerBar {
389376 plot. setPos(x + 36 + 4 + xOffset, y); // match marker plot position with Time Series
390377 plot. setDim(w - 36 - 4 - xOffset, h);
391378 plot. setMar(0f , 0f , 0f , 0f );
392- plot. setLineColor(( int )channelColors[(numMarkers) % 8 ] );
379+ plot. setLineColor(WHITE );
393380 plot. setXLim(- numSeconds, 0 ); // set the horizontal scale
394381 plot. setYLim(- 0.2 , yLimit + .2 ); // change this to adjust vertical scale
395382 // plot.setPointSize(2);
@@ -466,9 +453,9 @@ class MarkerBar {
466453 }
467454 }
468455
469- public void adjustYAxis (int markerCount ) {
470- numMarkers = markerCount ;
471- plot. setYLim(- 0.2 , numMarkers + .2 );
456+ public void adjustYAxis (int _yAxisMax ) {
457+ yAxisMax = _yAxisMax ;
458+ plot. setYLim(- 0.2 , yAxisMax + .2 );
472459 }
473460
474461 // Used to update the Points within the graph
@@ -536,18 +523,22 @@ public enum MarkerWindow implements IndexingInterface
536523 }
537524}
538525
539- // Enum for the Marker Count in W_Marker class
540- public enum MarkerCount implements IndexingInterface
526+ // Enum for the Marker Vertical Scale in W_Marker class
527+ public enum MarkerVertScale implements IndexingInterface
541528{
542- FOUR (0 , 4 , " 4" ),
543- EIGHT (1 , 8 , " 8" );
529+ TWO (0 , 2 , " 2" ),
530+ FOUR (1 , 4 , " 4" ),
531+ EIGHT (2 , 8 , " 8" ),
532+ TEN (3 , 10 , " 10" ),
533+ FIFTEEN (4 , 15 , " 15" ),
534+ TWENTY (5 , 20 , " 20" );
544535
545536 private int index;
546537 private int value;
547538 private String label;
548- private static MarkerCount [] vals = values();
539+ private static MarkerVertScale [] vals = values();
549540
550- MarkerCount (int _index , int _value , String _label ) {
541+ MarkerVertScale (int _index , int _value , String _label ) {
551542 this . index = _index;
552543 this . value = _value;
553544 this . label = _label;
@@ -581,8 +572,8 @@ public void markerWindowDropdown(int n) {
581572 w_marker. setMarkerWindow(n);
582573}
583574
584- public void markerCountDropdown (int n ) {
585- w_marker. setMarkerCount (n);
575+ public void markerVertScaleDropdown (int n ) {
576+ w_marker. setMarkerVertScale (n);
586577}
587578
588579// Custom UDP receive handler for receiving markers from external sources
0 commit comments