Ремонт принтеров, сканнеров, факсов и остальной офисной техники


назад Оглавление вперед




[7]

pan(( (m1, tit1, pis1, Cnt2)} л tl tl pnls) end else ( } end

elsif cmd = Edit Л cmd = Add then

(entity record, CntO) = if cmd = Edit then edit(Cnt) else add(Cnt) end,

(tit0, pis0) =

if CntO = nothing to do then ("! { Exit} ) elsif

entity record =

false - - to set list of commands then

("edit entity of "л tit, N2MRelButtons

("edit record of "л tit, EditRecButtons) end

panOut!mkPanOutput(true, tit0, pis0, Cnt0) ; pan

(( (true, titO, pisO, CntO)} л pnls)--panel to edit = modal

let Cnt1 =

if cmd = Delete then delete(Cnt) elsif cmd = Export then export(Cnt) elsif cmd = Refresh then refresh(Cnt) elsif cmd = Filter then filter(Cnt) else order(Cnt) end

panOut!mkPanOutput(m, tit, pis, Cnt1) ; pan(( (m, tit, pis, Cnt1)} л tl pnls) end end

-- в cnt обрабатываются

-- команда сортировки, листание страниц, изменение

-- текущей записи


pan(( (m, tit, pis, cnt(Cnt))} л tl pnls) end

-- End Of Scheme

2.3.2 Abstract Panel Content Level

Схема обьявляет тип PanContent для описания содержимого панели и содержит уточнение типа Menultem, сигнатуры необходимых функций для выполнения над содержимым панели заданных действий.

-- Start of Scheme

rsl/T0, rsl/L2 SET scheme L2 CNT =

with T0 in

extend L2 SET with

PanContent

--itempan title

, MenuItem = Text x Text x Actions*

MainMenu : MenuItem-set ,

app about : PanContent,

nothing to do : PanContent,

export : PanContent - PanContent,

filter : PanContent - PanContent,

order : PanContent - PanContent,

mkPanContentOutput : PanContent - SETOutput,

exit : PanContent - Unit,

refresh : PanContent - PanContent,

delete : PanContent - PanContent

-- to make PanContent

mkPanContent : Actions* - PanContent

-- to create a edit panel for entity or record

-- entity record

add : PanContent - Bool x PanContent,


edit : PanContent - Bool x PanContent - -

cnt : PanContent - in setIn, any out setOut, any PanContent

-- End Of Scheme

Объявление каналов данных для уровня множество и их типов. -- Start of Scheme

scheme L2 SET = with TO in class

SETInput - - keys and number of strihgs , SETOutput - - content of datawindow , RWTable, RWRecord, Actions

channel setIn : SETInput, setOut : SETOutput

-- End Of Scheme

2.4 Panel Content Level

Конкретный уровень множества, в связи с его сложностью, разделим на два подуровня: содержимого панели и окна данных.

Далее, уточним понятие содержиме панели Panel Content 2.4.1 Concrete Panel Content Data

Для описываемого приложения достаточно, что содержимое панели PanContent всегда будет состоять из переменных следующих типов:

текст ;



[стр.Начало] [стр.1] [стр.2] [стр.3] [стр.4] [стр.5] [стр.6] [стр.7] [стр.8] [стр.9] [стр.10] [стр.11] [стр.12] [стр.13] [стр.14] [стр.15]