Из Википедии, бесплатной энциклопедии
  (Перенаправлено из лицензии WxWindows )
Перейти к навигации Перейти к поиску

wxWidgets (ранее wxWindows ) - это набор инструментов для виджетов и библиотека инструментов для создания графических пользовательских интерфейсов (GUI) для кроссплатформенных приложений. wxWidgets позволяет компилировать и запускать код графического интерфейса программы на нескольких компьютерных платформах с минимальными изменениями кода или без них . Широкий выбор компиляторов и других инструментов для использования с wxWidgets облегчает разработку сложных приложений. [7] wxWidgets поддерживает широкий спектр популярных операционных систем и графических библиотек, как проприетарных, так и бесплатных., и широко используется в известных организациях (см. текст).

Проект был запущен под названием wxWindows в 1992 году Джулианом Смартом из Эдинбургского университета . [1] В 2004 году проект был переименован в wxWidgets в ответ на жалобу Microsoft UK на товарный знак .

Это бесплатно и программное обеспечение с открытым исходным кодом , распространяется под условиями лицензии WxWidgets , которая удовлетворяет тех , кто желает производить для GPL и патентованного программного обеспечения . [8]

Переносимость и развертывание [ править ]

wxWidgets охватывает такие системы, как Microsoft Windows , Mac OS ( Carbon и Cocoa ), iOS ( Cocoa Touch ), Linux / Unix ( X11 , Motif и GTK ), OpenVMS , OS / 2 и AmigaOS . Версия для встраиваемых систем находится в стадии разработки. [9]

wxWidgets используется во многих отраслях промышленности, в первую очередь Xerox , Advanced Micro Devices (AMD), Lockheed Martin , НАСА и Центром военно-морского анализа . Он также используется в государственном секторе и образовании, например, в Дартмутской медицинской школе , Национальном исследовательском институте генома человека , Национальном центре биотехнологической информации и многими другими. [7] wxWidgets используется во многих проектах с открытым исходным кодом [10] и отдельными разработчиками.

История [ править ]

wxWidgets (первоначально wxWindows) был запущен в 1992 году Джулианом Смартом из Эдинбургского университета . [1] Он получил диплом с отличием по вычислительной технике в Университете Сент-Эндрюс в 1986 году и до сих пор является основным разработчиком. [2]

20 февраля 2004 года разработчики wxWindows объявили, что проект меняет название на wxWidgets в результате того, что Microsoft потребовала от Джулиана Смарта уважать торговую марку Microsoft в Соединенном Королевстве - термин Windows . [11]

Основными версиями выпуска были 2.4 6 января 2003 г., 2.6 21 апреля 2005 г. и 2.8.0 14 декабря 2006 г. Версия 3.0 была выпущена 11 ноября 2013 г.

wxWidgets участвует в Google Summer of Code с 2006 года. [12] [13]

В следующей таблице содержится история выпуска wxWidgets, показывающая все его основные версии выпуска.

Лицензия [ править ]

wxWidgets распространяется под индивидуальной лицензией wxWindows , аналогичной Стандартной общественной лицензии ограниченного применения GNU (LGPL), за исключением того, что производные работы в двоичной форме могут распространяться на условиях пользователя. [8] Эта лицензия является лицензией бесплатного программного обеспечения, одобренной FSF, [20] что делает wxWidgets бесплатным . Он был одобрен Инициативой открытого исходного кода (OSI). [21]

Официальная поддержка [ править ]

Поддерживаемые платформы [ править ]

wxWidgets поддерживается на следующих платформах: [22] [23]

  • Windows - wxMSW (32/64-битная Windows XP до Windows 10)
  • Linux / Unix - wxGTK , wxX11, wxMotif
  • Mac OS - wxMac ( Mac OS X 10.3 с использованием Carbon, Mac OS X 10.5 с использованием Cocoa), wxOSX / Cocoa (32/64-битная Mac OS X 10.7 или новее)
  • OS / 2 - wxOS2, wxPM, wxWidgets для GTK или Motif могут быть скомпилированы на OS / 2
  • Встроенные платформы - wxEmbedded® [9]

Внешние порты [ править ]

  • Amiga - wxWidgets-AOS: порт AmigaOS (работа в процессе) [24]

