Skip to content

Commit cbc45f1

Browse files
committed
working on getting schedule bolded
1 parent 407f61e commit cbc45f1

File tree

1 file changed

+39
-1
lines changed

1 file changed

+39
-1
lines changed

src/ui/ScheduleStage.java

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,21 @@
88
import comp110.Employee;
99
import comp110.Schedule;
1010
import comp110.Week;
11+
import javafx.collections.ObservableList;
12+
import javafx.geometry.Insets;
1113
import javafx.geometry.Pos;
14+
import javafx.scene.Node;
1215
import javafx.scene.Scene;
1316
import javafx.scene.control.Label;
1417
import javafx.scene.control.ScrollPane;
1518
import javafx.scene.control.Tab;
1619
import javafx.scene.control.TabPane;
1720
import javafx.scene.control.TabPane.TabClosingPolicy;
21+
import javafx.scene.layout.Border;
22+
import javafx.scene.layout.BorderStroke;
23+
import javafx.scene.layout.BorderStrokeStyle;
24+
import javafx.scene.layout.BorderWidths;
25+
import javafx.scene.layout.CornerRadii;
1826
import javafx.scene.layout.GridPane;
1927
import javafx.scene.paint.Color;
2028
import javafx.scene.text.Font;
@@ -138,15 +146,45 @@ public GridPane writeSchedule(Schedule schedule) {
138146
scheduledEmployee.setFill(Color.RED);
139147
}
140148
// +1 to account for day row
141-
schedulePane.add(new TextFlow(scheduledEmployee), day + 1, hourRow + i + 1);
149+
TextFlow tf = new TextFlow (scheduledEmployee);
150+
// if (i == max - 1) {
151+
// tf.setBorder(new Border(new BorderStroke(Color.BLACK, Color.BLACK, Color.BLACK, Color.BLACK,
152+
// BorderStrokeStyle.NONE, BorderStrokeStyle.NONE, BorderStrokeStyle.SOLID, BorderStrokeStyle.NONE,
153+
// CornerRadii.EMPTY, BorderWidths.DEFAULT, Insets.EMPTY)));
154+
// }
155+
schedulePane.add(tf, day + 1, hourRow + i + 1);
142156
}
143157
}
144158
}
145159
hourRow += max;
146160
}
161+
162+
//setup borders
163+
for (int day = 0; day < 7; day++) {
164+
for (int hour = getEarliestHour(schedule.getWeek()); hour < getLatestHour(schedule.getWeek()); hour++) {
165+
int max = getMaxSize(hour, schedule.getWeek());
166+
TextFlow tf= (TextFlow) this.getNodeByIndex(day, hour + max, schedulePane);
167+
}
168+
}
169+
170+
147171
return schedulePane;
148172
}
149173

174+
public Node getNodeByIndex (int row, int column, GridPane gridPane) {
175+
Node result = null;
176+
ObservableList<Node> childrens = gridPane.getChildren();
177+
178+
for (Node node : childrens) {
179+
if(GridPane.getRowIndex(node) == row && GridPane.getColumnIndex(node) == column) {
180+
result = node;
181+
break;
182+
}
183+
}
184+
185+
return result;
186+
}
187+
150188
// gets earliest scheduled hour in the week
151189
private static int getEarliestHour(Week week) {
152190
int min = 10000;

0 commit comments

Comments
 (0)