On-line: PSP, гостей 0. Всего: 1 [подробнее..]
АвторСообщение
moderator


Пост N: 1070
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 11.09.18 16:02. Заголовок: GuiServer


Привет всем!
Представляю свой новый проект - GuiServer. Это инструмент, предоставляющий GUI-функциональность программам, написанным на разных языках, позволяющий создавать для этих языков GUI-фреймворки.
Работает это так. Ваша программа при старте запускает GuiServer, присоединяется к нему по tcp/ip и посылает команды-запросы на создание/модификацию GUI-элементов. Естественно, осуществляется и обратная связь. Т.е., в целом ваша программа состоит из двух процессов - основного и GUI, роль которого исполняет GuiServer. Запуск GuiServer'а, соединение и поддержку связи берет на себя небольшая библиотека, которую надо написать дл каждого конкретного языка.
Подробнее см. здесь: http://www.kresin.ru/guisrv.html. Сам проект находится на https://github.com/alkresin/guiserver

Библиотека для языка Go (для него я это первоначально и затеял): https://github.com/alkresin/external

Есть библиотека и для Harbour. Возможно, для него она будет полезна при удаленном запуске, т.е., когда основная программа работает на одном компьютере, а ее интерфейс - на другом.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 22 , стр: 1 2 All [только новые]


moderator


Пост N: 1145
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 16.01.19 11:26. Заголовок: Guiserver теперь мож..


Guiserver теперь можно собрать как библиотеку, чтобы удобнее было писать Harbour+HwGUI приложения, используя возможности Golang. Вот простой пример:
#include "hwgui.ch" 

Function Main
Local oMainWindow

INIT WINDOW oMainWindow MAIN TITLE "Example" AT 200,0 SIZE 400,150

MENU OF oMainWindow
MENUITEM "&Exit" ACTION hwg_EndWindow()
MENUITEM "&Mandelbrot" ACTION pgo( "fu1",{"1"} )
ENDMENU

gs_run( "test14lib.exe" )

ACTIVATE WINDOW oMainWindow
Return Nil

Здесь функция gs_Run() инициализирует соединение с написанной на Go программой test14lib.exe. Программа загружается, соединяется с нашей и ждет от нее команд.
Функция pgo() вызывает функцию из go-программы. Таким образом можно достаточно просто реализовать многие вещи, которые Harbour делает не очень хорошо, или вообще не делает.

Спасибо: 0 
ПрофильЦитата Ответить
moderator


Пост N: 1146
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 17.01.19 10:51. Заголовок: Написал здесь подроб..


Написал здесь подробнее об использовании GuiServer как библиотеки.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 22 , стр: 1 2 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 192
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет