やっとやり方がわかった。まず、グレード ファイルがカタログに依存していることを宣言する必要があります。
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<!-- interface-requires gtk+ 3.0 -->
<!-- interface-requires the_catalog_name 1.0 -->
...Rest of the glade file...
次に、catalog.xml ファイルを作成します。ツリービューを拡張するには、次のようになります。
<glade-catalog name="the_catalog_name" domain="glade-3"
depends="gtk+" version="1.0">
<glade-widget-classes>
<glade-widget-class title="My Custom Text View" name="CustomTextView"
generic-name="CustomTextView" parent="GtkTextView"
icon-name="widget-gtk-textview"/>
</glade-widget-classes>
</glade-catalog>
以上です。明らかに、Python コードはまだ書かれていませんが、Glade がカスタム ウィジェットを表示するのを妨げることはありません。通常のTextView、Label、または拡張したいものとして扱います。
残念ながら Glade 自体で CustomTextView を作成する方法が見つかりませんでした。しかし、できることは、空き地に通常の TextView を追加し、空き地ファイルを保存して、テキスト エディターで開くことです。作成したツリービューを探して、次のように変更します。
- <object class="TreeView" id="treeview1">
+ <object class="CustomTreeView" id="treeview1">
空き地で開くと現れます。次に、Python で CustomTreeView クラスを定義し、必要に応じて拡張します。