LINUX.ORG.RU

cl-gtk2, gtk-main-quit


0

0

при вызове gtk-main-quit по сигналу из menuitem приложение завершает работу, но остаётся пустое(мёртвое) окно. Может qtk-main-quit недостаточно и нужно напрямую уничтожать главный виджет или я ещё что-то не так пытаюсь сделать?

gtk+ так устроен, что gtk-main-quit не закрывает открытые окна (т.к. обычно gtk+-приложения после gtk-main-quit живут недолго, и X-сервер сам их закрывает). То есть, перед gtk-main-quit надо пройтись по всем окнам (gtk:list-toplevel-windows), и закрыть их.

dmitry_vk ★★★
()
Ответ на: комментарий от dmitry_vk

(gtk:list-toplevel-windows) в только что обновлённом с помощью asdf cl-gtk2 нету. И как закрыть окна? gtk_widget_destroy также нет

pseudo-cat ★★★
() автор топика
Ответ на: комментарий от dmitry_vk

спасибо, так работает.

можно вопрос не совсем по топику?) Нужна область, в которой можно отрисовывать, перетаскивать графические элементы, для этого есть какие-то средства в gtk или можно как-то вставить фрейм с cl-opengl? Вроде один товарищ с этого форума использовал подобную вещь в своём cad-е, но я так и не нашёл, где он выкладывает свои сорцы

pseudo-cat ★★★
() автор топика
Ответ на: комментарий от pseudo-cat

В самом gtk или cl-gtk2 такого нет (можно реализовать вручную через drawing-area). Есть библиотеки вроде GooCanvas, GnomeCanvas, Clutter, которые можно использовать.

dmitry_vk ★★★
()
Ответ на: комментарий от pseudo-cat

и забыл - хотелось бы иметь возможность сохранять drawing-elements в простом формате понятном drawing-system, возможно такое есть из коробки в каком нибудь canvas? типа как набор примитивов и сохранять в xml, хотя если нет, то вроде не сложно самому такое сделать, но было бы приятно

pseudo-cat ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.