import logging
from flet import Page
from watchdog.events import PatternMatchingEventHandler,FileMovedEvent,FileCreatedEvent,FileDeletedEvent,FileClosedEvent,FileClosedEvent,FileSystemEvent

import logging


class MyEventHandler(PatternMatchingEventHandler):
    page: Page = None

    def __init__(
        self,
        page: Page = None,
        patterns=["*.NC","*.CATNCCODE","*.CNC","*.txt"],
        ignore_patterns=None,
        ignore_directories=True,
        case_sensitive=False,
    ):
        super().__init__(patterns, ignore_patterns, ignore_directories, case_sensitive)
        self.page = page

    def on_moved(self, event:FileMovedEvent):
        super(MyEventHandler, self).on_moved(event)
        # logging.critical("File %s was just moved" % event.src_path)

    def on_created(self, event):
        super(MyEventHandler, self).on_created(event)
        # logging.critical("File %s was just created" % event.src_path)

    def on_deleted(self, event):
        super(MyEventHandler, self).on_deleted(event)
        # logging.critical("File %s was just deleted" % event.src_path)

    def on_modified(self, event):
        super(MyEventHandler, self).on_modified(event)
        # logging.critical("File %s was just modified" % event.src_path)

    def on_closed(self, event:FileClosedEvent):
        super().on_closed(event)
        logging.critical("File %s was just modified" % event.src_path)

    def on_any_event(self, event:FileSystemEvent):
        super().on_any_event(event)
        print(event)
        logging.critical("%s Olaylandı " % event.src_path)
