Подробнее о приложении PhoneBook.hdml
Подробнее о приложении PhoneBook.hdml
Как и приложение формата WML, дека PhoneBook.hdml позволяет пользователюнайти и автоматически дозвониться по номеру, хранящемуся в телефонном справочнике в режиме «онлайн». Эта дека имеет следующий исходный код:
<HDML Version=3.0 Markable=True TTL=0>
<Choice Name=Main Method=Alpha>
<Center>Phone Book<BR>
<CE Task=GO Dest=PhoneBookAF.hdml Label=A-F>A - F <CE Task=GO Dest=PhoneBookGM.hdml Label=G-M>G - M <CE Task=GO Dest=PhoneBookNS.hdml Label=N-S>N - S <CE Task=GO Dest=PhoneBookTZ.hdml Label=T-Z>T - Z
</Choice>
</HDML>
Первый элемент сообщает браузеру (или другим программистам), какая версияязыка HDML используется приложением. Далее выражение Markable=True сообщает браузеру, что он может установить закладку в исходной деке, a TTL=0 свидетельствует о невозможности кэширования деки.
Для отображения списка диапазонов букв, из совокупности которых пользователь производит свой выбор, приложение использует элемент <Choice>. Внутри<Choice> используются элементы <СЕ> для определения деки формата HDML, которую будет загружать приложение после того как пользователь произведет выбор диапазона букв.
Если, к примеру, пользователь выберет [A-F], приложение загрузит деку PhoneBookAF.hdml, которая имеет следующий исходный код:
<HDML Version=3.0 TTL=0>
<Choice Name=AF Method=Alpha>
<Action Type=Soft1 Task=GO Dest=PhoneBook.hdml Label=Back>
<Center>Phone Book<BR> <Center>(A - F)
<CE Task=GO Dest=#A Label=A>A <CE Task=GO Dest=#B Label=B>B <CE Task=GO Dest=#C Label=C>C <CE Task=GO Dest=#D Label=D>D <CE Task=GO Dest=#E Label=E>E <CE Task=GO Dest=#F Label=F>F
</Choice>
<Choice Name=A Key=choice Method=Alpha>
<Action Type=Soft1 Task=GO Dest=#AF Label=Back> <Action Type=Accept Icon=phone1 Label=Call Task=Call Number=$choice>
<Center>- - A - -
<CE Task=Call Number="1-800-272-3623" >Adobe Acrobat Support <CE Task=Call Number="1-206-622-5500" >Aldus Corporation
</Choice>
<Choice Name=B Key=choice Method=Alpha>
<Action Type=Soft1 Task=GO Dest=#AF Label=Back> <Action Type=Accept Icon=phone1 Label=Call Task=Call Number=$choice>
<Center>- - B - -
<CE Task=NOOP> <!-- Remove this line if you have entries for this letter -->
</Choice>
<Choice Name=C Key=choice Method=Alpha>
<Action Type=Soft1 Task=GO Dest=#AF Label=Back> <Action Type=Accept Icon=phone1 Label=Call Task=Call Number=$choice>
<Center>- - C - -
<CE Task=Call Number="1-613-728-8200" >Corel Corporation
</Choice>
<Choice Name=D Key=choice Method=Alpha>
<Action Type=Soft1 Task=GO Dest=#AF Label=Back> <Action Type=Accept Icon=phone1 Label=Call Task=Call Number=$choice>
<Center>- - D - -
<CE Task=NOOP> <!-- Remove this line if you have entries for this letter -->
</Choice>
<Choice Name=E Key=choice Method=Alpha>
<Action Type=Soft1 Task=GO Dest=#AF Label=Back> <Action Type=Accept Icon=phone1 Label=Call Task=Call Number=$choice>
<Center>- - E - -
<CE Task=NOOP> <!-- Remove this line if you have entries for this letter -->
</Choice>
<Choice Name=F Key=choice Method=Alpha>
<Action Type=Soft1 Task=GO Dest=#AF Label=Back> <Action Type=Accept Icon=phone1 Label=Call Task=Call Number=$choice>
<Center>- - F - -
<CE Task=NOOP> <!-- Remove this line if you have entries for this letter -->
</Choice>
</HDML>
После загрузки дека использует элементы <Choice> и <СЕ> для отображения буквА, В, С, D, Е и F вертикально на дисплее сотового телефона пользователя.В зависимости от выбора пользователя, приложение обращается к локальной карте,которая содержит информацию, касающуюся выбранной буквы.
Внутри каждой из карт приложение обеспечивает выполнение двух действий.Первым действием является предоставление пользователю возможности вернуться к предыдущей карте, в нашем случае к карте диапазона [A-F]. Вторым действием является предоставление пользователю возможности автоматически сделать звонок по выбранному номеру (приложение запоминает этот номер в переменной Choice):
<Action Type=Accept Icon=phone1 Label=Call Task=Call Number=$choice>