Mercurial > hg > RemoteEditor > Eclipse
comparison src/remoteeditor/editors/RemoteEditor.java @ 117:a441426fe48a
*** empty log message ***
author | pin |
---|---|
date | Sun, 23 Dec 2007 17:22:18 +0900 |
parents | 65ba9545fa49 |
children | ad836eeae5bd |
comparison
equal
deleted
inserted
replaced
116:cf4df4f73605 | 117:a441426fe48a |
---|---|
130 } | 130 } |
131 public void textChanged(TextEvent event) { | 131 public void textChanged(TextEvent event) { |
132 String replacedText = event.getReplacedText(); | 132 String replacedText = event.getReplacedText(); |
133 String inputText = event.getText(); | 133 String inputText = event.getText(); |
134 | 134 |
135 // �y�[�W�擪����̕�����(��s��܂�)�ɂ��W | 135 //ページ先頭からの文字数による座標(改行を含む) |
136 int textOffset = event.getOffset(); | 136 int textOffset = event.getOffset(); |
137 | 137 |
138 System.out.println("replace = " + replacedText); | 138 System.out.println("replace = " + replacedText); |
139 System.out.println("input = " + inputText + " : " + inputText.length()); | 139 System.out.println("input = " + inputText + " : " + inputText.length()); |
140 | 140 |
143 int length = 0; | 143 int length = 0; |
144 int cmd = 0; | 144 int cmd = 0; |
145 int numberOfLinesNew = 0; | 145 int numberOfLinesNew = 0; |
146 String lineText = null; | 146 String lineText = null; |
147 try { | 147 try { |
148 line = document.getNumberOfLines(0, textOffset); // lineno ��擾���Ă܂��B | 148 line = document.getNumberOfLines(0, textOffset); // lineno を取得してます。 |
149 offset = document.getLineOffset(line-1); | 149 offset = document.getLineOffset(line-1); |
150 length = document.getLineLength(line-1); | 150 length = document.getLineLength(line-1); |
151 lineText = document.get(offset, length); | 151 lineText = document.get(offset, length); |
152 numberOfLinesNew = document.getNumberOfLines(); | 152 numberOfLinesNew = document.getNumberOfLines(); |
153 } catch (BadLocationException e1) { | 153 } catch (BadLocationException e1) { |
154 e1.printStackTrace(); | 154 e1.printStackTrace(); |
155 } | 155 } |
156 if(numberOfLinesNew > numberOfLinesOld){ | 156 if(numberOfLinesNew > numberOfLinesOld){ |
157 //insert, delete, replace �� �s���Ŕ��f | 157 //insert, delete, replace 行数で判断 |
158 cmd = REP.REPCMD_INSERT; | 158 cmd = REP.REPCMD_INSERT; |
159 if(inputText.equals("\n")){ | 159 if(inputText.equals("\n")){ |
160 line--; | 160 line--; |
161 } | 161 } |
162 lineText = inputText; | 162 lineText = inputText; |
256 case REP.SMCMD_SELECT_ACK: | 256 case REP.SMCMD_SELECT_ACK: |
257 mysid = command.sid; | 257 mysid = command.sid; |
258 break; | 258 break; |
259 case REP.REPCMD_INSERT: | 259 case REP.REPCMD_INSERT: |
260 try { | 260 try { |
261 if(command.eid == myeid) break; //���ƂŏB� | 261 if(command.eid == myeid) break; //mergerを導入する時に消す |
262 textInsert(command.lineno, command.len, command.string); | 262 textInsert(command.lineno, command.len, command.string); |
263 } catch (Exception e) { | 263 } catch (Exception e) { |
264 e.printStackTrace(); | 264 e.printStackTrace(); |
265 } | 265 } |
266 break; | 266 break; |
267 case REP.REPCMD_REPLACE: | 267 case REP.REPCMD_REPLACE: |
268 try { | 268 try { |
269 if(command.eid == myeid) break;//���ƂŏB� | 269 if(command.eid == myeid) break;//mergerを導入する時に消す |
270 repsend.send(command); | 270 repsend.send(command); |
271 changeText(command.cmd, command.lineno, command.len, command.string); | 271 changeText(command.cmd, command.lineno, command.len, command.string); |
272 } catch (Exception e1) { | 272 } catch (Exception e1) { |
273 e1.printStackTrace(); | 273 e1.printStackTrace(); |
274 } | 274 } |
275 break; | 275 break; |
276 case REP.REPCMD_DELETE: | 276 case REP.REPCMD_DELETE: |
277 try { | 277 try { |
278 if(command.eid == myeid) break;//���ƂŏB� | 278 if(command.eid == myeid) break;//mergerを導入する時に消す |
279 textDelete(command.lineno, command.len, command.string); | 279 textDelete(command.lineno, command.len, command.string); |
280 } catch (BadLocationException e1) { | 280 } catch (BadLocationException e1) { |
281 e1.printStackTrace(); | 281 e1.printStackTrace(); |
282 } | 282 } |
283 break; | 283 break; |