//package jav.concordance.view; // //import jav.concordance.control.ConcordanceEntry; //import jav.concordance.control.ConcordanceGraphicsRegistry; //import jav.correctionBackend.Token; //import jav.gui.dialogs.CustomErrorDialog; //import jav.gui.events.MessageCenter; //import jav.gui.events.documentChanged.DocumentChangedEvent; //import jav.gui.events.pageChanged.PageChangedEvent; //import jav.gui.events.special.multiselection.MultiSelectionEvent; //import jav.gui.events.tokenDeselection.TokenDeselectionEvent; //import jav.gui.events.tokenMultiDeselection.TokenMultiDeselectionEvent; //import jav.gui.events.tokenSelection.TokenSelectionEvent; //import jav.gui.events.tokenSelection.TokenSelectionType; //import jav.gui.events.tokenStatus.DeleteEvent; //import jav.gui.events.tokenStatus.InsertEvent; //import jav.gui.events.tokenStatus.MergeEvent; //import jav.gui.events.tokenStatus.SetCorrectedEvent; //import jav.gui.events.tokenStatus.SplitEvent; //import jav.gui.events.tokenStatus.TokenStatusEvent; //import jav.gui.events.tokenStatus.TokenStatusType; //import jav.gui.main.AbstractEditorViewTopComponent; //import jav.gui.main.AbstractTokenVisualization; //import jav.gui.main.GlobalActions; //import jav.gui.main.MainController; //import jav.gui.main.TokenVisualizationMultiRegistry; //import jav.gui.token.display.TokenVisualization; //import java.awt.event.ActionEvent; //import java.awt.event.ActionListener; //import java.awt.event.ItemEvent; //import java.awt.event.ItemListener; //import java.util.ArrayList; //import java.util.HashMap; //import java.util.Iterator; //import java.util.LinkedHashMap; //import java.util.concurrent.CancellationException; //import java.util.concurrent.ExecutionException; //import java.util.prefs.Preferences; //import javax.swing.JLabel; //import javax.swing.JToolBar; //import javax.swing.SwingWorker; //import org.netbeans.api.progress.ProgressHandle; //import org.netbeans.api.progress.ProgressRunnable; //import org.netbeans.api.progress.ProgressUtils; //import org.openide.DialogDisplayer; //import org.openide.NotifyDescriptor; //import org.openide.util.NbPreferences; //import org.openide.util.lookup.AbstractLookup; //import org.openide.util.lookup.InstanceContent; //import org.openide.windows.TopComponent; // ///** // *Copyright (c) 2012, IMPACT working group at the Centrum für Informations- und Sprachverarbeitung, University of Munich. // *All rights reserved. // // *Redistribution and use in source and binary forms, with or without // *modification, are permitted provided that the following conditions are met: // // *Redistributions of source code must retain the above copyright // *notice, this list of conditions and the following disclaimer. // *Redistributions in binary form must reproduce the above copyright // *notice, this list of conditions and the following disclaimer in the // *documentation and/or other materials provided with the distribution. // // *THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS // *IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED // *TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A // *PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT // *HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, // *SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT // *LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, // *DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY // *THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT // *(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE // *OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // * // * This file is part of the ocr-postcorrection tool developed // * by the IMPACT working group at the Centrum für Informations- und Sprachverarbeitung, University of Munich. // * For further information and contacts visit http://ocr.cis.uni-muenchen.de/ // * // * @author thorsten (thorsten.vobl@googlemail.com) // */ //public class ConcordanceTopComponent_bak extends AbstractEditorViewTopComponent { // // ConcordancePage cp = null; // private InstanceContent content = new InstanceContent(); // private Preferences node; // private boolean isOpen = false; // private int leftContextSize; // private int rightContextSize; // private int tokensPerPage; // private String name; // int numSelected = 0; // private int corrected = 0; // private int disabled = 0; // int toDo = 0; // private int tokensInPage = 0; // private int fontSize; // private double imgScale; // private int actualPage = -1; // private int currentTokenID = -1; // private boolean showImages; // private boolean isActive; // private ConcordanceTopComponent_bak instance; // private ConcordanceGlobalActions globalActions; // private TokenVisualizationMultiRegistry tvRegistry; // private ConcordanceGraphicsRegistry concRegistry; // LinkedHashMap<Integer, ConcordanceEntry> tokens; // // public void init(ArrayList<Token> t, String n) { // // this.name = n; // // tvRegistry = new TokenVisualizationMultiRegistry(); // concRegistry = new ConcordanceGraphicsRegistry(); // // tokens = new LinkedHashMap<>(); // for (Token tok : t) { // ConcordanceEntry temp = new ConcordanceEntry(tok); // if ( !tok.getTopSuggestion().equals("") ) { // temp.setCandidateString(tok.getTopSuggestion()); // } else { // temp.setCandidateString(""); // } // tokens.put(tok.getID(), temp); // } // // instance = this; // globalActions = new ConcordanceGlobalActions(this); // // this.setFocusable(true); //// this.setDoubleBuffered(true); // // MessageCenter.getInstance().addDocumentChangedEventListener(this); // MessageCenter.getInstance().addTokenDeselectionEventListener(this); // MessageCenter.getInstance().addTokenSelectionEventListener(this); // MessageCenter.getInstance().addTokenStatusEventListener(this); // // associateLookup(new AbstractLookup(content)); // node = NbPreferences.forModule(this.getClass()); // leftContextSize = node.getInt("leftCLen", 7); // rightContextSize = node.getInt("rightCLen", 7); // tokensPerPage = node.getInt("tokensPerPage", 50); // imgScale = Double.parseDouble(MainController.findInstance().getDocumentProperties().getProperty("concImageScale")); // fontSize = Integer.parseInt(MainController.findInstance().getDocumentProperties().getProperty("concFontSize")); // showImages = node.getBoolean("hasImages", true); // // initComponents(); // MainController.findInstance().customizeScrollPane(jScrollPane1); // jScrollPane1.getVerticalScrollBar().setUnitIncrement(60); // jScrollPane1.getVerticalScrollBar().setBlockIncrement(180); // // jButton1.setEnabled(false); // jButton1.addActionListener(new ActionListener() { // // @Override // public void actionPerformed(ActionEvent e) { // NotifyDescriptor d = new NotifyDescriptor.Confirmation(java.util.ResourceBundle.getBundle("jav/gui/concordance/Bundle").getString("WENN SIE FORTFAHREN WERDEN MEHRERE TOKEN KORRIGIERT!"), java.util.ResourceBundle.getBundle("jav/gui/concordance/Bundle").getString("ACHTUNG"), NotifyDescriptor.OK_CANCEL_OPTION, NotifyDescriptor.WARNING_MESSAGE); // Object retval = DialogDisplayer.getDefault().notify(d); // if (retval.equals(NotifyDescriptor.OK_OPTION)) { // correct(); // } // } // }); // // ProgressRunnable bu = new Builder(); // ProgressUtils.showProgressDialogAndRun(bu, "Building", true); // this.actualPage = 0; // int display = actualPage + 1; // setName(name + " " + display + "/" + getMaxPages()); // content.add(instance); // MainController.findInstance().setLastFocusedTopComponent(instance); // } // // private void initComponents() { // // jToolBar1 = this.getToolBar(); // jScrollPane1 = new javax.swing.JScrollPane(); //// jScrollPane1.setDoubleBuffered(true); // // totalentriesLabel = new JLabel("Entries Total: " + 0 + " "); // numSelectedLabel = new JLabel("Entries Selected: " + 0 + " "); // numCorrectedLabel = new JLabel("Entries Corrected: " + 0 + " "); // numDisabledLabel = new JLabel("Entries Disabled: " + 0 + " "); // numToDoLabel = new JLabel("Entries to process: " + 0 + " "); // // totalentriesLabel.setVerticalAlignment(javax.swing.SwingConstants.TOP); // numSelectedLabel.setVerticalAlignment(javax.swing.SwingConstants.TOP); // numCorrectedLabel.setVerticalAlignment(javax.swing.SwingConstants.TOP); // numDisabledLabel.setVerticalAlignment(javax.swing.SwingConstants.TOP); // numToDoLabel.setVerticalAlignment(javax.swing.SwingConstants.TOP); // // // javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); // this.setLayout(layout); // layout.setHorizontalGroup( // layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent(jToolBar1, javax.swing.GroupLayout.DEFAULT_SIZE, 499, Short.MAX_VALUE).addGroup(layout.createSequentialGroup().addContainerGap().addComponent(totalentriesLabel).addGap(18, 18, 18).addComponent(numSelectedLabel).addGap(18, 18, 18).addComponent(numCorrectedLabel).addGap(18, 18, 18).addComponent(numDisabledLabel).addGap(18, 18, 18).addComponent(numToDoLabel).addContainerGap(165, Short.MAX_VALUE)).addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 499, Short.MAX_VALUE)); // layout.setVerticalGroup( // layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(layout.createSequentialGroup().addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE).addGap(1, 1, 1).addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(numSelectedLabel).addComponent(numCorrectedLabel).addComponent(numDisabledLabel).addComponent(numToDoLabel).addComponent(totalentriesLabel)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 243, Short.MAX_VALUE))); // // } // javax.swing.JButton jButton1; // javax.swing.JScrollPane jScrollPane1; // javax.swing.JToolBar.Separator jSeparator1; // javax.swing.JToolBar.Separator jSeparator2; // javax.swing.JToolBar.Separator jSeparator3; // javax.swing.JToggleButton jToggleButton1; // javax.swing.JToggleButton jToggleButton2; // javax.swing.JToolBar jToolBar1; // javax.swing.JLabel totalentriesLabel; // javax.swing.JLabel numSelectedLabel; // javax.swing.JLabel numCorrectedLabel; // javax.swing.JLabel numDisabledLabel; // javax.swing.JLabel numToDoLabel; // // public JToolBar getToolBar() { // JToolBar toolb = new JToolBar(); // jToggleButton1 = new javax.swing.JToggleButton(); // jSeparator1 = new javax.swing.JToolBar.Separator(); // jToggleButton2 = new javax.swing.JToggleButton(); // jSeparator2 = new javax.swing.JToolBar.Separator(); // jButton1 = new javax.swing.JButton(); // jSeparator3 = new javax.swing.JToolBar.Separator(); // // toolb.setRollover(true); // toolb.setFloatable(false); // // jToggleButton1.setText(java.util.ResourceBundle.getBundle("jav/concordance/Bundle").getString("pageSelect")); // jToggleButton1.setFocusable(false); // jToggleButton1.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); // jToggleButton1.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); // toolb.add(jToggleButton1); // toolb.add(jSeparator1); // // jToggleButton2.setText(java.util.ResourceBundle.getBundle("jav/concordance/Bundle").getString("allSelect")); // jToggleButton2.setFocusable(false); // jToggleButton2.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); // jToggleButton2.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); // toolb.add(jToggleButton2); // toolb.add(jSeparator2); // // toolb.add(jSeparator3); // // jButton1.setText(java.util.ResourceBundle.getBundle("jav/concordance/Bundle").getString("correct")); // jButton1.setFocusable(false); // jButton1.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); // jButton1.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); // toolb.add(jButton1); // // /* // * select / deselect current Page // */ // jToggleButton1.addItemListener(new ItemListener() { // // @Override // public void itemStateChanged(ItemEvent ie) { // if (ie.getStateChange() == ItemEvent.SELECTED) { // // Object[] o = tokens.keySet().toArray(); // for (int i = actualPage * tokensPerPage; i < tokensInPage; i++) { // int tok = (Integer) o[i]; // ConcordanceEntry cce = tokens.get(tok); // if (!cce.isCorrected() && !cce.isDisabled()) { // setSelected(tok, true); // } // } // cp.selectAll(); // } else { // // Object[] o = tokens.keySet().toArray(); // for (int i = actualPage * tokensPerPage; i < tokensInPage; i++) { // int tok = (Integer) o[i]; // ConcordanceEntry cce = tokens.get(tok); // if (!cce.isCorrected() && !cce.isDisabled()) { // setSelected(tok, false); // } // } // cp.deselectAll(); // } // } // }); // // /* // * select / deselect everything // */ // jToggleButton2.addItemListener(new ItemListener() { // // @Override // public void itemStateChanged(ItemEvent ie) { // if (ie.getStateChange() == ItemEvent.SELECTED) { // // jToggleButton1.setSelected(true); // Iterator<Integer> i = tokens.keySet().iterator(); // while (i.hasNext()) { // Integer tok = i.next(); // ConcordanceEntry cce = tokens.get(tok); // if (!cce.isCorrected() && !cce.isDisabled() && !cce.isSelected()) { // if (tok < actualPage * tokensPerPage || tok > actualPage * tokensPerPage + tokensInPage) { // addSelected(1); // } // cce.setSelected(true); // } // } // cp.selectAll(); // } else { // // jToggleButton1.setSelected(false); // Iterator<Integer> i = tokens.keySet().iterator(); // while (i.hasNext()) { // Integer tok = i.next(); // ConcordanceEntry cce = tokens.get(tok); // if (!cce.isCorrected() && !cce.isDisabled() && cce.isSelected()) { // // if(!tvRegistry.contains(tok)) { //// if (tok.getID() < actualPage * tokensPerPage || tok.getID() > actualPage * tokensPerPage + tokensInPage) { // removeSelected(1); // } // // cce.setSelected(false); // } // } // cp.deselectAll(); // } // } // }); // // jButton1.setEnabled(false); // // // return toolb; // } // // @Override // public int getPersistenceType() { // return TopComponent.PERSISTENCE_NEVER; // } // // @Override // public void componentActivated() { // this.isActive = true; // this.requestFocusInWindow(true); // if (MainController.findInstance().getLastFocusedTopComponent() != this) { // MainController.findInstance().setLastFocusedTopComponent(this); // } // if (this.isReady()) { // MessageCenter.getInstance().fireTokenMultiDeselectionEvent(new TokenMultiDeselectionEvent(this)); // if (currentTokenID != -1) { // MessageCenter.getInstance().fireTokenSelectionEvent(new TokenSelectionEvent(this, currentTokenID, TokenSelectionType.NORMAL)); // } else { // MessageCenter.getInstance().fireTokenDeselectionEvent(new TokenDeselectionEvent(this, currentTokenID)); // } // } // } // // @Override // public void componentDeactivated() { // this.isActive = false; // } // // @Override // public void dispatchEvent(TokenSelectionEvent e) { // if (this.isActive) { // this.currentTokenID = e.getTokenID(); // } // } // // @Override // public GlobalActions getGlobalActions() { // return this.globalActions; // } // // @Override // public void dispatchMultiSelectionEvent(MultiSelectionEvent e) { // throw new UnsupportedOperationException("Not supported yet."); // } // // @Override // public void dispatchEvent(DocumentChangedEvent e) { // this.close(); // } // // @Override // public void dispatchEvent(TokenDeselectionEvent e) { // if (this.isActive && this.currentTokenID == e.getTokenID()) { // this.currentTokenID = -1; // } // } // // @Override // public boolean isReady() { // return this.isOpen; // } // // @Override // public void zoomFont(int i) { // content.remove(this); // cp.zoomFont(i); // this.fontSize = i; // MainController.findInstance().getDocumentProperties().setProperty("concFontSize", ""+this.fontSize); // content.add(this); // this.revalidate(); // } // // @Override // public int getMaxFontSize() { // return node.getInt("maxFontSize", 40); // } // // @Override // public int getMinFontSize() { // return node.getInt("minFontSize", 5); // } // // @Override // public int getFontSize() { // return this.fontSize; // } // // @Override // public boolean hasImage() { // return true; // } // // @Override // public boolean showImage() { // return this.showImages; // } // // @Override // public void zoomImg(double scale) { // content.remove(this); // cp.zoomImg(scale); // this.imgScale = scale; // MainController.findInstance().getDocumentProperties().setProperty("concImageScale", ""+this.imgScale); // content.add(this); // this.revalidate(); // } // // @Override // public double getMaxScale() { // return node.getDouble("maxScale", 1.5); // } // // @Override // public double getMinScale() { // return node.getDouble("minScale", 0.2); // } // // @Override // public double getScale() { // return this.imgScale; // } // // @Override // public int getPageN() { // return this.actualPage+1; // } // // @Override // public int getMaxPages() { // return (tokens.size() / tokensPerPage) + 1; // } // // public void setShowImages(boolean b) { // this.showImages = b; // } // // @Override // public void gotoPage(final int p) { // // SwingWorker<Boolean, Object> worker = new SwingWorker<Boolean, Object>() { // // @Override // protected Boolean doInBackground() { // // boolean retval = false; // try { // tvRegistry = new TokenVisualizationMultiRegistry(); // concRegistry = new ConcordanceGraphicsRegistry(); // // if (p * tokensPerPage + tokensPerPage >= tokens.size()) { // tokensInPage = tokensPerPage - ((p * tokensPerPage + tokensPerPage) - tokens.size()); // cp = new ConcordancePage(instance, p * tokensPerPage, tokensPerPage - ((p * tokensPerPage + tokensPerPage) - tokens.size())); // } else { // tokensInPage = tokensPerPage; // cp = new ConcordancePage(instance, p * tokensPerPage, tokensPerPage); // } // // retval = true; // // } catch (Exception e) { // retval = false; // } // return retval; // } // // @Override // protected void done() { // try { // boolean retval = get(); // if (retval) { //// cp.setDoubleBuffered(true); // jScrollPane1.setViewportView(cp); // // actualPage = p; // int display = actualPage + 1; // setName(name + " " + display + "/" + getMaxPages()); // MessageCenter.getInstance().firePageChangedEvent(new PageChangedEvent(instance, actualPage)); // content.add(instance); // MainController.findInstance().addToLookup(globalActions); // } else { // new CustomErrorDialog().showDialog("CloneConcordanceView::GotoPage"); // } // } catch (ExecutionException ex) { //// Exceptions.printStackTrace(ex); // } catch (InterruptedException ex) { //// Exceptions.printStackTrace(ex); // } catch (CancellationException ex) { // } // } // }; // MainController.findInstance().removeFromLookup(globalActions); // this.concRegistry.clear(); // content.remove(instance); // this.tvRegistry.clear(); // worker.execute(); // } // // public int getActualTokenID() { // return this.currentTokenID; // } // // void goToNextRow() { // throw new UnsupportedOperationException("Not yet implemented"); // } // // void goToPreviousRow() { // throw new UnsupportedOperationException("Not yet implemented"); // } // // public void addSelected(int i) { // this.numSelected += i; // numSelectedLabel.setText("Entries Selected: " + numSelected); // if (this.numSelected > 0) { // jButton1.setEnabled(true); // } // } // // public void removeSelected(int i) { // this.numSelected -= i; // numSelectedLabel.setText("Entries Selected: " + numSelected); // if (this.numSelected == 0) { // jToggleButton1.setSelected(false); // jToggleButton2.setSelected(false); // jButton1.setEnabled(false); // } else if (this.numSelected < 0) { // new CustomErrorDialog().showDialog("ClassicConcordance::removeSelected < 0"); // } // } // // public void setSelected(Integer tok, boolean b) { // tokens.get(tok).setSelected(b); // } // // public TokenVisualizationMultiRegistry getTVRegistry() { // return this.tvRegistry; // } // // public LinkedHashMap<Integer, ConcordanceEntry> getEntryRegistry() { // return this.tokens; // } // // @Override // public boolean isEditing() { // return false; // } // // public int getLeftContextSize() { // return this.leftContextSize; // } // // public int getRightContextSize() { // return this.rightContextSize; // } // // public void addDisabled() { // disabled++; // toDo--; // numToDoLabel.setText("Entries to process: " + toDo); // numDisabledLabel.setText("Entries Disabled: " + disabled); // } // // public void removeDisabled() { // disabled--; // toDo++; // numToDoLabel.setText("Entries to process: " + toDo); // numDisabledLabel.setText("Entries Disabled: " + disabled); // } // // private void correct() { // ProgressRunnable cr = new Corrector(); // ProgressUtils.showProgressDialogAndRun(cr, "Correcting", true); // this.requestFocusInWindow(true); // } // // void toggleImages(boolean b) { // cp.toggleImages(b); // } // // public ConcordanceGraphicsRegistry getConcordanceRegistry() { // return this.concRegistry; // } // // @Deprecated // void updateEntriesIndices( int startindex, int discr) { // LinkedHashMap<Integer, ConcordanceEntry> temp = new LinkedHashMap<>(); // Iterator i = tokens.keySet().iterator(); // while ( i.hasNext()) { // int index = (Integer) i.next(); // if( index > startindex) { // temp.put(index+discr, tokens.get(index)); // } // } // tokens = temp; // } // // @Override // public void dispatchEvent(TokenStatusEvent e) { // TokenStatusType tst = e.getType(); // // if( tst == TokenStatusType.SETCORRECTED) { // ArrayList<AbstractTokenVisualization> tokvs = this.getTVRegistry().getVisualizations( e.getPOIID() ); // if( tokvs != null) { // Iterator<AbstractTokenVisualization> tokv_it = tokvs.iterator(); // while( tokv_it.hasNext() ) { // TokenVisualization tv = (TokenVisualization) tokv_it.next(); // tv.setCorrected(((SetCorrectedEvent) e).getSetTo()); // if( tokens.containsKey(tv.getTokenID())) { // cp.grayOut(tv, ((SetCorrectedEvent) e).getSetTo()); // } // } // } // // } else if( tst == TokenStatusType.CORRECTED) { // ArrayList<AbstractTokenVisualization> tokvs = this.getTVRegistry().getVisualizations( e.getPOIID() ); // if( tokvs != null) { // Iterator<AbstractTokenVisualization> tokv_it = tokvs.iterator(); // while( tokv_it.hasNext() ) { // TokenVisualization tv = (TokenVisualization) tokv_it.next(); // tv.setCorrected(((SetCorrectedEvent) e).getSetTo()); // if( tokens.containsKey(tv.getTokenID())) { // cp.grayOut(tv, ((SetCorrectedEvent) e).getSetTo()); // } // } // } // // } else if( tst == TokenStatusType.MERGED_RIGHT) { // cp.update(e.getType(), e.getPOIID(), ((MergeEvent) e).getAffectedTokenIds()); // // } else if( tst == TokenStatusType.SPLIT) { // cp.update(e.getType(), e.getPOIID(), ((SplitEvent) e).getAffectedTokenIds()); // // } else if( tst == TokenStatusType.DELETE) { // cp.update(e.getType(), e.getPOIID(), ((DeleteEvent) e).getAffectedTokenIds()); // // } else if( tst == TokenStatusType.INSERT) { // cp.update(e.getType(), e.getPOIID(), ((InsertEvent) e).getAffectedTokenIds()); // // // TODO throw unknown tokenstatusType exception // } else { // // } // } // // private class Builder implements ProgressRunnable { // // @Override // public Object run(ProgressHandle ph) { // ph.progress("Building Concordance"); // ph.setDisplayName("Concordance construction"); // // if (tokens.size() < tokensPerPage) { // tokensInPage = tokens.size(); // cp = new ConcordancePage(instance, 0, tokens.size()); // } else { // tokensInPage = tokensPerPage; // cp = new ConcordancePage(instance, 0, tokensPerPage); // } // // ph.progress("Showing Concordance"); // //// cp.setDoubleBuffered(true); // jScrollPane1.setViewportView(cp); // // jScrollPane1.getHorizontalScrollBar().setValue(cp.getPreferredSize().width / 10); // totalentriesLabel.setText("Entries Total: " + tokens.size()); // toDo = tokens.size(); // numToDoLabel.setText("Entries to process: " + toDo); // isOpen = true; // return 0; // } // } // // @SuppressWarnings({"SleepWhileInLoop"}) // private class Corrector implements ProgressRunnable { // // @Override // public Object run(ProgressHandle ph) { // try { // ph.progress("starting correction"); // // Object[] o = tokens.keySet().toArray(); // HashMap<Integer, String> tokensToCorrect = new HashMap<>(); // int total = numSelected; // int corrcount = 0; // for (int i = 0; i < o.length; i++) { // int tokenID = (Integer) o[i]; // Token tok = MainController.findInstance().getDocument().getTokenByID(tokenID); // ConcordanceEntry cce = tokens.get(tokenID); // if (cce.isSelected() && !cce.isCorrected()) { // // corrcount++; //// int k = actualPage * tokensPerPage; //// int j = actualPage * tokensPerPage + tokensInPage; //// if (i < k || i > j) { //// removeSelected(1); //// } // if( corrcount % 20 == 0) { // ph.progress("correcting token " + corrcount + " of " + total); // } // // tokensToCorrect.put(tokenID, cce.getCandidateString()); //// IOProvider.getDefault().getIO("Nachrichten", false).getOut().println("Correct " + cce.getCandidateString()); //// MainController.findInstance().correctTokenByString(tokenID, cce.getCandidateString()); // MainController.findInstance().addToLog("CloneConcordanceView " + name + " # correct # " + tok.getWOCR() + " # " + cce.getCandidateString()); // cce.setSelected(false); // cce.setCorrected(true); //// cce.setFallbackText(currentType); // corrected++; // toDo--; // if( !tvRegistry.contains(tok)) { // removeSelected(1); // } //// Thread.sleep(10); // } // } // MainController.findInstance().correctTokensByString(tokensToCorrect); // // if (corrected == tokens.size()) { // jButton1.setEnabled(false); // jToggleButton1.setEnabled(false); // jToggleButton2.setEnabled(false); // } // numToDoLabel.setText("Entries to process: " + toDo); // numCorrectedLabel.setText("Entries Corrected: " + corrected); // return 1; // } catch (Exception ex) { // return 0; // } // } // } //}