import inspect
import os

import pythoncom
import win32com.client
from PyQt6.QtWidgets import QApplication
import sys



sys.path.append(os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe()) + "\\..\\..")))
from IDialoglar.IFikoProductToPart.IFikoProductToPart import IFikoProductToPart

debugging = False
if debugging:
    from win32com.server.dispatcher import DefaultDebugDispatcher

    useDispatcher = DefaultDebugDispatcher
else:
    useDispatcher = None


class FikoYTProductToPart():
    _reg_clsctx_ = pythoncom.CLSCTX_LOCAL_SERVER
    _reg_desc_ = "FikoYT"
    _reg_clsid_ = "{46A4E328-C106-4DE2-8C5C-7C5C6C35A75A}"
    _reg_progid_ = "FikoYT.IFikoProductToPart"
    _public_methods_ = ['Calistir']
    _public_attrs_ = []

    def Calistir(self, Catia1):
        idkm = IFikoProductToPart(Catia=win32com.client.Dispatch(Catia1))
        idkm.show()


# Dim fikopost
# Set fikopost = CreateObject("FikoYT.IFikoCizgiYumusatici")
# fikopost.calistir CATIA
if __name__ == '__main__':
    import win32com.server.register
    win32com.server.register.UseCommandLine(FikoYTProductToPart)

    import sys
    app = QApplication(sys.argv)
    app.setStyle("fusion")
    slm = IFikoProductToPart(Catia=win32com.client.Dispatch("Catia.Application"))
    slm.show()
    sys.exit(app.exec())