Команда Search│Objects открывает окно, в котором выводятся
все используемые в программе объекты, упорядоченные в иерархичес-
кой структуре. В верхней части окна ObjectBrowser показывает ба-
зовый тип и выводит ниже и справа от базового типа потомков. Про-
яснить соотношения "предок-потомок" помогают соединяющие линии.
Примечание: Подробную информацию о типах объектов вы
можете найти в Главе 9 ("Объектно-ориентированной програм-
мирование").
▒File▒Edit▒Search▒▒Run▒▒Compile▒Debug▒Tools▒Options▒Window▒Help▒▒
╔═[*]══════════════════════ Browse: Object ════════════════2═[*]╗
║ Global Scope ║
║─┤ I ├─────────────────────────────────────────────────────────║
║─Objects▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒^
║ ├────Location █
║ │ ├───Block ▒
║ │ │ ├───Ball ▒
║ │ │ └───Brick ▒
║ │ ├───Cursor ▒
║ │ │ └───SaveScreen ▒
║ │ ├───Obstacle ▒
║ │ │ ├───Boundary ▒
║ │ │ │ ├───LeftBound ▒
║ │ │ │ ├───LowerBound ▒
║ │ │ │ ├───RightBound ▒
║ │ │ │ └───UpperBound ▒
║ │ │ ├───Paddle ▒
║ │ │ └───Wall ▒
║ │ └───TextString ▒
║ │ └───Counter ▒
║ │ └───DownCounter ▒
║ │ └───LimitCounter v
╚<▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒>─┘
░F1░Help░<┘░Browse░░Ctrl░<┘░Go░to░source░Space░Track░src░F10░Menu
Рис. 4.4 Просмотр иерархии объектов прикладной программы.
Если иерархия объектов у вас слишком большая, вы можете за-
дать, чтобы потомки конкретного объекта на экран не выводились.
* С помощью клавиатуры сделайте следующее:
1. Выберите объект.
2. Нажмите клавишу - (минус).
* При наличии "мыши" просто щелкните "мышью" на горизонталь-
ной линии, соединяющей объект с иерархией.
Теперь после объекта выводится + (плюс), и он подсвечивает-
ся, показывая, что потомки данного объекта на экран не выводятся.
Вы можете вывести потомков объекта снова.
* С помощью клавиатуры:
1. Выделите объект с символом +.
2. Нажмите клавишу +.
* При наличии "мыши" щелкните ей на горизонтальной строке,
соединяющей объект с иерархией.
Потомки объекта появляются вновь.
Из иерархии объектов вы можете просматривать все описанные в
индивидуальном объекте идентификаторы. Выделите объект и нажмите
клавишу Enter, либо дважды щелкните на объекте кнопкой "мыши".
При просмотре описанных в объекте идентификаторов вы можете
задать различные виды вывода:
* Для вывода информации о наследовании для просматриваемого
объекта щелкните "мышью" на букве I в верхней части окна
ObjectBrowser или нажмите клавиши Ctrl+I.
* Для вывода на экран перечня строк программы или модуля,
где имеется ссылка на идентификатор объекта щелкните
"мышью" на букве R в верхней части окна ObjectBrowser или
нажмите клавиши Ctrl+R.
* Для вывода области действия объекта щелкните "мышью" на
букве S или нажмите клавиши Ctrl+S.
Чтобы найти идентификатор в списке выводимых идентификато-
ров, наберите первую букву имени идентификатора; ваш курсор быст-
ро перемещается на соответствующий идентификатор.
Чтобы ObjectBrowser мог находить, где расположены ваши ис-
ходные файлые, вам может потребоваться изменить маршрут каталога
модулей и включаемых файлов в диалоговом окне Options│
Directories.
Если после открытия окна просмотра вы модифицируете исходный
код, добавляя или удаляя строки программы, то программу лучше пе-
рекомпилировать. Хотя ObjectBrowser после модификации исходного
кода все равно сможет отслеживать информацию об идентификаторах,
номера строк исходного кода, выводимые в окне редактирования, не
будут обновляться, пока программа не будет перекомпилирована.
Изменения режима вывода информации ObjectBrowser
Вы можете управлять характером вывода в ObjectBrowser инфор-
мации.
Можно выбрать, какие идентификаторы должны выводить
ObjectBrowser:
1. Для вывода диалогового окна Browser Options выберите ко-
манду Options│Browser.
2. В группе Symbols отметьте только те идентификаторы, кото-
рые вы хотите выводить в ObjectBrowser. Вы можете также
выбрать вывод идентификаторов, наследуемых от предков
объекта.
3. Выберите командную кнопку OK.
В ObjectBrowser выводятся только те идентификаторы, кото-
рые вы выбрали.
Вы можете также выбрать, какие идентификаторы выводить толь-
ко в активном окне просмотра. Для вывода диалогового окна Local
Browser Options (Локальные параметры просмотра) выберите в ло-
кальном меню окна просмотра команду Options или при отображении
окна просмотра нажмите клавиши Ctrl+O.
Если вы в качестве типа отображаемых идентификаторов выбере-
те типы, переменные и процедуры, а затем будете просматривать
объект Location в программе BREAKOUT.PAS (пример демонстрационной
программы в каталоге EXAMPLES\DOS\BREAKOUT), то увидите следующую
информацию об идентификаторах:
▒File▒Edit▒Search▒▒Run▒▒Compile▒Debug▒Tools▒Options▒Window▒Help▒▒
╔═[*]══════════════════════ Browse: Object ════════════════2═[*]╗
║ Global Scope ║
║─┤ S │ I │ R ├─────────────────────────────────────────────────║
║▒var▒▒▒▒Location.X:▒▒Integer▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒^
║ var Location.Y: Integer █
║ var Location.Visible: Boolean ▒
║ var Location.Init(Integer, Integer) ▒
║ proc Location.Relocate(Integer, Integer) ▒
║ proc Location.MoveTo(Integer, Integer) ▒
║ proc Location.Show ▒
║ proc Location.Hide ▒
║ func Location.GetX: Integer ▒
║ func Location.GetY: Integer ▒
║ func Location.InVisible: Boolean ▒
║ ▒
║ ▒
║ v
╚<█▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒>─┘
░F1░Help░<┘░Browse░░Ctrl░<┘░Go░to░source░Space░Track░src░F10░Menu
Рис. 4.5 Просмотр информации об идентификаторах.
Сокращения слева от перечисленных идентификаторов перечисля-
ют идентификаторы, представляющие вид выводимого идентификатора.
Заметим, что включение идентификаторов процедур также включает
идентификаторы функций.
┌───────────────┬────────────────────────────────────┐
│ Идентификатор │ Смысл │
├───────────────┼────────────────────────────────────┤
│ const │ Константа │
│ func │ Функция │
│ label │ Метка │
│ proc │ Процедура │
│ type │ Тип │
│ var │ Переменная или типизированная кон- │
│ │ станта. │
└───────────────┴────────────────────────────────────┘
Для вывода предыдущего окна просмотра выберите команду
Search│Previous Browser или нажмите клавиши Ctrl+P.
Когда вы просматриваете выделенный идентификатор, окно
ObjectBrowser по умолчанию выводит информацию об области дейс-
твия. Если вы предпочитаете по умолчанию видеть информацию о
ссылках, то сделайте следующее:
1. Выберите команду Options│Browser.
2. Выберите в качестве значения параметра Preferred Pane
Reference.
3. Выберите командную кнопку OK.
По умолчанию ObjectBrowser выводит для проверяемого иденти-
фикатора полную информацию об описании. Вы можете просмотреть все
поля и методы записей и объектов, включая полностью уточненные
идентификаторы. Если вы не хотите видеть полностью уточненные
идентификаторы, то сделайте следующее:
1. Выберите команду Options│Browser.
2. Отмените параметр вывода Qualified Symbols.
3. Выберите командную кнопку OK.
Примечание: Вы не увидите видеть полностью уточненные
идентификаторы, пока не установите наследование в диалого-
вом окне Browser Options (Options│Browser).
По умолчанию ObjectBrowser выводит идентификаторы в области
Scope в том порядке, в каком они описаны. Если вы предпочитаете
сортировать идентификаторы в алфавитном порядке, то сделайте сле-
дующее:
1. Выберите команду Options│Browser.
2. Установите параметр вывода Sort Always.
3. Выберите командную кнопку OK.
Идентификаторы будут сортироваться только по именам, а не
по полностью уточненным именам. Например, считается, что
следующий список идентификаторов отсортирован в алфавит-
ном порядке:
THELPFILE.DONE
TOBJECT.FREE
THELPFILE.INDEX: PHELP
Когда вы открываете окно просмотра, затем просматриваете пе-
речисленный в нем идентификатор, то открывается новое окно прос-
мотра, но предыдущее окно остается. Вы можете изменить это пове-
дение таким образом, что новое окно просмотра будет заменять пре-
дыдущее:
1. Выберите команду Options│Browser.
2. Установите параметр Replace Current sub-browsing.
3. Выберите командную кнопку OK.
Чтобы текущее окно просмотра сохранялось, когда вы выбираете
перечисленный в его списке идентификатор, сделайте следующее:
1. Выберите команду Options│Browser.
2. Установите параметр New Browser sub-browsing.
3. Выберите командную кнопку OK.
Возможно, в большинстве случаев вы предпочитаете использо-
вать параметр Replace Current или New Browser, но иногда исполь-
зуете альтернативный параметры. Быстро выбрать альтернативный па-
раметр можно следующим образом:
1. Нажмите и удерживайте в нажатом состоянии клавишу Shift.
2. Выберите следующее действие просмотра.
Например, если действует параметр New Browser, то при на-
жатии клавиши Shift следующее открываемое окно просмотра
будет замещать текущее.
Отслеживание и редактирование ссылок на строки
Когда ObjectBrowser выводит ссылочную информацию, вы можете
выбирать и редактировать выводимые в ссылке строки программы или
отслеживать ссылки на идентификатор. Отслеживание означает, что
IDE, при перемещении по ссылкам в окне просмотра, подсвечивает в
программе одну строку за другой.
Чтобы отредактировать выводимую в ссылке строку программы,
сделайте следующее:
1. Выделите ссылку в окне просмотра.
2. Нажмите клавиши Ctrl+Enter или Ctrl+G.
Ваш курсор перемещается на строку программы в исходном
коде, ссылка на которую содержится в окне просмотра. Те-
перь вы можете редактировать строку программы.
По умолчанию, когда ваш курсор перемещается на строку ис-
ходного кода программы, окно ObjectBrowser закрывается.
Если вы предпочитаете, чтобы окно просмотра оставалось
открытым, то отмените параметр Close On Go To Source в
диалоговом окне Preferences.
Примечание: Параметр Close On Go To Source влияет
также на окно сообщений Messages (см. ниже).
Для отслеживания строк программы:
1. В окне просмотра выделите ссылку, которую вы хотите отс-
леживать.
2. Нажмите клавишу пробела.
Если вы всегда хотите отслеживать ссылки по исходному ко-
ду, установите параметр Auto Track Source и группе
Options диалогового окна Preferences. Тогда при прокрутке
ссылок строки в исходном коде программы будут прокручи-
ваться автоматически, и пробел вам нажимать не нужно.
Примечание: Параметр Auto Track Source влияет также
на окно сообщений Messages (см. ниже).
Теперь строки программы, на которые имеются ссылки в окне
просмотра, отслеживаются в зависимости от того, как вы установили
параметры отслеживания в диалоговом окне Options│Enviroment│
Preferences: если файл, на который имеется ссылка, не находится в
окне редактирования, то IDE открывает файл, и он выводится либо в
новом, либо в текущем окне редактирования.
* Если вы хотите, чтобы файл выводился в новом окне редакти-
рования, выберите в качестве значения параметра Source
Tracking New Window.
* Если вы хотите, чтобы файл замещал текущий в активном окне
редактирования, выберите в качестве значения параметра
Source Tracking Current Window.
Примечание: Параметр Source Tracking влияет также на
окно сообщений Messages (см. ниже).
Если выбранный модуль хранится в библиотеке исполняющей сис-
темы Borland Pascal или является одним из стандартных модулей, то
вы не сможете просматривать или редактировать исходный код, пос-
кольку эти модули скомпилированы без включения отладочной инфор-
мации.