Поддерживаемые компиляторы [ править ]

Официально подтверждено, что wxWidgets корректно работает со следующими компиляторами: [25] [26]

Привязки языков программирования [ править ]

логотип wxPython

WxWidgets библиотека реализована в C ++ , с креплениями , доступными для многих часто используемых языков программирования . [27]

wxWidgets лучше всего описать как набор инструментов в собственном режиме, поскольку он обеспечивает тонкую абстракцию для собственных виджетов платформы, в отличие от эмуляции отображения виджетов с использованием графических примитивов. Вызов собственного виджета на целевой платформе дает более естественный интерфейс, чем такие инструменты, как Swing (для Java), а также обеспечивает производительность и другие преимущества. [28]

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

Инструменты и IDE RAD для wxWidgets [ править ]

CodeLite под Windows XP
Code :: Blocks, работающие под Ubuntu

Доступно множество инструментов быстрой разработки приложений (RAD) и интегрированной среды разработки (IDE). Известные инструменты включают: [29] [30]

  • Code :: Blocks (через плагин wxSmith)
  • CodeLite (через плагин wxCrafter )
  • wxFormBuilder

Приложения, созданные с использованием wxWidgets [ править ]

Amaya под Windows 7

Известные приложения, использующие wxWidgets:

  • 0 AD - видеоигра FLOSS, похожая на Age of Empires
  • Amaya - инструмент для веб-разработки
  • aMule - одноранговое приложение для обмена файлами
  • ActivePresenter - средство записи экрана, видеоредактор и приложение для электронного обучения
  • Audacity - кроссплатформенный звуковой редактор
  • BitTorrent - одноранговое приложение для обмена файлами
  • Berkeley Open Infrastructure для Network Computing - с открытым исходным кодом промежуточной система
  • Code :: Blocks - IDE для C / C ++
  • CodeLite - простой редактор C ++ (сборник бесплатных инструментов, реализуемых плагинами)
  • FileZilla - FTP-клиент
  • GrandOrgue - виртуальный симулятор органа
  • Guayadeque Music Player - музыкальный плеер с базой данных
  • Голливуд - использует wxWidgets в своем плагине RapaGUI.
  • KiCad - бесплатный программный пакет для автоматизации электронного проектирования (EDA)
  • RapidSVN - клиент Subversion
  • RocketCake - конструктор сайтов с адаптивным WYSIWYG
  • TortoiseCVS - клиент CVS

Критика [ править ]

Несколько хорошо известных и крупных приложений перешли на Qt из-за проблем с wxWidgets: [ требуется пояснение ]

  • Дельфин (эмулятор) [31] [32] [33]
  • MKVToolNix [34]
  • Медиаплеер VLC [35] [36]

См. Также [ править ]

  • FLTK - легкий, кроссплатформенный, неродной набор инструментов для виджетов.
  • FOX toolkit - быстрый кроссплатформенный инструментарий виджетов с открытым исходным кодом.
  • GTK - набор инструментов GIMP, набор инструментов виджетов, используемых приложениями GNOME
  • gtkmm - версия GTK для C ++
  • Juce - обширный кроссплатформенный инструментарий виджетов
  • IUP - многоплатформенный инструментарий для создания собственных графических пользовательских интерфейсов
  • Qt (инструментарий) - фреймворк, используемый приложениями KDE
  • Ultimate ++ - кроссплатформенная среда разработки на C ++
  • Набор инструментов для виджетов
  • Список наборов инструментов для виджетов

