Инструменты пользователя

Инструменты сайта


lm2:ce:t_struct

Это старая версия документа!


Создание пустого проекта

Исполняемые модули находятся в репозитарии lm2.engine.ce. Файлы для проекта находятся в репозитарии lm2.examples. Необходимый минимум доступен по ссылкам:

Создание структуры директорий

Создайте папку empty_project. Это корень проекта. Скопируйте в корень исполняемый модуль (исполняемый файл .exe и динамические библиотеки .dll необходимые для старта платформы в случае Windows или скомпилированный бинарный файл в случаях систем на основе ядра Linux).

Создайте в корне папку images. Это каталог для хранения рендеров. Далее мы укажем к нему путь в главном конфигурационном файле. Скопируйте в этот каталог файл logo.png.

Создайте в корне папку configs. Это каталог для хранения конфигурационных файлов (кроме главного конфигурационного файла, он должен быть в корне проекта).

Создайте в корне папку fonts. Это каталог для используемых шрифтов. Далее мы подключим шрифты в главном конфигурационном файле. Скопируйте в этот каталог файл LiberationSerif-Regular.ttf.

Создание файлов

Главный конфигурационный файл

Основная статья «Главный конфигурационный файл». Создайте в корне проекта файл config.xml. Платформа по умолчанию к нему обратиться. Никаких дополнительных действий не требуется. Файл должен содержать следующий код:

<!-- объявление xml -->
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!-- корневой элемент -->
<root>
  <!-- элемент общих настроек, задаются следующие: язык, путь к рендерам,
       путь к конфигурационным файлам, флаг логирования                   -->
  <System
   Language="ru"
   ImagesPath="images/"
   ConfigsPath="configs/"
   Log="true"/>
  <!-- элемент логической машины, задаются следующие свойства: уникальный
       идентификатор, файл описание панелей, файл конфигурации окон, первый
       файл c lua-кодом для запуска                                         -->
  <VM
      ID="main"
      Visual="panels.xml"
      StartupLayout="viewports.xml"
      StartupLogic="start.lua">
  </VM>
  <!-- элемент шрифта, задаются следующие свойства: уникальный идентификатор,
       полный путь к файлу                                                    -->
  <Font ID="Default" FileName="fonts/LiberationSerif-Regular.ttf" />
</root>

Напишите код сами, а не просто скопируйте его, так лучше запоминается.

Файл конфигурации окон

Основная статья «Конфигурация окон». В папку configs создайте viewports.xml. Название файла должно совпадать с названием, указанным в главном конфигурационном файле. Определите окно на первом мониторе (если у вас несколько мониторов) с разрешением 800×480. Файл должен содержать следующий код:

<!-- объявление xml -->
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<!-- корневой элемент, задается следующее свойство: разрешение -->
<root MonitorWidth="800" MonitorHeight="480">
  <!-- элемент вьюпорт, задаются следующие свойства: положение на мониторе,
    уникальный идентификатор                                               -->
  <ViewPort Monitor="0,0" ID="main_viewport" />
</root>

Файл описания окон

Основная статья «Описание окон». Создайте в папке configs файл panels.xml. Название файла должно совпадать с названием, указанным в главном конфигурационном файле. Необходимо подключить библиотеку элементов, файл со строковыми данными, описать панель с фоном, логотипом и кнопкой. Файл должен содержать следующий код:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<root>
    <Text FileName="text.xml"/>
    <Library FileName="templates.xml"/>
    <GUI>
   <Panel ID="main" VPWidth="800" VPHeight="480">
            <Comment>Empty project main panel</Comment>
            <Entry ID="bg" TypeID="bg">
                <Comment>Panel background</Comment>
            </Entry>
            <Entry ID="btExit" TypeID="button" Top="300" Left="300"/>
            <Entry ID="Logo" TypeID="logo" Top="60" Left="60"/>
        </Panel>
    </GUI>
</root>

Запуск проекта

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

lm2/ce/t_struct.1596637320.txt.gz · Последнее изменение: 2020/11/30 14:12 (внешнее изменение)