def __init__(self, config, text_phrases, masked_phrases, mode, indicators=[]):
		self.config = config
		self.text_phrases = text_phrases
		self.masked_phrases = masked_phrases
		self.current_index = -1
		stimuli = copy.copy(text_phrases)
		stimuli.extend(masked_phrases)
		stimuli.append(self.fixationCross)
		stimuli.extend(indicators)
		Viewport.__init__(self, screen=globalScreen, stimuli=stimuli)

		self.mode = mode	
		if mode == CPresentationMode.MovingWindow:
			self.hide_mask = config.sprHideMask

		elif mode == CPresentationMode.Centered:
			self.hide_mask = False

		else:
			raise "No other mode is implemented so far."

		# determine all necessary positions for the fixation cross
		self.fixationCross.parameters.size = (config.sprFixationCrossSize,)*2
		position = self.text_phrases[0].parameters.position
		size = self.text_phrases[0].parameters.size
		self.fixationCrossFirstWord = (position[0]+size[0]/2, position[1]+self.config.sprFixationCrossSize/4)
		self.fixationCrossCenter = (globalScreen.size[0]/2, position[1]+self.config.sprFixationCrossSize/4)
    def __init__(self,
                 config,
                 text_phrases,
                 masked_phrases,
                 mode,
                 indicators=[]):
        self.config = config
        self.text_phrases = text_phrases
        self.masked_phrases = masked_phrases
        self.current_index = -1
        stimuli = copy.copy(text_phrases)
        stimuli.extend(masked_phrases)
        stimuli.append(self.fixationCross)
        stimuli.extend(indicators)
        Viewport.__init__(self, screen=globalScreen, stimuli=stimuli)

        self.mode = mode
        if mode == CPresentationMode.MovingWindow:
            self.hide_mask = config.sprHideMask

        elif mode == CPresentationMode.Centered:
            self.hide_mask = False

        else:
            raise "No other mode is implemented so far."

        # determine all necessary positions for the fixation cross
        self.fixationCross.parameters.size = (
            config.sprFixationCrossSize, ) * 2
        position = self.text_phrases[0].parameters.position
        size = self.text_phrases[0].parameters.size
        self.fixationCrossFirstWord = (position[0] + size[0] / 2, position[1] +
                                       self.config.sprFixationCrossSize / 4)
        self.fixationCrossCenter = (globalScreen.size[0] / 2, position[1] +
                                    self.config.sprFixationCrossSize / 4)