FreeBasic
Главная
Вход
Регистрация
Четверг, 21.11.2024, 12:30Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
О библиотеке IUP
haavДата: Среда, 10.04.2013, 08:37 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 1373
Репутация: 50
Статус: Offline


IUP — кроссплатформенная библиотека базовых элементов графического пользовательского интерфейса с использованием языков C и Lua. С его помощью можно создавать быстрые, не требующие компиляции графические приложения. ОФ.САЙТ

Для FreeBasic есть комплект , умело собранный D.J.Peters. В нем заголовки, примеры, скомпилированные статические и динамические библиотеки. Скачать можно ЗДЕСЬ
Прикрепления: 3373757.png (26.0 Kb)


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
AlecДата: Вторник, 30.09.2014, 09:26 | Сообщение # 2
Лейтенант
Группа: Друзья
Сообщений: 73
Репутация: 1
Статус: 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
Генералиссимус
Группа: Администраторы
Сообщений: 1373
Репутация: 50
Статус: Offline
Как нибудь надо будет протестировать примеры с новой версией библиотеки и если все будет удачно, тогда обновить версию на основном сайте. Либо положить где-нибудь рядом ссылку на скачивание новой версии без примеров\с частью примеров

Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
AlecДата: Вторник, 30.09.2014, 10:07 | Сообщение # 4
Лейтенант
Группа: Друзья
Сообщений: 73
Репутация: 1
Статус: Offline
Кстати, я посмотрел файл заголовка iup.bi старойц версии, там указано версия 3.5 (апрель 2011). Так что обновление уже давно не делалось.

В новой версии 2 примера.


WorldSim3D - 3D движок для FreeBasic, для PC. Мощная 3D графика и простота программирования. Ознакомиться.
 
WQДата: Вторник, 30.09.2014, 11:45 | Сообщение # 5
Полковник
Группа: Проверенные
Сообщений: 215
Репутация: 7
Статус: 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
Лейтенант
Группа: Друзья
Сообщений: 73
Репутация: 1
Статус: Offline
Пожалуйста, WQ. smile

Цитата WQ ()
там теперь по-другому происходит инициализация
Я заметил, что изменились файлы, не смотрел ещё содержимое, насколько и что там изменилоь. Может, из-за этого? Но естественно содержимое должное измениться, раз столько версий уже вышло. У меня такое было с биьлиотекой Фритайп. В общем, нужно почитать справку или помотреть заголов. файлы.


WorldSim3D - 3D движок для FreeBasic, для PC. Мощная 3D графика и простота программирования. Ознакомиться.
 
WQДата: Среда, 08.10.2014, 14:12 | Сообщение # 7
Полковник
Группа: Проверенные
Сообщений: 215
Репутация: 7
Статус: 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
Лейтенант
Группа: Друзья
Сообщений: 73
Репутация: 1
Статус: Offline
Цитата WQ ()
Я так понимаю, написно, что эти функции для работы с IupMatrix устарели?
Ну да, в комментарии вверху именно это и написано.


WorldSim3D - 3D движок для FreeBasic, для PC. Мощная 3D графика и простота программирования. Ознакомиться.
 
WQДата: Понедельник, 15.12.2014, 14:19 | Сообщение # 9
Полковник
Группа: Проверенные
Сообщений: 215
Репутация: 7
Статус: Offline
Оказывается, вполне удобно вызывать функции IUP из dll, особенно, если это касается стандартных диалогов вроде выбора шрифта или цвета, контрола Edit и т.п.
Для этого нужна только одна iup.dll. А вот спецконтролы требуют добавления еще кучи dll.
Сейчас, кстати, IUP обновилась уже до версии 3.12

Конечно, как тут выше написано, лучше бы кто-нибудь наладил статическую либу. Но я, например, такое не потяну (пока smile ), если уж  D.J.Peters с оф форума сразу все не сделал с 3.11...
 
salexeiyДата: Воскресенье, 20.06.2021, 14:30 | Сообщение # 10
Лейтенант
Группа: Пользователи
Сообщений: 72
Репутация: 2
Статус: 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
Генералиссимус
Группа: Администраторы
Сообщений: 1373
Репутация: 50
Статус: Offline
Цитата salexeiy ()
Может кто научит подробно этому полезному ремеслу?


Ты только сам можешь этому научиться, я лишь могу подсказать шаги:

1) хорошо знать FB
2) поверхностно знать СИ (основные типы данных , пользовательские типы данных , прототипы\декларации , макросы , компиляция\линковка)

В случае с IUP надо дополнительно понимать какие библиотеки нужны под Windows (winapi) , Linux (gtk2 , gtk3 , pango ...). По большому счету , компилятор подскажет (каких библиотек не хватает) , когда начнешь компилировать различные примеры. А значит придется не только по быстрому преобразовать заголовки , но и провести тщательное тестирование какого-то кол-ва функций IUP.

fbfrog - отличная утилита (реально помогает избавиться от рутины), но она не идеальна ( может выдать некорректные заголовки на выходе , а иногда и вообще не может преобразовать) . И чтобы разглядеть и исправить эти ошибки , надо пройти пункты 1 и 2.


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
  • Страница 1 из 1
  • 1
Поиск: