Spec-Zone.ru › Yii 1.1

CJuiWidget

Пакет zii.widgets.jui
Наследование абстрактный класс CJuiWidget » CWidget » CBaseController » CComponent
Подклассы CJuiAccordion, CJuiDialog, CJuiDraggable, CJuiDroppable, CJuiInputWidget, CJuiProgressBar, CJuiResizable, CJuiSelectable, CJuiSlider, CJuiSortable, CJuiTabs
С версии 1.1
Исходный код framework/zii/widgets/jui/CJuiWidget.php
Это базовый класс для всех классов виджетов JUI.

Свойства Public

Свойство Тип Описание Определено
actionPrefix строка Префикс к идентификаторам действий. CWidget
controller CController Возвращает контроллер, к которому относится этот виджет. CWidget
cssFile смешанный тип Имя файла CSS темы. CJuiWidget
htmlOptions массив HTML-атрибуты, которые должны быть отображены в HTML-теге, представляющем виджет JUI. CJuiWidget
id строка Возвращает ID виджета или генерирует новый, если запрошено. CWidget
options массив Начальные JavaScript-опции, которые должны быть переданы плагину JUI. CJuiWidget
owner CBaseController Возвращает владельца/создателя этого виджета. CWidget
scriptFile смешанный тип Основной JavaScript-файл JUI. CJuiWidget
scriptUrl строка Корневой URL, содержащий все JavaScript-файлы JUI. CJuiWidget
skin смешанный тип Имя скина, используемого этим виджетом. CWidget
theme строка Название темы JUI. CJuiWidget
themeUrl строка Корневой URL, содержащий все папки тем JUI. CJuiWidget
viewPath строка Возвращает каталог, содержащий файлы представления для этого виджета. CWidget

Публичные методы

Метод Описание Определено в
__call() Вызывает именованный метод, который не является методом класса. CComponent
__construct() Конструктор. CWidget
__get() Возвращает значение свойства, список обработчиков событий или поведение на основе его имени. CComponent
__isset() Проверяет, является ли значение свойства null. CComponent
__set() Устанавливает значение свойства компонента. CComponent
__unset() Устанавливает свойство компонента в null. CComponent
actions() Возвращает список действий, используемых этим виджетом. CWidget
asa() Возвращает объект поведения с заданным именем. CComponent
attachBehavior() Присоединяет поведение к этому компоненту. CComponent
attachBehaviors() Присоединяет список поведений к компоненту. CComponent
attachEventHandler() Присоединяет обработчик события к событию. CComponent
beginCache() Начинает кеширование фрагмента. CBaseController
beginClip() Начинает запись клипа. CBaseController
beginContent() Начинает рендеринг содержимого, которое должно быть обработано указанной представлением. CBaseController
beginWidget() Создаёт виджет и выполняет его. CBaseController
canGetProperty() Определяет, может ли свойство быть прочитано. CComponent
canSetProperty() Определяет, может ли свойство быть установлено. CComponent
createWidget() Создаёт виджет и инициализирует его. CBaseController
detachBehavior() Отсоединяет поведение от компонента. CComponent
detachBehaviors() Отсоединяет все поведения от компонента. CComponent
detachEventHandler() Отсоединяет существующий обработчик события. CComponent
disableBehavior() Отключает прикреплённое поведение. CComponent
disableBehaviors() Отключает все прикреплённые к этому компоненту поведения. CComponent
enableBehavior() Включает прикреплённое поведение. CComponent
enableBehaviors() Включает все прикреплённые к этому компоненту поведения. CComponent
endCache() Завершает кеширование фрагмента. CBaseController
endClip() Завершает запись клипа. CBaseController
endContent() Завершает рендеринг содержимого. CBaseController
endWidget() Завершает выполнение указанного виджета. CBaseController
evaluateExpression() Вычисляет PHP-выражение или обратный вызов в контексте этого компонента. CComponent
getController() Возвращает контроллер, к которому принадлежит этот виджет. CWidget
getEventHandlers() Возвращает список прикреплённых обработчиков событий для события. CComponent
getId() Возвращает идентификатор виджета или генерирует новый, если запрошено. CWidget
getOwner() Возвращает владельца/создателя этого виджета. CWidget
getViewFile() Ищет файл сценария представления в соответствии с именем представления. CWidget
getViewPath() Возвращает каталог, содержащий файлы представлений для этого виджета. CWidget
hasEvent() Определяет, определено ли событие. CComponent
hasEventHandler() Проверяет, есть ли у указанного события прикреплённые обработчики. CComponent
hasProperty() Определяет, определено ли свойство. CComponent
init() Инициализирует виджет. CJuiWidget
raiseEvent() Вызывает событие. CComponent
render() Отображает представление. CWidget
renderFile() Отображает файл представления. CBaseController
renderInternal() Отображает файл представления. CBaseController
run() Выполняет виджет. CWidget
setId() Устанавливает идентификатор виджета. CWidget
widget() Создаёт виджет и выполняет его. CBaseController

Защищённые методы

Метод Описание Определено в
registerCoreScripts() Регистрирует файлы ядра сценария. CJuiWidget
registerScriptFile() Регистрирует файл JavaScript в рамках scriptUrl. CJuiWidget
resolvePackagePath() Определяет путь к установке пакета JUI. CJuiWidget

Подробное описание свойств

cssFile свойство

public mixed $cssFile;

