roboforum.ru

Технический форум по робототехнике.
Текущее время: 27 ноя 2024, 03:52

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 77 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.
Автор Сообщение
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 05 авг 2011, 12:28 
Не в сети
Аватара пользователя

Зарегистрирован: 08 окт 2004, 16:43
Сообщения: 2114
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий
В порядке бреда...
Сверстать все в HTML, в нужный размер по пикселям. А дальше сделать кучу скриншотов (это можно автоматизировать).
Останется запрограммировать только вывод "живой графики" в определенные места картинок.

_________________
Все новости о моих проектах http://savethebest.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 05 авг 2011, 12:45 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Вроде Qt Creator хранит формы в XML, но наверное на МК всякие XML - зло? :oops:

Заодно получите готовый редактор формы, останется только вывод сделать на девайсе :roll:

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 09 авг 2011, 12:30 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Ну, в общем, пошарил ночью, посмотрел, как делают другие...
Ощущение, что каждый извращается как хочет.
Вот типичное:
Код:
########### Screen 2 dot com or dot net ############
GUI SCS S 2
GUI BG  A 2

GUI LBL O 40 20
GUI LBL A 0
GUI LBL F 0
GUI LBL T Have you ever visited our website?
GUI LBL E

GUI BT  O 40 125
GUI BT  N 0
GUI BT  M 2 2


или

Код:
<PRESS>
IO 8 1
DELAY 2
IO 14 0
DELAY 2
IO 15 1
DELAY 2
IO 15 0
DELAY 2
SER1 BLUEBEE
<END>


Ну и не буду тогда париться. Сделаю что-нибудь в таком же духе.

Добавлено спустя 2 минуты 57 секунд:
Но вообще, удивительно, как простые по сути вещи обрастают какими-то дикими требованиями.
Не комильфо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 09 авг 2011, 12:53 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Цитата:
<PRESS>
IO 8 1
DELAY 2
IO 14 0
DELAY 2
IO 15 1
DELAY 2
IO 15 0
DELAY 2
SER1 BLUEBEE
<END>

Вот это уже совсем не гуй, а скриптовый action-язык какой-то :)

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 09 авг 2011, 14:05 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
ну это я специально такой кусочек выбрал для разнообразия :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 09 авг 2011, 15:57 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
можно на подобии сделать
Код:
<Window x:Class="OliverCode.MVVM.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MVVM Demostration" Height="297" Width="480"
    xmlns:views="clr-namespace:OliverCode.MVVM.View">
   
    <Grid Margin="10">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="460*"/>
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="40"/>
            <RowDefinition Height="80*"/>
        </Grid.RowDefinitions>
        <Border CornerRadius="5" BorderBrush="SteelBlue" BorderThickness="2" Grid.Row="0">
            <Label Height="30" Width="400" Content="Below is a two way binding between the view view-model, and model"/>
        </Border>
        <Border CornerRadius="5" BorderBrush="SteelBlue" BorderThickness="2" Grid.Row="1" Margin="0,5,0,0">
            <views:PersonView/>
        </Border>
    </Grid>
</Window>

Вложение:
1.jpg
1.jpg [ 31.3 КиБ | Просмотров: 1887 ]

описание внешнего вида находится между
Код:
<Grid Margin="10"> ...   </Grid>


а это что из себя представляет <views:PersonView/>:
Код:
<UserControl x:Class="OliverCode.MVVM.View.PersonView"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Height="Auto" Width="Auto"
    xmlns:local="clr-namespace:OliverCode.MVVM.ViewModel">
    <StackPanel Orientation="Vertical" Margin="4">
        <!--Here is where we the view gets a copy to the ViewModel Declaratively-->
        <StackPanel.DataContext>
            <local:PersonViewModel />
        </StackPanel.DataContext>       
        <StackPanel Orientation="Vertical" DataContext="{Binding Path=Person, Mode=TwoWay}" Margin="4">
            <StackPanel Orientation="Horizontal">
                <Label Content="First Name:" Margin="0,0,4,0"/>
                <TextBox Width="250" Text="{Binding Path=FirstName}"/>
            </StackPanel>
            <StackPanel Orientation="Horizontal" Margin="0,5,0,0">
                <Label Content="Last Name:" Margin="0,0,4,0"/>
                <TextBox Width="250" Text="{Binding Path=LastName}"/>
            </StackPanel>
            <StackPanel Orientation="Horizontal" Margin="0,5,0,0">
                <Label Content="Age:" Margin="35,0,4,0"/>
                <TextBox Width="50" MaxLength="3" Text="{Binding Path=Age}"/>
            </StackPanel>
        </StackPanel>       
        <StackPanel>
            <Button Content="Save" HorizontalAlignment="Right" Width="80" Command="{Binding Path=SavePersonCommand}"/>
        </StackPanel>
    </StackPanel>
