(*~\Глагол\Отделы\Поле\~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*)
(**)                              ОТДЕЛ Метка;
(*============================================================================* 
 * НАЗНАЧЕНИЕ: метка для надела
 *============================================================================*)

ИСПОЛЬЗУЕТ 
  Надел,
  Поле,
        (*  \Глагол\               *)
  Ввод    ИЗ "..\..\Отделы\Обмен\";

ВИД
  Доступ- = ДОСТУП К Вид;     (* Метка.Доступ <- Надел.Доступ <- Рамка.Доступ *)
                     Вид- =
  НАБОР (Надел.Вид)           (* Метка.Вид    <- Надел.Вид    <- Рамка.Вид    *)
    надпись:Надел.РядНадпись;
    буквица:ЦЕЛ;
    наделД:Надел.Доступ;
  КОН;

(*-----------------------------------------локальная ЗАДАЧА-------------------*)
ЗАДАЧА                                             (* (Метка.Вид <- Надел.Вид)*)(* приём посылок из вне (снаружи) *)
       Приём(наделД:Надел.Доступ;
           посылка+:Ввод.нПосылка); (* = Пустой.Вид; - абстрактный опорный набор *)
ПЕР
  меткаД:Метка.Доступ;
УКАЗ                                                        (* преобразование
          наделД               из Надел.Доступ в
                 Метка.Доступ  <- Надел.Доступ <- Рамка.Доступ                *)
  меткаД:=наделД(Метка.Доступ);
                             (* анализ многоформия (полиморфизма) у <посылка> = Пустой.Вид *)
  ДЛЯ      посылка ВИДА
  | Поле.нОтрисовка:
      Надел.ВыводНадписи(меткаД,меткаД.надпись,0)
  | Поле.нБуквица:
      ЕСЛИ
           меткаД.наделД # ПУСТО
      ТО
        ЕСЛИ
           посылка.буквица = меткаД.буквица
        ТО
          Поле.СостояниеНадела(меткаД.наделД,Надел.состВыбран);
           посылка.буквица:=0
        КОН
      КОН
  ИНАЧЕ
  КОН
КОН Приём;

(*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~общедоступная ЗАДАЧА~~~~~~~~~~~~~~~~~~~*)
ЗАДАЧА                                                           (*(Метка.Вид)*)
       Создать-(верх,лево:ЦЕЛ; надпись-:ЦЕПЬ;
                                 наделД:Надел.Доступ):Метка.Доступ;
ПЕР
  колонок:ЦЕЛ;
                    меткаД:Метка.Доступ;
УКАЗ
            СОЗДАТЬ(меткаД);
  Надел.СчитатьНадпись(надпись,
                    меткаД.надпись,колонок,меткаД.буквица);

  Надел.Подготовить(меткаД,
                      верх,
                      лево,1,
                   колонок,
                        {},
                     Приём   (* посылок для <наделД> *)
                   );
                    меткаД.наделД:=наделД;
            ВОЗВРАТ меткаД
КОН Создать;

КОН Метка.
