О библиотеке IUP
|
|
haav | Дата: Среда, 10.04.2013, 08:37 | Сообщение # 1 |
![haav](/avatar/00/5416-572652.jpg) Генералиссимус
Группа: Администраторы
Сообщений: 1363
Статус: Offline
|
IUP — кроссплатформенная библиотека базовых элементов графического пользовательского интерфейса с использованием языков C и Lua. С его помощью можно создавать быстрые, не требующие компиляции графические приложения. ОФ.САЙТ
Для FreeBasic есть комплект , умело собранный D.J.Peters. В нем заголовки, примеры, скомпилированные статические и динамические библиотеки. Скачать можно ЗДЕСЬ
Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
|
|
| |
Alec | Дата: Вторник, 30.09.2014, 09:26 | Сообщение # 2 |
![Alec](/avatar/61/7340-877541.gif) Лейтенант
Группа: Друзья
Сообщений: 73
Статус: Offline
| На странице http://free-basic.ru/download.html о библиотеке написано: "Библиотека постоянно развивается, последний релиз был в июне 2012 года". Т.е, вероятно речь идёт о версии 3.6. За 2 года сделано очень много изменений. версии: 3.7, 3.8, 3.9, 3.10, 3.10.1, 3.11 и самая последняя 3.11.1 (смотрите раздел History 3x).
18 сентября этого года Joshy обновил ее для ФБ, так что теперь есть последняя версия 3.11. Сама библиотека, без обёртки для ФБ здесь. Тема об обновлении для ФБ здесь.
Судя по скринам, отличная библиотека со многими возможностями, в т.ч. для рендеринга 3D (через OpenGL).
WorldSim3D - 3D движок для FreeBasic, для PC. Мощная 3D графика и простота программирования. Ознакомиться.
|
|
| |
haav | Дата: Вторник, 30.09.2014, 09:45 | Сообщение # 3 |
![haav](/avatar/00/5416-572652.jpg) Генералиссимус
Группа: Администраторы
Сообщений: 1363
Статус: Offline
| Как нибудь надо будет протестировать примеры с новой версией библиотеки и если все будет удачно, тогда обновить версию на основном сайте. Либо положить где-нибудь рядом ссылку на скачивание новой версии без примеров\с частью примеров
Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
|
|
| |
Alec | Дата: Вторник, 30.09.2014, 10:07 | Сообщение # 4 |
![Alec](/avatar/61/7340-877541.gif) Лейтенант
Группа: Друзья
Сообщений: 73
Статус: Offline
| Кстати, я посмотрел файл заголовка iup.bi старойц версии, там указано версия 3.5 (апрель 2011). Так что обновление уже давно не делалось.
В новой версии 2 примера.
WorldSim3D - 3D движок для FreeBasic, для PC. Мощная 3D графика и простота программирования. Ознакомиться.
|
|
| |
WQ | Дата: Вторник, 30.09.2014, 11:45 | Сообщение # 5 |
Полковник
Группа: Проверенные
Сообщений: 215
Статус: Offline
| Alec, спасибо за ссылки на новую версию. В старой были глюки с win 8, например, там не работал диалог выбора шрифта, а в новой - работает.
Однако что-то я не могу заставить работать элемент IupMatrix в новой версии, там теперь по-другому происходит инициализация, использование IupControlsOpen() выдает ошибку. Нужен пример.
Справка для 3.11 в chm-формате: http://en.sourceforge.jp/project....ocs.chm
Сообщение отредактировал WQ - Вторник, 30.09.2014, 11:58 |
|
| |
Alec | Дата: Вторник, 30.09.2014, 17:08 | Сообщение # 6 |
![Alec](/avatar/61/7340-877541.gif) Лейтенант
Группа: Друзья
Сообщений: 73
Статус: Offline
| Пожалуйста, WQ.
Цитата WQ ( ![Ссылка на цитируемый текст](http://s54.ucoz.net/img/fr/ic/4/lastpost.gif) ) там теперь по-другому происходит инициализация Я заметил, что изменились файлы, не смотрел ещё содержимое, насколько и что там изменилоь. Может, из-за этого? Но естественно содержимое должное измениться, раз столько версий уже вышло. У меня такое было с биьлиотекой Фритайп. В общем, нужно почитать справку или помотреть заголов. файлы.
WorldSim3D - 3D движок для FreeBasic, для PC. Мощная 3D графика и простота программирования. Ознакомиться.
|
|
| |
WQ | Дата: Среда, 08.10.2014, 14:12 | Сообщение # 7 |
Полковник
Группа: Проверенные
Сообщений: 215
Статус: Offline
| Функции IupControlsOpen и IupMatrix продекларированы, но при использовании их выдается ошибка undefined reference to...
В iupcontrols.bi такое: Код /' IupMatrix utilities (DEPRECATED, use IupSetAttributeId2 functions). It will be removed in a future version. '/
declare sub IupMatSetAttribute (byval as Ihandle ptr, byval name as const zstring ptr, byval lin as integer, byval col as integer, byval value as const zstring ptr) declare sub IupMatStoreAttribute(byval as Ihandle ptr, byval name as const zstring ptr, byval lin as integer, byval col as integer, byval value as const zstring ptr) declare function IupMatGetAttribute (byval as Ihandle ptr, byval name as const zstring ptr, byval lin as integer, byval col as integer) as zstring ptr declare function IupMatGetInt (byval as Ihandle ptr, byval name as const zstring ptr, byval lin as integer, byval col as integer) as integer declare function IupMatGetFloat (byval as Ihandle ptr, byval name as const zstring ptr, byval lin as integer, byval col as integer) as single declare sub IupMatSetfAttribute (byval as Ihandle ptr, byval name as const zstring ptr, byval lin as integer, byval col as integer, byval format as const zstring ptr, ...)
Я так понимаю, написно, что эти функции для работы с IupMatrix устарели?
|
|
| |
Alec | Дата: Среда, 08.10.2014, 15:50 | Сообщение # 8 |
![Alec](/avatar/61/7340-877541.gif) Лейтенант
Группа: Друзья
Сообщений: 73
Статус: Offline
| Цитата WQ ( ![Ссылка на цитируемый текст](http://s54.ucoz.net/img/fr/ic/4/lastpost.gif) ) Я так понимаю, написно, что эти функции для работы с IupMatrix устарели? Ну да, в комментарии вверху именно это и написано.
WorldSim3D - 3D движок для FreeBasic, для PC. Мощная 3D графика и простота программирования. Ознакомиться.
|
|
| |
WQ | Дата: Понедельник, 15.12.2014, 14:19 | Сообщение # 9 |
Полковник
Группа: Проверенные
Сообщений: 215
Статус: Offline
| Оказывается, вполне удобно вызывать функции IUP из dll, особенно, если это касается стандартных диалогов вроде выбора шрифта или цвета, контрола Edit и т.п. Для этого нужна только одна iup.dll. А вот спецконтролы требуют добавления еще кучи dll. Сейчас, кстати, IUP обновилась уже до версии 3.12
Конечно, как тут выше написано, лучше бы кто-нибудь наладил статическую либу. Но я, например, такое не потяну (пока ), если уж D.J.Peters с оф форума сразу все не сделал с 3.11...
|
|
| |
salexeiy | Дата: Воскресенье, 20.06.2021, 14:30 | Сообщение # 10 |
Лейтенант
Группа: Пользователи
Сообщений: 72
Статус: Offline
| Библиотека обновилась до версии 3.30. В компиляторе последние заголовочные файлы версии 3.15. Я бы обновил заголовки, но не знаю, как их конвертить из файлов .h. Попробовал прогнать через утилиту fbfrog, но сравнивая с заголовками из версии 3.15 (которые идут вместе с компилятором), утилита некоторые моменты не делает. Вот к примеру, в некоторых файлах есть #inclib имя_тогоже_файла, а в некоторых нет. В файле iup.bi есть подключение библиотек вида #ifdef __FB_WIN32__ #inclib "gdi32" однако в исходнике .h такого нет. Вот и не понятно, как файлы конвертить правильно: что добавить можно, а что наоборот удалить. Кстати, в справке фрибейсика есть раздел Учебник по трансляции заголовков С, но он так и не написан. Может кто научит подробно этому полезному ремеслу?
|
|
| |
haav | Дата: Понедельник, 21.06.2021, 06:04 | Сообщение # 11 |
![haav](/avatar/00/5416-572652.jpg) Генералиссимус
Группа: Администраторы
Сообщений: 1363
Статус: Offline
| Цитата salexeiy ( ![Ссылка на цитируемый текст](/.s/img/fr/ic/10/lastpost.gif) ) Может кто научит подробно этому полезному ремеслу?
Ты только сам можешь этому научиться, я лишь могу подсказать шаги:
1) хорошо знать FB 2) поверхностно знать СИ (основные типы данных , пользовательские типы данных , прототипы\декларации , макросы , компиляция\линковка)
В случае с IUP надо дополнительно понимать какие библиотеки нужны под Windows (winapi) , Linux (gtk2 , gtk3 , pango ...). По большому счету , компилятор подскажет (каких библиотек не хватает) , когда начнешь компилировать различные примеры. А значит придется не только по быстрому преобразовать заголовки , но и провести тщательное тестирование какого-то кол-ва функций IUP.
fbfrog - отличная утилита (реально помогает избавиться от рутины), но она не идеальна ( может выдать некорректные заголовки на выходе , а иногда и вообще не может преобразовать) . И чтобы разглядеть и исправить эти ошибки , надо пройти пункты 1 и 2.
Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
|
|
| |
|