__author__ = 'CAM'

from win32com.client import CDispatch

from IFikomObject import IFikomObject
from IMfgProcess import IMfgProcess





class IMfgProcessler(IFikomObject):
    def __init__(self, obj:CDispatch, sahip:IFikomObject=None):
        super(IMfgProcessler, self).__init__(obj, sahip)
        self.sahip = sahip
        self.tipi = "IMfgProcessler"

    @property
    def sayisi(self):
        return self.catNesne.Count

    def item(self, i):
        if type(i) == int:
            i = i + 1
        return IMfgProcess(obj=self.catNesne.item(i), sahip=self)

    def __call__(self):
        prsSayisi = self.sayisi
        return [self.Item(x) for x in range(prsSayisi)]

    def __str__(self):
        prsSayisi = self.sayisi
        return repr([self.item(x).ismi for x in range(prsSayisi)])

    def __len__(self):
        return int(self.sayisi)

    def __getitem__(self, item) -> IMfgProcess:
        return self.item(item)