Кроссплатформенные визуальные компоненты.

Модератор: Модераторы

Кроссплатформенные визуальные компоненты.

Сообщение olegy123 » 07.04.2017 22:28:39

Привет lazarus-прогерам.
Вот настало время когда надо писать свой графический редактор. А раз графический то он должен иметь современный интерфейс. Иначе за "скучное лицо, тебе никто денег не даст".. А хотелось бы иметь еще донатики..А то будут использовать два три фаната и на этом все..
Что есть: под виндой есть куча продвинутых компонент, как пример DevExpress и другие, но все они работают из под Windows и написаны для Delphi.. Кроссплатформенные кнопки ждать от них не приходится..
Причина простая: если под винду одна оконно-графическая среда . То в линуксе их много.. А хотелось бы иметь обобщенный интерфейс на всех платформах.
В Blender-е все рисуют на OpenGL, поэтому интерфейс одинаковый везде...
v1t9Y.png

Так почему не рисовать так же?

Правда придется все поведение элементов перевести из системного уровня в "пространство пользователя". Там эмулировать их действия, поведение.
__test2.png

Поведение - это сущность компонента, его поведение: кнопка - нажатие, текст - редактирование.
Список - это список элементов, их компоновка.. карта размещения..
Отображение - это графическое отображение элемента, его управление, фокус ввода и прочее..
В средах в которых будет прорисовка: BGRABitmap. планирую в OpenGL..

Сам я хочу в итоге получить такие элементы:
path4966.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
olegy123
долгожитель
 
Сообщения: 1643
Зарегистрирован: 25.02.2016 12:10:20

Re: Кроссплатформенные визуальные компоненты.

Сообщение sts » 08.04.2017 01:01:44

Возьмите орпенглные компоненты из дельфы (VGScene, старенькие исходники в инете валяются) за образец, переработайте под лазарус, все.
sts
постоялец
 
Сообщения: 406
Зарегистрирован: 04.04.2008 12:15:44
Откуда: Тольятти

Re: Кроссплатформенные визуальные компоненты.

Сообщение olegy123 » 08.04.2017 01:23:46

Да, похоже..
FireMonkey (FMX) — GUI-фреймворк, использующий возможности графического процессора. Является кроссплатформенным: поддерживаются Windows, Mac OS, Apple iOS и Android.

Под названием VG-Scene разрабатывалась Евгением Крюковым[1] из Улан-Удэ, Россия (компания KSDev) как вектор-базированная GUI-библиотека следующего поколения.[2]. В 2011 году американская компания Embarcadero Technologies купила права на библиотеку и включила её в состав своих продуктов. Позже Евгений Крюков получил работу в Embarcadero Technologies[3].

Из минусов: Там лицензия коммерческая. И почему то нет под Linux.

Добавлено спустя 14 минут 18 секунд:
У меня цель: написать кроссплатформенное свое приложение и обогатить lazarus компонентами..
Лицензия свободная, думаю что MIT.
olegy123
долгожитель
 
Сообщения: 1643
Зарегистрирован: 25.02.2016 12:10:20

Re: Кроссплатформенные визуальные компоненты.

Сообщение Mirage » 08.04.2017 02:11:59

А fpGUI чем не устраивает?
Mirage
энтузиаст
 
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia

Re: Кроссплатформенные визуальные компоненты.

Сообщение Снег Север » 08.04.2017 07:26:19

В Codetyphon изначально установлен хороший наследник VGScene - ORCA. Очень рекомендую. На бред некоторых насчет "пиратского кода" не стоит обращать внимания.
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47

Re: Кроссплатформенные визуальные компоненты.

Сообщение olegy123 » 08.04.2017 08:28:13

Mirage писал(а):А fpGUI чем не устраивает?

Оно GUIшное, подозреваю - на основне TWinControl. Да, у меня все элементы будут иметь потомки в виде TWinControl, чтобы их, как fpGUI, можно было размести на обычных TWinControl.
Но они же должны иметь "виртуальную среду".. где пользователь смог бы свободно перемещать их, соединять связями, и т.п. То есть,иметь "дизайн режим" в реалтайме..

img12.jpg


Без имени2.jpg


Добавлено спустя 1 минуту 27 секунд:
Уже сделал TEdit, правда в черновике. Все норм. Но не могу разобраться с кареткой, со смещением текста во время введения его(если размер текста больше размера поля ввода - текст должен смещаться в влево, в тоже время можно было бы каретку переместить в влево в право, и если текст больше то он должен смешаться так чтобы каретка была видна всегда.), с выделением текста.
Приходится работать с UTF8Length,UTF8Copy,UTF8ToSys,UTF8Delete, bgra.TextSize. Нужна работа с мышью - вычисление позиции по клику и тп..
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось olegy123 08.04.2017 08:44:44, всего редактировалось 1 раз.
olegy123
долгожитель
 
Сообщения: 1643
Зарегистрирован: 25.02.2016 12:10:20

Re: Кроссплатформенные визуальные компоненты.

Сообщение Снег Север » 08.04.2017 08:36:27

Mirage писал(а):А fpGUI чем не устраивает?
Меня, например, не устраивает отсутствие визуального редактора формы для него. После этого любые его достоинства мне не интересны.
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47

Re: Кроссплатформенные визуальные компоненты.

Сообщение olegy123 » 08.04.2017 08:42:56

