Установите пользовательскую тему приложения с помощью gtkmm - PullRequest
2 голосов
/ 05 февраля 2011

Я занимаюсь разработкой приложения для малого бизнеса, и моя среда разработки - это система Linux. В любом случае, я использую библиотеки, такие как Boost / GtkMM / SQLite, поэтому было бы легко перенести их на системы Windows (которая является целевой платформой) или Mac. Я хотел бы, чтобы мое приложение отображалось с одной и той же темой на каждой платформе, поэтому есть ли способ жестко закодировать тему или хотя бы загрузить ее из C ++? Я полагаю, что такого рода проблемы связаны с такими вещами, как gtk-engine, но на самом деле не знаю, как решить эту проблему. Спасибо в совете за любые предложения!

1 Ответ

1 голос
/ 06 апреля 2012

Для Gtk 2.4 существуют RC файлы. Вы можете создать файл gtkrc для темы вашего приложения, а затем вызвать функцию для его анализа в init. Это то, что GIMP делает в Windows.

Документы GTK + (C) здесь , но документы gtkmm, похоже, отсутствуют. Попробуйте /usr/include/gtkmm-2.4/gtkmm/rc.h. Например:

Gtk::RC::add_default_file("some_file");

по крайней мере компилирует для меня.

Для GTK 3, очевидно, теперь есть CSS-файлы , которые похожи на CSS, который мы все знаем и любим (?), Но не идентичны.

...