@@ -572,24 +572,8 @@ private Node addProjectToProjectList(final Project p) {
572572 grid .setPadding (new Insets (20 , 150 , 10 , 10 ));
573573 int gridRow = 0 ;
574574 grid .add (new Label ("Minutes to transfer" ), 0 , gridRow );
575- final Slider slider = new Slider ();
576- slider .setMin (0 );
577- slider .maxProperty ().bind (Bindings .createLongBinding (() -> {
578- final long maxValue = activeWorkSecondsProperty .longValue () / 60 ;
579- if (maxValue > 0 ) {
580- slider .setDisable (false );
581- return maxValue ;
582- }
583- slider .setDisable (true );
584- return 1l ;
585- }, activeWorkSecondsProperty ));
586- slider .setValue (0 );
587- slider .setShowTickLabels (true );
588- slider .setShowTickMarks (true );
589- slider .setMajorTickUnit (60 );
590- slider .setMinorTickCount (58 );
591- slider .setBlockIncrement (1 );
592- slider .setSnapToTicks (true );
575+ final Slider slider = setUpSliderChangeWithTimeMenuItem (activeWorkSecondsProperty );
576+
593577 grid .add (slider , 1 , gridRow );
594578 final Label minutesToTransferLabel = new Label ("999 minute(s)" );
595579 grid .add (minutesToTransferLabel , 2 , gridRow );
@@ -695,12 +679,7 @@ private Node addProjectToProjectList(final Project p) {
695679 return ;
696680 }
697681 final ObservableList <Node > nodes = grid .getChildren ();
698- final TextField projectNameTextField = (TextField ) nodes .get (1 );
699- final ColorPicker colorPicker = (ColorPicker ) nodes .get (3 );
700- final CheckBox isWorkCheckBox = (CheckBox ) nodes .get (5 );
701- final Spinner <Integer > indexSpinner = (Spinner <Integer >) nodes .get (7 );
702- controller .editProject (p , projectNameTextField .getText (), colorPicker .getValue (),
703- isWorkCheckBox .isSelected (), indexSpinner .getValue ());
682+ editProject (nodes , p );
704683
705684 projectNameLabel .setText (p .getName ());
706685 projectNameLabel .setTextFill (new Color (p .getColor ().getRed () * dimFactor ,
@@ -718,6 +697,43 @@ private Node addProjectToProjectList(final Project p) {
718697 return projectElement ;
719698 }
720699
700+ private Slider setUpSliderChangeWithTimeMenuItem (final LongProperty activeWorkSecondsProperty ) {
701+ final Slider slider = new Slider ();
702+
703+ slider .setMin (0 );
704+ slider .maxProperty ().bind (Bindings .createLongBinding (() -> {
705+ final long maxValue = activeWorkSecondsProperty .longValue () / 60 ;
706+ if (maxValue > 0 ) {
707+ slider .setDisable (false );
708+ return maxValue ;
709+ }
710+ slider .setDisable (true );
711+ return 1l ;
712+ }, activeWorkSecondsProperty ));
713+ slider .setValue (0 );
714+ slider .setShowTickLabels (true );
715+ slider .setShowTickMarks (true );
716+ slider .setMajorTickUnit (60 );
717+ slider .setMinorTickCount (58 );
718+ slider .setBlockIncrement (1 );
719+ slider .setSnapToTicks (true );
720+
721+ return slider ;
722+ }
723+
724+ private void editProject (final ObservableList <Node > nodes , final Project p ) {
725+ final TextField projectNameTextField = (TextField ) nodes .get (1 );
726+ final ColorPicker colorPicker = (ColorPicker ) nodes .get (3 );
727+ final CheckBox isWorkCheckBox = (CheckBox ) nodes .get (5 );
728+ final Spinner <Integer > indexSpinner = (Spinner <Integer >) nodes .get (7 );
729+ controller .editProject (p , projectNameTextField .getText (), colorPicker .getValue (), isWorkCheckBox .isSelected (),
730+ indexSpinner .getValue ());
731+ }
732+
733+ private Label setUpProjectNameLabel (final Label projectNameLabel , final double dimFactor , final Project p ) {
734+ return projectNameLabel ;
735+ }
736+
721737 private Dialog <ButtonType > setUpEditProjectDialog (final Project p ) {
722738 final Dialog <ButtonType > dialog = new Dialog <>();
723739 dialog .setTitle ("Edit project" );
0 commit comments