Mercurial > projects > dwt2
annotate com.ibm.icu/src/com/ibm/icu/text/BreakIterator.d @ 98:48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Wed, 22 Apr 2009 07:30:21 +0200 |
parents | ebefa5c2eab4 |
children | 536e43f63c81 |
rev | line source |
---|---|
85 | 1 |
2 module com.ibm.icu.text.BreakIterator; | |
3 | |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
4 import com.ibm.icu.mangoicu.UBreakIterator; |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
5 import tango.core.Thread; |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
6 |
85 | 7 import java.lang.all; |
8 import java.text.CharacterIterator; | |
9 | |
10 public class BreakIterator { | |
11 | |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
12 public static const int DONE = UBreakIterator.DONE; |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
13 public static const int Done = UBreakIterator.DONE; |
85 | 14 |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
15 private UBreakIterator it; |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
16 private static tango.core.Thread.ThreadLocal!(BreakIterator) instLine; |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
17 private static tango.core.Thread.ThreadLocal!(BreakIterator) instWord; |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
18 |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
19 private this( UBreakIterator it ){ |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
20 this.it = it; |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
21 } |
85 | 22 public static BreakIterator getLineInstance() { |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
23 auto res = instLine.val(); |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
24 if( res is null ){ |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
25 res = new BreakIterator( |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
26 UBreakIterator.openLineIterator( ULocale.Default )); |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
27 instLine.val( res ); |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
28 } |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
29 return res; |
85 | 30 } |
31 | |
32 public void setText(String line) { | |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
33 it.setText(line); |
85 | 34 } |
35 | |
36 public int following(int currOffset) { | |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
37 return it.following(currOffset); |
85 | 38 } |
39 | |
40 public int next() { | |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
41 return it.next(); |
85 | 42 } |
43 | |
44 public static BreakIterator getWordInstance() { | |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
45 auto res = instWord.val(); |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
46 if( res is null ){ |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
47 res = new BreakIterator( |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
48 UBreakIterator.openWordIterator( ULocale.Default )); |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
49 instWord.val( res ); |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
50 } |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
51 return res; |
85 | 52 } |
53 | |
54 public int preceding(int position) { | |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
55 return it.previous(position); |
85 | 56 } |
57 | |
58 public void setText(CharacterIterator docIter) { | |
92
ebefa5c2eab4
moving ICU bindings to com.ibm.icu
Frank Benoit <benoit@tionex.de>
parents:
85
diff
changeset
|
59 implMissing(__FILE__, __LINE__); |
85 | 60 } |
61 | |
62 public bool isBoundary(int position) { | |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
63 return it.isBoundary(position); |
85 | 64 } |
65 | |
66 public int first() { | |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
92
diff
changeset
|
67 return it.first(); |
85 | 68 } |
69 | |
70 } | |
71 | |
72 |