Смекни!
smekni.com

Інструментальна система створення електронних підручників (стр. 5 из 11)

TempBgColor — містить в собі копії кодів кольорів фону html-файлу, що містить матеріал параграфу. Причому код кольору записаний згідно системи RGB, тільки розташування байтів що відповідають за червоний, зелений та синій кольори в оберненому порядку, тобто спочатку йде байт синього кольору, потім байт зеленого кольору і останнім байт червоного кольору;

Клас TForm_Move_Chapter містить такі процедури обробки подій:

SpeedButton_UpClick(Sender: TObject) — викликається при натисканні на кнопку із зображенням стрілки вверх SpeedButton_Up. При цьому, здійснюється обмін місцями теми електронного підручника на який знаходиться покажчик із темою, яка знаходиться на одну позицію вище. Після цього викликається процедура Move(constFirst, Second: Integer), яка міняє місцями відповідні значення копій масивів елементів електронного підручника. Індекси місць визначаються процедурою самостійно, на основі параметрів First – порядковий номер теми на якому спочатку знаходився покажчик списку та Second – порядковий номер на якому переміститься тема електронного підручника;

SpeedButton_DownClick(Sender: TObject) — викликається при натисканні на кнопку із зображенням стрілки вниз SpeedButton_Down. При цьому, здійснюється обмін місцями теми електронного підручника, на якій знаходиться покажчик із темою, яка знаходиться на одну позицію нижче. Після цього викликається процедура Move(constFirst, Second: Integer), яка міняє місцями відповідні значення копій масивів елементів електронного підручника. Індекси місць визначаються процедурою самостійно, на основі параметрів First – порядковий номер теми на якому спочатку знаходився покажчик списку та Second – порядковий номер на якому переміститься тема електронного підручника;

ListBox_ChapterDrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState) — дозволяє виводити в рядках об’єкта ListBox_Chapter і назву теми і іконку теми;

Після того, як користувач провів необхідні йому зміни щодо порядку розташування тем електронного підручника, він має підтвердити або заперечити свій вибір, шляхом натискання на одну з двох запропонованих йому кнопок, тобто “Так” або “Відміна”. Якщо користувач натисне на клавішу “Escape” то це буде аналогічно натисканню на кнопку “Відміна”.

В програмному модулі Rename описаний клас TForm_Rename, який в свою чергу являється нащадком від класу TForm. Клас TForm_Rename описує форму, яка буде відображатись при натисканні користувачем на відповідній кнопці головної форми інструментальної системи створення електронних підручників. Вона призначена для зміни назви певної теми або параграфу електронного підручника. Дана форма буде запускатись в модальному режимі.

При запуску цієї форми, яка містить одне поле буде введена назва теми або параграфу, на який знаходився покажчик в таблиці робочої області електронного підручника основної форми інструментальної системи створення електронних підручників. Користувач може змінити стару назву теми або параграфу електронного підручника на нову назву, яку він буде вважати за потрібне. Крім того, після того, як користувач ввів нову назву теми або параграфу електронного підручника, він має підтвердити або заперечити свій вибір, шляхом натискання на одну з двох запропонованих йому кнопок, тобто “Так” або “Відміна”.

В тому випадку, якщо користувач підтвердив зміни які він зробив, форма перейменування теми або параграфу електронного підручника зникне і він побачить нову назву теми або параграфу електронного підручника замість старої назви у робочій області електронного підручника головної форми інструментальної системи створення електронних підручників та продовжить в ній роботу далі.

В тому випадку, якщо користувач у полі назви нової теми не ввів жодного символу і натиснув кнопку підтвердження вибору назви нової теми, то система видасть йому повідомлення про помилку наступного характеру: “Нова назва повинна складатись хоча б з одного символу”. Після того, як користувач погодиться з цим повідомленням зникне форма перейменування назви теми або параграфу електронного підручника і він опиниться в робочій області електронного підручника головної форми інструментальної системи створення електронного підручника.

Клас TForm_Rename також містить одне загальнодоступне поле даних Indicator типу Boolean. В залежності від того, яке значення буде мати дане поле даних, при закритті форми TForm_Rename буде робитися висновок по ньому, чи треба перейменувати назву теми або параграфу електронного підручника або ні. Значення True означатиме, що необхідно ввести нову назву теми до вмісту електронного підручника, тобто була натиснута кнопка, яка підтвердила правильність введеної нової назви теми замість старої назви, а значення False — ні, тобто була натиснута кнопка “Відміна” або натиснута клавіша “Escape”.

Програмний модуль Image містить в собі опис класу TForm_Icon, який в свою чергу являється нащадком від класу TForm. Клас TForm_Icon містить в собі опис форми, яка призначена для заміни іконки вибраного параграфу електронного підручника. Ця форма запускається в модальному режимі при подвійному натисканні лівої кнопки миші по полю іконок в робочій області головної форми інструментальної системи створення електронних підручників.

