Skip to content

Commit

Permalink
Fix/config read & write conflict
Browse files Browse the repository at this point in the history
L-M-Sherlock committed Sep 20, 2024
1 parent 7fe7475 commit 33ca817
Showing 2 changed files with 13 additions and 16 deletions.
3 changes: 2 additions & 1 deletion __init__.py
Original file line number Diff line number Diff line change
@@ -249,7 +249,8 @@ def sponsor(did=None):

menu_apply_easy_days = build_action(easy_days, "Apply easy days now")
menu_apply_easy_days_for_specific_date = build_action(
easy_day_for_sepcific_date, "Apply easy days for specific dates"
lambda did: easy_day_for_sepcific_date(did, config),
"Apply easy days for specific dates",
)
menu_easy_days = build_action(
lambda did: easy_days_review_ratio(did, config), "Configure easy days"
26 changes: 11 additions & 15 deletions schedule/easy_days.py
Original file line number Diff line number Diff line change
@@ -78,11 +78,10 @@ def auto_easy_days():

# Modified from https://github.com/sam1penny/countdown-to-events/blob/main/src/__init__.py#L86-L169
class EasySpecificDateManagerWidget(QWidget):
def __init__(self):
def __init__(self, config: Config):
super().__init__()
self.initUi()
self.config = Config()
self.config.load()
self.config = config
current_date = sched_current_date()
self.config.easy_dates = [
date
@@ -138,9 +137,7 @@ def addEventFunc(self):
mw.deckBrowser.refresh()

def apply_easy_day_for_specific_date(self):
config = Config()
config.load()
if not config.load_balance:
if not self.config.load_balance:
tooltip("Please enable load balance first")
return
if len(self.specific_dates) == 0:
@@ -179,8 +176,9 @@ def apply_easy_day_for_specific_date(self):
class DateLabelWidget(QWidget):
def __init__(self, date, manager):
super().__init__()
self.manager = manager
self.date = date
self.manager = manager
self.config = manager.config
layout = QHBoxLayout()
self.setLayout(layout)
self.eventDate = QLabel(date.strftime("%Y-%m-%d"))
@@ -192,19 +190,18 @@ def __init__(self, date, manager):
layout.addWidget(self.deleteButton)

def deleteEvent(self):
config = Config()
config.load()
config.easy_dates = list(
filter(lambda x: x != self.date.strftime("%Y-%m-%d"), config.easy_dates)
self.config.easy_dates = list(
filter(
lambda x: x != self.date.strftime("%Y-%m-%d"), self.config.easy_dates
)
)
config.save()
self.manager.specific_dates.remove(self.date)
self.setParent(None)
mw.deckBrowser.refresh()


def easy_day_for_sepcific_date(did):
mw.EasySpecificDateManagerWidget = EasySpecificDateManagerWidget()
def easy_day_for_sepcific_date(did, config: Config):
mw.EasySpecificDateManagerWidget = EasySpecificDateManagerWidget(config)
mw.EasySpecificDateManagerWidget.show()


@@ -264,7 +261,6 @@ def save_settings(self):
settings.append(0.5) # Default value if no mode is selected

self.config.easy_days_review_ratio_list = settings
self.config.save()
self.close()


0 comments on commit 33ca817

Please sign in to comment.