The GanttDiva project calendar can easily be customized via the Update Calendar Dialog. You can configure when the weekends will occur for your projects, what days will be holidays and what weekend days may be overridden as treated as workdays.
After any updates to the calendar, all task dates and durations will be recalculated to take into account any changes in your calendar.
When a task is entered, the task duration will be based only on workdays and the task start and finish dates will also only fall on workdays. If a start date or finish date for a task falls on a non-workday, then GanttDiva will automatically update the task to start or finish on the closest workday.
If your specify a timescale of 1 day/column for your Gantt chart, then the date heading for any column that is a weekend day or holiday will be highlighted in a different colour.