

def __init__(self, flags, stdscr, lineObjs, cursesAPI):
    self.stdscr = stdscr
    self.cursesAPI = cursesAPI
    self.cursesAPI.useDefaultColors()
    self.colorPrinter = ColorPrinter(self.stdscr, cursesAPI)
    self.flags = flags
    self.lineObjs = lineObjs
    self.hoverIndex = 0
    self.scrollOffset = 0
    self.scrollBar = ScrollBar(self.colorPrinter, lineObjs, self)
    self.helperChrome = HelperChrome(self.colorPrinter, self, flags)
    (self.oldmaxy, self.oldmaxx) = self.getScreenDimensions()
    self.mode = SELECT_MODE
    self.lineMatches = []
    for lineObj in self.lineObjs.values():
        lineObj.controller = self
        if (not lineObj.isSimple()):
            self.lineMatches.append(lineObj)
    self.numLines = len(lineObjs.keys())
    self.numMatches = len(self.lineMatches)
    self.resetDirty()
    self.setHover(self.hoverIndex, True)
    self.updateScrollOffset()
    logger.addEvent('init')

dataset/ETHPy150Open facebook/PathPicker/src/screenControl.py Controller.__init__/original