Я пытаюсь скомпилировать приложение gtkmm, которое использует cairomm для рисования. Это нормально компилируется с помощью gtkmm3.0, но когда я пытаюсь скомпилировать его с помощью gtkmm2.4 я получаю:Signal_draw в Gtkmm2.4
error: ‘signal_draw’ was not declared in this scope
Я использую г ++.
Похоже, что в gtkmm2.4 отсутствует signal_draw (я ошибаюсь?). Есть ли какая-либо функция/сигнал, который можно использовать вместо этого?
Заранее спасибо.
Извините за мой плохой английский.
Некоторый код:
class egclass: public Gtk::DrawingArea
{
public:
egclass();
virtual ~egclass();
virtual bool on_draw(const Cairo::RefPtr<Cairo::Context>& cr);
};
egclass::egclass()
{
#ifndef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
signal_draw().connect(sigc::mem_fun(*this, &egclass::on_draw), false);
#endif
}
Ok, но все-таки мне нужно Каир :: RefPtr, чтобы выполнить рисунок, как я могу получить его? –
tomxey
Обновлен ответ – kalev
Спасибо, сейчас он работает. – tomxey