ui Module¶
| created: | 23.07.12 |
|---|---|
| author: | pirogov |
-
class
objectpack.ui.BaseEditWindow(*args, **kwargs)¶ - Базовые классы:
m3_ext.ui.windows.edit_window.ExtEditWindow,objectpack.ui.BaseWindowБазовое окно редактирования (с формой и кнопкой сабмита)
-
form¶ Форма окна
-
set_params(params)¶
-
-
class
objectpack.ui.BaseListWindow(*args, **kwargs)¶ - Базовые классы:
objectpack.ui.BaseWindowБазовое окно списка объектов
-
add_grid_column_filter(column_name, filter_control=None, filter_name=None, tooltip=None)¶ Метод добавляет колоночный фильтр в грид
Параметры: - column_name (str) – Имя колонки
- filter_control – Ext-компонент фильтра
- filter_name (str) – Имя фильтра
- tooltip (unicode) – Всплывающая подсказка
-
del_grid_column_filter(column_name, filter_name=None)¶ Метод удаляет колоночный фильтр
Параметры: - column_name (str) – Имя колонки
- filter_name (str) – Имя фильтра
-
render()¶ Рендеринг окна
-
set_params(params)¶ Принимает в параметрах пак и делегирует ему конфигурирование грида
-
-
class
objectpack.ui.BaseMultiSelectWindow(*args, **kwargs)¶ - Базовые классы:
objectpack.ui.BaseSelectWindowОкно множественного выбора в ExtMultiSelectWindow
-
set_params(params)¶
-
-
class
objectpack.ui.BaseSelectWindow(*args, **kwargs)¶ - Базовые классы:
objectpack.ui.BaseListWindowОкно выбора из списка объектов
-
set_params(params)¶
-
-
class
objectpack.ui.BaseWindow¶ - Базовые классы:
m3_ext.ui.windows.window.ExtWindowБазовое окно
-
set_params(params)¶ Метод принимает словарь, содержащий параметры окна, передаваемые в окно слоем экшнов
Примечание
Параметры могут содержать общие настройки окна (title, width, height, maximized) и флаг режима для чтения (read_only)
Параметры: params (dict) – Словарь с параметрами
-
-
class
objectpack.ui.ColumnsConstructor(items=None)¶ - Базовые классы:
objectКонструктор колонок для сложных гридов с banded-колонками
Имеет 2 дочерних класса: - Col - простая колонка - BandedCol - группирующая колонка.
Пример использования:
# создание колонок inline cc = ColumnsConstructor() cc.add( cc.Col(header='1'), cc.BandedCol(header='2', items=( cc.Col(header='3'), cc.Col(header='4'), cc.BandedCol(header='5', items=( cc.Col(header='6'), cc.BandedCol(header='7', items=( cc.Col(header='8'), cc.Col(header='9'), cc.BandedCol(), )), cc.Col(header='10') )) )), cc.Col(header='11') ) # динамическое создание колонок for grp_idx in 'ABCD': grp = cc.BandedCol(header=grp_idx) for col_idx in 'ABCD': grp.add( cc.Col(header=grp_idx + col_idx) ) cc.add(grp) cc.configure_grid(grid)
-
class
BandedCol(items=None, **kwargs)¶ - Базовые классы:
objectГруппирующая колонка
-
add(*args)¶ Добавление колонок
Параметры: args (list) – Колонки
-
-
class
ColumnsConstructor.Col(**kwargs)¶ - Базовые классы:
objectПростая колонка
-
ColumnsConstructor.add(*args)¶ Добавление колонок
-
ColumnsConstructor.configure_grid(grid)¶ Конфигурирование грида
-
classmethod
ColumnsConstructor.from_config(config, ignore_attrs=None)¶ Создание экземпляра на основе конфигурации
configПараметры: - config (dict) –
- ignore_attrs –
-
class
-
class
objectpack.ui.ComboBoxWithStore(data=None, url=None, **kwargs)¶ - Базовые классы:
m3_ext.ui.fields.complex.ExtDictSelectFieldПотомок m3-комбобокса со втроенным стором
Примечание
Установка артибутов data или url конфигурирует стор контрола
-
data¶ Фиксированный стор вида ((id, name),....)
-
url¶ URL для динамической загрузки
-
-
exception
objectpack.ui.GenerationError¶ - Базовые классы:
exceptions.Exceptionошибка возникает при проблемы генерации контрола
-
class
objectpack.ui.ModelEditWindow(*args, **kwargs)¶ - Базовые классы:
objectpack.ui.BaseEditWindowПростое окно редактирования модели
-
classmethod
fabricate(model, **kwargs)¶ Гененрирует класс-потомок для конкретной модели
Использование:
class Pack(...): add_window = ModelEditWindow.fabricate( SomeModel, field_list=['code', 'name'], model_register=observer, )
Параметры: - model (django.db.models.Model) – Модель django
- kwargs (dict) – Параметры для передачи в field_fabric_params
Результат: Субкласс objectpack.ui.ModelEditWindow
-
field_fabric_params= None¶ Словарь kwargs для model_fields_to_controls (“field_list”, и т.д.)
-
model= None¶ Модель, для которой будет строится окно
-
set_params(params)¶
-
classmethod
-
class
objectpack.ui.ObjectGridTab¶ - Базовые классы:
objectpack.ui.WindowTabВкладка с гридом
-
do_layout(win, tab)¶
-
classmethod
fabricate(model, model_register, tab_class_name=None)¶ Возвращает класс вкладки, построенной на основе основного пака для модели
model. В процессе настройки вкладки экземпляр пака получается посредством вызоваmodel_register.get дляmodel_nameПараметры: - model (django.db.models.Model) – Модель django
- model_register – Реестр моделей
- tab_class_name (str) – Имя класса вкладки (если не указано, то генерируется на основе имени класса модели пака)
-
classmethod
fabricate_from_pack(pack_name, pack_register, tab_class_name=None)¶ Возвращает класс вкладки, построенной на основе пака с именем
pack_name. В процессе настройки вкладки экземпляр пака получается посредством вызоваpack_register.get_pack_instance дляpack_nameПараметры: - pack_name – Имя пака
- pack_register – Реестр паков
- tab_class_name – Имя класса вкладки (если не указано, то генерируется на основе имени класса модели пака)
-
get_pack()¶ Возвращает экземпляр ObjectPack для настройки грида
-
init_components(win)¶ Создание грида
Параметры: win – Окно
-
set_params(win, params)¶
-
title¶ Заголовок вкладки
-
-
class
objectpack.ui.ObjectTab¶ - Базовые классы:
objectpack.ui.WindowTabВкладка редактирования полей объекта
-
do_layout(win, tab)¶
-
classmethod
fabricate(model, **kwargs)¶ Гененрирует класс-потомок для конкретной модели
Использование:
class Pack(...): add_window = ObjectTab.fabricate( SomeModel, field_list=['code', 'name'], model_register=observer, )
-
field_fabric_params= None¶ Словарь kwargs для model_fields_to_controls (“field_list”, и т.д.)
-
init_components(win)¶
-
model= None¶ Модель, для которой будет строится окно
-
set_params(win, params)¶
-
title¶ Заголовок вкладки
-
-
class
objectpack.ui.TabbedEditWindow(*args, **kwargs)¶ - Базовые классы:
objectpack.ui.TabbedWindow,objectpack.ui.BaseEditWindowОкно редактирования с вкладками
-
class
objectpack.ui.TabbedWindow¶ - Базовые классы:
objectpack.ui.BaseWindowОкно со вкладками
-
set_params(params)¶
-
tabs= None¶
-
-
class
objectpack.ui.WindowTab¶ - Базовые классы:
objectПрототип конструктора таба
-
do_layout(win, tab)¶ Здесь задаётся расположение компонентов. Компоненты должны быть расположены на табе
tabокнаwinПараметры: - win – Окно
- tab – Вкладка
-
init_components(win)¶ Здесь создаются компоненты, но не задаётся расположение Компоненты создаются, как атрибуты окна
winПараметры: win – Окно
-
set_params(win, params)¶ Установка параметров
Параметры: - win – Окно
- params – Параметры
-
template= None¶
-
title= u''¶
-
-
objectpack.ui.allow_blank(ctl)¶ Устанавливает allow_blank=True у контрола и возвращает его (контрол)
Пример использования:
controls = map(allow_blank, controls)
-
objectpack.ui.anchor100(ctl)¶ Устанавливает anchor в 100% у контрола и восвращает его (контрол)
Пример использования:
controls = map(anchor100, controls)
-
objectpack.ui.deny_blank(ctl)¶ Устанавливает allow_blank=False у контрола и возвращает его (контрол)
Пример использования:
controls = map(allow_blank, controls)
-
objectpack.ui.make_combo_box(**kwargs)¶ Создает и возвращает ExtComboBox
Параметры: kwargs (dict) – Передаются в конструктор комбобокса
-
objectpack.ui.model_fields_to_controls(model, window, field_list=None, exclude_list=None, model_register=None, **kwargs)¶ Добавление на окно элементов формы по полям модели
Примечание
exclude_listигнорируется при указанномfield_listПримечание
Списки включения/исключения полей могут содержать wildcards вида x* или *x, которые трактуются как префиксы и суффиксы
Примечание
При создании полей для связанных моделей ActionPack для модели ищется в реестре моделей
model_registerпо имени класса модели (передачей имени в метод “get” реестра)Параметры: - model – Модель django
- window (m3_ext.ui.windows.window.ExtWindow) – Окно
- field_list (list) – Список полей
- exclude_list (list) – Список полей-исключений
- model_register – Реестр моделей-паков
- kwargs (dict) – Дополнительные параметры для передачи в конструктор элементов
Результат: Список контролов для полей модели
Тип результата: list