Revision: 15173
http://gate.svn.sourceforge.net/gate/?rev=15173&view=rev
Author: markagreenwood
Date: 2012-01-22 10:50:13 +0000 (Sun, 22 Jan 2012)
Log Message:
-----------
fixed a whole bunch more deprecation warnings by changing the code to use the
new Ontology API where possible
Modified Paths:
--------------
gate/trunk/src/gate/gui/ontology/AnnotationPropertyAction.java
gate/trunk/src/gate/gui/ontology/DatatypePropertyAction.java
gate/trunk/src/gate/gui/ontology/DeleteOntologyResourceAction.java
gate/trunk/src/gate/gui/ontology/DetailsTableCellRenderer.java
gate/trunk/src/gate/gui/ontology/DetailsTableModel.java
gate/trunk/src/gate/gui/ontology/InstanceAction.java
gate/trunk/src/gate/gui/ontology/ObjectPropertyAction.java
gate/trunk/src/gate/gui/ontology/OntoTreeCellRenderer.java
gate/trunk/src/gate/gui/ontology/OntologyEditor.java
gate/trunk/src/gate/gui/ontology/OntologyItemComparator.java
gate/trunk/src/gate/gui/ontology/PropertyDetailsTableCellRenderer.java
gate/trunk/src/gate/gui/ontology/PropertyDetailsTableModel.java
gate/trunk/src/gate/gui/ontology/SearchAction.java
gate/trunk/src/gate/gui/ontology/SubClassAction.java
gate/trunk/src/gate/gui/ontology/SymmetricPropertyAction.java
gate/trunk/src/gate/gui/ontology/TopClassAction.java
gate/trunk/src/gate/gui/ontology/TransitivePropertyAction.java
gate/trunk/src/gate/gui/ontology/Utils.java
Modified: gate/trunk/src/gate/gui/ontology/AnnotationPropertyAction.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/AnnotationPropertyAction.java
2012-01-22 09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/AnnotationPropertyAction.java
2012-01-22 10:50:13 UTC (rev 15173)
@@ -1,25 +1,33 @@
/*
- * Copyright (c) 1995-2010, The University of Sheffield. See the file
- * COPYRIGHT.txt in the software or at http://gate.ac.uk/gate/COPYRIGHT.txt
- *
- * This file is part of GATE (see http://gate.ac.uk/), and is free
- * software, licenced under the GNU Library General Public License,
- * Version 2, June 1991 (in the distribution as file licence.html,
- * and also available at http://gate.ac.uk/gate/licence.html).
- *
- * Niraj Aswani, 09/March/07
- *
- * $Id: AnnotationPropertyAction.html,v 1.0 2007/03/09 16:13:01 niraj Exp $
+ * Copyright (c) 1995-2010, The University of Sheffield. See the file
+ * COPYRIGHT.txt in the software or at http://gate.ac.uk/gate/COPYRIGHT.txt
+ *
+ * This file is part of GATE (see http://gate.ac.uk/), and is free software,
+ * licenced under the GNU Library General Public License, Version 2, June 1991
+ * (in the distribution as file licence.html, and also available at
+ * http://gate.ac.uk/gate/licence.html).
+ *
+ * Niraj Aswani, 09/March/07
+ *
+ * $Id: AnnotationPropertyAction.html,v 1.0 2007/03/09 16:13:01 niraj Exp $
*/
package gate.gui.ontology;
-import gate.creole.ontology.*;
+import gate.creole.ontology.Ontology;
import gate.gui.MainFrame;
-import java.awt.*;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+import java.awt.Insets;
import java.awt.event.ActionEvent;
-import javax.swing.*;
+import javax.swing.AbstractAction;
+import javax.swing.Icon;
+import javax.swing.JLabel;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+
/**
* Action to create a new annotation property.
*/
@@ -29,8 +37,10 @@
/**
* Constructor
*
- * @param s - Label assigned to the Button
- * @param icon - Icon assigned to the Button
+ * @param s
+ * - Label assigned to the Button
+ * @param icon
+ * - Icon assigned to the Button
*/
public AnnotationPropertyAction(String s, Icon icon) {
super(s, icon);
@@ -48,40 +58,44 @@
}
public void actionPerformed(ActionEvent actionevent) {
- nameSpace.setText(ontology.getDefaultNameSpace() == null ?
- "http://gate.ac.uk/example#" : ontology.getDefaultNameSpace());
- JOptionPane pane = new JOptionPane(mainPanel, JOptionPane.QUESTION_MESSAGE,
- JOptionPane.OK_CANCEL_OPTION,
- MainFrame.getIcon("ontology-annotation-property")) {
- public void selectInitialValue() {
- propertyName.requestFocusInWindow();
- propertyName.selectAll();
- }
- };
- pane.createDialog(MainFrame.getInstance(),
- "New Annotation Property").setVisible(true);
+ nameSpace.setText(ontology.getDefaultNameSpace() == null
+ ? "http://gate.ac.uk/example#"
+ : ontology.getDefaultNameSpace());
+ JOptionPane pane =
+ new JOptionPane(mainPanel, JOptionPane.QUESTION_MESSAGE,
+ JOptionPane.OK_CANCEL_OPTION,
+ MainFrame.getIcon("ontology-annotation-property")) {
+ public void selectInitialValue() {
+ propertyName.requestFocusInWindow();
+ propertyName.selectAll();
+ }
+ };
+ pane.createDialog(MainFrame.getInstance(), "New Annotation Property")
+ .setVisible(true);
Object selectedValue = pane.getValue();
- if (selectedValue != null
- && selectedValue instanceof Integer
- && (Integer) selectedValue == JOptionPane.OK_OPTION) {
+ if(selectedValue != null && selectedValue instanceof Integer
+ && (Integer)selectedValue == JOptionPane.OK_OPTION) {
String s = nameSpace.getText();
if(!Utils.isValidNameSpace(s)) {
JOptionPane.showMessageDialog(MainFrame.getInstance(),
- "Invalid Name Space: " + s + "\nExample:
http://gate.ac.uk/example#");
+ "Invalid Name Space: " + s
+ + "\nExample: http://gate.ac.uk/example#");
return;
}
if(!Utils.isValidOntologyResourceName(propertyName.getText())) {
JOptionPane.showMessageDialog(MainFrame.getInstance(),
- "Invalid Property Name: " + propertyName.getText());
+ "Invalid Property Name: " + propertyName.getText());
return;
}
- if(Utils.getOResourceFromMap(ontology,s + propertyName.getText()) !=
null) {
- JOptionPane.showMessageDialog(MainFrame.getInstance(),"<html>" +
- "Resource <b>" + s+propertyName.getText() + "</b> already exists.");
+ if(Utils.getOResourceFromMap(ontology, s + propertyName.getText()) !=
null) {
+ JOptionPane.showMessageDialog(MainFrame.getInstance(), "<html>"
+ + "Resource <b>" + s + propertyName.getText()
+ + "</b> already exists.");
return;
}
- ontology.addAnnotationProperty(new URI(nameSpace.getText()
- + propertyName.getText(), false));
+
+ ontology.addAnnotationProperty(ontology.createOURI(nameSpace.getText()
+ + propertyName.getText()));
}
}
@@ -93,15 +107,17 @@
}
/**
- * Specifies the ontology that should be used to add/remove resource
- * to/from.
+ * Specifies the ontology that should be used to add/remove resource to/from.
*/
public void setOntology(Ontology ontology) {
this.ontology = ontology;
}
protected JPanel mainPanel;
+
protected JTextField nameSpace;
+
protected JTextField propertyName;
+
protected Ontology ontology;
}
Modified: gate/trunk/src/gate/gui/ontology/DatatypePropertyAction.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/DatatypePropertyAction.java
2012-01-22 09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/DatatypePropertyAction.java
2012-01-22 10:50:13 UTC (rev 15173)
@@ -13,14 +13,30 @@
*/
package gate.gui.ontology;
-import gate.creole.ontology.*;
+import gate.creole.ontology.DataType;
+import gate.creole.ontology.OClass;
+import gate.creole.ontology.OResource;
+import gate.creole.ontology.Ontology;
import gate.gui.MainFrame;
-import java.awt.*;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
+import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
-import java.util.*;
-import javax.swing.*;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+
+import javax.swing.AbstractAction;
+import javax.swing.DefaultComboBoxModel;
+import javax.swing.Icon;
+import javax.swing.JButton;
+import javax.swing.JComboBox;
+import javax.swing.JLabel;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
import javax.swing.tree.DefaultMutableTreeNode;
/**
@@ -84,7 +100,7 @@
DefaultMutableTreeNode node = selectedNodes.get(j);
OResource res = ((OResourceNode)node.getUserObject()).getResource();
if(res instanceof OClass) {
- arraylist.add(res.getURI().toString());
+ arraylist.add(res.getONodeID().toString());
}
}
String as1[] = new String[arraylist.size()];
@@ -138,8 +154,8 @@
}
DataType dt = DataType.getDataType((String)
datatypesComboBox.getSelectedItem());
- ontology.addDatatypeProperty(new URI(nameSpace.getText()
- + propertyName.getText(), false), hashset, dt);
+ ontology.addDatatypeProperty(ontology.createOURI(nameSpace.getText()
+ + propertyName.getText()), hashset, dt);
}
}
@@ -155,7 +171,7 @@
selectedNodes = arraylist;
}
- public ArrayList getOntologyClassesURIs() {
+ public List<String> getOntologyClassesURIs() {
return ontologyClassesURIs;
}
@@ -169,7 +185,7 @@
protected JButton domainButton;
protected JTextField propertyName;
protected ValuesSelectionAction domainAction;
- protected ArrayList<String> ontologyClassesURIs;
- protected ArrayList<DefaultMutableTreeNode> selectedNodes;
+ protected List<String> ontologyClassesURIs;
+ protected List<DefaultMutableTreeNode> selectedNodes;
protected Ontology ontology;
}
Modified: gate/trunk/src/gate/gui/ontology/DeleteOntologyResourceAction.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/DeleteOntologyResourceAction.java
2012-01-22 09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/DeleteOntologyResourceAction.java
2012-01-22 10:50:13 UTC (rev 15173)
@@ -13,12 +13,21 @@
*/
package gate.gui.ontology;
-import gate.creole.ontology.*;
+import gate.creole.ontology.OClass;
+import gate.creole.ontology.OInstance;
+import gate.creole.ontology.OResource;
+import gate.creole.ontology.Ontology;
+import gate.creole.ontology.RDFProperty;
import gate.gui.MainFrame;
import java.awt.event.ActionEvent;
import java.util.ArrayList;
-import javax.swing.*;
+
+import javax.swing.AbstractAction;
+import javax.swing.Icon;
+import javax.swing.JList;
+import javax.swing.JOptionPane;
+import javax.swing.JScrollPane;
import javax.swing.tree.DefaultMutableTreeNode;
/**
@@ -50,7 +59,7 @@
Object object = ((OResourceNode) node.getUserObject()).getResource();
try {
if (object instanceof OClass) {
- if (ontology.containsOClass(((OClass) object).getURI()))
+ if (ontology.containsOClass(((OClass) object).getONodeID()))
ontology.removeOClass((OClass) object);
continue;
}
@@ -61,7 +70,7 @@
}
if ((object instanceof RDFProperty)
&& Utils.getOResourceFromMap(ontology,
- ((RDFProperty) object).getURI().toString()) != null)
+ ((RDFProperty) object).getONodeID().toString()) != null)
ontology.removeProperty((RDFProperty) object);
}
catch (Exception re) {
Modified: gate/trunk/src/gate/gui/ontology/DetailsTableCellRenderer.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/DetailsTableCellRenderer.java
2012-01-22 09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/DetailsTableCellRenderer.java
2012-01-22 10:50:13 UTC (rev 15173)
@@ -13,10 +13,20 @@
*/
package gate.gui.ontology;
-import gate.creole.ontology.*;
+import gate.creole.ontology.AnnotationProperty;
+import gate.creole.ontology.DatatypeProperty;
+import gate.creole.ontology.OClass;
+import gate.creole.ontology.OInstance;
+import gate.creole.ontology.ObjectProperty;
+import gate.creole.ontology.RDFProperty;
+import gate.creole.ontology.Restriction;
+import gate.creole.ontology.SymmetricProperty;
+import gate.creole.ontology.TransitiveProperty;
import gate.gui.MainFrame;
+
import java.awt.Component;
-import javax.swing.*;
+
+import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
/**
@@ -64,19 +74,19 @@
OClass tclass = (OClass) value;
setIcon(MainFrame.getIcon("ontology-restriction"));
setText(tclass.getName());
- setToolTipText(tclass.getURI().toString());
+ setToolTipText(tclass.getONodeID().toString());
}
else if(value instanceof OClass) {
OClass tclass = (OClass) value;
setIcon(MainFrame.getIcon("ontology-class"));
setText(tclass.getName());
- setToolTipText(tclass.getURI().toString());
+ setToolTipText(tclass.getONodeID().toString());
}
else if(value instanceof OInstance) {
OInstance oinstance = (OInstance) value;
setIcon(MainFrame.getIcon("ontology-instance"));
setText(oinstance.getName());
- setToolTipText(oinstance.getURI().toString());
+ setToolTipText(oinstance.getONodeID().toString());
}
else if(value instanceof RDFProperty) {
RDFProperty property = (RDFProperty) value;
@@ -106,7 +116,7 @@
setText(s);
setToolTipText((new StringBuilder()).append(
"<HTML><b>" + propertyType + " Property</b><br>").append(
- property.getURI()).append("</html>").toString());
+ property.getONodeID()).append("</html>").toString());
}
else if(value instanceof PropertyValue) {
@@ -139,7 +149,7 @@
setText(s);
setToolTipText((new StringBuilder()).append(
"<HTML><b>" + propertyType + " Property Value</b><br>")
- .append(property.getProperty().getURI()).append("</html>")
+ .append(property.getProperty().getONodeID()).append("</html>")
.toString());
}
}
Modified: gate/trunk/src/gate/gui/ontology/DetailsTableModel.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/DetailsTableModel.java 2012-01-22
09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/DetailsTableModel.java 2012-01-22
10:50:13 UTC (rev 15173)
@@ -13,12 +13,28 @@
*/
package gate.gui.ontology;
-import gate.creole.ontology.*;
+import gate.creole.ontology.AnnotationProperty;
+import gate.creole.ontology.DatatypeProperty;
+import gate.creole.ontology.InvalidValueException;
+import gate.creole.ontology.Literal;
+import gate.creole.ontology.OClass;
+import gate.creole.ontology.OConstants;
+import gate.creole.ontology.OInstance;
+import gate.creole.ontology.OResource;
+import gate.creole.ontology.OValue;
+import gate.creole.ontology.ObjectProperty;
+import gate.creole.ontology.Ontology;
+import gate.creole.ontology.RDFProperty;
+import gate.creole.ontology.Restriction;
import gate.gui.MainFrame;
-import java.util.*;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import javax.swing.JOptionPane;
import javax.swing.table.AbstractTableModel;
-import javax.swing.*;
/**
* A DataModel that is created when a node is selected in the ontology
Modified: gate/trunk/src/gate/gui/ontology/InstanceAction.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/InstanceAction.java 2012-01-22
09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/InstanceAction.java 2012-01-22
10:50:13 UTC (rev 15173)
@@ -47,9 +47,9 @@
public void actionPerformed(ActionEvent actionevent) {
OResource selectedNode = ((OResourceNode)selectedNodes.get(0)
.getUserObject()).getResource();
- String ns = selectedNode.getURI().getNameSpace();
+ String ns = selectedNode.getONodeID().getNameSpace();
if(gate.creole.ontology.Utils.hasSystemNameSpace(
- selectedNode.getURI().toString())) {
+ selectedNode.getONodeID().toString())) {
ns = ontology.getDefaultNameSpace();
}
nameSpace.setText(ns);
@@ -89,8 +89,8 @@
Object obj = ((OResourceNode)selectedNodes.get(i)
.getUserObject()).getResource();
if(obj instanceof OClass) {
- ontology.addOInstance(new URI(nameSpace.getText()
- + instanceName.getText(), false), (OClass)obj);
+ ontology.addOInstance(ontology.createOURI(nameSpace.getText()
+ + instanceName.getText()), (OClass)obj);
}
}
}
Modified: gate/trunk/src/gate/gui/ontology/ObjectPropertyAction.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/ObjectPropertyAction.java 2012-01-22
09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/ObjectPropertyAction.java 2012-01-22
10:50:13 UTC (rev 15173)
@@ -59,7 +59,7 @@
if(((OResourceNode)defaultmutabletreenode.getUserObject())
.getResource() instanceof OClass)
arraylist.add((((OResourceNode)defaultmutabletreenode
- .getUserObject()).getResource()).getURI().toString());
+ .getUserObject()).getResource()).getONodeID().toString());
}
String as1[] = new String[arraylist.size()];
for(int k = 0; k < as1.length; k++)
@@ -127,8 +127,8 @@
Utils.getOResourceFromMap(ontology,rangeSelectedValue);
rangeSet.add(oclass);
}
- ontology.addObjectProperty(new URI(nameSpace.getText()
- + propertyName.getText(), false), domainSet, rangeSet);
+ ontology.addObjectProperty(ontology.createOURI(nameSpace.getText()
+ + propertyName.getText()), domainSet, rangeSet);
}
}
Modified: gate/trunk/src/gate/gui/ontology/OntoTreeCellRenderer.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/OntoTreeCellRenderer.java 2012-01-22
09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/OntoTreeCellRenderer.java 2012-01-22
10:50:13 UTC (rev 15173)
@@ -7,11 +7,21 @@
*/
package gate.gui.ontology;
-import gate.creole.ontology.*;
+import gate.creole.ontology.AnnotationProperty;
+import gate.creole.ontology.DatatypeProperty;
+import gate.creole.ontology.OClass;
+import gate.creole.ontology.OInstance;
+import gate.creole.ontology.OResource;
+import gate.creole.ontology.ObjectProperty;
+import gate.creole.ontology.RDFProperty;
+import gate.creole.ontology.Restriction;
+import gate.creole.ontology.SymmetricProperty;
+import gate.creole.ontology.TransitiveProperty;
import gate.gui.MainFrame;
import java.awt.Color;
import java.awt.Component;
+
import javax.swing.JTree;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeCellRenderer;
@@ -43,53 +53,53 @@
if(obj1 instanceof Restriction) {
icon = MainFrame.getIcon("ontology-restriction");
s = ((OClass)obj1).getName();
- if(((OClass)obj1).getURI().isAnonymousResource())
- setToolTipText(((OClass)obj1).getURI().toString()
+ if(((OClass)obj1).getONodeID().isAnonymousResource())
+ setToolTipText(((OClass)obj1).getONodeID().toString()
+ " is a restriction");
- else setToolTipText(((OClass)obj1).getURI().toString());
+ else setToolTipText(((OClass)obj1).getONodeID().toString());
}
else if(obj1 instanceof OClass) {
icon = MainFrame.getIcon("ontology-class");
s = ((OClass)obj1).getName();
- if(((OClass)obj1).getURI().isAnonymousResource())
- setToolTipText(((OClass)obj1).getURI().toString()
+ if(((OClass)obj1).getONodeID().isAnonymousResource())
+ setToolTipText(((OClass)obj1).getONodeID().toString()
+ " is an annonymous class");
- else setToolTipText(((OClass)obj1).getURI().toString());
+ else setToolTipText(((OClass)obj1).getONodeID().toString());
}
else if(obj1 instanceof OInstance) {
icon = MainFrame.getIcon("ontology-instance");
s = ((OInstance)obj1).getName();
- setToolTipText(((OInstance)obj1).getURI().toString());
+ setToolTipText(((OInstance)obj1).getONodeID().toString());
}
else if(obj1 instanceof AnnotationProperty) {
icon = MainFrame.getIcon("ontology-annotation-property");
s = ((AnnotationProperty)obj1).getName();
- setToolTipText(((AnnotationProperty)obj1).getURI().toString());
+ setToolTipText(((AnnotationProperty)obj1).getONodeID().toString());
}
else if(obj1 instanceof DatatypeProperty) {
icon = MainFrame.getIcon("ontology-datatype-property");
s = ((DatatypeProperty)obj1).getName();
- setToolTipText(((DatatypeProperty)obj1).getURI().toString());
+ setToolTipText(((DatatypeProperty)obj1).getONodeID().toString());
}
else if(obj1 instanceof SymmetricProperty) {
icon = MainFrame.getIcon("ontology-symmetric-property");
s = ((SymmetricProperty)obj1).getName();
- setToolTipText(((SymmetricProperty)obj1).getURI().toString());
+ setToolTipText(((SymmetricProperty)obj1).getONodeID().toString());
}
else if(obj1 instanceof TransitiveProperty) {
icon = MainFrame.getIcon("ontology-transitive-property");
s = ((TransitiveProperty)obj1).getName();
- setToolTipText(((TransitiveProperty)obj1).getURI().toString());
+ setToolTipText(((TransitiveProperty)obj1).getONodeID().toString());
}
else if(obj1 instanceof ObjectProperty) {
icon = MainFrame.getIcon("ontology-object-property");
s = ((ObjectProperty)obj1).getName();
- setToolTipText(((ObjectProperty)obj1).getURI().toString());
+ setToolTipText(((ObjectProperty)obj1).getONodeID().toString());
}
else if(obj1 instanceof RDFProperty) {
icon = MainFrame.getIcon("ontology-rdf-property");
s = ((RDFProperty)obj1).getName();
- setToolTipText(((RDFProperty)obj1).getURI().toString());
+ setToolTipText(((RDFProperty)obj1).getONodeID().toString());
}
if(icon != null) {
if(flag1)
Modified: gate/trunk/src/gate/gui/ontology/OntologyEditor.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/OntologyEditor.java 2012-01-22
09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/OntologyEditor.java 2012-01-22
10:50:13 UTC (rev 15173)
@@ -423,7 +423,7 @@
ValuesSelectionAction vsa = new ValuesSelectionAction();
String[] classArray = new String[classList.size()];
for(int i = 0; i < classArray.length; i++) {
- classArray[i] = classList.get(i).getURI().toString();
+ classArray[i] = classList.get(i).getONodeID().toString();
}
vsa.showGUI(candidate.getName() + " is equivalent to :",
classArray, new String[0], false, null);
@@ -457,7 +457,7 @@
ValuesSelectionAction vsa = new ValuesSelectionAction();
String[] instancesArray = new String[instancesList.size()];
for(int i = 0; i < instancesArray.length; i++) {
- instancesArray[i] = instancesList.get(i).getURI().toString();
+ instancesArray[i] =
instancesList.get(i).getONodeID().toString();
}
vsa.showGUI(candidate.getName() + " is same As :",
instancesArray, new String[0], false, null);
@@ -594,7 +594,7 @@
ValuesSelectionAction vsa = new ValuesSelectionAction();
String[] propArray = new String[props.size()];
for(int i = 0; i < propArray.length; i++) {
- propArray[i] = iter.next().getURI().toString();
+ propArray[i] = iter.next().getONodeID().toString();
}
vsa.showGUI(candidate.getName() + " is equivalent to :",
propArray, new String[0], false, null);
@@ -708,7 +708,7 @@
if(toSelect != null) {
treeToSelectIn.setSelectionPath(new TreePath(uri2TreeNodesListMap
- .get(toSelect.getURI().toString()).get(0).getPath()));
+
.get(toSelect.getONodeID().toString()).get(0).getPath()));
treeToSelectIn.scrollPathToVisible(treeToSelectIn
.getSelectionPath());
@@ -938,7 +938,7 @@
if(toSelect != null) {
treeToSelectIn.setSelectionPath(new TreePath(uri2TreeNodesListMap
- .get(toSelect.getURI().toString()).get(0).getPath()));
+
.get(toSelect.getONodeID().toString()).get(0).getPath()));
treeToSelectIn.scrollPathToVisible(treeToSelectIn
.getSelectionPath());
@@ -1090,7 +1090,7 @@
ArrayList<String> validInstances = new ArrayList<String>();
for (OInstance instance : instances) {
if (property.isValidRange(instance)) {
- validInstances.add(instance.getURI().toString());
+ validInstances.add(instance.getONodeID().toString());
}
}
ValuesSelectionAction vsa = new ValuesSelectionAction();
@@ -1282,7 +1282,7 @@
* @param comparator the Comparator used to sort the children.
*/
protected void addChidrenRec(DefaultMutableTreeNode parent,
- List<OResource> children, Comparator comparator) {
+ List<OResource> children, Comparator<OResource> comparator) {
for(OResource aChild : children) {
DefaultMutableTreeNode childNode = new DefaultMutableTreeNode(
new OResourceNode(aChild));
@@ -1292,16 +1292,16 @@
// tree
// nodes
ArrayList<DefaultMutableTreeNode> list = uri2TreeNodesListMap.get(aChild
- .getURI().toString());
+ .getONodeID().toString());
if(list == null) {
list = new ArrayList<DefaultMutableTreeNode>();
- uri2TreeNodesListMap.put(aChild.getURI().toString(), list);
+ uri2TreeNodesListMap.put(aChild.getONodeID().toString(), list);
}
list.add(childNode);
reverseMap.put(childNode, aChild.getONodeID());
if(aChild instanceof OClass) {
- if(!ontologyClassesURIs.contains(aChild.getURI().toString()))
- ontologyClassesURIs.add(aChild.getURI().toString());
+ if(!ontologyClassesURIs.contains(aChild.getONodeID().toString()))
+ ontologyClassesURIs.add(aChild.getONodeID().toString());
childNode.setAllowsChildren(true);
// add all the subclasses
OClass aClass = (OClass)aChild;
@@ -1331,7 +1331,7 @@
* @param comparator the Comparator used to sort the children.
*/
protected void addPropertyChidrenRec(DefaultMutableTreeNode parent,
- List<RDFProperty> children, Comparator comparator) {
+ List<RDFProperty> children, Comparator<OResource> comparator) {
for(RDFProperty aChild : children) {
DefaultMutableTreeNode childNode = new DefaultMutableTreeNode(
new OResourceNode(aChild));
@@ -1340,10 +1340,10 @@
// tree
// nodes
ArrayList<DefaultMutableTreeNode> list = uri2TreeNodesListMap.get(aChild
- .getURI().toString());
+ .getONodeID().toString());
if(list == null) {
list = new ArrayList<DefaultMutableTreeNode>();
- uri2TreeNodesListMap.put(aChild.getURI().toString(), list);
+ uri2TreeNodesListMap.put(aChild.getONodeID().toString(), list);
}
list.add(childNode);
reverseMap.put(childNode, aChild.getONodeID());
@@ -1386,7 +1386,7 @@
Collections.sort(cs, itemComparator);
for(OClass c : cs) {
ArrayList<DefaultMutableTreeNode> superNodeList = uri2TreeNodesListMap
- .get(c.getURI().toString());
+ .get(c.getONodeID().toString());
if(superNodeList == null) {
// this is a result of two classes being created as a result
// of only one addition
@@ -1436,7 +1436,7 @@
Collections.sort(sps, itemComparator);
for(RDFProperty r : sps) {
ArrayList<DefaultMutableTreeNode> superNodeList = uri2TreeNodesListMap
- .get(r.getURI().toString());
+ .get(r.getONodeID().toString());
for(int i = 0; i < superNodeList.size(); i++) {
DefaultMutableTreeNode node = superNodeList.get(i);
addPropertyChidrenRec(node, list, itemComparator);
@@ -1453,7 +1453,7 @@
*/
protected void instanceIsAdded(OInstance anInstance) {
ArrayList<DefaultMutableTreeNode> newList = uri2TreeNodesListMap
- .get(anInstance.getURI().toString());
+ .get(anInstance.getONodeID().toString());
if(newList != null) {
for(int i = 0; i < newList.size(); i++) {
DefaultMutableTreeNode node = newList.get(i);
@@ -1468,7 +1468,7 @@
while(iter.hasNext()) {
OClass aClass = iter.next();
ArrayList<DefaultMutableTreeNode> superNodeList = uri2TreeNodesListMap
- .get(aClass.getURI().toString());
+ .get(aClass.getONodeID().toString());
for(int i = 0; i < superNodeList.size(); i++) {
DefaultMutableTreeNode node = superNodeList.get(i);
addChidrenRec(node, list, itemComparator);
@@ -1480,7 +1480,7 @@
private void removeFromMap(DefaultTreeModel model, DefaultMutableTreeNode
node) {
if(!node.isLeaf()) {
Enumeration enumeration = node.children();
- ArrayList children = new ArrayList();
+ List children = new ArrayList();
while(enumeration.hasMoreElements()) {
children.add(enumeration.nextElement());
}
@@ -1505,7 +1505,7 @@
*/
protected void subPropertyIsAdded(RDFProperty p) {
ArrayList<DefaultMutableTreeNode> nodesList = uri2TreeNodesListMap.get(p
- .getURI().toString());
+ .getONodeID().toString());
// p is a property where the subProperty is added
// the property which is added as a subProperty might not have any
// super RDFProperty before
@@ -1515,7 +1515,7 @@
Collections.sort(ps, itemComparator);
for(RDFProperty subP : ps) {
ArrayList<DefaultMutableTreeNode> subNodesList = uri2TreeNodesListMap
- .get(subP.getURI().toString());
+ .get(subP.getONodeID().toString());
if(subNodesList != null) {
for(int i = 0; i < subNodesList.size(); i++) {
DefaultMutableTreeNode node = subNodesList.get(i);
@@ -1543,7 +1543,7 @@
*/
protected void subPropertyIsDeleted(RDFProperty p) {
ArrayList<DefaultMutableTreeNode> nodeList = uri2TreeNodesListMap.get(p
- .getURI().toString());
+ .getONodeID().toString());
if(nodeList == null || nodeList.isEmpty()) {
// this is already deleted
return;
@@ -1565,7 +1565,7 @@
List<RDFProperty> rps = new ArrayList<RDFProperty>(superProperties);
Collections.sort(rps, itemComparator);
for(RDFProperty superP : rps) {
- nodeList = uri2TreeNodesListMap.get(superP.getURI().toString());
+ nodeList = uri2TreeNodesListMap.get(superP.getONodeID().toString());
for(int i = 0; i < nodeList.size(); i++) {
DefaultMutableTreeNode superNode = nodeList.get(i);
addPropertyChidrenRec(superNode, list, itemComparator);
@@ -1586,7 +1586,7 @@
*/
protected void subClassIsAdded(OClass c) {
ArrayList<DefaultMutableTreeNode> nodesList = uri2TreeNodesListMap.get(c
- .getURI().toString());
+ .getONodeID().toString());
// c is a class where the subClass is added
// the class which is added as a subClass might not have any
// super Class before
@@ -1596,7 +1596,7 @@
Collections.sort(cs, itemComparator);
for(OClass subC : cs) {
ArrayList<DefaultMutableTreeNode> subNodesList = uri2TreeNodesListMap
- .get(subC.getURI().toString());
+ .get(subC.getONodeID().toString());
if(subNodesList != null) {
for(int i = 0; i < subNodesList.size(); i++) {
DefaultMutableTreeNode node = subNodesList.get(i);
@@ -1624,7 +1624,7 @@
*/
protected void subClassIsDeleted(OClass c) {
ArrayList<DefaultMutableTreeNode> nodeList = uri2TreeNodesListMap.get(c
- .getURI().toString());
+ .getONodeID().toString());
if(nodeList == null || nodeList.isEmpty()) {
// this is already deleted
return;
@@ -1683,7 +1683,7 @@
List<OClass> cs = new ArrayList<OClass>(superClasses);
Collections.sort(cs, itemComparator);
for(OClass superC : cs) {
- nodeList = uri2TreeNodesListMap.get(superC.getURI().toString());
+ nodeList = uri2TreeNodesListMap.get(superC.getONodeID().toString());
for(int i = 0; i < nodeList.size(); i++) {
DefaultMutableTreeNode superNode = nodeList.get(i);
addChidrenRec(superNode, list, itemComparator);
@@ -1729,10 +1729,7 @@
else {
probableParentNode = (DefaultMutableTreeNode)aNode.getParent();
}
-
- final DefaultMutableTreeNode parentNode = probableParentNode;
- final ONodeID parentURI = reverseMap.get(parentNode);
-
+
SwingUtilities.invokeLater(new Runnable() {
public void run() {
// first hide the tree
@@ -1797,10 +1794,10 @@
DefaultMutableTreeNode dmtn =
(DefaultMutableTreeNode)en
.nextElement();
String toCompare =
((OResourceNode)dmtn.getUserObject())
- .getResource().getURI().toString();
+ .getResource().getONodeID().toString();
List<OResource> delete = new ArrayList<OResource>();
for(OResource aRes : children) {
- if(toCompare.equals(aRes.getURI().toString())) {
+ if(toCompare.equals(aRes.getONodeID().toString())) {
delete.add(aRes);
}
}
@@ -1825,10 +1822,10 @@
DefaultMutableTreeNode dmtn =
(DefaultMutableTreeNode)en
.nextElement();
String toCompare =
((OResourceNode)dmtn.getUserObject())
- .getResource().getURI().toString();
+ .getResource().getONodeID().toString();
List<OResource> delete = new ArrayList<OResource>();
for(OResource aRes : children) {
- if(toCompare.equals(aRes.getURI().toString())) {
+ if(toCompare.equals(aRes.getONodeID().toString())) {
delete.add(aRes);
}
}
@@ -1850,10 +1847,10 @@
.nextElement();
if(dmtn.getLevel() != 1) continue;
String toCompare =
((OResourceNode)dmtn.getUserObject())
- .getResource().getURI().toString();
+ .getResource().getONodeID().toString();
List<OResource> delete = new ArrayList<OResource>();
for(OResource aRes : children) {
- if(toCompare.equals(aRes.getURI().toString())) {
+ if(toCompare.equals(aRes.getONodeID().toString())) {
delete.add(aRes);
}
}
@@ -1891,10 +1888,10 @@
.nextElement();
if(dmtn.getLevel() != 1) continue;
String toCompare =
((OResourceNode)dmtn.getUserObject())
- .getResource().getURI().toString();
+ .getResource().getONodeID().toString();
List<OResource> delete = new ArrayList<OResource>();
for(OResource aRes : subList) {
- if(toCompare.equals(aRes.getURI().toString())) {
+ if(toCompare.equals(aRes.getONodeID().toString())) {
delete.add(aRes);
}
}
@@ -1947,12 +1944,12 @@
if(isItTree) {
DefaultMutableTreeNode aNode = uri2TreeNodesListMap.get(
- resource.getURI().toString()).get(0);
+ resource.getONodeID().toString()).get(0);
tree.setSelectionPath(new TreePath(aNode.getPath()));
}
else {
DefaultMutableTreeNode aNode = uri2TreeNodesListMap.get(
- resource.getURI().toString()).get(0);
+ resource.getONodeID().toString()).get(0);
propertyTree.setSelectionPath(new TreePath(aNode.getPath()));
}
return;
@@ -2014,13 +2011,13 @@
if(isItTree) {
tree.setSelectionPath(path);
DefaultMutableTreeNode aNode = uri2TreeNodesListMap.get(
- resource.getURI().toString()).get(0);
+ resource.getONodeID().toString()).get(0);
tree.setSelectionPath(new TreePath(aNode.getPath()));
}
else {
propertyTree.setSelectionPath(path);
DefaultMutableTreeNode aNode = uri2TreeNodesListMap.get(
- resource.getURI().toString()).get(0);
+ resource.getONodeID().toString()).get(0);
propertyTree.setSelectionPath(new TreePath(aNode.getPath()));
}
}
@@ -2255,7 +2252,7 @@
SwingUtilities.invokeLater(new Runnable() { public void run() {
tabbedPane.setSelectedComponent(scroller);
tree.setSelectionPath(new TreePath(uri2TreeNodesListMap.get(
- resource.getURI().toString()).get(0).getPath()));
+ resource.getONodeID().toString()).get(0).getPath()));
tree.scrollPathToVisible(tree.getSelectionPath());
}});
}
Modified: gate/trunk/src/gate/gui/ontology/OntologyItemComparator.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/OntologyItemComparator.java
2012-01-22 09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/OntologyItemComparator.java
2012-01-22 10:50:13 UTC (rev 15173)
@@ -21,8 +21,8 @@
public int compare(OResource resource1, OResource resource2) {
if (resource1 == null) return (resource2 != null) ? -1 : 0;
if (resource2 == null) return 1;
- String name1 = resource1.getURI().getResourceName();
- String name2 = resource2.getURI().getResourceName();
+ String name1 = resource1.getONodeID().getResourceName();
+ String name2 = resource2.getONodeID().getResourceName();
if (name1 == null) return (name2 != null) ? -1 : 0;
if (name2 == null) return 1;
else return name1.compareTo(name2);
Modified: gate/trunk/src/gate/gui/ontology/PropertyDetailsTableCellRenderer.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/PropertyDetailsTableCellRenderer.java
2012-01-22 09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/PropertyDetailsTableCellRenderer.java
2012-01-22 10:50:13 UTC (rev 15173)
@@ -68,7 +68,7 @@
setIcon(MainFrame.getIcon("ontology-restriction"));
setFont(getFont().deriveFont(0));
setText(tclass.getName());
- setToolTipText(tclass.getURI().toString());
+ setToolTipText(tclass.getONodeID().toString());
setEnabled(true);
}
else if(obj instanceof OClass) {
@@ -76,7 +76,7 @@
setIcon(MainFrame.getIcon("ontology-class"));
setFont(getFont().deriveFont(0));
setText(tclass.getName());
- setToolTipText(tclass.getURI().toString());
+ setToolTipText(tclass.getONodeID().toString());
setEnabled(true);
}
else if(obj instanceof OInstance) {
@@ -84,7 +84,7 @@
setIcon(MainFrame.getIcon("ontology-instance"));
setFont(getFont().deriveFont(0));
setText(oinstance.getName());
- setToolTipText(oinstance.getURI().toString());
+ setToolTipText(oinstance.getONodeID().toString());
setEnabled(true);
}
else if(obj instanceof RDFProperty) {
@@ -118,7 +118,7 @@
setText(s);
setToolTipText((new StringBuilder()).append(
"<HTML><b>" + propertyType + " Property</b><br>").append(
- property.getURI()).append("</html>").toString());
+ property.getONodeID()).append("</html>").toString());
setEnabled(true);
}
else if(obj instanceof PropertyValue) {
@@ -154,7 +154,7 @@
setText(s);
setToolTipText((new StringBuilder()).append(
"<HTML><b>" + propertyType + " Property Value</b><br>")
- .append(property.getProperty().getURI()).append("</html>")
+
.append(property.getProperty().getONodeID()).append("</html>")
.toString());
setEnabled(true);
}
Modified: gate/trunk/src/gate/gui/ontology/PropertyDetailsTableModel.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/PropertyDetailsTableModel.java
2012-01-22 09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/PropertyDetailsTableModel.java
2012-01-22 10:50:13 UTC (rev 15173)
@@ -79,8 +79,6 @@
}
public boolean isCellEditable(int i, int j) {
- Object obj = getItemForRow(i);
- //if(obj instanceof PropertyValue && j == 2) return true;
return false;
}
@@ -139,7 +137,7 @@
resourceInfo.getValues().clear();
resourceInfo.getValues().add(property);
- resourceInfo.getValues().add(new KeyValuePair(property, "URI",
property.getURI().toString(), false));
+ resourceInfo.getValues().add(new KeyValuePair(property, "URI",
property.getONodeID().toString(), false));
Set<RDFProperty> dprops = property.getPropertiesWithResourceAsDomain();
propertyTypes.getValues().addAll(dprops);
Modified: gate/trunk/src/gate/gui/ontology/SearchAction.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/SearchAction.java 2012-01-22 09:46:41 UTC
(rev 15172)
+++ gate/trunk/src/gate/gui/ontology/SearchAction.java 2012-01-22 10:50:13 UTC
(rev 15173)
@@ -209,7 +209,7 @@
if(selectedR instanceof RDFProperty) {
ontologyEditor.propertyTree.setSelectionPath(new TreePath(
ontologyEditor.uri2TreeNodesListMap.get(
- selectedR.getURI().toString()).get(0).getPath()));
+ selectedR.getONodeID().toString()).get(0).getPath()));
ontologyEditor.propertyTree
.scrollPathToVisible(ontologyEditor.propertyTree
.getSelectionPath());
@@ -219,7 +219,7 @@
else {
ontologyEditor.tree.setSelectionPath(new TreePath(
ontologyEditor.uri2TreeNodesListMap.get(
- selectedR.getURI().toString()).get(0).getPath()));
+ selectedR.getONodeID().toString()).get(0).getPath()));
ontologyEditor.tree.scrollPathToVisible(ontologyEditor.tree
.getSelectionPath());
ontologyEditor.tabbedPane.setSelectedComponent(ontologyEditor.scroller);
Modified: gate/trunk/src/gate/gui/ontology/SubClassAction.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/SubClassAction.java 2012-01-22
09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/SubClassAction.java 2012-01-22
10:50:13 UTC (rev 15173)
@@ -47,9 +47,9 @@
public void actionPerformed(ActionEvent actionevent) {
OResource selectedNode = ((OResourceNode)selectedNodes.get(0)
.getUserObject()).getResource();
- String ns = selectedNode.getURI().getNameSpace();
+ String ns = selectedNode.getONodeID().getNameSpace();
if(gate.creole.ontology.Utils.hasSystemNameSpace(
- selectedNode.getURI().toString())) {
+ selectedNode.getONodeID().toString())) {
ns = ontology.getDefaultNameSpace();
}
nameSpace.setText(ns);
@@ -91,8 +91,8 @@
return;
}
- OClass oclassimpl = ontology.addOClass(new URI(s + className.getText(),
- false), OConstants.OWL_CLASS);
+ OClass oclassimpl =
+ ontology.addOClass(ontology.createOURI(s + className.getText()));
for(int k = 0; k < arraylist.size(); k++) {
(arraylist.get(k)).addSubClass(oclassimpl);
}
Modified: gate/trunk/src/gate/gui/ontology/SymmetricPropertyAction.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/SymmetricPropertyAction.java
2012-01-22 09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/SymmetricPropertyAction.java
2012-01-22 10:50:13 UTC (rev 15173)
@@ -58,7 +58,7 @@
if(((OResourceNode)defaultmutabletreenode.getUserObject())
.getResource() instanceof OClass)
arraylist.add((((OResourceNode)defaultmutabletreenode
- .getUserObject()).getResource()).getURI().toString());
+ .getUserObject()).getResource()).getONodeID().toString());
}
String as1[] = new String[arraylist.size()];
for(int k = 0; k < as1.length; k++)
@@ -110,8 +110,8 @@
Utils.getOResourceFromMap(ontology,domainSelectedValues[j]);
domainSet.add(oclass);
}
- ontology.addSymmetricProperty(new URI(nameSpace.getText()
- + propertyName.getText(), false), domainSet);
+ ontology.addSymmetricProperty(ontology.createOURI(nameSpace.getText()
+ + propertyName.getText()), domainSet);
}
}
Modified: gate/trunk/src/gate/gui/ontology/TopClassAction.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/TopClassAction.java 2012-01-22
09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/TopClassAction.java 2012-01-22
10:50:13 UTC (rev 15173)
@@ -72,8 +72,7 @@
"Resource <b>" + s+className.getText() + "</b> already exists.");
return;
}
- ontology.addOClass(new URI(nameSpace.getText() + className.getText(),
- false), OConstants.OWL_CLASS);
+ ontology.addOClass(ontology.createOURI(nameSpace.getText() +
className.getText()));
}
}
Modified: gate/trunk/src/gate/gui/ontology/TransitivePropertyAction.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/TransitivePropertyAction.java
2012-01-22 09:46:41 UTC (rev 15172)
+++ gate/trunk/src/gate/gui/ontology/TransitivePropertyAction.java
2012-01-22 10:50:13 UTC (rev 15173)
@@ -59,7 +59,7 @@
if(((OResourceNode)defaultmutabletreenode.getUserObject())
.getResource() instanceof OClass)
arraylist.add((((OResourceNode)defaultmutabletreenode
- .getUserObject()).getResource()).getURI().toString());
+ .getUserObject()).getResource()).getONodeID().toString());
}
String as1[] = new String[arraylist.size()];
for(int k = 0; k < as1.length; k++)
@@ -127,8 +127,8 @@
ontology,rangeSelectedValues[j]);
rangeSet.add(oclass);
}
- ontology.addTransitiveProperty(new URI(nameSpace.getText()
- + propertyName.getText(), false), domainSet, rangeSet);
+ ontology.addTransitiveProperty(ontology.createOURI(nameSpace.getText()
+ + propertyName.getText()), domainSet, rangeSet);
}
}
Modified: gate/trunk/src/gate/gui/ontology/Utils.java
===================================================================
--- gate/trunk/src/gate/gui/ontology/Utils.java 2012-01-22 09:46:41 UTC (rev
15172)
+++ gate/trunk/src/gate/gui/ontology/Utils.java 2012-01-22 10:50:13 UTC (rev
15173)
@@ -109,18 +109,18 @@
toAdd.add(new KeyValuePair(res, "DATATYPE", datatypeString, false));
toAdd.add(new KeyValuePair(res, "VALUE", valueString, true));
} else {
- valueString = ((OResource)value).getURI().toString();
+ valueString = ((OResource)value).getONodeID().toString();
toAdd.add(new KeyValuePair((OResource)value, "VALUE", valueString,
false));
}
}
else if(res instanceof AllValuesFromRestriction) {
- valueString = ((AllValuesFromRestriction)res).getHasValue().getURI()
+ valueString =
((AllValuesFromRestriction)res).getHasValue().getONodeID()
.toString();
toAdd.add(new KeyValuePair(((AllValuesFromRestriction)res)
.getHasValue(), "VALUE", valueString, false));
}
else if(res instanceof SomeValuesFromRestriction) {
- valueString = ((SomeValuesFromRestriction)res).getHasValue().getURI()
+ valueString =
((SomeValuesFromRestriction)res).getHasValue().getONodeID()
.toString();
toAdd.add(new KeyValuePair(((SomeValuesFromRestriction)res)
.getHasValue(), "VALUE", valueString, false));
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Try before you buy = See our experts in action!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-dev2
_______________________________________________
GATE-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gate-cvs