Skip to content Skip to sidebar Skip to footer

Tag: Components

wxToolBox is Now Open-Source!

I've just published the source code of wxToolBox component and a couple of sample apps at GitHub: There is a working minimal sample and `Sample IDE` app with source code, Skin Editor does not compile with new version of wxPropertyGrid and I'm not currently interested in updating the source code. The working binary version for Windows can…

Read more

Taking Screenshots with wxWidgets under Mac OS is Really Tricky.

Taking screenshots is a very common task and it was a must for one of my current projects. What was a surprise when I understood that my favourite toolkit can't do that in cross-platform manner. It is official bug that wxScreenDC does not work properly under Mac OS and you can't use Blit() message for copying screen onto wxMemoryDC. After digging the Internet I found a kind of solution which used OpenGL and created wxWidgets-based class which takes screenshots also under Mac OS. It was really hard task for me because I haven't used neither Carbon nor Cocoa before. However everything works now and I'm happy. Here it is:

Read more

AxTk: An Accessibility Toolkit for wxWidgets

What is AxTk?

AxTk (pronounced Ay Ex Tee Kay) is an open source, C++ add-on for wxWidgets that helps developers create highly accessible, talking applications for users with impaired vision. It may also be useful for other impairments that benefit from a simplified user interface. AxTk features a new menu-based system that is easy to learn and use, in addition to providing adaptation for some existing GUI controls and dialogs. The developer can choose whether to use the menu system, or to adapt an existing application UI, or use a combination of methods. AxTk is cross-platform (tested so far on Windows XP, Linux and Mac OS X 10.5), and includes text-to-speech classes with the ability to drive SAPI 5, Apple Speech Synthesis Manager, eSpeak, and Cepstral. Other speech engines can be driven by writing additional handlers. Note that AxTk is a work in progress and the API is subject to change.

Read more

How to Create Nice About Box in wxWidgets

After taking a look at wxWidgets samples I noticed that all of them have simple message box instaed of normal about box. However in real applications About dialog is important enough part of GUI. So, in this post I'm going to tell a bit about creating About boxes for your software. wxWidgets has builf-in API for creating "standard" dialog boxes. wxAboutBox() function is used for displaying About box and wxAboutDialogInfo object, which contains all necessary information, should be passed to wxAboutBox() function.

Read more

Классы редактирования даты и времени в ячейках wxGrid

Александр (sandy) Илюшенко любезно предоставил статью о создании редактора ячеек wxGrid: Данная статья посвящена внедрению в грид ячеек для редактирования дат и времени. Сам котрол для дат существует - wxDatePickerCtrl. Остается вопрос, как прикрутить его к гриду.

Read more

Переопределение поведения стандартных компонентов. Делаем свой wxGrid

Александр (sandy) Илюшенко любезно предоставил статью о том, как настроить класc wxGrid под свои нужды: Захотелось мне как-то, чтобы в гриде были не номера строк, а маркер. К тому же очень хотелось, чтобы незаполненное пространство грида было не белым, а, примерно, как на рисунке ниже. Делаем собственный wxGrid Навеяно это было в основном аналогичными и другими классами, предоставляемыми MFC. Тут же и вспомнилось, что подобные классы также прдоставляют очень полезные методы для хранения дополнительных не отображаемых данных, такие как SetData() или GetData().

Read more

Реализация Job Queue на wxWidgets (+исходник)

При работе с потоками часто приходится делать кучу однотипных задач: создавать класс, производный от wxThread, реализовывать метод Entry() для этого класса, синхронизацию с главным потоком и т.д. Eran, автор CodeLite IDE поделился кодом класса JobQueue, который реализует пул потоков и позволяет выполнять задачи в фоновом режиме. Главный поток получает уведомления таким вот образом: // in the event table EVT_COMMAND(wxID_ANY,…

Read more

Multilingual Applications? It’s Simple!

I was digging wxForum searching for a solution of some of my problems and realized that many people ask questions related to wxLocale and multilingual applications and it seems that setting up the development of multilingual applications is hard enough for junior programmers. So, today I want to tell you about how to start…. start the development of software which supports different languages.

Read more