| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- // package desc_lorca -- главный тип десктопного приложения для lorca
- package desc_lorca
- import (
- "wartank/desc_lorca/lorca_gui"
- "wartank/pkg/components/kernel/logger"
- "wartank/server"
- )
- // ДесктопЛорка -- главный тип десктопного приложения для lorca
- type ДесктопЛорка struct {
- сервер *server.Сервер // Сервер для взаимодействия с лоркой
- гипЛорка *lorca_gui.ЛоркаГуи // ГИП десктопа на Лорке
- лог *logger.Логгер
- }
- // НовДесктопЛорка -- возвращает новый десктоп на Лорке
- func НовДесктопЛорка() *ДесктопЛорка {
- лог := logger.НовЛоггер("ДесктопЛорка")
- лог.Инфо("НовДесктопЛорка()\n")
- гип, ош := lorca_gui.НовЛоркаГуи()
- лог.Паника(ош != nil, "НовДесктопЛорка(): при создании ЛоркаГуи, ош=\n\t%v\n", ош)
- сам := &ДесктопЛорка{
- гипЛорка: гип,
- лог: лог,
- }
- сам.сервер = server.НовСервер()
- return сам
- }
- // Отменить -- отменяет работу десктопа
- func (сам *ДесктопЛорка) Отменить() {
- сам.сервер.Отменить()
- }
- // Пуск -- запускает работу десктопа
- func (сам *ДесктопЛорка) Пуск() {
- go func() {
- ош := сам.сервер.Пуск()
- сам.лог.Паника(ош != nil, "Пуск(): при запуске сервера, ош=\n\t%v\n", ош)
- }()
- сам.сервер.Wg().Wait()
- }
|