Skip to content
Snippets Groups Projects
WeeklyView.java 1.66 KiB
Newer Older
ArktikHunter's avatar
ArktikHunter committed
package com.example.schedulerapp;

import javafx.geometry.HPos;
import javafx.geometry.Pos;
import javafx.scene.control.Button;
ArktikHunter's avatar
ArktikHunter committed
import javafx.scene.control.Label;
import javafx.scene.layout.GridPane;
ArktikHunter's avatar
ArktikHunter committed

import java.util.ArrayList;
import java.util.Arrays;

ArktikHunter's avatar
ArktikHunter committed
public class WeeklyView extends ScheduleView{
    ArrayList<Label> days;
ArktikHunter's avatar
ArktikHunter committed

    public WeeklyView(){
        //list of day labels
        days = new ArrayList<>();
        days.addAll(Arrays.asList(new Label("Sunday"), new Label("Monday"), new Label("Tuesday"),
                new Label("Wednesday"), new Label("Thursday"), new Label("Friday"), new Label("Saturday")));
ArktikHunter's avatar
ArktikHunter committed

        for (Label label : days){
            GridPane.setHalignment(label, HPos.CENTER);
            label.setAlignment(Pos.CENTER);
            label.setPrefWidth(80);
            //label.setStyle(" -fx-border-color: black");
        }
    }
ArktikHunter's avatar
ArktikHunter committed

    public void draw(){
        //clear
        this.getChildren().clear();

        //add to gridpane - time axis never changes
        int i = 1;
        for (Label time : times){
            i++;
        }

        //add to gridpane - day axis never changes
        i = 1;
        for (Label time : days){
            i++;
        }

        int col;        //depends on day of week

        //get updated schedule
ArktikHunter's avatar
ArktikHunter committed
        ArrayList<Shift> schedule = model.getWeeklySchedule();

        for (Shift shift : schedule){
            col = (shift.getStart().getDayOfWeek().getValue() % 7) + 1; //need Sunday=7 to be 1
            contents.add(this.formatShiftButton(shift), col, this.shiftGetRow(shift), 1, this.shiftGetLength(shift));
ArktikHunter's avatar
ArktikHunter committed
        }
ArktikHunter's avatar
ArktikHunter committed
}