Class DayView

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.beans.PropertyChangeListener, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, ClockListener

    public class DayView
    extends javax.swing.JPanel
    implements ClockListener, java.beans.PropertyChangeListener
    Panel showing tasks planned for one day and manipulation with them.
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JPanel

        javax.swing.JPanel.AccessibleJPanel
      • Nested classes/interfaces inherited from class javax.swing.JComponent

        javax.swing.JComponent.AccessibleJComponent
      • Nested classes/interfaces inherited from class java.awt.Container

        java.awt.Container.AccessibleAWTContainer
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private javax.swing.JButton btAdd  
      private javax.swing.JButton btDone  
      private javax.swing.JButton btEdit  
      private javax.swing.JButton btNext  
      private javax.swing.JButton btNextMonth  
      private javax.swing.JButton btNextWeek  
      private javax.swing.JButton btPrevious  
      private javax.swing.JButton btPreviousMonth  
      private javax.swing.JButton btPreviousWeek  
      private javax.swing.JButton btRelax  
      private javax.swing.JButton btRemove  
      private javax.swing.JButton btSelect  
      private javax.swing.JButton btWork  
      private javax.swing.JCheckBox chbShowFinished  
      private java.util.Date clickedWhen
      Time when user clicked in the plan table last time.
      private java.awt.Point clickedWhere
      Point in the plan table when user clicked last time.
      private Day day
      Day that is actually being displayed.
      private javax.swing.JLabel lblDate  
      private javax.swing.JLabel lblEnd  
      private javax.swing.JLabel lblPlan  
      private javax.swing.JLabel lblProgress  
      private javax.swing.JLabel lblStart  
      private javax.swing.JLabel lblTask  
      private javax.swing.JLabel lblWeek  
      private javax.swing.JProgressBar pbProgress  
      private javax.swing.JPanel pnButtons  
      private javax.swing.JPanel pnDayView  
      private javax.swing.JPanel pnWorkButtons  
      private boolean selectButtonEnabled
      Whether Select button is currently enabled or not.
      private javax.swing.JScrollPane spPlan  
      private Task task
      Task that is currently selected and may be started.
      private javax.swing.JTable tbPlan  
      private javax.swing.JTextField txtDate  
      private javax.swing.JTextField txtEnd  
      private javax.swing.JTextField txtStart  
      private javax.swing.JTextField txtTask  
      private javax.swing.JTextField txtWeek  
      private boolean warningConfirmed
      Whether user already confirmed warning about exceeded working hours or not.
      • Fields inherited from class javax.swing.JComponent

        listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
      • Fields inherited from class java.awt.Component

        accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
      • Fields inherited from interface java.awt.image.ImageObserver

        ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
    • Constructor Summary

      Constructors 
      Constructor Description
      DayView()
      Creates new DayView panel containing tasks planned for given day.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addNote​(java.awt.Frame parent)
      Method called when add note to task action is required.
      void adjustStartTime​(java.awt.Frame parent)
      Method called when user wants to adjust day start time.
      private void btAddActionPerformed​(java.awt.event.ActionEvent evt)
      Method called when add button is pressed.
      private void btDoneActionPerformed​(java.awt.event.ActionEvent evt)
      Method called when Done button is pressed.
      private void btEditActionPerformed​(java.awt.event.ActionEvent evt)
      Method called when edit button is pressed.
      private void btNextActionPerformed​(java.awt.event.ActionEvent evt)
      Method called when next button is pressed.
      private void btNextMonthActionPerformed​(java.awt.event.ActionEvent evt)  
      private void btNextWeekActionPerformed​(java.awt.event.ActionEvent evt)  
      private void btPreviousActionPerformed​(java.awt.event.ActionEvent evt)
      Method called when previous button is pressed.
      private void btPreviousMonthActionPerformed​(java.awt.event.ActionEvent evt)  
      private void btPreviousWeekActionPerformed​(java.awt.event.ActionEvent evt)  
      private void btRelaxActionPerformed​(java.awt.event.ActionEvent evt)
      Method called when Relax button is pressed.
      private void btRemoveActionPerformed​(java.awt.event.ActionEvent evt)
      Method called when remove button is pressed.
      private void btSelectActionPerformed​(java.awt.event.ActionEvent evt)
      Method called when select button is pressed.
      private void btWorkActionPerformed​(java.awt.event.ActionEvent evt)
      Method called when Work button is pressed.
      private void chbShowFinishedActionPerformed​(java.awt.event.ActionEvent evt)
      Method called when visibility of finished tasks should be changed.
      private void checkButtons()
      Check availability of buttons according to current state of view.
      void copyTask​(java.awt.Frame parent)
      Method called when copy task action is required.
      void correctTaskDuration​(java.awt.Frame parent)
      Method called when correct task duration action is required.
      void finishTask()
      Finishes working on currently selected task.
      private void formMouseMoved​(java.awt.event.MouseEvent evt)  
      Day getDay()
      Returns day that is currently being displayed.
      private java.lang.String getFinishedAtText()  
      private java.lang.String getFinishedAtTime()  
      java.awt.Font getFont()
      Returns font that should be used for all widgets in this component based on the language preferences specified by user.
      Task getTask()
      Returns task that is currently selected.
      java.lang.String getTitleSuffix()
      Get suffix to be appended to title of application depending on user preference.
      private void initComponents()
      This method is called from within the constructor to initialize the form.
      private void loadRunningTask()
      Tries to load restarting task and run it.
      (package private) void loadSetup()
      Loads setup customized by user i.e.
      void moveTime​(java.awt.Frame parent)
      Method called when move time action is required.
      void pauseTask()
      Stops working on currently selected running task.
      void propertyChange​(java.beans.PropertyChangeEvent evt)
      Method called when some property of task was changed.
      (package private) void saveSetup()
      Saves setup customized by user i.e.
      void selectTask​(Task task)
      Sets given task as selected and starts to work on it.
      private void setDay​(Day newDay)
      Sets day view to given day.
      void setFinishedTasksVisibility​(boolean visibility)
      Set whether finished tasks should be displayed or not.
      void setTask​(Task task, boolean startTask)
      Set description of selected task and start it if required.
      private void setupEndTimeMouseListener​(javax.swing.JComponent... components)  
      private void spPlanMouseMoved​(java.awt.event.MouseEvent evt)  
      void startTask()
      Starts working on currently selected task.
      private void switchAfterNight()
      Switches day view after or at the mightnight.
      void switchDate​(java.awt.Frame parent)
      Method called when switch date action is required.
      private void tbPlanKeyPressed​(java.awt.event.KeyEvent evt)  
      private void tbPlanKeyReleased​(java.awt.event.KeyEvent evt)
      Method called when any key is released while table of planned tasks has focus.
      private void tbPlanMouseClicked​(java.awt.event.MouseEvent evt)
      Method called when user clicks to table with tasks plan.
      private void tbPlanMouseMoved​(java.awt.event.MouseEvent evt)  
      void tick()
      Method called when one clock tick is over.
      private void txtDateMouseClicked​(java.awt.event.MouseEvent evt)
      Method called when date textfield is clicked.
      private void updateInformation​(boolean taskDurationChanged)
      Method called when some information needs to be updated.
      private boolean useEstimatedEnd()  
      • Methods inherited from class javax.swing.JPanel

        getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
      • Methods inherited from class javax.swing.JComponent

        addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
      • Methods inherited from class java.awt.Container

        add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
      • Methods inherited from class java.awt.Component

        action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • btAdd

        private javax.swing.JButton btAdd
      • btDone

        private javax.swing.JButton btDone
      • btEdit

        private javax.swing.JButton btEdit
      • btNext

        private javax.swing.JButton btNext
      • btNextMonth

        private javax.swing.JButton btNextMonth
      • btNextWeek

        private javax.swing.JButton btNextWeek
      • btPrevious

        private javax.swing.JButton btPrevious
      • btPreviousMonth

        private javax.swing.JButton btPreviousMonth
      • btPreviousWeek

        private javax.swing.JButton btPreviousWeek
      • btRelax

        private javax.swing.JButton btRelax
      • btRemove

        private javax.swing.JButton btRemove
      • btSelect

        private javax.swing.JButton btSelect
      • btWork

        private javax.swing.JButton btWork
      • chbShowFinished

        private javax.swing.JCheckBox chbShowFinished
      • lblDate

        private javax.swing.JLabel lblDate
      • lblEnd

        private javax.swing.JLabel lblEnd
      • lblPlan

        private javax.swing.JLabel lblPlan
      • lblProgress

        private javax.swing.JLabel lblProgress
      • lblStart

        private javax.swing.JLabel lblStart
      • lblTask

        private javax.swing.JLabel lblTask
      • lblWeek

        private javax.swing.JLabel lblWeek
      • pbProgress

        private javax.swing.JProgressBar pbProgress
      • pnButtons

        private javax.swing.JPanel pnButtons
      • pnDayView

        private javax.swing.JPanel pnDayView
      • pnWorkButtons

        private javax.swing.JPanel pnWorkButtons
      • spPlan

        private javax.swing.JScrollPane spPlan
      • tbPlan

        private javax.swing.JTable tbPlan
      • txtDate

        private javax.swing.JTextField txtDate
      • txtEnd

        private javax.swing.JTextField txtEnd
      • txtStart

        private javax.swing.JTextField txtStart
      • txtTask

        private javax.swing.JTextField txtTask
      • txtWeek

        private javax.swing.JTextField txtWeek
      • day

        private Day day
        Day that is actually being displayed.
      • task

        private Task task
        Task that is currently selected and may be started.
      • clickedWhere

        private java.awt.Point clickedWhere
        Point in the plan table when user clicked last time.
      • clickedWhen

        private java.util.Date clickedWhen
        Time when user clicked in the plan table last time.
      • selectButtonEnabled

        private boolean selectButtonEnabled
        Whether Select button is currently enabled or not.
      • warningConfirmed

        private boolean warningConfirmed
        Whether user already confirmed warning about exceeded working hours or not.
    • Constructor Detail

      • DayView

        public DayView()
        Creates new DayView panel containing tasks planned for given day.
    • Method Detail

      • setupEndTimeMouseListener

        private void setupEndTimeMouseListener​(javax.swing.JComponent... components)
      • getFont

        public java.awt.Font getFont()
        Returns font that should be used for all widgets in this component based on the language preferences specified by user.
        Specified by:
        getFont in interface java.awt.MenuContainer
        Overrides:
        getFont in class java.awt.Component
        Returns:
        Font to be used in this component.
      • adjustStartTime

        public void adjustStartTime​(java.awt.Frame parent)
        Method called when user wants to adjust day start time.
        Parameters:
        parent - Main window which called this method to set correct location.
      • initComponents

        private void initComponents()
        This method is called from within the constructor to initialize the form. WARNING: Do NOT modify this code. The content of this method is always regenerated by the Form Editor.
      • btNextWeekActionPerformed

        private void btNextWeekActionPerformed​(java.awt.event.ActionEvent evt)
      • btNextMonthActionPerformed

        private void btNextMonthActionPerformed​(java.awt.event.ActionEvent evt)
      • btPreviousMonthActionPerformed

        private void btPreviousMonthActionPerformed​(java.awt.event.ActionEvent evt)
      • btPreviousWeekActionPerformed

        private void btPreviousWeekActionPerformed​(java.awt.event.ActionEvent evt)
      • txtDateMouseClicked

        private void txtDateMouseClicked​(java.awt.event.MouseEvent evt)
        Method called when date textfield is clicked.
        Parameters:
        evt - Event that invoked the action.
      • btRemoveActionPerformed

        private void btRemoveActionPerformed​(java.awt.event.ActionEvent evt)
        Method called when remove button is pressed.
        Parameters:
        evt - Event that invoked the action.
      • btEditActionPerformed

        private void btEditActionPerformed​(java.awt.event.ActionEvent evt)
        Method called when edit button is pressed.
        Parameters:
        evt - Event that invoked the action.
      • btAddActionPerformed

        private void btAddActionPerformed​(java.awt.event.ActionEvent evt)
        Method called when add button is pressed.
        Parameters:
        evt - Event that invoked the action.
      • btSelectActionPerformed

        private void btSelectActionPerformed​(java.awt.event.ActionEvent evt)
        Method called when select button is pressed.
        Parameters:
        evt - Event that invoked the action.
      • chbShowFinishedActionPerformed

        private void chbShowFinishedActionPerformed​(java.awt.event.ActionEvent evt)
        Method called when visibility of finished tasks should be changed.
        Parameters:
        evt - Event that invoked the action.
      • btNextActionPerformed

        private void btNextActionPerformed​(java.awt.event.ActionEvent evt)
        Method called when next button is pressed.
        Parameters:
        evt - Event that invoked the action.
      • btPreviousActionPerformed

        private void btPreviousActionPerformed​(java.awt.event.ActionEvent evt)
        Method called when previous button is pressed.
        Parameters:
        evt - Event that invoked the action.
      • tbPlanKeyReleased

        private void tbPlanKeyReleased​(java.awt.event.KeyEvent evt)
        Method called when any key is released while table of planned tasks has focus.
        Parameters:
        evt - Event that invoked this method call.
      • btDoneActionPerformed

        private void btDoneActionPerformed​(java.awt.event.ActionEvent evt)
        Method called when Done button is pressed.
        Parameters:
        evt - Event that invoked this action.
      • btRelaxActionPerformed

        private void btRelaxActionPerformed​(java.awt.event.ActionEvent evt)
        Method called when Relax button is pressed.
        Parameters:
        evt - Event that invoked this action.
      • btWorkActionPerformed

        private void btWorkActionPerformed​(java.awt.event.ActionEvent evt)
        Method called when Work button is pressed.
        Parameters:
        evt - Event that invoked this action.
      • tbPlanMouseClicked

        private void tbPlanMouseClicked​(java.awt.event.MouseEvent evt)
        Method called when user clicks to table with tasks plan.
        Parameters:
        evt - Event that invoked this action.
      • spPlanMouseMoved

        private void spPlanMouseMoved​(java.awt.event.MouseEvent evt)
      • formMouseMoved

        private void formMouseMoved​(java.awt.event.MouseEvent evt)
      • tbPlanMouseMoved

        private void tbPlanMouseMoved​(java.awt.event.MouseEvent evt)
      • tbPlanKeyPressed

        private void tbPlanKeyPressed​(java.awt.event.KeyEvent evt)
      • updateInformation

        private void updateInformation​(boolean taskDurationChanged)
        Method called when some information needs to be updated. This means that start and finish times will be updated or information about selected task.
        Parameters:
        taskDurationChanged - If true, only task row will be updated and working hours will be checked. Otherwise whole table gets updated.
      • useEstimatedEnd

        private boolean useEstimatedEnd()
      • getFinishedAtText

        private java.lang.String getFinishedAtText()
      • getFinishedAtTime

        private java.lang.String getFinishedAtTime()
      • checkButtons

        private void checkButtons()
        Check availability of buttons according to current state of view.
      • switchDate

        public void switchDate​(java.awt.Frame parent)
        Method called when switch date action is required.
      • moveTime

        public void moveTime​(java.awt.Frame parent)
        Method called when move time action is required.
      • copyTask

        public void copyTask​(java.awt.Frame parent)
        Method called when copy task action is required.
      • correctTaskDuration

        public void correctTaskDuration​(java.awt.Frame parent)
        Method called when correct task duration action is required.
        Parameters:
        parent - Main window which called this method to set correct location.
      • addNote

        public void addNote​(java.awt.Frame parent)
        Method called when add note to task action is required.
        Parameters:
        parent - Main window which called this method to set correct location.
      • setFinishedTasksVisibility

        public void setFinishedTasksVisibility​(boolean visibility)
        Set whether finished tasks should be displayed or not.
        Parameters:
        visibility - Should be finished tasks displayed or not ?
      • getTitleSuffix

        public java.lang.String getTitleSuffix()
        Get suffix to be appended to title of application depending on user preference.
        Returns:
        Title suffix: name of current task and/or total/task time or nothing.
      • loadRunningTask

        private void loadRunningTask()
        Tries to load restarting task and run it.
      • tick

        public void tick()
        Method called when one clock tick is over.
        Specified by:
        tick in interface ClockListener
      • setTask

        public void setTask​(Task task,
                            boolean startTask)
        Set description of selected task and start it if required.
        Parameters:
        task - Task to be selected.
        startTask - Whether the task should be started.
      • setDay

        private void setDay​(Day newDay)
        Sets day view to given day.
        Parameters:
        newDay - New day to be displayed by day view.
      • getDay

        public Day getDay()
        Returns day that is currently being displayed.
        Returns:
        Day that is currently displayed by day view.
      • getTask

        public Task getTask()
        Returns task that is currently selected.
        Returns:
        Task that is currently selected or null if none is selected.
      • propertyChange

        public void propertyChange​(java.beans.PropertyChangeEvent evt)
        Method called when some property of task was changed.
        Specified by:
        propertyChange in interface java.beans.PropertyChangeListener
        Parameters:
        evt - Event describing what was changed.
      • saveSetup

        void saveSetup()
        Saves setup customized by user i.e. selected columns and their widths.
      • loadSetup

        void loadSetup()
        Loads setup customized by user i.e. selected columns and their widths.
      • pauseTask

        public void pauseTask()
        Stops working on currently selected running task.
      • startTask

        public void startTask()
        Starts working on currently selected task.
      • finishTask

        public void finishTask()
        Finishes working on currently selected task.
      • selectTask

        public void selectTask​(Task task)
        Sets given task as selected and starts to work on it.
        Parameters:
        task - Task that will be selected and run.
      • switchAfterNight

        private void switchAfterNight()
        Switches day view after or at the mightnight.