TimeTracker/ConfigurationPage/TimeTrackerPage.py

Tue, 10 Dec 2024 15:49:02 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Tue, 10 Dec 2024 15:49:02 +0100
branch
eric7
changeset 120
9ccde4517fca
parent 114
f58b64382e67
permissions
-rw-r--r--

Updated copyright for 2025.

# -*- coding: utf-8 -*-

# Copyright (c) 2012 - 2025 Detlev Offenbach <detlev@die-offenbachs.de>
#

"""
Module implementing the Time Tracker configuration page.
"""

from eric7.Preferences.ConfigurationPages.ConfigurationPageBase import (
    ConfigurationPageBase,
)

from .Ui_TimeTrackerPage import Ui_TimeTrackerPage


class TimeTrackerPage(ConfigurationPageBase, Ui_TimeTrackerPage):
    """
    Class implementing the Time Tracker configuration page.
    """

    def __init__(self, plugin):
        """
        Constructor

        @param plugin reference to the plugin object
        @type TimeTrackerPlugin
        """
        super().__init__()
        self.setupUi(self)
        self.setObjectName("TimeTrackerPage")

        self.__plugin = plugin

        # set initial values
        self.durationSpinBox.setValue(self.__plugin.getPreferences("MinimumDuration"))
        self.autosaveCheckBox.setChecked(self.__plugin.getPreferences("AutoSave"))
        self.duplicatesCheckBox.setChecked(
            self.__plugin.getPreferences("AllowDuplicates")
        )

    def save(self):
        """
        Public slot to save the Time Tracker configuration.
        """
        self.__plugin.setPreferences("MinimumDuration", self.durationSpinBox.value())
        self.__plugin.setPreferences("AutoSave", self.autosaveCheckBox.isChecked())
        self.__plugin.setPreferences(
            "AllowDuplicates", self.duplicatesCheckBox.isChecked()
        )

eric ide

mercurial