Диалоговые Web-элементы

Диалоговые элементы (такие как кнопки, текстовые окна, меню и т.п.) являются операторами языка Friend,  предназначены для создания Интернет-страниц, и создаются в языке Friend без применения  Ваших знаний   языков интернет-верстки, — таких как HTML  или jawa, а с помощью специальных  Web операторов и функций языка Friend. Но если требуется, то Friend позволяет  подключать к страницам библиотеки функций и стилей, написанные на других языках Интернет-верстки, или непосредственно внедрять сторонний код прямо в форме текста на Интернет-странице.

Изменять стиль диалоговых элементов можно с помощью контекста и  web-функций.

Web операторы и  функции будут работать только на страницах предназначенных для Интернет.

Каждая Интернет страница является Friend-задачей, и поэтому на ней будут работать все стандартные функции языка, что позволяет описывать  сложную логику формирования и поведения Интернет-страниц.

Использование КОНТЕКСТА для Web-операторов, происходит иначе чем для прочих операторов и функций.

В этом случаи контекст является дополнительным описанием свойств элемента, или описанием свойств группы элементов.

Вслед за обязательными параметрами каждого оператора, можно разместить несколько дополнительных функций из раздела этого описания «Дополнительные Web-функции» . Пример:

buttont( «Button1», «Это квадратная кнопка», inside(«Block1») , size(300,300))

Web-операторы языка Friend:

pageSet(Имя_атрибута, Значение_атрибута) — элемент настройки внешнего вида  web-страницы. Устанавливает указанное

свойство в заданное значение. Принимает стандартные свойства HTML-страницы, и три предустановленных свойства:

cover — активирует правильную систему координат страницы, — выполняйте всегда самой первой строчкой страницы.

bgcolor, цвет       —  устанавливает цвет фона (листа) страницы.

bgimage, файл    — загружает фоновую картинку страницы из указанного файла.

 

block(Имя, Акция)        — программный блок служащий для объединения нескольких визуальных компонентов, при отсылке POST-запроса к серверу.

blockv(Имя, Акция,Цвет_рамки)        — программный блок служащий для объединения нескольких визуальных компонентов, при отсылке POST-запроса к серверу. Рисует рамку указанного цвета.

Пример:

blockv(«Bl1», «page.frd»,»черный»,size(300,200) )

link(Имя,Текст,Ссылка,Новое_окно_true\false) — создает Интернет-ссылку на странице

span(Имя,Текст)       — создает символьную метку на странице

title(Имя,Текст)       — создает текстовую надпись  на странице

text(Имя,Текст)       — создает текстовое диалоговое окошко  на странице

textArea(Имя,Текст)       — создает  большое текстовое диалоговое окошко  на странице

buttont(Имя,Текст)       — создает кнопку  на странице

funButtont(Имя,Текст,Код_функции)       — создает  специальную кнопку  для вызова js-функций.  Если Код_функции =»», имя функции без параметров совпадает с именем кнопки. Иначе вызов функция должен быть описан явно.

confirmButtont(Имя, Текст, confirmtext, title)       — создает кнопку  после нажатия которой появляется дополнительно окошко для подтверждения нажатия с названием title и вопросом confirmtext.

Пример:

block(«Block1″,»Page2.frd»)
confirmbutton(«Button1″,»Prtoba»,»Вы уверены?»,»Запрос:»,inside(«Block1»))

 

image(Имя, файл)       — создает  окошко с картинкой  на странице

square(Имя, Ширина, Высота)       — создает прямоугольную область для других элементов  на странице (контейнер)

checkBox(Имя, Текст, false\true)          —  создает элемент выбора

radioGroup(Имя, {Список_названий},Индекс_пред_выбора, Горизонтально_true\false) — создает вертикальную или горизонтальную группу элемента «Переключатель», на основе надписей из «Списка_названий». Устанавливает выбор на элементе с номером «Индекс_пред_выбора», и с учетом ориентации «Горизонтально».

listBox(Имя, {Список_названий}, Множественный_выбор_true\false) создает список для выбора, на основе надписей из «Список_названий», и задает режим одиночного или множественного выбора.

table(Имя,Данные,Заголовок, Рамка) — создает таблицу на основе форматированного запятыми и точкой-с-запятыми текста, или двумерного массива. Первая строка массива должна описывать названия колонок.

Пример:

