我lookng渲染一些GTK控件容器的pixbuf使用gtkmm3在拖放圖標圖像後使用的一種方式。gtk_widget_draw()替代了gtkmm3
在本地gtk3做,這是正確的做法,據我研究, - 對提供開羅表面gtk_widget_draw()的使用。
這個表面的創作是不是一個問題,但是調用gtk_widget_draw()本身。
它直接的gtkmm-3.4.2源提到的地方是基於GTK ::控件:: draw()函數(widget.cc:310),它被聲明爲'保護」。
所以我的問題是:我如何正確地執行這樣的任務(渲染小部件的pixbuf)在gtkmm3?
在這一點上,我看到兩個選項:
子類的Gtk ::小部件提供公共接口,以保護draw()函數
提取gobj *例如,從基於GTK控件::和呼叫本地Gtk的gtk_widget_draw()在這個實例上。
問題是:哪種方式更可取,爲什麼?或者也許還有其他[更好]的方法來做到這一點?