annotate src/luan_editor/SpellCheckerLuan.java @ 37:b7ff52d45b9a default tip

copy from luan
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 21 Apr 2025 13:07:29 -0600
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
37
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
1 package luan_editor;
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
2
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
3 import java.net.URL;
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
4 import java.net.MalformedURLException;
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
5 import javax.swing.text.JTextComponent;
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
6 import com.inet.jortho.SpellChecker;
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
7 import com.inet.jortho.DefaultMessageHandler;
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
8 import luan.LuanException;
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
9 import luan.LuanRuntimeException;
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
10
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
11
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
12 public class SpellCheckerLuan {
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
13
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
14 public static void registerDictionaries( String baseURL, String activeLocale) throws MalformedURLException, LuanException {
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
15 SpellChecker.setMessageHandler(new DefaultMessageHandler(null) {
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
16 @Override public void handleException(java.lang.Throwable throwable) {
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
17 throw new LuanRuntimeException(new LuanException(throwable));
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
18 }
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
19 } );
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
20 URL url = new URL(baseURL);
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
21 try {
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
22 SpellChecker.registerDictionaries( url, activeLocale );
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
23 } catch(LuanRuntimeException e) {
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
24 LuanException luanException = (LuanException)e.getCause();
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
25 throw luanException;
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
26 }
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
27 }
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
28
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
29 public static void register(JTextComponent text) {
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
30 SpellChecker.register(text);
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
31 }
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
32
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
33 public static void unregister(JTextComponent text) {
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
34 SpellChecker.unregister(text);
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
35 }
b7ff52d45b9a copy from luan
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
36 }