Używanie klasy QSyntaxHighlighter z bibliotek QT 4.4
W ramach dodatkowego projektu z programowania w języku C++ wykonałem małą aplikację demonstrującą użycie klasy QSyntaxHighlighter z bibliotek Qt do kolorowania składni. Stworzona klasa HSyntaxHighlighter wykorzystuje przygotowane przez twórców Qt elementy co ułatwiło jej wykonanie. Program w prosty sposób koloruje składnie zgodnie z ustawieniami, umożliwia również dostosowanie kolorowania każdego rodzaju kodu do swoich potrzeb za pomocą:
- wyboru czcionki odpowiedzialnej za daną część kodu
- wyboru koloru czcionki
- wyboru tła
- oraz edycji wyrażeni/wyrażeń regularnych odpowiedzialnych za rozpoznawanie tekstu
Program obsługuje podstawowe bloki
- Komentarz jednoliniowy
- Komentarz wieloliniowy
- Stałe znakowe
- Stałe liczbowe
- Dyrektywy preprocesora
- Słowo kluczowe/zarezerwowane
ale jego struktura umożliwia łatwe dodawanie własnych bloków (poprzez edycje kilku stałych wartości przed kompilacją)
Ustawienia dotyczące kolorowania są przechowywane w plikach *.ini, za pomocą klasy QSettings.
Program został napisany w środowisku Eclipse CDT , z dodatkami QtEclipseIntegration do tworzenie interfejsu oraz Eclox w celu ułatwienia używania doxygen'a zaś kod został w całości udokumentowany (w j. angielskim) zgodnie z składnią Doxygen.
Zapraszam do przejrzenia i zgłaszania uwag.
Cały program objęty jest licencją GPL 3.0, źródła dostępne poniżej.
Syntax Highlighter 1.0 (wraz z plikami DLL od Qt)
Syntax Highlighter 1.0 (tylko plik exe)
Syntax Highlighter 1.0 (źródła)
Syntax Highlighter 1.0 (dokumentacja)
Wersja 1.1
Poprawiono:
dynamiczna edycja listy bloków, kilka poprawek estetycznych. Bloki podświetlają się niezależnie, po kolei.
Syntax Highlighter 1.1 (wraz z plikami DLL od Qt)
Syntax Highlighter 1.1 (tylko plik exe)
Syntax Highlighter 1.1 (źródła)