]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/diagram/monitor/AvailableFontFactory.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.modeling.ui / src / org / simantics / modeling / ui / diagram / monitor / AvailableFontFactory.java
1 package org.simantics.modeling.ui.diagram.monitor;\r
2 \r
3 import java.awt.GraphicsEnvironment;\r
4 import java.util.ArrayList;\r
5 import java.util.Arrays;\r
6 import java.util.List;\r
7 \r
8 import org.simantics.browsing.ui.swt.widgets.impl.ReadFactoryImpl;\r
9 import org.simantics.db.ReadGraph;\r
10 import org.simantics.db.exception.DatabaseException;\r
11 import org.simantics.utils.datastructures.Pair;\r
12 \r
13 public class AvailableFontFactory extends ReadFactoryImpl<Object, List<Pair<String, Object>>> {\r
14 \r
15         @Override\r
16         public List<Pair<String, Object>> perform(ReadGraph graph, Object input) throws DatabaseException {\r
17                 \r
18                 GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();\r
19                 String[] fonts = ge.getAvailableFontFamilyNames();\r
20                 Arrays.sort(fonts);\r
21         ArrayList<Pair<String, Object>> result = new ArrayList<Pair<String, Object>>();\r
22                 for(String font : fonts) {\r
23                         result.add(Pair.make(font, (Object)font));\r
24                 }\r
25         return result;\r
26                 \r
27         }\r
28         \r
29 }\r