Снег Север писал(а):На бред некоторых насчет "пиратского кода" не стоит обращать внимания.

Не бред, я планирую выпустить этот редактор для продажи.
На моих глазах кошмарили одно предприятие за воровство графического элемента. По судам таскали, в итоге обязали выплатить в десятки раз больше чем они могли бы заказать выполнение.. Я считаю это правильно. Если бы так работали по софту - то прогеры получали бы з/п не хуже чем у остальных в мире..

Пишу на Lazarus по одной причине - пишу один. На нем проще написать сложные вещи при минимум человеко/часов.

Добавлено спустя 6 минут 4 секунды:
Снег Север писал(а):VGScene

Да, я раньше видел его.. На Delphi много интересного было сделано..
Скорее придется ровняться на него.
olegy123
долгожитель
 
Сообщения: 1643
Зарегистрирован: 25.02.2016 12:10:20

Re: Кроссплатформенные визуальные компоненты.

Сообщение Снег Север » 08.04.2017 09:10:19

olegy123 писал(а):На моих глазах кошмарили одно предприятие за воровство графического элемента.
При желании кошмарить можно за что угодно. Например, за "прямоугольник с закругленными краями". Не о том вы заботитесь...

Добавлено спустя 3 минуты 8 секунд:
olegy123 писал(а):я планирую выпустить этот редактор для продажи.
Вот - если вы закопаетесь в создание собственных элементов интерфейса, то когда дойдет дело до самого редактора и продаж? В коммерции время - деньги...
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47

Re: Кроссплатформенные визуальные компоненты.

Сообщение olegy123 » 08.04.2017 09:56:14

Снег Север писал(а):При желании кошмарить можно за что угодно. Например, за "прямоугольник с закругленными краями". Не о том вы заботитесь...

Несогласен. Вы когда начнете "руки мыть перед едой" - то заметете, что искать горшок в самых неподходящих моментах, как то само собой пропадет. Кошмарить в сильных странах - это тяжкий труд и высокооплачиваемый.. А там где принято применять читерство в судах - в реальных драках первыми умирают...

Снег Север писал(а):Вот - если вы закопаетесь в создание собственных элементов интерфейса, то когда дойдет дело до самого редактора и продаж? В коммерции время - деньги...

Ну у меня есть опыт создание своих визуальных компонентов.. которые потом в продакшине использовались.. Тут главное время, оно может сдвигаться.. Сейчас я наметил на конец мая/июнь.. пока делаю базовые вещи редактирование текста(числовых параметров), кнопки, чекбоксы..

Добавлено спустя 17 минут 1 секунду:
Сижу и думаю - нужно же делать свою систему сообщений.. :shock:
olegy123
долгожитель
 
Сообщения: 1643
Зарегистрирован: 25.02.2016 12:10:20

Re: Кроссплатформенные визуальные компоненты.

Сообщение Снег Север » 08.04.2017 10:29:18

olegy123 писал(а):Несогласен
Дело ваше. Я, собственно, имел ввиду реальный патент США D670,286 от Apple на дизайн в форме прямоугольника с закругленными краями... Так что если за вас захотят взяться, то никакая "чистота кода" не спасет. Но с вероятностью 99.99% никто никогда не поинтересуется этим вопросом.
olegy123 писал(а):Ну у меня есть опыт
Да я бы только приветствовал появление кроссплатформенных компонентов в духе Блендера. Тем более с открытым кодом. Так что желаю всяческих успехов!
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47

Re: Кроссплатформенные визуальные компоненты.

Сообщение mse » 08.04.2017 11:32:50

MSEide+MSEgui?

https://sourceforge.net/projects/mseide-msegui/
https://gitlab.com/mseide-msegui/mseide-msegui
http://wiki.freepascal.org/MSEide_%26_MSEgui
http://wiki.freepascal.org/Reference:_MSEgui

It has excellent skinning capabilities, see TWidget.Frame, TWidget.Face, TFrameComp, TFaceComp, TFacelist, TSkinController...
An application made with MSEide+MSEgui:
http://zenway.ru/page/xelplayer
MSEide+MSEgui version 4.4.2 has just been released:
https://sourceforge.net/projects/mseide ... gui/4.4.2/
mse
новенький
 
Сообщения: 68
Зарегистрирован: 08.08.2013 15:40:31

Re: Кроссплатформенные визуальные компоненты.

Сообщение Mirage » 08.04.2017 15:50:40

olegy123 писал(а):Оно GUIшное, подозреваю - на основне TWinControl.


В смысле? Какой TWinControl, все кроссплатформенно и самостоятельно рисуемое, без контролов ОС.
Просто самому это делать только кажется что просто, а на самом деле можно и год потратить. Ну если нормально делать. А если не нормально, то никто пользоваться таким UI не будет.

Снег Север писал(а):Меня, например, не устраивает отсутствие визуального редактора формы для него.


https://sourceforge.net/projects/fpgui/
Also included: help viewer, visual form designer.

Просто тут дизайнер форм отдельный, не встроенный в IDE, что имеет свои плюсы.

И да, MSE тоже отличная штука.
Mirage
энтузиаст
 
Сообщения: 881
Зарегистрирован: 06.05.2005 20:29:07
Откуда: Russia


Вернуться в Графика

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

Рейтинг@Mail.ru
cron