RichTextStringDataModel (クラス)
public final RichTextStringDataModel {inherits StringDataModel}
インポート元: CURL.GUI.STANDARD. package 内で定義されています CURL.GUI.CONTROL-LOGICAL.

RichTextString をデータ モデルとして表現します。

説明

データ モデルは Observable なので、そのコンテンツに対する変更はクライアント オブジェクトによってトラックされます。詳細情報に関しては、StringDataModel を参照してください。

コンストラクタ
default:RichTextStringDataModel を初期化します。
コンストラクタ public {RichTextStringDataModel.default str:RichTextString}

プロパティ
size:データ モデル内の char の数。
アクセサ public RichTextStringDataModel.size:int
プロパティ 継承 StringDataModel: empty?
プロパティ 継承 Observable: has-observers?, notify-observers?

メソッド
clear:データ モデルのすべての内容を削除します。
public {RichTextStringDataModel.clear}:void
get:self 内の指定された文字を返します。
public {RichTextStringDataModel.get index:int}:char
get-attribute:指定された範囲で属性値を取得します。
public {RichTextStringDataModel.get-attribute
key:String,
start:int = 0,
limit:int = self.size - 1,
distinguish-unset-attributes?:bool = true
}:(value:any, valid?:bool)
remove:指定された文字を self から削除します。
public {RichTextStringDataModel.remove
index:int,
length:int = 1,
error-if-missing?:bool = true
}:void
set-attribute:指定された範囲にリッチテキスト属性を設定します。
public {RichTextStringDataModel.set-attribute
key:String,
value:any,
start:int = 0,
limit:int = self.size
}:void
set-contents:このデータ モデルの内容を設定します。
public {RichTextStringDataModel.set-contents}:void
set-rich-text-contents:指定された文字列にこのデータモデルのコンテンツを設定します。
public {RichTextStringDataModel.set-rich-text-contents
rich-text-string:RichTextString
}:void
splice:StringInterfaceself に挿入します。
public {RichTextStringDataModel.splice
str:StringInterface,
index:int
}:void
substr:データ モデルの指定された部分文字列を返します。
public {RichTextStringDataModel.substr start:int, length:int}:String
to-RichTextString:データモデルコンテンツからRichTextStringを作成します。
public {RichTextStringDataModel.to-RichTextString
distinguish-unset-attributes?:bool = true
}:RichTextString
to-String:このデータ モデルの内容を取得します。
public {RichTextStringDataModel.to-String}:String
メソッド 継承 Observable: add-observer, notify-observers, remove-observer
メソッド 継承 Object: object-describe, object-describe-for-debugging, object-serialize



コンストラクタ詳細
default (コンストラクタ)
public {RichTextStringDataModel.default str:RichTextString}

RichTextStringDataModel を初期化します。

str: 表現する RichTextString



プロパティ詳細
size (アクセサ)
アクセサ public RichTextStringDataModel.size:int

データ モデル内の char の数。






メソッド詳細
clear (メソッド)
public {RichTextStringDataModel.clear}:void

データ モデルのすべての内容を削除します。

説明

削除すると StringRemoveMessage は任意のオブザーバに送られます。

注意事項

詳細については WritableString.clear を参照してください。

オーバーライド

このメソッドの実装を提供するサブクラスは、コンテンツをクリアした後に StringRemoveMessage を送ることでオブザーバーに通知しなければなりません。このメッセージは remove によって送信されるので、このメソッドを使用する実装は自動的にこの要求に応答します。


get (メソッド)
public {RichTextStringDataModel.get index:int}:char

self 内の指定された文字を返します。

index: 取得する文字の位置。最左端の文字の位置は 0 です。最右端の文字の位置は (self.size - 1) です。有効値は 0(self.size - 1) の範囲です (0(self.size - 1) を含む)。

例外のスロー

index が範囲外の場合は ArrayBoundsException をスローします。

オーバーライド

既定の実装では to-String を使用し、効率化のためにオーバーライドされなればなりません。


get-attribute (メソッド)
public {RichTextStringDataModel.get-attribute
key:String,
start:int = 0,
limit:int = self.size - 1,
distinguish-unset-attributes?:bool = true
}:(value:any, valid?:bool)

指定された範囲で属性値を取得します。

key: 取得する属性の名前。
start: 対象範囲の開始インデックス。
limit: 対象範囲を超えたインデックス。
distinguish-unset-attributes?: RichTextArea.distinguish-unset-attributes?を参照してください。

説明

startlimit が同じ場合、start の前の文字に適用する属性が使用されます。ただし、終わりでない改行の後や start0 の場合、その文字の後に適用する属性が使用されます。コンテンツが空の場合、既定の属性が使用されます。

戻り値

属性の値と、全範囲で値が有効かどうかを示すフラグvalid?false の時、value は無視されます。
導入: バージョン 7.0


remove (メソッド)
public {RichTextStringDataModel.remove
index:int,
length:int = 1,
error-if-missing?:bool = true
}:void

指定された文字を self から削除します。

index: 文字の削除を開始する位置。最左端の文字の位置は 0 です。最右端の文字の位置は (self.size - 1) です。有効値は 0self.size の範囲です (0self.size を含む)。
length: 削除する文字数。length の既定値は 1 です。length はキーワード引数です。length を指定するには、メソッド呼び出しのキーワードに対して適切な値を設定します (例:length = 6)。
error-if-missing?:
存在しない文字を削除しようとしたときにこのメソッドがエラーを生成するかどうかを示す、ブール値のフラグ。位置 0 と self.size の間の文字を削除できます。
error-if-missing?true に設定した場合、存在しない文字を削除しようとするとエラーがスローされます。エラーが発生するとプログラムの実行が停止し、エラー メッセージが表示されます。既定では、error-if-missing?true です。error-if-missing?false に設定した場合、エラーは生成されません。また、有効な範囲内にある文字は削除されますが、有効な範囲内にない文字は削除されず、削除後の文字列が返されます。
error-if-missing? はキーワード引数です。error-if-missing? を指定するには、メソッド呼び出しのキーワードに対して適切な値を設定します (例:error-if-missing? = false)。

説明

self から length 個の文字を削除します。削除開始位置は index です。

削除するとStringRemoveMessage は任意のオブザーバに送られます。

注意事項

詳細については WritableString.remove を参照してください。

オーバーライド

このメソッドの実装を提供するサブクラスは、指定された文字を削除した後に StringRemoveMessage を送ることでオブザーバーに通知しなければなりません。


set-attribute (メソッド)
public {RichTextStringDataModel.set-attribute
key:String,
value:any,
start:int = 0,
limit:int = self.size
}:void

指定された範囲にリッチテキスト属性を設定します。

key: 設定するプロパティの名前です。
value: 属性の値。
start: 属性を設定する範囲の開始インデックスです。
limit: 設定した属性の範囲を丁度超えるインデックス。
導入: バージョン 7.0


set-contents (メソッド)
public {RichTextStringDataModel.set-contents}:void

このデータ モデルの内容を設定します。

value: 新しい内容を表す StringInterface

説明

詳細については StringBuf.set-contents を参照してください。

オーバーライド

このメソッドの実装を提供するサブクラスは、新しいコンテンツを挿入し、古いコンテンツや StringSpliceMessage を削除した後に StringRemoveMessage を送ることでオブザーバーに通知しなければなりません。これらのメッセージは removesplice によって送信されるので、これらのメッセージを使用する実装は自動的にこの要求に応答します。


set-rich-text-contents (メソッド)
public {RichTextStringDataModel.set-rich-text-contents
rich-text-string:RichTextString
}:void

指定された文字列にこのデータモデルのコンテンツを設定します。

rich-text-string: 交換に使用されるRichTextStringです。
導入: バージョン 7.0


splice (メソッド)
public {RichTextStringDataModel.splice
str:StringInterface,
index:int
}:void

StringInterfaceself に挿入します。

str: 挿入する StringInterface
index: StringInterface を挿入する位置。最左端の文字の位置は 0 です。最右端の文字の位置は (self.size - 1) です。有効値は 0self.size の範囲です (0self.size を含む)。

説明

連結が起こると StringSpliceMessage は任意のオブザーバに送られます。

注意事項

詳細については WritableString.splice を参照してください。

オーバーライド

このメソッドの実装を提供するサブクラスは、スプライスした後に StringSpliceMessage を送ることでオブザーバーに通知しなければなりません。


substr (メソッド)
public {RichTextStringDataModel.substr start:int, length:int}:String

データ モデルの指定された部分文字列を返します。

start: self 内における部分文字列の開始位置。最左端の文字の位置は 0 です。最右端の文字の位置は (self.size - 1) です。有効値は 0 ~ (self.size - 1) の範囲です (0 と (self.size - 1) を含む)。
length: 部分文字列の長さ。つまり、部分文字列内の文字数です。

戻り値

データ モデル内容の部分文字列を格納する Stringstart の位置から始まる length 個の連続した文字が格納されます。

注意事項

詳細については StringInterface.substr を参照してください。


to-RichTextString (メソッド)
public {RichTextStringDataModel.to-RichTextString
distinguish-unset-attributes?:bool = true
}:RichTextString

データモデルコンテンツからRichTextStringを作成します。

distinguish-unset-attributes?: RichTextArea.distinguish-unset-attributes?を参照してください。
導入: バージョン 7.0


to-String (メソッド)
public {RichTextStringDataModel.to-String}:String

このデータ モデルの内容を取得します。

戻り値

String としての内容。