</UserControl>

Вложение:
2.jpg
2.jpg [ 11.34 КиБ | Просмотров: 1914 ]

можно и динамически подгружаемым/изменяемым сделать. вопрос в том, есть ли желание делать что-то подобное.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 09 авг 2011, 16:16 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Под такую канитель у меня парсер будет больше, чем весь пользовательский код вместе взятый, он потребует всяких хипов с маллоками, пол-пентиума, и отлаживать его подохнешь... :)
Ну... примерно так...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 09 авг 2011, 16:23 
Не в сети
Аватара пользователя

Зарегистрирован: 08 окт 2004, 16:43
Сообщения: 2114
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий
Глянь QML, под него парсер будет простым (это просто JSON), хипы с маллоками по желанию.

_________________
Все новости о моих проектах http://savethebest.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 09 авг 2011, 17:06 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
можно и не настолько сложно. простенький гуи движок вполне реально за пару месяцев написать. основной головняк в другом - спроектировать архитектуру под свои нужы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 09 авг 2011, 17:31 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Не, ну за пару-то месяцев можно и не такое написать, кто же спорит... :)
Мне же чисто в утилитарных целях, а не в целях "совершенствования всего и вся" :))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 09 авг 2011, 23:28 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2006, 17:09
Сообщения: 664
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов
Виталий писал(а):
Глянь QML, под него парсер будет простым


Тогда уж проще YAML - я уже выше предлагал его


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 09 авг 2011, 23:51 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Ну я на него посматриваю, только парсер все-равно писать, и смысл придерживаться какому-то внешнему стандарту теряется.

Добавлено спустя 8 минут 14 секунд:
Цитата:
Глянь QML, под него парсер будет простым...

Цитата:
Тогда уж проще YAML - я уже выше предлагал его...

Ребят, если я не отвечаю, это не значит, что игнорирую - я честно смотрю, читаю, мотаю на ус...

Просто я думаю, что в "универсальном" парсере необходимости нет вовсе.
Нафиг мне такой уровень абстракции (и абстрагирования от задачи)?
Скорее всего это будут все-таки предопределенные ключевые слова.
А синтаксис, да, нравится.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 10 авг 2011, 12:23 
Не в сети
Аватара пользователя

Зарегистрирован: 08 окт 2004, 16:43
Сообщения: 2114
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий
Парсер (разобрать синтаксис) совсем простой. Основная работа будет нарисовать "примитивы". Ну и еще нужно эмулятор написать, чтобы отдать дизайнеру на проработку.

_________________
Все новости о моих проектах http://savethebest.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 07 сен 2011, 22:55 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Продолжу. (Какое-то время проект был в подвешенном состоянии)

Пока видится два диаметрально противоположных подхода:
1. Более-менее полноценный язык программирования. То есть с карточки подгружается скрипт, который выполняется, рисует все что надо, где надо и вызывает нэйтив-функции, которые отвечают, собственно, за функционал.
Плюсы-минусы:
+ Абсолютная гибкость. Можно кардинально перелопатить и интерфейс и логику его работы.
+ Простая реализация API (нэйтив-функций) со стороны встроенного ПО.
- Сложность реализации интерпретатора (компилятора в байт-код, JIT-компилятора).
- GUI не отделен от программирования, хотя и отделен от основного функционала.
Примеры - экшнскрипт, вижуалбэйсик...

2. Чистый язык описания интерфейса. Все функции делает встроенное ПО, которое загружает с карточки только параметры предопределенных объектов.
Плюсы минусы.
+ дизайн абсолютно отделен от программирования
+ простой парсер без наворотов
* встроенное ПО объемное, но в меру сложное
- Логика работы интерфейса жестко задана
Примеры - скины, файлы ресурсов

Можно предложить разные "промежуточные" варианты. Например:
3. Функционирование устройства определяется структурой данных, которую предоставляет пользовательский интерфейс.
Плюсы-минусы:
+ Гибкое решение. Можно кардинально перелопатить и интерфейс и логику его работы.
+ Дизайн отделен от программирования, но его описание довольно сложное.
* Умеренно сложный интерпретатор скрипта
- Сложная организация встроенного ПО, перегруженный API к интерфейсу
- Необходимость "специальных" элементов интерфейса или функций для реализации функционала.

Еще варианты? Мысли?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу... Простой язык описания GUI
СообщениеДобавлено: 07 сен 2011, 23:03 
Не в сети

Зарегистрирован: 29 дек 2004, 23:15
Сообщения: 3744
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей
А что-нибудь готовое и красивое не подойдет? Например http://www.4dsystems.com.au/

Добавлено спустя 1 минуту 24 секунды:
Также продаются просто отдельные чипы для графики.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 77 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.

Часовой пояс: UTC + 4 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO