# -*- coding: utf-8 -*-
"""
主程序入口示例：Tkinter 主界面 + 集成自动更新模块。
"""

import tkinter as tk
from tkinter import ttk

# 本地版本号，需与安装包/version.json 中的版本约定一致
LOCAL_VERSION = "1.1.8"

# 延迟导入，避免在未安装更新依赖时影响启动
try:
    from scripts.update.tk_updater import SeamlessUpdater, VERSION_JSON_URL
    UPDATER_AVAILABLE = True
except ImportError:
    UPDATER_AVAILABLE = False


def main():
    root = tk.Tk()
    root.title("Server Manager - v{}".format(LOCAL_VERSION))
    root.geometry("400x200")
    root.resizable(True, True)

    # 中央区域
    frame = ttk.Frame(root, padding="20")
    frame.pack(fill=tk.BOTH, expand=True)

    ttk.Label(frame, text="Server Manager 示例", font=("", 14)).pack(pady=(0, 20))

    if UPDATER_AVAILABLE:
        update_service = SeamlessUpdater(root, LOCAL_VERSION, VERSION_JSON_URL)
        root.after(100, update_service.start_background_worker)

        def on_check_update():
            update_service.start_background_worker()

        btn = ttk.Button(frame, text="检查更新", command=on_check_update)
        btn.pack(pady=10)
    else:
        ttk.Label(frame, text="(更新模块未找到，更新功能不可用)", foreground="gray").pack(pady=10)

    root.mainloop()


if __name__ == "__main__":
    main()
