equal
deleted
inserted
replaced
26 object Token_Markup |
26 object Token_Markup |
27 { |
27 { |
28 /* editing support for control symbols */ |
28 /* editing support for control symbols */ |
29 |
29 |
30 val is_control_style = |
30 val is_control_style = |
31 Set(Symbol.sub_decoded, Symbol.sup_decoded, |
31 Set(Symbol.sub_decoded, Symbol.sup_decoded, Symbol.bold_decoded) |
32 Symbol.isub_decoded, Symbol.isup_decoded, Symbol.bold_decoded) |
|
33 |
32 |
34 def update_control_style(control: String, text: String): String = |
33 def update_control_style(control: String, text: String): String = |
35 { |
34 { |
36 val result = new StringBuilder |
35 val result = new StringBuilder |
37 for (sym <- Symbol.iterator(text) if !is_control_style(sym)) { |
36 for (sym <- Symbol.iterator(text) if !is_control_style(sym)) { |
159 |
158 |
160 def extended_styles(text: CharSequence): Map[Text.Offset, Byte => Byte] = |
159 def extended_styles(text: CharSequence): Map[Text.Offset, Byte => Byte] = |
161 { |
160 { |
162 // FIXME Symbol.bsub_decoded etc. |
161 // FIXME Symbol.bsub_decoded etc. |
163 def control_style(sym: String): Option[Byte => Byte] = |
162 def control_style(sym: String): Option[Byte => Byte] = |
164 if (sym == Symbol.sub_decoded || sym == Symbol.isub_decoded) Some(subscript(_)) |
163 if (sym == Symbol.sub_decoded) Some(subscript(_)) |
165 else if (sym == Symbol.sup_decoded || sym == Symbol.isup_decoded) Some(superscript(_)) |
164 else if (sym == Symbol.sup_decoded) Some(superscript(_)) |
166 else if (sym == Symbol.bold_decoded) Some(bold(_)) |
165 else if (sym == Symbol.bold_decoded) Some(bold(_)) |
167 else None |
166 else None |
168 |
167 |
169 var result = Map[Text.Offset, Byte => Byte]() |
168 var result = Map[Text.Offset, Byte => Byte]() |
170 def mark(start: Text.Offset, stop: Text.Offset, style: Byte => Byte) |
169 def mark(start: Text.Offset, stop: Text.Offset, style: Byte => Byte) |