имя файла CSS темы. По умолчанию 'jquery-ui.css'. Обратите внимание, что файл должен существовать по адресу, указанному в themeUrl/theme. Если вам нужно включить несколько файлов CSS темы (например, при разработке, вы хотите включить отдельные файлы CSS плагинов), вы можете установить это свойство как массив имён файлов CSS. Это свойство также может быть установлено как false, что означает, что виджет не будет включать никакой файл CSS темы, и вы сами должны явно включить его где-то ещё.

htmlOptions свойство

public array $htmlOptions;

HTML-атрибуты, которые должны быть отображены в HTML-теге, представляющем виджет JUI.

options свойство

public array $options;

Начальные параметры JavaScript, которые должны быть переданы в плагин JUI.

Свойство scriptFile

public mixed $scriptFile;

Основной файл JavaScript JUI. По умолчанию 'jquery-ui.min.js'. Обратите внимание, что файл должен существовать по адресу, указанному в scriptUrl. Если вам нужно включить несколько файлов скриптов (например, во время разработки, вы хотите включить отдельные файлы скриптов плагинов вместо сжатого файла скрипта JUI), вы можете установить это свойство как массив имён файлов скриптов. Это свойство также может быть установлено в значение false, что означает, что виджет не будет включать никакой файл скрипта, и вам нужно будет явно включить его где-то ещё.

Свойство scriptUrl

public string $scriptUrl;

Корневой URL, содержащий все файлы JavaScript JUI. Если это свойство не задано (по умолчанию), Yii опубликует пакет JUI, включенный в релиз zii, и использует его для определения корневого URL скрипта. Вы должны установить это свойство, если вы планируете использовать пакет JUI, версия которого отличается от версии, включенной в zii. Обратите внимание, что по этому URL должен существовать файл, имя которого указано в scriptFile. Не добавляйте символ косой черты к URL.

Свойство theme

public string $theme;

Имя темы JUI. По умолчанию 'base'. Убедитесь, что по адресу themeUrl существует директория с именем, совпадающим с этим значением свойства (регистрозависимо).

Свойство themeUrl

public string $themeUrl;

Корневой URL, содержащий все папки тем JUI. Если это свойство не задано (по умолчанию), Yii опубликует пакет JUI, включенный в релиз zii, и использует его для определения корневого URL темы. Вы должны установить это свойство, если вы хотите использовать тему, которая не найдена в пакете JUI, включённом в zii. Обратите внимание, что по этому URL должна существовать директория с именем, указанным в theme. Не добавляйте символ косой черты к URL.

Подробное описание методов

Метод init()

public void init()
Исходный код: framework/zii/widgets/jui/CJuiWidget.php#79 (показать)
public function init()
{
    
$this->resolvePackagePath();
    
$this->registerCoreScripts();
    
parent::init();
}

Инициализирует виджет. Этот метод опубликует ресурсы JUI при необходимости. Он также зарегистрирует файлы JavaScript jQuery и JUI, а также файл CSS темы. Если вы переопределяете этот метод, убедитесь, что сначала вызываете родительскую реализацию.

Метод registerCoreScripts()

protected void registerCoreScripts()
Исходный код: framework/zii/widgets/jui/CJuiWidget.php#108 (показать)
protected function registerCoreScripts()
{
    
$cs=Yii::app()->getClientScript();
    if(
is_string($this->cssFile))
        
$cs->registerCssFile($this->themeUrl.'/'.$this->theme.'/'.$this->cssFile);
    elseif(
is_array($this->cssFile))
    {
        foreach(
$this->cssFile as $cssFile)
            
$cs->registerCssFile($this->themeUrl.'/'.$this->theme.'/'.$cssFile);
    }

    
$cs->registerCoreScript('jquery');
    if(
is_string($this->scriptFile))
        
$this->registerScriptFile($this->scriptFile);
    elseif(
is_array($this->scriptFile))
    {
        foreach(
$this->scriptFile as $scriptFile)
            
$this->registerScriptFile($scriptFile);
    }
}

Регистрирует основные файлы скриптов. Этот метод регистрирует файлы JavaScript jQuery и JUI, а также файл CSS темы.

Метод registerScriptFile()

protected void registerScriptFile(string $fileName, integer $position=2)
$fileName строка Имя файла JavaScript
$position целое число Позиция файла JavaScript. Допустимые значения:
  • CClientScript::POS_HEAD : скрипт вставляется в секцию head прямо перед элементом title.
  • CClientScript::POS_BEGIN : скрипт вставляется в начало секции body.
  • CClientScript::POS_END : скрипт вставляется в конец секции body.
Исходный код: framework/zii/widgets/jui/CJuiWidget.php#140 (показать)
protected function registerScriptFile($fileName,$position=CClientScript::POS_END)
{
    
Yii::app()->getClientScript()->registerScriptFile($this->scriptUrl.'/'.$fileName,$position);
}

Регистрирует файл JavaScript по адресу scriptUrl. По умолчанию файл скрипта будет отображаться в конце страницы для улучшения скорости загрузки.

Метод resolvePackagePath()

protected void resolvePackagePath()
Исходный код: framework/zii/widgets/jui/CJuiWidget.php#92 (показать)
protected function resolvePackagePath()
{
    if(
$this->scriptUrl===null || $this->themeUrl===null)
    {
        
$cs=Yii::app()->getClientScript();
        if(
$this->scriptUrl===null)
            
$this->scriptUrl=$cs->getCoreScriptUrl().'/jui/js';
        if(
$this->themeUrl===null)
            
$this->themeUrl=$cs->getCoreScriptUrl().'/jui/css';
    }
}

Определяет путь установки пакета JUI. Этот метод определит корневой URL JavaScript и корневой URL темы. Если они не указаны явно, он опубликует включенный пакет JUI и использует его для определения необходимых путей.

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CJuiWidget

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API