wxWidgets
wxWidgets (раніше відома як wxWindows) — це багатоплатформна бібліотека віджетів. wxWidget дозволяє коду для побудови графічного користувацького інтерфейсу компілюватись і працювати на різних апаратних і програмних платформах з мінімальними змінами, або взагалі без них. Надаються прив'язки (біндінги) для популярних мов програмування, в тому числі для PHP, Python, Perl і Ruby. На відміну від інших тулкітів, wxWidgets забезпечує для програми по-справжньому рідний для цільової системи зовнішній вигляд і методи взаємодії, завдяки використанню системних API, а не імітації GUI.
Тип | Бібліотека для розробки |
---|---|
Розробник | wxWidgets Developers and Contributers |
Стабільний випуск | 3.0.4 (8 березня 2018 ) |
Репозиторій | github.com/wxWidgets/wxWidgets |
Нестабільний випуск | 3.1.1 (19 лютого 2018 ) |
Операційна система | Багатоплатформна |
Мова програмування | C++ |
Ліцензія | Ліцензія wxWidgets (сумісна з GPL[1]) |
Вебсайт | www.wxwidgets.org |
wxWidgets у Вікісховищі |
Підтримує такі операційні системи, як Microsoft Windows, Mac OS, Linux/Unix (X11, Motif та GTK+), OpenVMS, OS/2, AmigaOS та мобільних платформ. Версія для вбудованих систем перебуває у стадії розробки.[2]
Тулкіт написаний на мові С++ і розповсюджується під вільною ліцензією wxWindows Library Licence, схваленою Фондом ВПЗ та організацією OSI. Ліцензія заснована на LGPL і відрізняється дозволом використання власних умов для поширення похідних робіт в бінарній формі.
Історія
Робота над проєктом розпочалася у 1992 Юліаном Смартом (Julian Smart) в Університеті міста Единбурґ, який досі залишається головним розробником.
20 лютого 2004 року розробники wxWindows повідомили про те, що проєкт змінює назву на wxWidgets через вимогу корпорації Microsoft, яка побачила у старій назві порушення її права на торгову марку Windows[3]. За зміну імені розробники wxWidgets та інших зв'язаних проєктів отримали грошову компенсацію.
Використання
wxWidgets дозволяє компілювати програми на безлічі комп'ютерних платформ з мінімальними змінами у джерельному коді, або взагалі без них. Вона підтримує системи Microsoft Windows, Apple Macintosh, UNIX-подібні (для X11, Motif та GTK+), OpenVMS і OS/2. Вбудовувана версія знаходиться в розробці.
Бібліотека розроблена на C++, але може підключатися до безлічі інших розповсюджених мов, таких, як Python (wxPython), Smalltalk (wxSqueak), Perl та Java. Для ознайомлення з повним списком, з посиланнями на відповідні проєкти, дивіться додаткову документацію наприкінці статті.
Бібліотека не імітує вид компонентів, використовуючи графічні примітиви різних підтримуваних платформ. Замість цього wxWidgets надає тонку абстракцію до існуючих компонентів системи. Іншими словами, основний код wxWidgets воліє викликати «рідний» елемент інтерфейсу платформи, замість того, щоб повторно його реалізовувати. Це надає швидкий, природного вигляду інтерфейс у порівнянні з бібліотеками на кшталт Swing (для Java).
wxWidgets розроблена не тільки для того, щоб створювати GUI. Вона також має систему обміну даних між процесами, мережеву бібліотеку, і множину класів для роботи зі всім підряд.
Деякі приклади застосувань, побудованих з використанням бібліотеки WxWidgets: Code::Blocks (IDE), CodeLite (IDE), audacity, BitWise IM, Kirix Strata і багато інших.
Див. також
Примітки
- http://www.wxwidgets.org/about/newlicen.htm Архівовано 2 липня 2010 у Wayback Machine. (англ.) - Роз'яснення ліцензії
- wxEmbedded: wxWidgets for embedded applications. Sourceforge.net. Архів оригіналу за 2 липня 2013. Процитовано 23 квітня 2007.
- Smart, Julian; Robin Dunn (August 2004). Name change. Sourceforge.net. Архів оригіналу за 2 липня 2013. Процитовано 23 квітня 2007.
Посилання
- Офіційний сайт (документація)
- Повідомлення про зміну імені
- Неофіційний форум
- Проєкти підтримки мов програмування:
- wxGlade — графічний редактор форм для wxWidgets.
- wxDev-C++ — Dev-C++ IDE з редактором форм для wxWidgets
- visualwx Ще один редактор форм і генератор коду для wxWidgets]
Довідкова документація
- Все про крос-платформне програмування з wxWidgets (рос.) — Тематичний сайт про крос-платформну розробку програмного забезпечення з використанням бібліотеки wxWidgets. Статті, керівництво, відео-уроки, додаткові компоненти і бібліотеки.
- wxWidgets на RealCoding Архівовано 12 грудня 2007 у Wayback Machine. (рос.) — Серія статей по WxWidgets.
- Cross-Platform GUI Programming with wxWidgets — перша опублікована книга, що описує роботу з wxWidgets.
- Drawing and Printing in C++ with wxWidgets — стаття описує ідею контексту пристрою, роз'яснює концепцію області малювання на зразок вікна або друкованої сторінки. Вона обговорює доступні класи контекстів пристроїв і набір «інструментів малювання», які wxWidgets надає для роботи з шрифтами, кольорами, малюванням примітивів, і зафарбовування областей.
- Створення крос-платформних GUI-застосувань з використанням wxWidgets (рос.) — основи створення GUI-застосувань на базі wxWidgets.
- Використання wxWidgets (рос.) — Блог, присвячений програмуванню з використанням wxWidgets