OberonCore https://forum.oberoncore.ru/ |
|
Общие вопросы по программированию для Bluebottle https://forum.oberoncore.ru/viewtopic.php?f=22&t=916 |
Страница 1 из 2 |
Автор: | bohdant [ Суббота, 15 Март, 2008 20:51 ] |
Заголовок сообщения: | Общие вопросы по программированию для Bluebottle |
Вот захотелось поэкспериментировать с Bluebottle Решил сделать следующее: 1. Получить список окон 2. Активировать какое либо окно и т.д. и т.п. Написал следующий код (проверял все только под WinAos) который вызывается при нажатии кнопки на моем окне: Код: PROCEDURE TestWin(sender, data : ANY); VAR ss:Utilities.String; ww,w:WM.Window; i:LONGINT; BEGIN manager := WM.GetDefaultManager (); w:=manager.GetFirst(); i:=0; WHILE w#NIL DO ss:=w.GetTitle(); AosOut.String("WinCount ="); AosOut.Int(i,5);IF ss#NIL THEN AosOut.String(ss^); END; AosOut.Ln; INC(i); IF i=2 THEN ww:=w; END; (*Выбираем произвольное окно*) w:=manager.GetNext(w); END; IF ww#NIL THEN manager.SetFocus(w);manager.ToFront(w); (*Активируем и "Выпихиваем" на верх*) END; END TestWin; Код естественно не работает, срабатывает при вызове manager.GetFirst(); ASSERT ( lock.HasWriteLock() ); в модуле Win32.WindowManager.Mod. Если ASSERT закоментить то начинает все работать до вызова manager.SetFocus(w); после чего начинаются разные глюки... ВОПРОС: Как правильно разлачивать и когда это можно делать (не могу найти где лочится) WriteLock? Ну и вообще хотелось бы услышать совет как это правильно делать или хотя бы где именно читануть. |
Автор: | bohdant [ Понедельник, 17 Март, 2008 15:19 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Перед обращениями к менеджеру необходимо делать manager.lock.AcquireWrite; в конце manager.lock.ReleaseWrite; |
Автор: | rv82 [ Четверг, 09 Октябрь, 2008 06:16 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Скажите, а как под Бутылку создаются GUI-приложения? Окно описывается вручную (как в WinAPI), или строится визуально, а потом элементы этого окна связываются с модулями, подобно BlackBox? |
Автор: | Ярослав Романченко [ Четверг, 09 Октябрь, 2008 07:55 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
rv82 писал(а): Скажите, а как под Бутылку создаются GUI-приложения? Окно описывается вручную (как в WinAPI), или строится визуально, а потом элементы этого окна связываются с модулями, подобно BlackBox? Вариантов ответов несколько: 1. Окно описывается вручную. Но, это скорее не как в WinAPI а больше похоже на как в .Net или в KOL (альтернативная библиотека компонентов для Delphi) без MCK. 2. Богдан некоторое время тому назад решил создать дизайнер форм. На сегодня он практически готов, - окна можно создавать визуально Нерешённый пока вопрос -- связывание формы с обработчиками событий. Варианты обсуждаем 3. Dan Parnete сообщил, что тоже в своём проекте использовал возможность визуального создания форм, исходники закрыты, но некоторыми "идеями" сможет поделиться 4. Sven Stauber в ETHZ тоже на сегодняшний день работает над дизайнером форм, но как он сообщает, это будет больше похоже на систему Gadgets. |
Автор: | bohdant [ Четверг, 09 Октябрь, 2008 09:29 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Ярослав Романченко писал(а): На сегодня он практически готов Немного не точно, на сегодня можно сказать, что дизайнер возможно реализовать Дизайнер скорее в начале пути. В начале было много технических вопросов, пока что вроде все они решены, но еще не реализованы. |
Автор: | Илья Ермаков [ Четверг, 09 Октябрь, 2008 12:22 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
В итоге, видимо, можно говорить о том, что Блэкбокс на сегодня ориентирован на сложную содержательную графику (бизнес, аналитика, наука, инженерия), а Бутылка - на полностью own-draw мультимедийную ("развлекательную" и ей подобную), с которой в Блэкбоксе приходится повозиться обычно? |
Автор: | Ярослав Романченко [ Четверг, 09 Октябрь, 2008 12:24 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Илья Ермаков писал(а): В итоге, видимо, можно говорить о том, что Блэкбокс на сегодня ориентирован на сложную содержательную графику (бизнес, аналитика, наука, инженерия), а Бутылка - на полностью own-draw мультимедийную ("развлекательную" и ей подобную), с которой в Блэкбоксе приходится повозиться обычно? CRM система -- развлечение?
|
Автор: | Илья Ермаков [ Четверг, 09 Октябрь, 2008 12:48 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Так я не про назначение, а про специфику графики. Не знаю, как её ещё обозвать. |
Автор: | Ярослав Романченко [ Четверг, 09 Октябрь, 2008 13:03 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Илья Ермаков писал(а): а про специфику графики. А в чём специфика графики? Пиксель он и в Африке пиксель Полупрозрачность окошек помеха? |
Автор: | bohdant [ Четверг, 09 Октябрь, 2008 15:51 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Цитата: В итоге, видимо, можно говорить о том, что Блэкбокс на сегодня ориентирован на сложную содержательную графику (бизнес, аналитика, наука, инженерия), а Бутылка - на полностью own-draw мультимедийную ("развлекательную" и ей подобную), с которой в Блэкбоксе приходится повозиться обычно? Извиняюсь за глупый вопрос, но объясните мне чем отличается "содержательная" графика от "мультимедийной"? Не хотелось повторяться, я уже бросал ссылку, Илья вот ответ на вопрос: Цитата: KTI/CTI project A2 Development of a generic, programmable industry PC for complex control tasks in reliability critical applications An industry PC for complex control tasks based on the existing ultra-compact ETHZ Oberon systems is to be developed where we aim at 100 % reliability and maintainability by a single person. Challenges are the combination of full runtime support (including garbage collection) and real-time requirements, the development of a suitable programming framework and the communicative compatibility with well-established industry systems. Хотелось бы добавить, что сейчас проект в разработке и некоторые (скорее многие) вещи еще будут менятся. |
Автор: | Илья Ермаков [ Четверг, 09 Октябрь, 2008 18:46 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Я поделил на два направления по таким свойствам: 1) имеем удобный каркас, в котором можно организовывать сложные системы отображения информации. Работаем в понятиях не представления, а модели (документ и т.п.). Но поскольку абстрагировались от представления (даже понятие "окно" от нас спрятано), то не легко полностью контролировать, как всё показывается на экране (т.е. можно наткнуться на какую-нибудь упрямую мелочь, с которой придётся повозиться). Т.е. мы определяем (иерархически и композиционно), что показываем. 2) имеем мощный именно графический каркас, в котором полностью определяем, как рисуем (что из себя представляет экран). Но работаем в терминах представления. Термины модели (пока) особо "не дадены". |
Автор: | bohdant [ Четверг, 09 Октябрь, 2008 19:24 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
bohdant писал(а): Я поделил на два направления по таким свойствам Илья, скорее всего можно отнести к обеим категориям. Наверное хорошим примером такой "двойственности" можно отнести WMDiagramComponents.MultiPointView. Тут есть и абракция данных так и возможность контроля прорисовки. Однако, следует отметить, что все в ожидании новой компонентной модели. Ожидается появление "гаджетов", в каком виде они будут представлены... я не знаю. Мне кажется, что совмещение указаных Вами веток граф. интерфеса вполне удачным выбором. Т.к. в критических случаях разработчик может взять основные функции на себя. Что особенно важно в встроенных системах. Еще хотелось бы добавить(немного перефразировав): лучше один раз попробовать, чем 100 раз увидеть или 1000 раз услышав |
Автор: | Илья Ермаков [ Четверг, 09 Октябрь, 2008 20:37 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Конечно, нужно совмещение. В ББ интерфейс уровня экрана не введён просто потому, что не введён (время + соотв. опыты применения для его "юстировки" нужны; видать, не было). Поэтому несовершенные варианты лучше было вообще не вводить - в обман народ не вводить |
Автор: | Илья Ермаков [ Четверг, 09 Октябрь, 2008 20:39 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Насчёт "попробовать" - желание потенциальное есть. Обрисуются задачи - попробуем Правда, пробовать будем не на графике, видимо, а на серверных назначениях. |
Автор: | Илья Ермаков [ Четверг, 09 Октябрь, 2008 20:53 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Вопрос: эксплуатируются ли в А2 шины сообщений? Мне показалось, что не особенно (это объяснимо, т.к. в модели параллелизма ставка сделана на методы, и сообщения на сист. уровне уже оказываются не так просты для применения). |
Автор: | bohdant [ Четверг, 09 Октябрь, 2008 21:54 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Илья Ермаков писал(а): Вопрос: эксплуатируются ли в А2 шины сообщений? Мне показалось, что не особенно (это объяснимо, т.к. в модели параллелизма ставка сделана на методы, и сообщения на сист. уровне уже оказываются не так просты для применения). Илья Ермаков писал(а): Вопрос: эксплуатируются ли в А2 шины сообщений? Мне показалось, что не особенно (это объяснимо, т.к. в модели параллелизма ставка сделана на методы, и сообщения на сист. уровне уже оказываются не так просты для применения). Илья, мне кажется, что проще пролистать диссер Т.Фрея. (стр. 73, 100) http://e-collection.ethbib.ethz.ch/view/eth:27966 |
Автор: | Илья Ермаков [ Четверг, 09 Октябрь, 2008 22:26 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
+ |
Автор: | Ярослав Романченко [ Четверг, 09 Октябрь, 2008 23:08 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Так sequencer это шина сообщений или не шина? |
Автор: | bohdant [ Пятница, 10 Октябрь, 2008 09:12 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
Вот интересный проспектик, про общую направленность А2: http://www.radiar.ch/A2/A2Prospekt.pdf |
Автор: | Ярослав Романченко [ Пятница, 10 Октябрь, 2008 09:59 ] |
Заголовок сообщения: | Re: Общие вопросы по программированию для Bluebottle |
bohdant писал(а): Вот интересный проспектик, про общую направленность А2: Насколько я понял, radiar -- производитель железа, а А2 они использовали в качестве названия этого самого железа А2-же и начинённого
http://www.radiar.ch/A2/A2Prospekt.pdf |
Страница 1 из 2 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |