Scintilla/Cut, copy and paste

Last-modified: 2008-02-24 (日) 20:58:04

切り取り、コピーと貼り付け

  • SCI_CUT
  • SCI_COPY
  • SCI_PASTE
  • SCI_CLEAR
  • SCI_CANPASTE
  • SCI_COPYRANGE(int start, int end)
  • SCI_COPYTEXT(int length, const char *text)
  • SCI_SETPASTECONVERTENDINGS(bool convert)
  • SCI_GETPASTECONVERTENDINGS

SCI_CUT

SCI_COPY

SCI_PASTE

SCI_CLEAR

SCI_CANPASTE

これらのコマンドは、クリップボードへのデータの切り取りとコピー、クリップボードからドキュメントへの貼り付けの標準タスクを実行する。
ドキュメントがリードオンリーでなく、また選択が保護されたテキストを含んでいないなら、SCI_CANPASTEは0以外を返す。
"コピーできるか"または"切り取りできるか"が必要な場合、クリップボードにコピーまたは切り取りできる場合に0以外を返すSCI_GETSELECTIONSTART()-SCI_GETSELECTIONEND()を使う。


GTK+はSCI_CANPASTEを本当にサポートしていない。ドキュメントがリードオンリーでなければ常にTRUEを返す。


Xではクリップボードは非同期であり、元と先のアプリケーションでいくつかのメッセージが必要になるかもしれない。
SCI_PASTEからのデータは、すぐにドキュメントに到着しない。

SCI_COPYRANGE(int start, int end)

SCI_COPYTEXT(int length, const char *text)

SCI_COPYRANGEはドキュメントからシステムクリップボードにテキストの範囲をコピーし、SCI_COPYTEXTは供給されたテキストの断片をシステムクリップボードにコピーする。

SCI_SETPASTECONVERTENDINGS(bool convert)

SCI_GETPASTECONVERTENDINGS

もしプロパティがセットされていれば、テキストがどこかの行に貼り付けられたときにSCI_SETEOLMODEでセットされたドキュメントの改行モードに一致するよう変換される。
現在、Windowsでのみ変更できる。
GTK+では貼り付けられたテキストは常に変換される。