Я играю вокруг с SDK Ubuntu. В данный момент я пытаюсь создать Единицу 8 Объемов. В настоящее время я застреваю со следующим:
К сожалению, я не нашел полезной информации в документах разработчика.
Выпадающим выше результатов является селектор отдела. Категории являются различными группами объектов в результатах объема, который является, почему Вы, возможно, испытали затруднения при нахождении корректного API.
Для добавления отделов к объему необходимо звонить register_departments
на объекте ответа в методе класса run
запроса. Это берет unity::scopes::Department::SCPtr
объект, представляющий набор отделов, видимых для этого конкретного набора результатов:
, если пользователь в настоящее время просматривает высокоуровневый отдел, необходимо передать Department
представление верхнего уровня с его непосредственными заполненными детьми.
, Если пользователь просматривает подотдел, необходимо передать Department
представление родителя с его непосредственными заполненными детьми. Текущий отдел должен появиться в детях.
идея состоит в том, что только те части дерева отдела, необходимого для непосредственной навигации, обеспечиваются. Ваш код мог бы выглядеть примерно так:
Department::SPtr parent = Department::create("parent", query(), "Parent Dept")
parent->set_subdepartments({
Department::create("sibling", query(), "Sibling department"),
Department::create("current", query(), "Current departmnet")});
reply->register_departments(parent);
Теперь все, что необходимо сделать, заставляют объем обеспечить результаты, относящиеся к отделу, выбранному пользователем. Это сделано доступным в Вашем классе запроса как query().department_id()
. Это будет соответствовать идентификатору одного из отделов, которые Вы ранее зарегистрировали, или ""
, который нужно рассматривать как высокоуровневый отдел.