/** * create new skin for other * @param string $name: skin name * @param string $group: skin group * @param string $skin_name: provide skin name if not will get same from parent */ function create($name, $group = null, $skin_name = '') { if (!isset($this->skins_manager[$name])) { if (!$skin_name) { $skin_name = $this->skin_name; } //inherit skin name from parent $skin = new self($this->widget_ref, $this->_apply_plugin, $this->skin_folder, $skin_name, $this->_default_skin_path); $skin->plugin_url = $this->plugin_url; //maintain some variable $skin->skinID = $name; //skin id $skin->is_main = false; //$this->is_main = false; //if($group) //allow empty group to clear group $skin->set_group($group, $this->group_name); //set skin group $skin->init(); //initial $this->skins_manager[$name] = $skin; //add to manager } return $this->skins_manager[$name]; }