public function setOverviewMapControl()
    {
        $args = func_get_args();

        if (isset($args[0]) && ($args[0]) instanceof OverviewMapControl) {
            $this->overviewMapControl = $args[0];
            $this->mapOptions['overviewMapControl'] = true;
        } elseif (isset($args[0]) && is_bool($args[0])) {
            if ($this->overviewMapControl === null) {
                $this->overviewMapControl = new OverviewMapControl();
            }

            $this->overviewMapControl->setOpened($args[0]);
            $this->mapOptions['overviewMapControl'] = true;
        } elseif (!isset($args[0])) {
            $this->overviewMapControl = null;

            if (isset($this->mapOptions['overviewMapControl'])) {
                unset($this->mapOptions['overviewMapControl']);
            }
        } else {
            throw MapException::invalidOverviewMapControl();
        }
    }