Ссылки [ править ]

  1. ^ a b c «О проекте wxWidgets» . wxwidgets.org . Проверено 2 января 2010 .
  2. ^ a b «О Джулиане Смарте, www.anthemion.co.uk» . anthemion.co.uk . Проверено 8 июня 2009 .
  3. ^ «Джулиан Смарт» . bookfayre.cz . Проверено 8 июня 2009 .
  4. ^ Разработчики и участники wxWidgets
  5. ^ История - wxWidgets
  6. ^ "wxWidgets: кроссплатформенная библиотека графического интерфейса" . 10 декабря 2018 . Проверено 31 января 2019 года .
  7. ^ a b "О том, кто использует wxWidgets?" . wxwidgets.org . Проверено 12 апреля 2011 .
  8. ^ Б « » Лицензия «страница на сайте» . Лицензия wxWindows по сути является LGPL, за исключением того, что производные работы в двоичной форме могут распространяться на условиях пользователя.
  9. ^ a b «wxEmbedded®: wxWidgets для встроенных приложений» .
  10. ^ «Список приложений с открытым исходным кодом, использующих wxWidgets» . SourceForge.net . Проверено 22 апреля 2011 .
  11. ^ Умный, Джулиан; Робин Данн (август 2004 г.). «Смена имени» . Sourceforge.net . Проверено 23 апреля 2007 .
  12. ^ Смарт, Джулиан (10-10-2006). «Google Summer of Code 2006: резюме проектов wxWidgets» . wxwidgets.org . Проверено 11 апреля 2011 .
  13. ^ "Google Summer of Code 2006" . Проверено 11 апреля 2011 .
  14. ^ "История wxWidgets" . wxwidgets.org . Проверено 11 апреля 2011 .
  15. ^ a b c d "Журнал изменений wxWidgets" . wxwidgets.org . Проверено 11 апреля 2011 .
  16. ^ a b c "Новости" . wxwidgets.org . Проверено 11 апреля 2011 .
  17. ^ Sudiarto Raharjo, Вилли (2006-12-14). «WxWidgets 2.8.0» . Проверено 11 апреля 2011 .
  18. ^ a b "Выпуски wxWidgets / wxWidgets" . GitHub . Проверено 7 марта 2018 .
  19. ^ "Дорожная карта wxWidgets" . Проверено 2 мая 2013 .
  20. ^ https://www.gnu.org/licenses/license-list.html#Wx
  21. ^ «Open Source Initiative OSI - Лицензия библиотеки wxWindows: лицензирование» . Инициатива открытого исходного кода . Проверено 28 апреля 2011 .
  22. ^ "wxWidgets: Введение" . docs.wxwidgets.org . Проверено 14 января 2016 .
  23. ^ «wxWidgets: Сведения о платформе» . docs.wxwidgets.org . Проверено 14 января 2016 .
  24. ^ "wxWidgets-AOS: порт AmigaOS" . Проверено 24 апреля 2011 .
  25. ^ «Поддерживаемые платформы» . wxwidgets.org . Проверено 24 апреля 2011 .
  26. ^ Поддерживаемые классы портами wxWidgets
  27. ^ "Общая информация о wxWidgets" . wxwidgets.org . Проверено 1 августа 2015 .
  28. ^ «WxWidgets по сравнению с другими наборами инструментов» . wxwidgets.org . Проверено 2 января 2010 .
  29. ^ "Инструменты для wxWidgets" . wxwidgets.org . Проверено 12 апреля 2011 .
  30. ^ «Список интегрированных сред разработки» . wxwidgets.org . Проверено 12 апреля 2011 .
  31. ^ «Отчет о ходе работы дельфинов: май 2017 г. - Qt-ie Patootie» . Проект эмулятора дельфинов . Дата обращения 14 мая 2019 .
  32. ^ "Легенда о дельфине: Линза между мирами" . Проект эмулятора дельфинов . Дата обращения 14 мая 2019 .
  33. ^ «Эмулятор дельфинов - Отчет о ходе работы дельфинов_ Январь 2018» . Дата обращения 14 мая 2019 .
  34. ^ "MKVToolNix GUI · Wiki · Мориц Бункус _ MKVToolNix · GitLab" . Дата обращения 14 мая 2019 .
  35. Жан-Батист Кемпф (10 февраля 2007 г.). "Интерфейс Qt4" . Еще один блог JBKempf . Дата обращения 14 мая 2019 .
  36. ^ "Такое состояние Gtk печально, но я очень рад, что мы (VLC) перешли на Qt несколько лет назад ... _ Hacker News" . Дата обращения 14 мая 2019 .

Дальнейшее чтение [ править ]

  • Умный, Джулиан; Хок, Кевин; Чомор, Стефан (5 августа 2005 г.), Кросс-платформенное программирование графического интерфейса с помощью wxWidgets , Прентис Холл , ISBN 978-0-13-147381-2

Внешние ссылки [ править ]

  • Официальный веб-сайт