私はgtk+-2.0とgtksourceview-2.0を使用してテキストエディタを書いています。プログラムでテキストのブロックを選択し、それをOS(Linux)のプライマリ選択クリップボードに追加する方法を見つけるのに問題があります。マウスでテキストのブロックを強調表示するか、Shiftキーを押しながら矢印キーでテキストを選択した場合と同じように、
devhelpの「gtk_text_buffer_get_selection_bound()」の下に次のステートメントがあります。
バッファ内で現在選択されているテキストは、「selection_bound」マークと「insert」マークの間の領域です。
編集: gtk_text_buffer_select_range()、これら2つのマークの位置を設定します。
次のコードブロックは、テキストiters start&endを使用して指定された領域を、(必要に応じて)プライマリ選択クリップボードにコピーします。
gtk_text_buffer_select_range (tbuffer, &start, &end);
GtkClipboard *cb = gtk_clipboard_get(GDK_SELECTION_PRIMARY);
gtk_text_buffer_copy_clipboard (tbuffer,cb);
アイデアをありがとう!!!