From: <lor...@us...> - 2008-07-15 16:44:30
|
Revision: 1009 http://dl-learner.svn.sourceforge.net/dl-learner/?rev=1009&view=rev Author: lorenz_b Date: 2008-07-15 09:44:26 -0700 (Tue, 15 Jul 2008) Log Message: ----------- added method toManchesterSyntaxString() to class individual fixed some bugs in wizard view Modified Paths: -------------- trunk/src/dl-learner/org/dllearner/core/owl/Individual.java trunk/src/dl-learner/org/dllearner/tools/ore/ColorListCellRenderer.java trunk/src/dl-learner/org/dllearner/tools/ore/ColumnListCellRenderer.java trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionLabel.java trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionMenuItem.java trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionPanel.java trunk/src/dl-learner/org/dllearner/tools/ore/IntroductionPanel.java trunk/src/dl-learner/org/dllearner/tools/ore/IntroductionPanelDescriptor.java trunk/src/dl-learner/org/dllearner/tools/ore/KnowledgeSourcePanel.java trunk/src/dl-learner/org/dllearner/tools/ore/KnowledgeSourcePanelDescriptor.java trunk/src/dl-learner/org/dllearner/tools/ore/LearningPanel.java trunk/src/dl-learner/org/dllearner/tools/ore/LearningPanelDescriptor.java trunk/src/dl-learner/org/dllearner/tools/ore/LeftPanel.java trunk/src/dl-learner/org/dllearner/tools/ore/Main.java trunk/src/dl-learner/org/dllearner/tools/ore/ORE.java trunk/src/dl-learner/org/dllearner/tools/ore/OntologyModifierOWLAPI.java trunk/src/dl-learner/org/dllearner/tools/ore/RepairPanel.java trunk/src/dl-learner/org/dllearner/tools/ore/RepairPanelDescriptor.java trunk/src/dl-learner/org/dllearner/tools/ore/StatsPanel.java trunk/src/dl-learner/org/dllearner/tools/ore/UndoLabel.java trunk/src/dl-learner/org/dllearner/tools/ore/Wizard.java trunk/src/dl-learner/org/dllearner/tools/ore/WizardController.java trunk/src/dl-learner/org/dllearner/tools/ore/WizardPanelDescriptor.java Added Paths: ----------- trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelOWL.java trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelOWLDescriptor.java trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelSparql.java trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelSparqlDescriptor.java trunk/src/dl-learner/org/dllearner/tools/ore/RepairDialog.java trunk/src/dl-learner/org/dllearner/tools/ore/StatsLabel.java trunk/src/dl-learner/org/dllearner/tools/ore/all_test.owl trunk/src/dl-learner/org/dllearner/tools/ore/father3.owl trunk/src/dl-learner/org/dllearner/tools/ore/father_disjoint.owl trunk/src/dl-learner/org/dllearner/tools/ore/father_inverse_property.owl trunk/src/dl-learner/org/dllearner/tools/ore/father_neg.owl trunk/src/dl-learner/org/dllearner/tools/ore/father_new.owl trunk/src/dl-learner/org/dllearner/tools/ore/father_property.owl trunk/src/dl-learner/org/dllearner/tools/ore/father_wrong.owl trunk/src/dl-learner/org/dllearner/tools/ore/incohaerent.owl trunk/src/dl-learner/org/dllearner/tools/ore/neg_has_all.owl trunk/src/dl-learner/org/dllearner/tools/ore/neg_has_some.owl trunk/src/dl-learner/org/dllearner/tools/ore/pos_b.owl trunk/src/dl-learner/org/dllearner/tools/ore/pos_has_all.owl Removed Paths: ------------- trunk/src/dl-learner/org/dllearner/tools/ore/ConceptPanel.java trunk/src/dl-learner/org/dllearner/tools/ore/ConceptPanelDescriptor.java trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionButton.java trunk/src/dl-learner/org/dllearner/tools/ore/MoveMenuItem.java trunk/src/dl-learner/org/dllearner/tools/ore/NegExampleRepairDialog.java trunk/src/dl-learner/org/dllearner/tools/ore/Neu_006.gif trunk/src/dl-learner/org/dllearner/tools/ore/inkohaerent.owl Modified: trunk/src/dl-learner/org/dllearner/core/owl/Individual.java =================================================================== --- trunk/src/dl-learner/org/dllearner/core/owl/Individual.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/core/owl/Individual.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -67,6 +67,10 @@ return "\"" + Helper.getAbbreviatedString(name, baseURI, prefixes) + "\""; } + public String toManchesterSyntaxString(String baseURI, Map<String, String> prefixes) { + return Helper.getAbbreviatedString(name, baseURI, prefixes); + } + public void accept(KBElementVisitor visitor) { visitor.visit(this); } Copied: trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelOWL.java (from rev 1006, trunk/src/dl-learner/org/dllearner/tools/ore/ConceptPanel.java) =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelOWL.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelOWL.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -0,0 +1,112 @@ +package org.dllearner.tools.ore; + +import java.awt.BorderLayout; +import java.awt.Dimension; +import java.awt.geom.Ellipse2D; +import java.awt.geom.RoundRectangle2D; + +import javax.swing.DefaultListModel; +import javax.swing.JLabel; +import javax.swing.JList; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.event.ListSelectionListener; + +import org.jdesktop.swingx.JXBusyLabel; +import org.jdesktop.swingx.icon.EmptyIcon; +import org.jdesktop.swingx.painter.BusyPainter; + + +public class ClassPanelOWL extends JPanel{ + + private static final long serialVersionUID = 3026319637264844550L; + + private javax.swing.JList conceptList; + + private JPanel contentPanel; + + private DefaultListModel model; + private JXBusyLabel loadingLabel; + private JLabel statusLabel; + + @SuppressWarnings("unchecked") + public ClassPanelOWL() { + + super(); + + model = new DefaultListModel(); + loadingLabel = new JXBusyLabel(new Dimension(15,15)); + statusLabel = new JLabel(); + + + BusyPainter painter = new BusyPainter( + new RoundRectangle2D.Float(0, 0,6.0f,2.6f,10.0f,10.0f), + new Ellipse2D.Float(2.0f,2.0f,11.0f,11.0f)); + painter.setTrailLength(2); + painter.setPoints(7); + painter.setFrame(-1); + loadingLabel.setPreferredSize(new Dimension(15,15)); + loadingLabel.setIcon(new EmptyIcon(15,15)); + loadingLabel.setBusyPainter(painter); + + + + JPanel labelPanel = new JPanel(); + labelPanel.add(loadingLabel); + labelPanel.add(statusLabel); + + + contentPanel = getContentPanel(); + setLayout(new java.awt.BorderLayout()); + add(contentPanel,BorderLayout.CENTER); + add(labelPanel, BorderLayout.SOUTH); + } + + private JPanel getContentPanel() { + + JPanel contentPanel1 = new JPanel(); + JScrollPane scroll = new JScrollPane(); + + + conceptList = new JList(model); + scroll.setPreferredSize(new Dimension(400,400)); + scroll.setViewportView(conceptList); + contentPanel1.add(scroll); + + + + return contentPanel1; + } + + public DefaultListModel getModel(){ + return model; + } + + public void setModel(DefaultListModel dm){ + conceptList.setModel(dm); + } + + public void addSelectionListener(ListSelectionListener l){ + conceptList.addListSelectionListener(l); + } + + public JList getList(){ + return conceptList; + } + + + public JLabel getStatusLabel() { + return statusLabel; + } + + public JXBusyLabel getLoadingLabel() { + return loadingLabel; + } + + + + + + + +} \ No newline at end of file Property changes on: trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelOWL.java ___________________________________________________________________ Name: svn:mergeinfo + Copied: trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelOWLDescriptor.java (from rev 1006, trunk/src/dl-learner/org/dllearner/tools/ore/ConceptPanelDescriptor.java) =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelOWLDescriptor.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelOWLDescriptor.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -0,0 +1,70 @@ +package org.dllearner.tools.ore; + +import javax.swing.event.ListSelectionEvent; +import javax.swing.event.ListSelectionListener; + +import org.dllearner.core.owl.NamedClass; + + + + +public class ClassPanelOWLDescriptor extends WizardPanelDescriptor implements ListSelectionListener{ + + public static final String IDENTIFIER = "CLASS_CHOOSE_OWL_PANEL"; + public static final String INFORMATION = "In this panel all atomic classes in the ontology are shown in the list above. " + + "Select one of them which should be (re)learned from then press \"Next-Button\""; + + ClassPanelOWL panel3; + + public ClassPanelOWLDescriptor() { + panel3 = new ClassPanelOWL(); + panel3.addSelectionListener(this); + + setPanelDescriptorIdentifier(IDENTIFIER); + setPanelComponent(panel3); + + } + + @Override + public Object getNextPanelDescriptor() { + return LearningPanelDescriptor.IDENTIFIER; + } + + @Override + public Object getBackPanelDescriptor() { + return KnowledgeSourcePanelDescriptor.IDENTIFIER; + } + + @Override + public void aboutToDisplayPanel() { + getWizard().getInformationField().setText(INFORMATION); + setNextButtonAccordingToConceptSelected(); + } + + + public void valueChanged(ListSelectionEvent e) { + setNextButtonAccordingToConceptSelected(); + if (!e.getValueIsAdjusting()) + getWizardModel().getOre().setConcept((NamedClass)panel3.getList().getSelectedValue()); + + } + + private void setNextButtonAccordingToConceptSelected() { + + if (panel3.getList().getSelectedValue()!= null){ + getWizard().setNextFinishButtonEnabled(true); + }else{ + getWizard().setNextFinishButtonEnabled(false); + } + + } + + + + + + + + + +} Property changes on: trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelOWLDescriptor.java ___________________________________________________________________ Name: svn:mergeinfo + Added: trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelSparql.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelSparql.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelSparql.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -0,0 +1,88 @@ +package org.dllearner.tools.ore; + +import java.awt.BorderLayout; +import java.awt.Dimension; +import java.awt.geom.Ellipse2D; +import java.awt.geom.RoundRectangle2D; + +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; + +import org.jdesktop.swingx.JXBusyLabel; +import org.jdesktop.swingx.icon.EmptyIcon; +import org.jdesktop.swingx.painter.BusyPainter; + + +public class ClassPanelSparql extends JPanel{ + + private static final long serialVersionUID = 3026319637264844550L; + + private JTextField classField; + + private JPanel contentPanel; + + private JXBusyLabel loadingLabel; + private JLabel statusLabel; + + @SuppressWarnings("unchecked") + public ClassPanelSparql() { + + super(); + + statusLabel = new JLabel(); + + loadingLabel = new JXBusyLabel(new Dimension(15,15)); + BusyPainter painter = new BusyPainter( + new RoundRectangle2D.Float(0, 0,6.0f,2.6f,10.0f,10.0f), + new Ellipse2D.Float(2.0f,2.0f,11.0f,11.0f)); + painter.setTrailLength(2); + painter.setPoints(7); + painter.setFrame(-1); + loadingLabel.setPreferredSize(new Dimension(15,15)); + loadingLabel.setIcon(new EmptyIcon(15,15)); + loadingLabel.setBusyPainter(painter); + + + JPanel labelPanel = new JPanel(); + labelPanel.add(loadingLabel); + labelPanel.add(statusLabel); + + contentPanel = getContentPanel(); + setLayout(new java.awt.BorderLayout()); + add(contentPanel,BorderLayout.CENTER); + add(labelPanel, BorderLayout.SOUTH); + } + + private JPanel getContentPanel() { + + JPanel contentPanel = new JPanel(); + + classField = new JTextField(); + + contentPanel.add(classField); + + return contentPanel; + } + + + public JTextField getClassField(){ + return classField; + } + + + public JLabel getStatusLabel() { + return statusLabel; + } + + public JXBusyLabel getLoadingLabel() { + return loadingLabel; + } + + + + + + + +} \ No newline at end of file Added: trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelSparqlDescriptor.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelSparqlDescriptor.java (rev 0) +++ trunk/src/dl-learner/org/dllearner/tools/ore/ClassPanelSparqlDescriptor.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -0,0 +1,51 @@ +package org.dllearner.tools.ore; + + + + + +public class ClassPanelSparqlDescriptor extends WizardPanelDescriptor{ + + public static final String IDENTIFIER = "CLASS_CHOOSE_SPARQL_PANEL"; + public static final String INFORMATION = "In this panel all atomic classes in the ontology are shown in the list above. " + + "Select one of them which should be (re)learned from then press \"Next-Button\""; + + ClassPanelSparql panel3; + + public ClassPanelSparqlDescriptor() { + panel3 = new ClassPanelSparql(); + + + setPanelDescriptorIdentifier(IDENTIFIER); + setPanelComponent(panel3); + + } + + @Override + public Object getNextPanelDescriptor() { + return LearningPanelDescriptor.IDENTIFIER; + } + + @Override + public Object getBackPanelDescriptor() { + return KnowledgeSourcePanelDescriptor.IDENTIFIER; + } + + @Override + public void aboutToDisplayPanel() { + getWizard().getInformationField().setText(INFORMATION); + + } + + + + + + + + + + + + +} Modified: trunk/src/dl-learner/org/dllearner/tools/ore/ColorListCellRenderer.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/ColorListCellRenderer.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/ColorListCellRenderer.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -7,18 +7,27 @@ import javax.swing.JList; import javax.swing.ListCellRenderer; +import org.dllearner.core.owl.Individual; +import org.dllearner.core.owl.NamedClass; + public class ColorListCellRenderer extends JLabel implements ListCellRenderer { private static final long serialVersionUID = -7592805113197759247L; - - public ColorListCellRenderer() { + private ORE ore; + + public ColorListCellRenderer(ORE ore) { setOpaque(true); + this.ore = ore; } public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { - - setText(value.toString()); + + if(value instanceof NamedClass) + setText(((NamedClass)value).toManchesterSyntaxString(ore.getBaseURI(), ore.getPrefixes())); + else if(value instanceof Individual) + setText(((Individual)value).toManchesterSyntaxString(ore.getBaseURI(), ore.getPrefixes())); + Color background; Color foreground; @@ -28,8 +37,8 @@ } else if(isSelected){ - background = Color.BLUE; - foreground = Color.WHITE; + background = Color.LIGHT_GRAY; + foreground = Color.BLACK; }else{ background = Color.WHITE; foreground = Color.BLACK; Modified: trunk/src/dl-learner/org/dllearner/tools/ore/ColumnListCellRenderer.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/ColumnListCellRenderer.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/ColumnListCellRenderer.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -1,8 +1,10 @@ package org.dllearner.tools.ore; -import java.awt.BorderLayout; import java.awt.Color; import java.awt.Component; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.Insets; import javax.swing.JLabel; import javax.swing.JList; @@ -24,18 +26,18 @@ public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { + removeAll(); + JLabel cor = new JLabel(); JLabel desc = new JLabel(); - setLayout(new BorderLayout()); - - - desc.setText(value.toString()); - cor.setText( (ore.getCorrectness((Description)value)).toString()); - - add(cor, BorderLayout.WEST); - add(desc, BorderLayout.EAST); - + setLayout(new GridBagLayout()); + desc.setText(((Description) value).toManchesterSyntaxString( + ore.getBaseURI(), ore.getPrefixes())); + cor.setText((ore.getCorrectness((Description) value)).toString()); + add(cor,new GridBagConstraints(0, 0, 1, 1, 0.1, 0.0, GridBagConstraints.LINE_END, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0));//, BorderLayout.WEST); + add(desc,new GridBagConstraints(1, 0, 1, 1, 0.8, 0.0, GridBagConstraints.LINE_START, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0));//, BorderLayout.EAST); + Color background; Color foreground; @@ -45,7 +47,7 @@ } else if(isSelected){ - background = Color.BLUE; + background = Color.LIGHT_GRAY; foreground = Color.WHITE; }else{ background = Color.WHITE; Deleted: trunk/src/dl-learner/org/dllearner/tools/ore/ConceptPanel.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/ConceptPanel.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/ConceptPanel.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -1,113 +0,0 @@ -package org.dllearner.tools.ore; - -import java.awt.BorderLayout; -import java.awt.Dimension; -import java.awt.geom.Ellipse2D; -import java.awt.geom.RoundRectangle2D; - -import javax.swing.DefaultListModel; -import javax.swing.JLabel; -import javax.swing.JList; -import javax.swing.JPanel; -import javax.swing.JScrollPane; -import javax.swing.event.ListSelectionListener; - -import org.jdesktop.swingx.JXBusyLabel; -import org.jdesktop.swingx.icon.EmptyIcon; -import org.jdesktop.swingx.painter.BusyPainter; - - -public class ConceptPanel extends JPanel{ - - private static final long serialVersionUID = 3026319637264844550L; - - private javax.swing.JList conceptList; - - private JPanel contentPanel; - - private DefaultListModel model; - private JXBusyLabel loadingLabel; - private JLabel statusLabel; - - @SuppressWarnings("unchecked") - public ConceptPanel() { - - super(); - - model = new DefaultListModel(); - loadingLabel = new JXBusyLabel(new Dimension(15,15)); - statusLabel = new JLabel(); - - - BusyPainter painter = new BusyPainter( - new RoundRectangle2D.Float(0, 0,6.0f,2.6f,10.0f,10.0f), - new Ellipse2D.Float(2.0f,2.0f,11.0f,11.0f)); - painter.setTrailLength(2); - painter.setPoints(7); - painter.setFrame(-1); - loadingLabel.setPreferredSize(new Dimension(15,15)); - loadingLabel.setIcon(new EmptyIcon(15,15)); - loadingLabel.setBusyPainter(painter); - - - - JPanel labelPanel = new JPanel(); - labelPanel.add(loadingLabel); - labelPanel.add(statusLabel); - - - contentPanel = getContentPanel(); - setLayout(new java.awt.BorderLayout()); - add(contentPanel,BorderLayout.CENTER); - add(labelPanel, BorderLayout.SOUTH); - } - - private JPanel getContentPanel() { - - JPanel contentPanel1 = new JPanel(); - JScrollPane scroll = new JScrollPane(); - - - conceptList = new JList(model); - conceptList.setCellRenderer(new ColorListCellRenderer()); - scroll.setPreferredSize(new Dimension(400,400)); - scroll.setViewportView(conceptList); - contentPanel1.add(scroll); - - - - return contentPanel1; - } - - public DefaultListModel getModel(){ - return model; - } - - public void setModel(DefaultListModel dm){ - conceptList.setModel(dm); - } - - public void addSelectionListener(ListSelectionListener l){ - conceptList.addListSelectionListener(l); - } - - public JList getList(){ - return conceptList; - } - - - public JLabel getStatusLabel() { - return statusLabel; - } - - public JXBusyLabel getLoadingLabel() { - return loadingLabel; - } - - - - - - - -} \ No newline at end of file Deleted: trunk/src/dl-learner/org/dllearner/tools/ore/ConceptPanelDescriptor.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/ConceptPanelDescriptor.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/ConceptPanelDescriptor.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -1,69 +0,0 @@ -package org.dllearner.tools.ore; - -import javax.swing.event.ListSelectionEvent; -import javax.swing.event.ListSelectionListener; - -import org.dllearner.core.owl.NamedClass; - - - - -public class ConceptPanelDescriptor extends WizardPanelDescriptor implements ListSelectionListener{ - - public static final String IDENTIFIER = "CONCEPT_CHOOSE_PANEL"; - - ConceptPanel panel3; - - public ConceptPanelDescriptor() { - - panel3 = new ConceptPanel(); - panel3.addSelectionListener(this); - - setPanelDescriptorIdentifier(IDENTIFIER); - setPanelComponent(panel3); - - } - - @Override - public Object getNextPanelDescriptor() { - return LearningPanelDescriptor.IDENTIFIER; - } - - @Override - public Object getBackPanelDescriptor() { - return KnowledgeSourcePanelDescriptor.IDENTIFIER; - } - - @Override - public void aboutToDisplayPanel() { - setNextButtonAccordingToConceptSelected(); - } - - - - public void valueChanged(ListSelectionEvent e) { - setNextButtonAccordingToConceptSelected(); - if (!e.getValueIsAdjusting()) - getWizardModel().getOre().setConcept((NamedClass)panel3.getList().getSelectedValue()); - - } - - private void setNextButtonAccordingToConceptSelected() { - - if (panel3.getList().getSelectedValue()!= null){ - getWizard().setNextFinishButtonEnabled(true); - }else{ - getWizard().setNextFinishButtonEnabled(false); - } - - } - - - - - - - - - -} Deleted: trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionButton.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionButton.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionButton.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -1,25 +0,0 @@ -package org.dllearner.tools.ore; - -import javax.swing.JButton; - -import org.dllearner.core.owl.Description; - -public class DescriptionButton extends JButton { - /** - * - */ - private static final long serialVersionUID = 1L; - private Description desc; - - public DescriptionButton(String name, Description desc){ - super(name); - this.desc = desc; - - } - - public Description getDescription(){ - return desc; - } - - -} Modified: trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionLabel.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionLabel.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionLabel.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -2,14 +2,17 @@ import java.awt.Color; import java.awt.Component; +import java.awt.Cursor; import java.awt.event.ActionListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; +import java.util.Map; import java.util.Set; import javax.swing.JLabel; import javax.swing.JMenu; import javax.swing.JPopupMenu; +import javax.swing.ToolTipManager; import org.dllearner.core.owl.Description; import org.dllearner.core.owl.Individual; @@ -24,14 +27,33 @@ * */ private static final long serialVersionUID = 1L; + + + private static final int MOVE_TO_CLASS = 0; + private static final int MOVE_FROM_CLASS = 1; + private static final int ADD_CLASS = 2; + private static final int REMOVE_CLASS = 3; + private static final int ADD_PROPERTY = 4; + private static final int REMOVE_RANGE_PROPERTY = 5; + private static final int DELETE_PROPERTY = 6; + private static final int REMOVE_NOT_RANGE_PROPERTY = 7; + + + + private final Description desc; private Individual ind; private ORE ore; private JPopupMenu menu; + private String mode; - public DescriptionLabel(Description d){ - super(d.toString()); + private String baseURI; + private Map<String, String> prefixes; + + public DescriptionLabel(Description d, String mode){ + super(); this.desc = d; + this.mode = mode; setForeground(Color.red); addMouseListener(this); @@ -39,19 +61,75 @@ } public void init(){ + baseURI = ore.getBaseURI(); + prefixes = ore.getPrefixes(); + + setText(((Description)desc).toManchesterSyntaxString(ore.getBaseURI(),ore.getPrefixes())); menu = new JPopupMenu(); - if(!(desc instanceof Negation)){ - if(desc instanceof NamedClass){ - menu.add(new DescriptionMenuItem("remove class assertion " + desc.toString(), desc) ); - JMenu dme = new JMenu("move class assertion " + desc.toString() + " to ..."); - - for(NamedClass nc : ore.getpossibleMoveClasses(ind)){ - MoveMenuItem move = new MoveMenuItem((NamedClass)desc, nc); - dme.add(move); - Set<NamedClass> complements = ore.getComplements(nc, ind); - System.out.println("Gr\xF6\xDFe" + complements.size()); - if(!(complements.size() <=1)){ - move.setEnabled(false); + ToolTipManager.sharedInstance().setDismissDelay(7000); + if(mode.equals("neg")){ + if(!(desc instanceof Negation)){ + if(desc instanceof NamedClass){ + menu.add(new DescriptionMenuItem(REMOVE_CLASS, desc.toManchesterSyntaxString(baseURI, prefixes), desc) ); + + JMenu dme = new JMenu("move class assertion " + desc.toManchesterSyntaxString(baseURI, prefixes) + " to ..."); + for(NamedClass nc : ore.getpossibleClassesMoveTo(ind)){ + DescriptionMenuItem move = new DescriptionMenuItem(MOVE_TO_CLASS, nc.toManchesterSyntaxString(baseURI, prefixes), (NamedClass)desc); + dme.add(move); + Set<NamedClass> complements = ore.getComplements(nc, ind); + if(!(complements.size() <=1)){ + move.setEnabled(false); + StringBuffer strBuf = new StringBuffer(); + strBuf.append("<html>class assertion not possible because individual<br> " + + "is still asserted to its complements:<br><BLOCKQUOTE>"); + + for(NamedClass n: complements) + strBuf.append("<br><b>" + n + "</b>"); + strBuf.append("</BLOCKQUOTE></html>"); + + + move.setToolTipText(strBuf.toString()); + } + } + menu.add(dme); + } + else if(desc instanceof ObjectSomeRestriction){ + String propertyName = ((ObjectSomeRestriction)desc).getRole().toString(baseURI, prefixes); + String propertyRange = ((ObjectSomeRestriction)desc).getChild(0).toManchesterSyntaxString(baseURI, prefixes); + menu.add(new DescriptionMenuItem(DELETE_PROPERTY, propertyName , desc)); + if (!(desc.getChild(0) instanceof Thing)) + menu.add(new DescriptionMenuItem(REMOVE_RANGE_PROPERTY,propertyRange , desc)); + + } + else if(desc instanceof ObjectAllRestriction){ + if (!(desc.getChild(0) instanceof Thing)) { + JMenu dme = new JMenu("add property assertion " + ((ObjectAllRestriction) desc).getRole() + + " with object ..."); + for (Individual i : ore.getIndividualsNotInPropertyRange((ObjectAllRestriction) desc, ind)) + dme.add(new DescriptionMenuItem(ADD_PROPERTY,i.toManchesterSyntaxString(baseURI, prefixes), desc)); + menu.add(dme); + } + } + + } + else if(desc instanceof Negation){ + if(desc.getChild(0) instanceof NamedClass){ + DescriptionMenuItem item = new DescriptionMenuItem(ADD_CLASS, desc.getChild(0).toManchesterSyntaxString(baseURI, prefixes), desc.getChild(0)); + menu.add(item); + if(!ore.getComplements(desc, ind).isEmpty()){ + item.setEnabled(false); + item.setToolTipText("<html>class assertion not possible because individual<br> is still asserted to its complement</html>"); + } + } + } + } + else if(mode.equals("pos")){ + if(!(desc instanceof Negation)){ + if(desc instanceof NamedClass){ + DescriptionMenuItem add = new DescriptionMenuItem(ADD_CLASS, desc.toManchesterSyntaxString(baseURI, prefixes), desc); + Set<NamedClass> complements = ore.getComplements(desc, ind); + if((complements.size() >0)){ + add.setEnabled(false); StringBuffer strBuf = new StringBuffer(); strBuf.append("<html>class assertion not possible because individual<br> " + "is still asserted to its complements:<br><BLOCKQUOTE>"); @@ -61,45 +139,120 @@ strBuf.append("</BLOCKQUOTE></html>"); - move.setToolTipText(strBuf.toString()); + add.setToolTipText(strBuf.toString()); } + menu.add(add); + + Set<NamedClass> moveClasses = ore.getpossibleClassesMoveFrom(ind); + if(moveClasses.size() > 0){ + JMenu move = new JMenu("move to " + desc + " from ..."); + for (NamedClass m : moveClasses) + move.add(new DescriptionMenuItem(MOVE_FROM_CLASS,m.toManchesterSyntaxString(baseURI, prefixes), desc)); + menu.add(move); + + } + + } - menu.add(dme); - } - else if(desc instanceof ObjectSomeRestriction){ - menu.add(new DescriptionMenuItem("remove complete property " + ((ObjectSomeRestriction)desc).getRole(), desc)); - if (!(desc.getChild(0) instanceof Thing)) - menu.add(new DescriptionMenuItem("remove all property assertions to " + ((ObjectSomeRestriction)desc).getChild(0), desc)); - - } - else if(desc instanceof ObjectAllRestriction){ - if (!(desc.getChild(0) instanceof Thing)) { - JMenu dme = new JMenu("add property assertion " + ((ObjectAllRestriction) desc).getRole() + else if(desc instanceof ObjectSomeRestriction){ + JMenu dme = new JMenu("add property assertion " + ((ObjectSomeRestriction) desc).getRole() + " with object ..."); - for (Individual i : ore.getIndividualsNotOfPropertyRange((ObjectAllRestriction) desc, ind)) - dme.add(new DescriptionMenuItem(i.getName(), desc.getChild(0))); + for (Individual i : ore.getIndividualsOfPropertyRange((ObjectSomeRestriction) desc, ind)) + dme.add(new DescriptionMenuItem(ADD_PROPERTY,i.toManchesterSyntaxString(baseURI, prefixes), desc)); menu.add(dme); + } - } - - } - else if(desc instanceof Negation){ - if(desc.getChild(0) instanceof NamedClass){ - DescriptionMenuItem item = new DescriptionMenuItem("add class assertion to " + desc.getChild(0).toString(), desc.getChild(0)); - menu.add(item); - if(!ore.getComplements(desc, ind).isEmpty()){ - item.setEnabled(false); - item.setToolTipText("<html>class assertion not possible because individual<br> is still asserted to its complement</html>"); + else if(desc instanceof ObjectAllRestriction){ + if (!(desc.getChild(0) instanceof Thing)) { + menu.add(new DescriptionMenuItem(REMOVE_NOT_RANGE_PROPERTY,((ObjectAllRestriction) desc).getChild(0).toString(baseURI, prefixes), desc)); + menu.add(new DescriptionMenuItem(DELETE_PROPERTY,((ObjectAllRestriction) desc).getRole().toString(baseURI, prefixes), desc)); + } } + } - else if(desc.getChild(0) instanceof ObjectSomeRestriction){ - JMenu dme = new JMenu("add property " + desc.toString() + " with object ..."); - for(Individual i : ore.getIndividualsOfPropertyRange((ObjectSomeRestriction)desc.getChild(0), ind)) - dme.add(new DescriptionMenuItem(i.getName(), desc.getChild(0))); - menu.add(dme); - } + } + +// else if(desc instanceof Negation){ +// if(desc.getChild(0) instanceof NamedClass){ +// DescriptionMenuItem item = new DescriptionMenuItem("add class assertion to " + desc.getChild(0).toString(), desc.getChild(0)); +// menu.add(item); +// if(!ore.getComplements(desc, ind).isEmpty()){ +// item.setEnabled(false); +// item.setToolTipText("<html>class assertion not possible because individual<br> is still asserted to its complement</html>"); +// } +// } +// else if(desc.getChild(0) instanceof ObjectSomeRestriction){ +// JMenu dme = new JMenu("add property " + desc.toString() + " with object ..."); +// for(Individual i : ore.getIndividualsOfPropertyRange((ObjectSomeRestriction)desc.getChild(0), ind)) +// dme.add(new DescriptionMenuItem(i.getName(), desc.getChild(0))); +// menu.add(dme); +// } +// } + } +// menu = new JPopupMenu(); +// ToolTipManager.sharedInstance().setDismissDelay(7000); +// if(!(desc instanceof Negation)){ +// if(desc instanceof NamedClass){ +// menu.add(new DescriptionMenuItem("remove class assertion " + desc.toString(), desc) ); +// JMenu dme = new JMenu("move class assertion " + desc.toString() + " to ..."); +// +// for(NamedClass nc : ore.getpossibleMoveClasses(ind)){ +// MoveMenuItem move = new MoveMenuItem((NamedClass)desc, nc); +// dme.add(move); +// Set<NamedClass> complements = ore.getComplements(nc, ind); +// System.out.println("Gr\xF6\xDFe" + complements.size()); +// if(!(complements.size() <=1)){ +// move.setEnabled(false); +// StringBuffer strBuf = new StringBuffer(); +// strBuf.append("<html>class assertion not possible because individual<br> " + +// "is still asserted to its complements:<br><BLOCKQUOTE>"); +// +// for(NamedClass n: complements) +// strBuf.append("<br><b>" + n + "</b>"); +// strBuf.append("</BLOCKQUOTE></html>"); +// +// +// move.setToolTipText(strBuf.toString()); +// } +// } +// menu.add(dme); +// } +// else if(desc instanceof ObjectSomeRestriction){ +// menu.add(new DescriptionMenuItem("remove complete property " + ((ObjectSomeRestriction)desc).getRole(), desc)); +// if (!(desc.getChild(0) instanceof Thing)) +// menu.add(new DescriptionMenuItem("remove all property assertions to " + ((ObjectSomeRestriction)desc).getChild(0), desc)); +// +// } +// else if(desc instanceof ObjectAllRestriction){ +// if (!(desc.getChild(0) instanceof Thing)) { +// JMenu dme = new JMenu("add property assertion " + ((ObjectAllRestriction) desc).getRole() +// + " with object ..."); +// for (Individual i : ore.getIndividualsNotOfPropertyRange((ObjectAllRestriction) desc, ind)) +// dme.add(new DescriptionMenuItem(i.getName(), desc.getChild(0))); +// menu.add(dme); +// } +// } +// +// } +// else if(desc instanceof Negation){ +// if(desc.getChild(0) instanceof NamedClass){ +// DescriptionMenuItem item = new DescriptionMenuItem("add class assertion to " + desc.getChild(0).toString(), desc.getChild(0)); +// menu.add(item); +// if(!ore.getComplements(desc, ind).isEmpty()){ +// item.setEnabled(false); +// item.setToolTipText("<html>class assertion not possible because individual<br> is still asserted to its complement</html>"); +// } +// } +// else if(desc.getChild(0) instanceof ObjectSomeRestriction){ +// JMenu dme = new JMenu("add property " + desc.toString() + " with object ..."); +// for(Individual i : ore.getIndividualsOfPropertyRange((ObjectSomeRestriction)desc.getChild(0), ind)) +// dme.add(new DescriptionMenuItem(i.getName(), desc.getChild(0))); +// menu.add(dme); +// } +// } +// } public Description getDescription(){ return desc; @@ -132,14 +285,15 @@ public void mouseEntered(MouseEvent e) { - setText("<html><u>" + desc.toString() + "</u></html>"); + setText("<html><u>" + ((Description)desc).toManchesterSyntaxString(ore.getBaseURI(),ore.getPrefixes()) + "</u></html>"); + setCursor(new Cursor(Cursor.HAND_CURSOR)); } public void mouseExited(MouseEvent e) { - setText(desc.toString()); - + setText(((Description)desc).toManchesterSyntaxString(ore.getBaseURI(),ore.getPrefixes())); + setCursor(new Cursor(Cursor.DEFAULT_CURSOR)); } Modified: trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionMenuItem.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionMenuItem.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionMenuItem.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -11,12 +11,30 @@ */ private static final long serialVersionUID = 6784086889435854440L; - Description desc; + private Description desc; + private int action; - - public DescriptionMenuItem(String text, Description d){ - super(text); + public DescriptionMenuItem(int action, String text, Description d){ + super(); + if(action == 3) + setText("remove class assertion to " + text); + else if(action == 0) + setText(text); + else if(action == 2) + setText("add class assertion to " + text); + else if(action == 4) + setText(text); + else if(action == 6) + setText("delete complete property " + text); + else if(action == 5) + setText("remove all property assertions to " + text); + else if(action == 7) + setText("remove all property assertions with range not in " + text); + else if(action == 1) + setText(text); + this.desc = d; + this.action = action; } @@ -24,6 +42,10 @@ return desc; } + public int getActionID(){ + return action; + } + } Modified: trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionPanel.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionPanel.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/DescriptionPanel.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -21,8 +21,10 @@ ORE ore; Individual ind; ActionListener aL; + String mode; + boolean correct = false; - public DescriptionPanel(ORE ore, Individual ind, ActionListener aL){ + public DescriptionPanel(ORE ore, Individual ind, ActionListener aL, String mode){ super(); setBackground(Color.WHITE); @@ -30,35 +32,72 @@ this.ore = ore; this.ind = ind; this.aL = aL; - for(JLabel jL : ore.DescriptionToJLabel(ind, ore.conceptToAdd)){ - add(jL); - if(jL instanceof DescriptionLabel){ + this.mode = mode; + if(mode.equals("neg")){ + for(JLabel jL : ore.DescriptionToJLabelNeg(ind, ore.conceptToAdd)){ + add(jL); + if(jL instanceof DescriptionLabel){ + + ((DescriptionLabel)jL).setIndOre(ore, ind); + ((DescriptionLabel)jL).init(); + ((DescriptionLabel)jL).addActionListeners(aL); + + } - ((DescriptionLabel)jL).setIndOre(ore, ind); - ((DescriptionLabel)jL).init(); - ((DescriptionLabel)jL).addActionListeners(aL); } } + else if(mode.equals("pos")){ + for(JLabel jL : ore.DescriptionToJLabelPos(ind, ore.conceptToAdd)){ + add(jL); + if(jL instanceof DescriptionLabel){ + + ((DescriptionLabel)jL).setIndOre(ore, ind); + ((DescriptionLabel)jL).init(); + ((DescriptionLabel)jL).addActionListeners(aL); + + } + + } + } } - public void updatePanel(){//DescriptionButton descBut, Description desc){ + public void updatePanel(){ for(Component c : getComponents()) if(c instanceof JLabel) remove(c); ore.updateReasoner(); - for(JLabel jL : ore.DescriptionToJLabel(ind, ore.conceptToAdd)){ - add(jL); - if(jL instanceof DescriptionLabel){ - ((DescriptionLabel)jL).setIndOre(ore, ind); - ((DescriptionLabel)jL).init(); - ((DescriptionLabel)jL).addActionListeners(aL); - - + correct = true; + if (mode.equals("neg")) { + for (JLabel jL : ore.DescriptionToJLabelNeg(ind, ore.conceptToAdd)) { + add(jL); + if (jL instanceof DescriptionLabel) { + ((DescriptionLabel) jL).setIndOre(ore, ind); + ((DescriptionLabel) jL).init(); + ((DescriptionLabel) jL).addActionListeners(aL); + correct = false; + + } } } + else if(mode.equals("pos")){ + for (JLabel jL : ore.DescriptionToJLabelPos(ind, ore.conceptToAdd)) { + add(jL); + if (jL instanceof DescriptionLabel) { + ((DescriptionLabel) jL).setIndOre(ore, ind); + ((DescriptionLabel) jL).init(); + ((DescriptionLabel) jL).addActionListeners(aL); + correct = false; + + } + } + } SwingUtilities.updateComponentTreeUI(this); } + + public boolean isCorrect(){ + return correct; + } } \ No newline at end of file Modified: trunk/src/dl-learner/org/dllearner/tools/ore/IntroductionPanel.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/IntroductionPanel.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/IntroductionPanel.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -16,6 +16,8 @@ public class IntroductionPanel extends JPanel { private static final long serialVersionUID = 7184544803724152044L; + + private JTextArea instructionsField; private JScrollPane jScrollPane1; Modified: trunk/src/dl-learner/org/dllearner/tools/ore/IntroductionPanelDescriptor.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/IntroductionPanelDescriptor.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/IntroductionPanelDescriptor.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -5,7 +5,7 @@ public class IntroductionPanelDescriptor extends WizardPanelDescriptor { public static final String IDENTIFIER = "INTRODUCTION_PANEL"; - + public IntroductionPanelDescriptor() { super(IDENTIFIER, new IntroductionPanel()); } Modified: trunk/src/dl-learner/org/dllearner/tools/ore/KnowledgeSourcePanel.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/KnowledgeSourcePanel.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/KnowledgeSourcePanel.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -1,24 +1,44 @@ package org.dllearner.tools.ore; import java.awt.BorderLayout; +import java.awt.GridLayout; import java.awt.event.ActionListener; import java.io.File; +import java.net.URL; +import java.util.Vector; +import javax.swing.Box; +import javax.swing.ButtonGroup; +import javax.swing.GroupLayout; +import javax.swing.JComboBox; import javax.swing.JFileChooser; import javax.swing.JLabel; import javax.swing.JPanel; +import javax.swing.JRadioButton; +import javax.swing.JTextField; +import javax.swing.SwingConstants; +import javax.swing.border.TitledBorder; import javax.swing.event.DocumentListener; import javax.swing.filechooser.FileFilter; +import org.dllearner.kb.sparql.SparqlEndpoint; + public class KnowledgeSourcePanel extends JPanel{ private static final long serialVersionUID = -3997200565180270088L; private javax.swing.JTextField fileURL; + private JTextField sparqlURL; private javax.swing.JButton browseButton; + private JComboBox sparqlBox; + private JPanel contentPanel; private JLabel message; + private JRadioButton owl; + private JRadioButton sparql; + + public KnowledgeSourcePanel() { new LeftPanel(1); @@ -26,7 +46,6 @@ setLayout(new java.awt.BorderLayout()); - //add(leftPanel,BorderLayout.WEST); add(contentPanel,BorderLayout.CENTER); } @@ -35,20 +54,61 @@ JPanel contentPanel1 = new JPanel(); + JPanel buttonPanel = new JPanel(); + ButtonGroup bg = new ButtonGroup(); + Box box = Box.createVerticalBox(); + owl = new JRadioButton("OWL", true); + sparql = new JRadioButton("SPARQL"); + bg.add(owl); + bg.add(sparql); + box.add(owl); + box.add(sparql); + buttonPanel.add(box); + + JPanel owlPanel = new JPanel(); + GroupLayout layout = new GroupLayout(owlPanel); + owlPanel.setLayout(layout); + layout.setAutoCreateGaps(true); + layout.setAutoCreateContainerGaps(true); + owlPanel.setBorder(new TitledBorder("OWL")); message = new JLabel(); message.setText("enter or browse OWL file"); - fileURL = new javax.swing.JTextField(40); - + fileURL = new javax.swing.JTextField(60); browseButton = new javax.swing.JButton("browse"); - - contentPanel1.setLayout(new BorderLayout()); + layout.setHorizontalGroup(layout.createSequentialGroup() + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addComponent(fileURL) + .addComponent(message)) + .addComponent(browseButton)); + layout.linkSize(SwingConstants.HORIZONTAL, fileURL, message); + + layout.setVerticalGroup(layout.createSequentialGroup() + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE) + .addComponent(fileURL) + .addComponent(browseButton)) + + .addComponent(message)); - JPanel panel = new JPanel(); - panel.add(fileURL); - panel.add(browseButton); - contentPanel1.add(panel,BorderLayout.CENTER); - contentPanel1.add(message,BorderLayout.SOUTH); + JPanel sparqlPanel = new JPanel(); + sparqlPanel.setBorder(new TitledBorder("SPARQL")); + sparqlURL = new JTextField(60); + sparqlURL.setEnabled(false); + + Vector<URL> model = new Vector<URL>(); + for(SparqlEndpoint e : SparqlEndpoint.listEndpoints()) + model.add(e.getURL()); + sparqlBox = new JComboBox(model); + sparqlBox.setEditable(false); + sparqlBox.setSelectedIndex(-1); + sparqlBox.setEnabled(false); + sparqlPanel.add(sparqlBox); + + + contentPanel1.setLayout(new GridLayout(0,1)); + contentPanel1.add(buttonPanel); + contentPanel1.add(owlPanel); + contentPanel1.add(sparqlPanel); @@ -58,6 +118,9 @@ public void addListeners(ActionListener l, DocumentListener d) { browseButton.addActionListener(l); fileURL.addActionListener(l); + sparqlURL.addActionListener(l); + owl.addActionListener(l); + sparql.addActionListener(l); fileURL.getDocument().addDocumentListener(d); } @@ -126,5 +189,25 @@ this.fileURL.setText(fileURL); } - + public void setOWLMode(){ + fileURL.setEnabled(true); + browseButton.setEnabled(true); + message.setVisible(true); + + sparqlBox.setEditable(false); + sparqlBox.setEnabled(false); + + } + + public void setSPARQLMode(){ + fileURL.setEnabled(false); + browseButton.setEnabled(false); + message.setVisible(false); + + sparqlBox.setEnabled(true); + sparqlBox.setEditable(true); + + } + + } Modified: trunk/src/dl-learner/org/dllearner/tools/ore/KnowledgeSourcePanelDescriptor.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/KnowledgeSourcePanelDescriptor.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/KnowledgeSourcePanelDescriptor.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -14,23 +14,28 @@ public class KnowledgeSourcePanelDescriptor extends WizardPanelDescriptor implements ActionListener, DocumentListener{ public static final String IDENTIFIER = "KNOWLEDGESOURCE_CHOOSE_PANEL"; + public static final String INFORMATION = "Select the KnowledgeSource(OWL-FILE) on which you want to work and " + + "then press \"Next\"-button"; - private KnowledgeSourcePanel panel2; + private KnowledgeSourcePanel knowledgePanel; public KnowledgeSourcePanelDescriptor() { - panel2 = new KnowledgeSourcePanel(); + knowledgePanel = new KnowledgeSourcePanel(); - panel2.addListeners(this, this); + knowledgePanel.addListeners(this, this); setPanelDescriptorIdentifier(IDENTIFIER); - setPanelComponent(panel2); + setPanelComponent(knowledgePanel); } @Override public Object getNextPanelDescriptor() { - return ConceptPanelDescriptor.IDENTIFIER; + if(getWizard().getKnowledgeSourceType() == 0) + return ClassPanelOWLDescriptor.IDENTIFIER; + else + return ClassPanelSparqlDescriptor.IDENTIFIER; } @Override @@ -41,13 +46,20 @@ @Override public void aboutToDisplayPanel() { - setNextButtonAccordingToExistingOWLFile(); + getWizard().getInformationField().setText(INFORMATION); + setNextButtonAccordingToExistingOWLFile(); } public void actionPerformed(ActionEvent e) { String cmd = e.getActionCommand(); if(cmd.equals("browse")){ - panel2.openFileChooser(); + knowledgePanel.openFileChooser(); + }else if(cmd.equals("OWL")){ + knowledgePanel.setOWLMode(); + getWizard().setKnowledgeSourceType(0); + }else if(cmd.equals("SPARQL")){ + knowledgePanel.setSPARQLMode(); + getWizard().setKnowledgeSourceType(1); } setNextButtonAccordingToExistingOWLFile(); @@ -58,8 +70,8 @@ private void setNextButtonAccordingToExistingOWLFile() { - if (panel2.isExistingOWLFile()){ - getWizardModel().getOre().setKnowledgeSource(panel2.getOWLFile()); + if (knowledgePanel.isExistingOWLFile()){ + getWizardModel().getOre().setKnowledgeSource(knowledgePanel.getOWLFile()); getWizard().setNextFinishButtonEnabled(true); // new ConceptRetriever().execute(); // System.err.println("test"); @@ -89,6 +101,10 @@ setNextButtonAccordingToExistingOWLFile(); } + public KnowledgeSourcePanel getPanel() { + return knowledgePanel; + } + class ConceptRetriever extends SwingWorker<Set<NamedClass>, NamedClass> { @Override @@ -96,7 +112,7 @@ { getWizardModel().getOre().detectReasoner(); Set<NamedClass> ind = getWizardModel().getOre().getReasoningService().getAtomicConcepts(); - ConceptPanelDescriptor nextPanel = (ConceptPanelDescriptor)getWizardModel().getPanelHashMap().get(getNextPanelDescriptor()); + ClassPanelOWLDescriptor nextPanel = (ClassPanelOWLDescriptor)getWizardModel().getPanelHashMap().get(getNextPanelDescriptor()); nextPanel.panel3.getModel().clear(); for (NamedClass cl : ind){ @@ -111,9 +127,6 @@ } -public KnowledgeSourcePanel getPanel() { - return panel2; -} Modified: trunk/src/dl-learner/org/dllearner/tools/ore/LearningPanel.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/LearningPanel.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/LearningPanel.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -2,12 +2,16 @@ import java.awt.BorderLayout; import java.awt.Dimension; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.Insets; import java.awt.event.ActionListener; import java.awt.geom.Ellipse2D; import java.awt.geom.RoundRectangle2D; import java.util.Dictionary; import java.util.Hashtable; +import javax.swing.BorderFactory; import javax.swing.BoxLayout; import javax.swing.DefaultListModel; import javax.swing.JButton; @@ -28,54 +32,34 @@ private JPanel contentPanel; - private javax.swing.JList resultList; + private DefaultListModel model; private JLabel statusLabel; private JXBusyLabel loadingLabel; - private JButton startButton; - private JButton stopButton; + + private JList resultList; + private JScrollPane listScrollPane; + private JPanel listPanel; + private JPanel noisePanel; private JSlider noiseSlider; - + private JLabel noiseLabel; + private JButton stopButton; + private JButton startButton; + private JPanel buttonPanel; + private JPanel buttonSliderPanel; + private JLabel conceptLabel; + private JLabel accuracyLabel; public LearningPanel() { super(); model = new DefaultListModel(); - - JPanel eastPanel = new JPanel(); - eastPanel.setLayout(new BoxLayout(eastPanel, BoxLayout.Y_AXIS)); - - JPanel buttonPanel = new JPanel(); - startButton = new JButton("Start"); - stopButton = new JButton("Stop"); - stopButton.setEnabled(false); - buttonPanel.add(startButton); - buttonPanel.add(stopButton); - - JPanel noisePanel = new JPanel(); - noisePanel.setLayout(new BoxLayout(noisePanel, BoxLayout.Y_AXIS)); - noiseSlider = new JSlider(0, 100, 0); - noiseSlider.setPaintTicks(true); - noiseSlider.setMajorTickSpacing(10); - noiseSlider.setMinorTickSpacing(5); - Dictionary<Integer, JLabel> map = new Hashtable<Integer, JLabel>(); - map.put( new Integer(0), new JLabel("0%") ); - map.put( new Integer(50), new JLabel("50%") ); - map.put( new Integer(100),new JLabel("100%") ); - noiseSlider.setLabelTable( map ); - noiseSlider.setPaintLabels(true); - noisePanel.add(new JLabel("noise")); - noisePanel.add(noiseSlider); - - eastPanel.add(buttonPanel); - eastPanel.add(noisePanel); - + JPanel statusPanel = new JPanel(); statusLabel = new JLabel(); - loadingLabel = new JXBusyLabel(new Dimension(15,15)); BusyPainter<Object> painter = new BusyPainter<Object>( new RoundRectangle2D.Float(0, 0,6.0f,2.6f,10.0f,10.0f), @@ -92,26 +76,115 @@ contentPanel = getContentPanel(); setLayout(new java.awt.BorderLayout()); - add(eastPanel, BorderLayout.EAST); + add(contentPanel,BorderLayout.CENTER); add(statusPanel, BorderLayout.SOUTH); } private JPanel getContentPanel() { + JPanel contentPanel = new JPanel(); + GridBagLayout contentLayout = new GridBagLayout(); + setPreferredSize(new Dimension(700, 500)); + contentLayout.rowWeights = new double[] {0.5}; + contentLayout.rowHeights = new int[] {500}; + contentLayout.columnWeights = new double[] {0.5, 0.0}; + contentLayout.columnWidths = new int[] {313, 7}; + this.setLayout(contentLayout); - JPanel contentPanel1 = new JPanel(); - JScrollPane scroll = new JScrollPane(); - - resultList = new JList(model); -// resultList.setCellRenderer(new ColumnListCellRenderer()); - scroll.setPreferredSize(new Dimension(900, 400)); - scroll.setViewportView(resultList); - - contentPanel1.add(scroll); + { + listPanel = new JPanel(); + GridBagLayout jPanel1Layout = new GridBagLayout(); + contentPanel.add(listPanel, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0)); + jPanel1Layout.rowWeights = new double[] {0.0, 0.5}; + jPanel1Layout.rowHeights = new int[] {16,400}; + jPanel1Layout.columnWeights = new double[] {0.0, 0.5}; + jPanel1Layout.columnWidths = new int[] {50, 700}; + listPanel.setLayout(jPanel1Layout); + listPanel.setBorder(BorderFactory.createTitledBorder("Learned Concepts")); + { + listScrollPane = new JScrollPane(); + listPanel.add(listScrollPane, new GridBagConstraints(0, 1, 2, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0)); + { + + resultList = new JList(model); + listScrollPane.setViewportView(resultList); + } + } + { + accuracyLabel = new JLabel(); + listPanel.add(accuracyLabel, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0)); + accuracyLabel.setText("Accuracy"); + } + { + conceptLabel = new JLabel(); + listPanel.add(conceptLabel, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 0, 0)); + conceptLabel.setText("Concept"); + } + } + { + buttonSliderPanel = new JPanel(); + GridBagLayout buttonSliderPanelLayout = new GridBagLayout(); + contentPanel.add(buttonSliderPanel, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0)); + buttonSliderPanelLayout.rowWeights = new double[] {0.8, 0.0}; + buttonSliderPanelLayout.rowHeights = new int[] {200, 7}; + buttonSliderPanelLayout.columnWeights = new double[] {0.1}; + buttonSliderPanelLayout.columnWidths = new int[] {7}; + buttonSliderPanel.setLayout(buttonSliderPanelLayout); + { + buttonPanel = new JPanel(); + BoxLayout buttonPanelLayout = new BoxLayout(buttonPanel, javax.swing.BoxLayout.X_AXIS); + buttonPanel.setLayout(buttonPanelLayout); + buttonSliderPanel.add(buttonPanel, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0)); + { + startButton = new JButton(); + buttonPanel.add(startButton); + startButton.setText("Start"); + } + { + stopButton = new JButton(); + buttonPanel.add(stopButton); + stopButton.setText("Stop"); + } + } + { + noisePanel = new JPanel(); + BoxLayout noisePanelLayout = new BoxLayout(noisePanel, javax.swing.BoxLayout.Y_AXIS); + noisePanel.setLayout(noisePanelLayout); + buttonSliderPanel.add(noisePanel, new GridBagConstraints(0, 1, 1, 1, 0.0, 0.0, GridBagConstraints.CENTER, GridBagConstraints.BOTH, new Insets(0, 0, 0, 0), 0, 0)); + { + noiseLabel = new JLabel(); + noisePanel.add(noiseLabel); + noiseLabel.setText("noise"); + } + { + noiseSlider = new JSlider(0, 100, 0); + noiseSlider.setPaintTicks(true); + noiseSlider.setMajorTickSpacing(10); + noiseSlider.setMinorTickSpacing(5); + Dictionary<Integer, JLabel> map = new Hashtable<Integer, JLabel>(); + map.put( new Integer(0), new JLabel("0%") ); + map.put( new Integer(50), new JLabel("50%") ); + map.put( new Integer(100),new JLabel("100%") ); + noiseSlider.setLabelTable( map ); + noiseSlider.setPaintLabels(true); + noisePanel.add(noiseSlider); + } + } + } +// JPanel contentPanel1 = new JPanel(); +// JScrollPane scroll = new JScrollPane(); +// +// +// resultList = new JList(model); +//// resultList.setCellRenderer(new ColumnListCellRenderer()); +// scroll.setPreferredSize(new Dimension(900, 400)); +// scroll.setViewportView(resultList); +// +// contentPanel1.add(scroll); - return contentPanel1; + return contentPanel; } public void addStartButtonListener(ActionListener a){ Modified: trunk/src/dl-learner/org/dllearner/tools/ore/LearningPanelDescriptor.java =================================================================== --- trunk/src/dl-learner/org/dllearner/tools/ore/LearningPanelDescriptor.java 2008-07-15 10:25:32 UTC (rev 1008) +++ trunk/src/dl-learner/org/dllearner/tools/ore/LearningPanelDescriptor.java 2008-07-15 16:44:26 UTC (rev 1009) @@ -7,6 +7,7 @@ import java.util.TimerTask; import java.util.concurrent.ExecutionException; +import javax.swing.DefaultListModel; import javax.swing.SwingUtilities; import javax.swing.SwingWorker; import javax.swing.event.ListSelectionEvent; @@ -48,13 +49,72 @@ @Override public Object getBackPanelDescriptor() { - return ConceptPanelDescriptor.IDENTIFIER; + return ClassPanelOWLDescriptor.IDENTIFIER; } - class ResultSwingWorker extends SwingWorker<List<Description>, List<Description>> { + @Override + public void aboutToDisplayPanel() { + setNextButtonAccordingToConceptSelected(); + } + + + + public void valueChanged(ListSelectionEvent e) { + setNextButtonAccordingToConceptSelected(); +// ObjectAllRestriction role = new ObjectAllRestriction(new ObjectProperty("http://example.com/father#hasChild"), +// new NamedClass("http://example.com/father#female")); +// Description de = new Intersection(new NamedClass("http://example.com/father#male"), role); + + if (!e.getValueIsAdjusting()){ + getWizardModel().getOre().setConceptToAdd((Description)(panel4.getResultList().getSelectedValue())); + + + } + + } + + public void actionPerformed(ActionEvent event) { + if(event.getActionCommand().equals("Start")){ + panel4.getModel().clear(); + panel4.getStartButton().setEnabled(false); + panel4.getStopButton().setEnabled(true); + worker = new ResultSwingWorker(); + worker.execute(); + } + else{ + canceled = true; + panel4.getStopButton().setEnabled(false); + la.stop(); + timer.cancel(); + panel4.getStartButton().setEnabled(true); + panel4.getStatusLabel().setText("Algorithm aborted"); + panel4.getLoadingLabel().setBusy(false); + + } + + + + } + + + + private void setNextButtonAccordingToConceptSelected() { + ... [truncated message content] |