summaryrefslogtreecommitdiff
path: root/calendar_gui.py
diff options
context:
space:
mode:
Diffstat (limited to 'calendar_gui.py')
-rw-r--r--calendar_gui.py10
1 files changed, 5 insertions, 5 deletions
diff --git a/calendar_gui.py b/calendar_gui.py
index 5705e7a..1c9efe7 100644
--- a/calendar_gui.py
+++ b/calendar_gui.py
@@ -1,14 +1,12 @@
import sys
from PyQt5.QtWidgets import (QApplication, QMainWindow, QWidget, QVBoxLayout, QHBoxLayout,
- QLabel, QLineEdit, QPushButton, QDateEdit, QTableWidget,
+ QLabel, QPushButton, QDateEdit, QTableWidget,
QTableWidgetItem, QHeaderView, QDialog, QFormLayout, QComboBox,
- QMessageBox, QSpinBox, QAction, QFileDialog, QMenuBar, QTextEdit,
+ QMessageBox, QSpinBox, QAction, QFileDialog, QTextEdit,
QAbstractItemView, QToolButton)
from PyQt5.QtWidgets import QStyle
from PyQt5.QtCore import Qt, QDate, QLocale
from PyQt5.QtGui import QFont, QFontDatabase
-from datetime import datetime, timedelta
-from dateutil.relativedelta import relativedelta
from calendar_manager import CalendarManager
from date_calculator import DateCalculator
@@ -16,7 +14,7 @@ from prediction_controller import PredictionController
from event_type_handler import EventTypeHandler
from date_service import DateService
from config import EventConfig
-from prediction_report_service import PredictionReportService
+# Note: PDF export dependency is imported lazily inside export_pdf to reduce startup size
class EventDialog(QDialog):
def __init__(self, entry=None, parent=None):
@@ -662,6 +660,8 @@ class CalendarManagerGUI(QMainWindow):
)
if not out_path:
return
+ # Lazy import to avoid heavy PDF dependencies at startup
+ from prediction_report_service import PredictionReportService
success = PredictionReportService.export_pdf(
self.calendar_manager,
self.prediction_controller,