grey: table(‘tab1′,’Фамилия,Имя,Возраст;Иванов,Юра,16;Степанова,Катя,18′,’это сверху подпись’,true)

В таблицу можно вставлять различные объекты, — например картинки.

Нумерация ячеек начинается с 0. В ячейку предназначенную для вставки не текстовых данных (например картинки),

нужно записать код ‘/dt/’ . Имена ячеек строятся на основе их номера, например ‘titem4’

Следующий пример показывает как это можно сделать:

Второй вариант заключается в том, чтобы указывать ссылку на объект или картинку непосредственно в ячейке, через символ ссылки @

Но в этом случаи, невозможно управлять размерами вставляемого объекта.

Пример:

table(‘tab1’,’Фото,Фамилия,Имя ;@image1.jpg,Иванов,Юра;@image2.jpg,Степанова,Катя’,’это сверху подпись’,true)

Третий вариант состоит в том, чтобы задать таблицу вложенным списком:

{{Фамилия’,’Имя’,’Возраст’}, {‘Иванов’,’Юра’,16},{‘Степанова’,’Катя’,18}}

Удобство такого варианта в том, что элементы списка могут быть переменными, выражениями, или предварительно вычислены.

 

 

menu(Имя,Текст,Ссылка {Список пунктов} [,Вертикальное]) — создает элемент меню.

VMenu1(‘ширина’,’цвет_текста’,’цвет_фона’,{ список_пунктов}) — создает простое вертикальное меню без вложений, на основе списка строк. Параметры ширина, цвет, цвет_фона могут быть заданы по умолчанию «».

Элементы списка пунктов могут состоять из пункта на той-же странице «имя» или ссылки и названия пункта через «;»,  т.е.  «ссылка; текст»

Пример:

VMenu1(‘290px’,’#f1234′,’#ffac05′,{‘page1.frd;строка 1′,’page2.frd;строка 2’})

listMenu(Имя, {Список пунктов} ) — создает элемент меню. Список пунктов —   список пар типа «Имя, Значение». Значением может быть новый список пар.

Пример:

listMenu(Имя,  

                                  {«Книги»,

                                                { %(«Красная шапочка»,»кр_шапочка.doc»),

                                                    %( «Иванушка»,»иванушка.doc»)},

                                                       «Фильмы»,

                                                                           { %(«Октябрь»,»октябрь.doc»),

                                                                               %(«Ворон»,»ворон.doc»)

                                                                           }

                                                 }

                                    }

                        )

mapBox(Имя, Имя_файла_рисунка) — создает прямоугольную сенсорную область с рисунком («карту») для элементов AREA.

area(Ссылка, 2_координаты_прямоугольника,»rect», «»\альтернатива) — создает прямоугольную невидимую сенсорную зону на карте (mapBox) на основе четырех чисел-координат  прямоугольника (верхнего левого и нижнего  правого угла от начала карты — слева и сверху), и связывает эту область с ссылкой для перехода.

Пример создания «карты» с тремя ссылочными зонами:

mapBox(«Syte»,»Image12.png»)

web.area(«history.nota»,»20px, 110px, 180px, 350px», «rect», «», inside(«Syte»))
area(«linkes.nota»,»20px, 570px, 160px, 770px», «rect», «», inside(«Syte»))
area(«scoolbook.nota»,»980px, 140px, 1140px, 350px», «rect», «», inside(«Syte»))

fileBox(Имя, Множественный_выбор_false\true) — создает элемент для выбора файла из списка файлов

fileBox2(Множественный_выбор_false\true, Тип_файла_или_»») — создает элемент для выбора файла из списка файлов, с возможность указания шаблона файла.

tabPage(Имя,Список_имен_вкладок) — создает именуемые вкладки на странице

security(«index.frd»,»exit.frd»,»userCab»,»registred.frd»)  — компонент со сложной логикой, предназначенный для показа окна регистрации и входа по паролю. Работает на основе четырех ссылок на рабочую,  отказную, регистрационную и кабинетную страницы. В результате работы возвращает  true\false

Пример:

if( security(«index.frd»,»exit.frd»,»userCab»,»registred.frd»)  )  

{………}

pageFrame(Имя, Ссылка, Ширина, Высота) — вставляет в текущую страницу, уменьшенную копию указанной по Ссылке, другой страницы, взятой из Интернет, или из текущего сайта.

Ширина и Высота должны быть указаны в пикселях  («100px») или в процентах экрана («100%»)