Після запуску форми TForm_Icon користувачу пропонується зробити вибір тієї іконки, яку він вважатиме запотрібне вибрати для певного параграфу електронного підручника. Свій вибір він здійснює шляхом перегляду тих чи інших іконок із списку з назвами графічних файлів (файли з розширенням *.bmp), що містять ці іконки.

Після того, як користувач зробив свій вибір, він повинен зробити підтвердження того, що він вибрав саме цю іконку, шляхом натискання на одну з двох йому запропонованих кнопок: “Так” або “Відміна”.

Якщо користувач змінив іконку та підтвердив цю зміну шляхом натискання на кнопку “Так”, тоді зникне форма зміни іконки параграфу електронного підручника і він опиниться в робочій області електронного підручника головної форми інструментальної системи, причому стара іконка буде замінена на нову.

Клас TForm_Icon інкапсулює в собі такі поля даних:

Icons — визначено в розділі private і містить повні шляхи графічних файлів, тобто файлів з розширенням *bmp, які встановлені в інструментальній системі створення електронних підручників;

IconPath — визначено як загальнодоступне і містить повний шлях до графічного файлу, тобто файлу з розширенням *bmp, який вибраний користувачем для заміни старої іконки параграфу;

Програмний модуль Style містить в собі опис класу TForm_Style, який в свою чергу являється нащадком від класу TForm. Клас TForm_Style містить в собі опис форми, яка призначена для додавання, знищення та редагування таблиці стилів певного HTML-файлу. Дана форма запускається в модальному режимі при натисканні на відповідну клавішу яка знаходиться на панелі форми редактора HTML-документу.

Після запуску форми додавання, знищення та редагування таблиці стилів певного HTML-файлу на ній можна побачити список наявних стилів таблиці стилів певного HTML-файлу, а також поля та панель які відображають назву стиля, назву шрифту, висоту шрифту та колір символів. Крім того, форма містить панель управління, на якій розташовані кнопки управління: додавання, знищення, редагування стилів та збереження і відміна проведених змін. Також форма містить панель прикладу, на якій відображається декілька символів, які зображені з параметрами вибраного стилю.

Форма може знаходитись в двох режимах:

редагування;

перегляду.

Режим перегляду не дозволяє змінювати параметри стилів, а дозволяє лише переглядати параметри вибраного стиля або знищувати вибраний стиль. Форма знаходиться в цьому режимі при кожній її активізації та до того моменту поки не буде натиснута кнопка редагування стилів й переходить в цей режим при натисканні на кнопку запису або відміни проведених змін в таблиці стилів.

В режим редагування форма переходить при натисканні користувачем кнопки “Додати” або “Редагувати”. В даному режимі користувач може змінити назву стилю та його параметри, такі як шрифт, висота та колір символів.

При знаходженні в режимі редагування стилів користувач може крім того, щоб вибрати шрифт із списку запропонованих йому, набрати цей шрифт. Якщо такий шрифт не буде міститись в системі то система згенерує повідомлення про помилку наступного характеру: “Даний шрифт в системі не встановлений”. Користувач також може вибрати із списку висоти символів, але крім цього він може набрати в полі безпосередньо ту висоту символів, яка йому потрібно, тільки за умови, що це число знаходиться у межах від 1 до 1638. В протилежному випадку система видасть повідомлення про помилку наступного характеру: “Висота символу повинна знаходитись в межах від 1 до 1638”. Крім цього користувач має можливість змінити колір символів. Це відбувається наступним чином: при вході в режим редагування на панелі кольору з’являється кнопка, при натисканні на яку викликається стандартний діалог перегляду та вибору кольорів. Якщо користувач зробив якійсь вибір кольору й підтвердив його то вибраним кольором буде зафарбована панель кольору.

При кожній спробі видалити вибраний стиль з таблиці стилів буде системою виводитись запит, в якому система буде просити підтвердити свої наміри про знищення вибраного стилю.

При натискуванні на кнопку “Додати” система сама запропонує користувачу ім’я стилю по замовчуванню, яке не співпаде із жодним з наявних стилів в таблиці стилів певного html-файлу. Користувач звісно може змінити запропоновану йому назву.

Кожного разу, після того, як користувач додасть новий стиль або відредагує вже існуючий стиль він ці зміни в таблиці стилів повинен буде підтвердити шляхом натискання на клавішу “Зберегти”. В іншому випадку ці зміни будуть просто проігноровані.

Програмний модуль Table містить в собі опис класу TForm_Table, який в свою чергу являється нащадком від класу TForm. Клас TForm_Table містить в собі опис форми, яка є головною формою інструментальної системи створення електронних підручників і призначена для відображення змісту та структури електронного підручника. Дана форма запускається першою і існує під час роботи системи.