Project

General

Profile

Actions

Document Markup Outline view

Outline - плоский вид

В Outline должен быть список location'ов в порядке их присутствия в html документе.

Каждый location отображается следующим образом:
  1. Если location соответствует ноль требований в базе, то отображается текст "orphan location" красным жирным шрифтом.
  2. Если location соответствует одно требование, то user-visible-name(req).
  3. Если location соответствует несколько требований, то user-visible-name(req1),user-visible-name(req2),user-visible-name(req3).

Если в данном документе у одного требования несколько location'ов, то в тексте выше user-visible-name(req) заменяется на user-visible-name(req)#i, где i - порядковый номер location'а среди всех location'ов данного требования в данном документе.

Определение user-visible-name(req) следующее:
  • name, если name не пустое
  • user-visible-name(req.parent).id, иначе
Кроме того, Outline должет быть синхронизирован с Document'ом в том смысле, что
  1. всегда при событии приводящем к промотке документа на определенный location, этот location должен выделяться в Outline.
  2. при выделении location в Outline необходимо проматывать документ к этому location.
(Зачеркнуто, т.к. неактуально, но может понадобиться потом)
В outline находится список всех location'ов. Список может быть в двух форматах:
  • список location'ов в порядке их нахождения в документе (в текущем открытом документе или во всех документах?)
  • список location'ов, сгруппированных по требованиям (требования - это узлы, раскрывающиеся в списки location'ов). Внутри группы location'ы упорядочены в порядке нахождения в документе. - надо разбить на два: в одном все location'ы только из текущего документа, в другом - все location'ы, принадлежащие требованиям, которые есть в этом документе (включая location'ы из других документов).
При одинарном клике на location'е:
  1. в документе показывается это location.
  2. текст location'а в документе выделяется.
  3. если выбирается location, принадлежащий другому требованию (которое сейчас не выбрано), это требование выделяется в Requality Explorer'е и открывается в незапиненном Properties view, если такого нет - новое Properties view не открывается.
При двойном клике на одном из location'ов:
  1. в документе показывается это location.
  2. текст location'а в документе выделяется.
  3. если выбирается location, принадлежащий другому требованию (которое сейчас не выбрано), это требование выделяется в Requality Explorer'е и открывается в незапиненном Properties view. И в отличие от одинарного клика, если незапиненного нет - открывается в новом Properties view.

Updated by Viktoria Kopach almost 13 years ago · 7 revisions