Révision 3953
| TXM/trunk/bundles/org.txm.queryindex.rcp/plugin.xml (revision 3953) | ||
|---|---|---|
| 30 | 30 |
point="org.eclipse.ui.commands"> |
| 31 | 31 |
<command |
| 32 | 32 |
categoryId="org.txm.rcp.category.txm" |
| 33 |
defaultHandler="org.txm.queryindex.rcp.commands.function.ComputeQueryIndex"
|
|
| 33 |
defaultHandler="org.txm.queryindex.rcp.commands.ComputeQueryIndex" |
|
| 34 | 34 |
id="org.txm.rcp.commands.function.ComputeQueryIndex" |
| 35 | 35 |
name="%command.name"> |
| 36 | 36 |
</command> |
| TXM/trunk/bundles/org.txm.queryindex.rcp/META-INF/MANIFEST.MF (revision 3953) | ||
|---|---|---|
| 1 | 1 |
Manifest-Version: 1.0 |
| 2 |
Export-Package: org.txm.queryindex.core.functions,org.txm.queryindex.r |
|
| 3 |
cp.commands.function,org.txm.queryindex.rcp.commands.link,org.txm.que |
|
| 4 |
ryindex.rcp.editors,queryindexrcp,queryindexrcp.actions,queryindexrcp |
|
| 5 |
.adapters |
|
| 2 |
Export-Package: org.txm.queryindex.core.functions, |
|
| 3 |
org.txm.queryindex.rcp.commands, |
|
| 4 |
org.txm.queryindex.rcp.editors, |
|
| 5 |
queryindexrcp, |
|
| 6 |
queryindexrcp.adapters |
|
| 6 | 7 |
Bundle-SymbolicName: org.txm.queryindex.rcp;singleton:=true |
| 7 | 8 |
Bundle-Version: 1.0.0.qualifier |
| 8 | 9 |
Bundle-Name: %Bundle-Name |
| TXM/trunk/bundles/org.txm.queryindex.rcp/src/queryindexrcp/actions/SampleAction.java (revision 3953) | ||
|---|---|---|
| 1 |
package queryindexrcp.actions; |
|
| 2 |
|
|
| 3 |
import org.eclipse.jface.action.IAction; |
|
| 4 |
import org.eclipse.jface.viewers.ISelection; |
|
| 5 |
import org.eclipse.ui.IWorkbenchWindow; |
|
| 6 |
import org.eclipse.ui.IWorkbenchWindowActionDelegate; |
|
| 7 |
import org.eclipse.jface.dialogs.MessageDialog; |
|
| 8 |
|
|
| 9 |
/** |
|
| 10 |
* Our sample action implements workbench action delegate. |
|
| 11 |
* The action proxy will be created by the workbench and |
|
| 12 |
* shown in the UI. When the user tries to use the action, |
|
| 13 |
* this delegate will be created and execution will be |
|
| 14 |
* delegated to it. |
|
| 15 |
* @see IWorkbenchWindowActionDelegate |
|
| 16 |
*/ |
|
| 17 |
public class SampleAction implements IWorkbenchWindowActionDelegate {
|
|
| 18 |
private IWorkbenchWindow window; |
|
| 19 |
/** |
|
| 20 |
* The constructor. |
|
| 21 |
*/ |
|
| 22 |
public SampleAction() {
|
|
| 23 |
} |
|
| 24 |
|
|
| 25 |
/** |
|
| 26 |
* The action has been activated. The argument of the |
|
| 27 |
* method represents the 'real' action sitting |
|
| 28 |
* in the workbench UI. |
|
| 29 |
* @see IWorkbenchWindowActionDelegate#run |
|
| 30 |
*/ |
|
| 31 |
public void run(IAction action) {
|
|
| 32 |
MessageDialog.openInformation( |
|
| 33 |
window.getShell(), |
|
| 34 |
"QueryIndexRCP", //$NON-NLS-1$ |
|
| 35 |
"Hello, Eclipse world"); //$NON-NLS-1$ |
|
| 36 |
} |
|
| 37 |
|
|
| 38 |
/** |
|
| 39 |
* Selection in the workbench has been changed. We |
|
| 40 |
* can change the state of the 'real' action here |
|
| 41 |
* if we want, but this can only happen after |
|
| 42 |
* the delegate has been created. |
|
| 43 |
* @see IWorkbenchWindowActionDelegate#selectionChanged |
|
| 44 |
*/ |
|
| 45 |
public void selectionChanged(IAction action, ISelection selection) {
|
|
| 46 |
} |
|
| 47 |
|
|
| 48 |
/** |
|
| 49 |
* We can use this method to dispose of any system |
|
| 50 |
* resources we previously allocated. |
|
| 51 |
* @see IWorkbenchWindowActionDelegate#dispose |
|
| 52 |
*/ |
|
| 53 |
public void dispose() {
|
|
| 54 |
} |
|
| 55 |
|
|
| 56 |
/** |
|
| 57 |
* We will cache window object in order to |
|
| 58 |
* be able to provide parent shell for the message dialog. |
|
| 59 |
* @see IWorkbenchWindowActionDelegate#init |
|
| 60 |
*/ |
|
| 61 |
public void init(IWorkbenchWindow window) {
|
|
| 62 |
this.window = window; |
|
| 63 |
} |
|
| 64 |
} |
|
| TXM/trunk/bundles/org.txm.queryindex.rcp/src/org/txm/queryindex/rcp/editors/QueryIndexEditor.java (revision 3953) | ||
|---|---|---|
| 330 | 330 |
return Status.CANCEL_STATUS; |
| 331 | 331 |
} |
| 332 | 332 |
|
| 333 |
if (monitor.isCanceled()) |
|
| 333 |
if (monitor.isCanceled()) {
|
|
| 334 | 334 |
return Status.CANCEL_STATUS; |
| 335 |
|
|
| 335 |
} |
|
| 336 | 336 |
queryindex.sortLines(SortMode.FREQUNIT, true); |
| 337 | 337 |
|
| 338 |
if (monitor.isCanceled()) |
|
| 338 |
if (monitor.isCanceled()) {
|
|
| 339 | 339 |
return Status.CANCEL_STATUS; |
| 340 |
|
|
| 340 |
} |
|
| 341 | 341 |
this.acquireSemaphore(); |
| 342 | 342 |
this.releaseSemaphore(); |
| 343 | 343 |
|
| 344 | 344 |
final String message = Messages.QueryIndexEditor_3; |
| 345 | 345 |
|
| 346 |
if (monitor.isCanceled()) |
|
| 346 |
if (monitor.isCanceled()) {
|
|
| 347 | 347 |
return Status.CANCEL_STATUS; |
| 348 |
|
|
| 348 |
} |
|
| 349 | 349 |
monitor.worked(95); |
| 350 | 350 |
// refresh ui |
| 351 | 351 |
syncExec(new Runnable() {
|
| ... | ... | |
| 364 | 364 |
setPartName(title); |
| 365 | 365 |
|
| 366 | 366 |
queryWidget.memorize(); |
| 367 |
nblinesperpage = NLignePPageSpinner |
|
| 368 |
.getSelection(); |
|
| 367 |
nblinesperpage = NLignePPageSpinner.getSelection(); |
|
| 369 | 368 |
|
| 370 |
fillDisplayArea(0, |
|
| 371 |
NLignePPageSpinner.getSelection()); |
|
| 369 |
fillDisplayArea(0, NLignePPageSpinner.getSelection()); |
|
| 372 | 370 |
|
| 373 | 371 |
if (line != null) {
|
| 374 | 372 |
queryWidget.setText(""); //$NON-NLS-1$
|
| ... | ... | |
| 418 | 416 |
|
| 419 | 417 |
final Group paramArea = getExtendedParametersGroup(); |
| 420 | 418 |
|
| 421 |
|
|
| 422 | 419 |
GLComposite resultArea = getResultArea(); |
| 423 | 420 |
|
| 424 | 421 |
// on créé une Query, ici le pivot de la concordance est "[]" |
| ... | ... | |
| 436 | 433 |
// true)); |
| 437 | 434 |
|
| 438 | 435 |
// [ (v)] |
| 439 |
queryWidget = new NamedAssistedQueryWidget(queryArea, SWT.DROP_DOWN, |
|
| 440 |
this.corpus); |
|
| 436 |
queryWidget = new NamedAssistedQueryWidget(queryArea, SWT.DROP_DOWN, this.corpus); |
|
| 441 | 437 |
GridData layoutData = new GridData(GridData.FILL); |
| 442 | 438 |
layoutData.horizontalAlignment = GridData.FILL; |
| 443 | 439 |
layoutData.grabExcessHorizontalSpace = true; |
| ... | ... | |
| 462 | 458 |
loadFromFile.setEnabled(true); |
| 463 | 459 |
loadFromFile.setText(Messages.QueryIndexEditor_4); |
| 464 | 460 |
loadFromFile |
| 465 |
.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_CENTER));
|
|
| 461 |
.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_CENTER)); |
|
| 466 | 462 |
loadFromFile.addSelectionListener(new SelectionListener() {
|
| 467 | 463 |
|
| 468 | 464 |
@Override |
| 469 | 465 |
public void widgetSelected(SelectionEvent e) {
|
| 470 | 466 |
File propFile = null; |
| 471 |
if (LastOpened.getFile(ID) != null) |
|
| 467 |
if (LastOpened.getFile(ID) != null) {
|
|
| 472 | 468 |
propFile = new File(LastOpened.getFolder(ID)); |
| 473 |
|
|
| 469 |
} |
|
| 474 | 470 |
FileDialog dialog = new FileDialog(getShell(), SWT.OPEN); |
| 475 | 471 |
String[] exts = { "*.properties" }; // $NON-NLS //$NON-NLS-1$
|
| 476 | 472 |
dialog.setFilterExtensions(exts); |
| ... | ... | |
| 560 | 556 |
NLignePPageSpinner.setSelection(100); |
| 561 | 557 |
NLignePPageSpinner.setIncrement(1); |
| 562 | 558 |
NLignePPageSpinner.setPageIncrement(100); |
| 563 |
NLignePPageSpinner.setLayoutData(new GridData( |
|
| 564 |
GridData.VERTICAL_ALIGN_END)); |
|
| 559 |
NLignePPageSpinner.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_END)); |
|
| 565 | 560 |
NLignePPageSpinner.addSelectionListener(new SelectionListener() {
|
| 566 | 561 |
|
| 567 | 562 |
@Override |
| ... | ... | |
| 579 | 574 |
// infosArea.setLayout(new GridLayout(6, false)); |
| 580 | 575 |
|
| 581 | 576 |
navigationArea = new NavigationWidget(filtercontrols, SWT.NONE); |
| 582 |
navigationArea.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, true, |
|
| 583 |
false)); |
|
| 577 |
navigationArea.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, true, false)); |
|
| 584 | 578 |
|
| 585 | 579 |
navigationArea.addFirstListener(new SelectionListener() {
|
| 586 | 580 |
|
| ... | ... | |
| 601 | 595 |
|
| 602 | 596 |
@Override |
| 603 | 597 |
public void widgetSelected(SelectionEvent e) {
|
| 604 |
int top = (queryindex.getV() / NLignePPageSpinner |
|
| 605 |
.getSelection()) * NLignePPageSpinner.getSelection(); |
|
| 598 |
int top = (queryindex.getV() / NLignePPageSpinner.getSelection()) * NLignePPageSpinner.getSelection(); |
|
| 606 | 599 |
int bottom = top + NLignePPageSpinner.getSelection(); |
| 607 | 600 |
fillDisplayArea(top, bottom); |
| 608 | 601 |
viewer.getTable().select(0); |
| ... | ... | |
| 631 | 624 |
@Override |
| 632 | 625 |
public void widgetSelected(SelectionEvent e) {
|
| 633 | 626 |
int top = topLine - NLignePPageSpinner.getSelection(); |
| 634 |
if (top < 0) |
|
| 627 |
if (top < 0) {
|
|
| 635 | 628 |
top = 0; |
| 629 |
} |
|
| 636 | 630 |
int bottom = top + NLignePPageSpinner.getSelection(); |
| 637 | 631 |
fillDisplayArea(top, bottom); |
| 638 | 632 |
viewer.getTable().select(0); |
| ... | ... | |
| 652 | 646 |
lFminInfo = new Label(filtercontrols, SWT.NONE); |
| 653 | 647 |
lFminInfo.setText(""); //$NON-NLS-1$
|
| 654 | 648 |
lFminInfo |
| 655 |
.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false));
|
|
| 649 |
.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false)); |
|
| 656 | 650 |
|
| 657 | 651 |
lFmaxInfo = new Label(filtercontrols, SWT.NONE); |
| 658 | 652 |
lFmaxInfo.setText(""); //$NON-NLS-1$
|
| 659 | 653 |
lFmaxInfo |
| 660 |
.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false));
|
|
| 654 |
.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false)); |
|
| 661 | 655 |
|
| 662 | 656 |
// results |
| 663 | 657 |
viewer = new TableViewer(resultArea, SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER | SWT.VIRTUAL); |
| ... | ... | |
| 665 | 659 |
viewer.getTable().setHeaderVisible(true); |
| 666 | 660 |
viewer.getTable().addKeyListener(new TableKeyListener(viewer)); |
| 667 | 661 |
viewer.getTable().setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true)); |
| 668 |
if (corpus != null && corpus.getProject().getFont() != null |
|
| 669 |
&& corpus.getProject().getFont().length() > 0) {
|
|
| 662 |
if (corpus != null && corpus.getProject().getFont() != null && corpus.getProject().getFont().length() > 0) {
|
|
| 670 | 663 |
Font old = viewer.getTable().getFont(); |
| 671 | 664 |
FontData fD = old.getFontData()[0]; |
| 672 |
Font font = new Font(Display.getCurrent(), corpus.getProject().getFont(), |
|
| 673 |
fD.getHeight(), fD.getStyle()); |
|
| 665 |
Font font = new Font(Display.getCurrent(), corpus.getProject().getFont(), fD.getHeight(), fD.getStyle()); |
|
| 674 | 666 |
viewer.getTable().setFont(font); |
| 675 | 667 |
} |
| 676 | 668 |
|
| ... | ... | |
| 682 | 674 |
|
| 683 | 675 |
@Override |
| 684 | 676 |
public void mouseDoubleClick(MouseEvent e) {
|
| 685 |
Point mouseposition = new Point(e.x |
|
| 686 |
+ viewer.getTable().getHorizontalBar().getSelection(), |
|
| 687 |
e.y); |
|
| 677 |
Point mouseposition = new Point(e.x + viewer.getTable().getHorizontalBar().getSelection(), e.y); |
|
| 688 | 678 |
int col = getPointedColumn(mouseposition); |
| 689 | 679 |
if (col == 1) {
|
| 690 | 680 |
// IndexToConcordance.link(self, |
| ... | ... | |
| 802 | 792 |
// rmv/creates parts columns if needed |
| 803 | 793 |
if (this.partition != null) {
|
| 804 | 794 |
List<String> partnames = this.partition.getPartNames(); |
| 805 |
if (partnames.size() > 1) |
|
| 795 |
if (partnames.size() > 1) {
|
|
| 806 | 796 |
if (viewer.getTable().getColumnCount() < partnames.size() + 3) {
|
| 807 |
for (int i = 0; i < partnames.size(); i++) {
|
|
| 808 |
final TableColumn partColumn = new TableColumn( |
|
| 809 |
viewer.getTable(), SWT.RIGHT); |
|
| 810 |
try {
|
|
| 811 |
partColumn.setText(partnames.get(i) + " t=" + partition.getParts().get(i).getSize()); //$NON-NLS-1$ |
|
| 812 |
} |
|
| 813 |
catch (CqiClientException e1) {
|
|
| 814 |
Log.printStackTrace(e1); |
|
| 815 |
return; |
|
| 816 |
} |
|
| 817 |
partColumn.setToolTipText(partnames.get(i)); |
|
| 818 |
partColumn.setWidth(100); |
|
| 819 |
partColumn.addSelectionListener(new SelectionListener() {
|
|
| 820 |
|
|
| 821 |
@Override |
|
| 822 |
public void widgetSelected(SelectionEvent e) {
|
|
| 823 |
if (viewer.getTable().getSortColumn() != partColumn) {
|
|
| 824 |
viewer.getTable().setSortColumn(partColumn); |
|
| 825 |
viewer.getTable().setSortDirection(SWT.UP); |
|
| 826 |
queryindex.sortLines(SortMode.FREQUNIT, false); |
|
| 797 |
for (int i = 0; i < partnames.size(); i++) {
|
|
| 798 |
final TableColumn partColumn = new TableColumn(viewer.getTable(), SWT.RIGHT); |
|
| 799 |
try {
|
|
| 800 |
partColumn.setText(partnames.get(i) + " t=" + partition.getParts().get(i).getSize()); //$NON-NLS-1$ |
|
| 827 | 801 |
} |
| 828 |
else {
|
|
| 829 |
if (viewer.getTable().getSortDirection() == SWT.UP) {
|
|
| 830 |
viewer.getTable().setSortDirection(SWT.DOWN); |
|
| 831 |
queryindex.sortLines(SortMode.FREQUNIT, true); |
|
| 832 |
} |
|
| 833 |
else {
|
|
| 834 |
viewer.getTable().setSortDirection(SWT.UP); |
|
| 835 |
queryindex.sortLines(SortMode.FREQUNIT, false); |
|
| 836 |
} |
|
| 802 |
catch (CqiClientException e1) {
|
|
| 803 |
Log.printStackTrace(e1); |
|
| 804 |
return; |
|
| 837 | 805 |
} |
| 838 |
fillDisplayArea(topLine, bottomLine); |
|
| 806 |
partColumn.setToolTipText(partnames.get(i)); |
|
| 807 |
partColumn.setWidth(100); |
|
| 808 |
partColumn.addSelectionListener(new SelectionListener() {
|
|
| 809 |
|
|
| 810 |
@Override |
|
| 811 |
public void widgetSelected(SelectionEvent e) {
|
|
| 812 |
if (viewer.getTable().getSortColumn() != partColumn) {
|
|
| 813 |
viewer.getTable().setSortColumn(partColumn); |
|
| 814 |
viewer.getTable().setSortDirection(SWT.UP); |
|
| 815 |
queryindex.sortLines(SortMode.FREQUNIT, false); |
|
| 816 |
} |
|
| 817 |
else {
|
|
| 818 |
if (viewer.getTable().getSortDirection() == SWT.UP) {
|
|
| 819 |
viewer.getTable().setSortDirection(SWT.DOWN); |
|
| 820 |
queryindex.sortLines(SortMode.FREQUNIT, true); |
|
| 821 |
} |
|
| 822 |
else {
|
|
| 823 |
viewer.getTable().setSortDirection(SWT.UP); |
|
| 824 |
queryindex.sortLines(SortMode.FREQUNIT, false); |
|
| 825 |
} |
|
| 826 |
} |
|
| 827 |
fillDisplayArea(topLine, bottomLine); |
|
| 828 |
} |
|
| 829 |
|
|
| 830 |
@Override |
|
| 831 |
public void widgetDefaultSelected(SelectionEvent e) {}
|
|
| 832 |
}); |
|
| 839 | 833 |
} |
| 840 |
|
|
| 841 |
@Override |
|
| 842 |
public void widgetDefaultSelected(SelectionEvent e) {}
|
|
| 843 |
}); |
|
| 844 | 834 |
} |
| 845 |
}
|
|
| 835 |
} |
|
| 846 | 836 |
} |
| 847 | 837 |
separatorColumn = new TableColumn(viewer.getTable(), SWT.LEFT); |
| 848 | 838 |
separatorColumn.setText(""); //$NON-NLS-1$
|
| ... | ... | |
| 856 | 846 |
/** |
| 857 | 847 |
* Gets the pointed column. |
| 858 | 848 |
* |
| 859 |
* @param mouseposition |
|
| 860 |
* the mouseposition
|
|
| 849 |
* @param mouseposition the mouseposition
|
|
| 850 |
* |
|
| 861 | 851 |
* @return the pointed column |
| 862 | 852 |
*/ |
| 863 | 853 |
public int getPointedColumn(Point mouseposition) {
|
| ... | ... | |
| 880 | 870 |
/** |
| 881 | 871 |
* Creates the context menu. |
| 882 | 872 |
* |
| 883 |
* @param tableViewer |
|
| 884 |
* the table viewer |
|
| 873 |
* @param tableViewer the table viewer |
|
| 885 | 874 |
*/ |
| 886 | 875 |
private void createContextMenu(TableViewer tableViewer) {
|
| 876 |
|
|
| 887 | 877 |
MenuManager menuManager = new MenuManager(); |
| 888 | 878 |
Menu menu = menuManager.createContextMenu(tableViewer.getTable()); |
| 889 | 879 |
|
| ... | ... | |
| 898 | 888 |
* Initialize fields. |
| 899 | 889 |
*/ |
| 900 | 890 |
public void initializeFields() {
|
| 891 |
|
|
| 901 | 892 |
if (this.queryindex != null) {
|
| 902 | 893 |
|
| 903 | 894 |
if (queryindex.getPartition() != null) |
| ... | ... | |
| 930 | 921 |
/** |
| 931 | 922 |
* Fill display area. |
| 932 | 923 |
* |
| 933 |
* @param from |
|
| 934 |
* the from |
|
| 935 |
* @param to |
|
| 936 |
* the to |
|
| 924 |
* @param from the from |
|
| 925 |
* @param to the to |
|
| 937 | 926 |
*/ |
| 938 | 927 |
public void fillDisplayArea(int from, int to) {
|
| 939 | 928 |
// System.out.println("call fill from "+from+" to "+to);
|
| ... | ... | |
| 943 | 932 |
if (queryindex.getV() > 0) {
|
| 944 | 933 |
lines = queryindex.getLines(from, to); |
| 945 | 934 |
} |
| 946 |
else |
|
| 935 |
else {
|
|
| 947 | 936 |
lines = new ArrayList<>(); |
| 948 |
|
|
| 937 |
} |
|
| 949 | 938 |
navigationArea.setInfoLineText("" + (from + 1), //$NON-NLS-1$
|
| 950 | 939 |
"-" + (to) + " / " + queryindex.getV()); //$NON-NLS-1$ //$NON-NLS-2$ |
| 951 | 940 |
navigationArea.setPreviousEnabled(from > 0); |
| ... | ... | |
| 978 | 967 |
*/ |
| 979 | 968 |
@Override |
| 980 | 969 |
public String getTitleToolTip() {
|
| 970 |
|
|
| 981 | 971 |
if (queryindex != null) {
|
| 982 |
String str = Messages.QueryIndexEditor_11; |
|
| 983 | 972 |
|
| 973 |
String str = Messages.QueryIndexEditor_11; |
|
| 984 | 974 |
return str; |
| 985 | 975 |
} |
| 986 | 976 |
return ""; //$NON-NLS-1$ |
| ... | ... | |
| 993 | 983 |
*/ |
| 994 | 984 |
@Override |
| 995 | 985 |
public void _setFocus() {
|
| 986 |
|
|
| 996 | 987 |
this.queryWidget.setFocus(); |
| 997 | 988 |
StatusLine.setMessage(IndexUIMessages.openingTheIndexResults); |
| 998 | 989 |
} |
| ... | ... | |
| 1003 | 994 |
* @return the corpus |
| 1004 | 995 |
*/ |
| 1005 | 996 |
public CQPCorpus getCorpus() {
|
| 997 |
|
|
| 1006 | 998 |
return this.corpus; |
| 1007 | 999 |
} |
| 1008 | 1000 |
|
| ... | ... | |
| 1012 | 1004 |
* @return the partition |
| 1013 | 1005 |
*/ |
| 1014 | 1006 |
public Partition getPartition() {
|
| 1007 |
|
|
| 1015 | 1008 |
return this.partition; |
| 1016 | 1009 |
} |
| 1017 | 1010 |
|
| 1018 | 1011 |
/** |
| 1019 | 1012 |
* Sets the focus. |
| 1020 | 1013 |
* |
| 1021 |
* @param query |
|
| 1022 |
* the new focus |
|
| 1014 |
* @param query the new focus |
|
| 1023 | 1015 |
*/ |
| 1024 | 1016 |
public void setFocus(String query) {
|
| 1017 |
|
|
| 1025 | 1018 |
this.queryWidget.setText(query); |
| 1026 | 1019 |
} |
| 1027 | 1020 |
|
| ... | ... | |
| 1031 | 1024 |
* @return the index |
| 1032 | 1025 |
*/ |
| 1033 | 1026 |
public Object getIndex() {
|
| 1027 |
|
|
| 1034 | 1028 |
return this.queryindex; |
| 1035 | 1029 |
} |
| 1036 | 1030 |
} |
| TXM/trunk/bundles/org.txm.queryindex.rcp/src/org/txm/queryindex/rcp/commands/ComputeQueryIndex.java (revision 3953) | ||
|---|---|---|
| 1 |
// Copyright © 2010-2020 ENS de Lyon., University of Franche-Comté |
|
| 2 |
// Copyright © 2007-2010 ENS de Lyon, CNRS, INRP, University of |
|
| 3 |
// Lyon 2, University of Franche-Comté, University of Nice |
|
| 4 |
// Sophia Antipolis, University of Paris 3. |
|
| 5 |
// |
|
| 6 |
// The TXM platform is free software: you can redistribute it |
|
| 7 |
// and/or modify it under the terms of the GNU General Public |
|
| 8 |
// License as published by the Free Software Foundation, |
|
| 9 |
// either version 2 of the License, or (at your option) any |
|
| 10 |
// later version. |
|
| 11 |
// |
|
| 12 |
// The TXM platform is distributed in the hope that it will be |
|
| 13 |
// useful, but WITHOUT ANY WARRANTY; without even the implied |
|
| 14 |
// warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR |
|
| 15 |
// PURPOSE. See the GNU General Public License for more |
|
| 16 |
// details. |
|
| 17 |
// |
|
| 18 |
// You should have received a copy of the GNU General |
|
| 19 |
// Public License along with the TXM platform. If not, see |
|
| 20 |
// http://www.gnu.org/licenses. |
|
| 21 |
// |
|
| 22 |
// |
|
| 23 |
// |
|
| 24 |
// $LastChangedDate:$ |
|
| 25 |
// $LastChangedRevision:$ |
|
| 26 |
// $LastChangedBy:$ |
|
| 27 |
// |
|
| 28 |
package org.txm.queryindex.rcp.commands; |
|
| 29 |
|
|
| 30 |
import org.eclipse.core.commands.AbstractHandler; |
|
| 31 |
import org.eclipse.core.commands.ExecutionEvent; |
|
| 32 |
import org.eclipse.core.commands.ExecutionException; |
|
| 33 |
import org.eclipse.jface.viewers.IStructuredSelection; |
|
| 34 |
import org.eclipse.ui.IEditorPart; |
|
| 35 |
import org.eclipse.ui.IWorkbenchPage; |
|
| 36 |
import org.eclipse.ui.handlers.HandlerUtil; |
|
| 37 |
import org.txm.queryindex.core.functions.QueryIndex; |
|
| 38 |
import org.txm.queryindex.rcp.editors.QueryIndexEditor; |
|
| 39 |
import org.txm.index.rcp.messages.IndexUIMessages; |
|
| 40 |
import org.txm.rcp.StatusLine; |
|
| 41 |
import org.txm.rcp.TXMWindows; |
|
| 42 |
import org.txm.rcp.editors.TXMResultEditorInput; |
|
| 43 |
import org.txm.rcp.handlers.BaseAbstractHandler; |
|
| 44 |
import org.txm.searchengine.cqp.corpus.CQPCorpus; |
|
| 45 |
import org.txm.searchengine.cqp.corpus.Partition; |
|
| 46 |
import org.txm.utils.logger.Log; |
|
| 47 |
|
|
| 48 |
/** |
|
| 49 |
* Open the Query Index Editor |
|
| 50 |
* |
|
| 51 |
* @author mdecorde. |
|
| 52 |
*/ |
|
| 53 |
public class ComputeQueryIndex extends BaseAbstractHandler {
|
|
| 54 |
|
|
| 55 |
/** The ID. */ |
|
| 56 |
public static String ID = "org.txm.rcp.commands.function.ComputeQueryIndex"; //$NON-NLS-1$ |
|
| 57 |
|
|
| 58 |
/** The selection. */ |
|
| 59 |
private IStructuredSelection selection; |
|
| 60 |
|
|
| 61 |
/* (non-Javadoc) |
|
| 62 |
* @see org.eclipse.core.commands.AbstractHandler#execute(org.eclipse.core.commands.ExecutionEvent) |
|
| 63 |
*/ |
|
| 64 |
@Override |
|
| 65 |
public Object execute(ExecutionEvent event) throws ExecutionException {
|
|
| 66 |
Log.info("Compute QueryIndex: start");
|
|
| 67 |
selection = this.getCorporaViewSelection(event); |
|
| 68 |
|
|
| 69 |
Object s = selection.getFirstElement(); |
|
| 70 |
if (s instanceof CQPCorpus) {
|
|
| 71 |
final CQPCorpus corpus = (CQPCorpus) s; |
|
| 72 |
openEditor(corpus); |
|
| 73 |
} else if (s instanceof Partition) {
|
|
| 74 |
final Partition partition = (Partition) s; |
|
| 75 |
openEditor(partition); |
|
| 76 |
} else {
|
|
| 77 |
Log.severe("Can not compute QueryIndex with: "+s);
|
|
| 78 |
} |
|
| 79 |
|
|
| 80 |
return null; |
|
| 81 |
} |
|
| 82 |
|
|
| 83 |
public static void openEditor(CQPCorpus corpus) {
|
|
| 84 |
IWorkbenchPage page = TXMWindows.getActiveWindow().getActivePage(); |
|
| 85 |
TXMResultEditorInput<QueryIndex> editorInput = new TXMResultEditorInput<QueryIndex>(new QueryIndex(corpus)); |
|
| 86 |
try {
|
|
| 87 |
StatusLine.setMessage(IndexUIMessages.openingIndexResults); |
|
| 88 |
IEditorPart editor = page.openEditor(editorInput,QueryIndexEditor.ID); |
|
| 89 |
if (editor instanceof QueryIndexEditor) {
|
|
| 90 |
QueryIndexEditor voceditor = (QueryIndexEditor)editor; |
|
| 91 |
voceditor.initializeFields(); |
|
| 92 |
} |
|
| 93 |
} catch (Exception e) {
|
|
| 94 |
Log.printStackTrace(e); |
|
| 95 |
} |
|
| 96 |
} |
|
| 97 |
|
|
| 98 |
public static void openEditor(Partition partition) {
|
|
| 99 |
IWorkbenchPage page = TXMWindows.getActiveWindow().getActivePage(); |
|
| 100 |
TXMResultEditorInput<QueryIndex> editorInput = new TXMResultEditorInput<QueryIndex>(new QueryIndex(partition)); |
|
| 101 |
try {
|
|
| 102 |
StatusLine.setMessage(IndexUIMessages.openingIndexResults); |
|
| 103 |
QueryIndexEditor voceditor = (QueryIndexEditor) page |
|
| 104 |
.openEditor(editorInput, QueryIndexEditor.ID); |
|
| 105 |
voceditor.initializeFields(); |
|
| 106 |
} catch (Exception e) {
|
|
| 107 |
Log.printStackTrace(e); |
|
| 108 |
} |
|
| 109 |
} |
|
| 110 |
} |
|
| 0 | 111 | |
| TXM/trunk/bundles/org.txm.queryindex.rcp/src/org/txm/queryindex/rcp/commands/QueryIndexToLexicalTable.java (revision 3953) | ||
|---|---|---|
| 1 |
// Copyright © 2010-2020 ENS de Lyon., University of Franche-Comté |
|
| 2 |
// Copyright © 2007-2010 ENS de Lyon, CNRS, INRP, University of |
|
| 3 |
// Lyon 2, University of Franche-Comté, University of Nice |
|
| 4 |
// Sophia Antipolis, University of Paris 3. |
|
| 5 |
// |
|
| 6 |
// The TXM platform is free software: you can redistribute it |
|
| 7 |
// and/or modify it under the terms of the GNU General Public |
|
| 8 |
// License as published by the Free Software Foundation, |
|
| 9 |
// either version 2 of the License, or (at your option) any |
|
| 10 |
// later version. |
|
| 11 |
// |
|
| 12 |
// The TXM platform is distributed in the hope that it will be |
|
| 13 |
// useful, but WITHOUT ANY WARRANTY; without even the implied |
|
| 14 |
// warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR |
|
| 15 |
// PURPOSE. See the GNU General Public License for more |
|
| 16 |
// details. |
|
| 17 |
// |
|
| 18 |
// You should have received a copy of the GNU General |
|
| 19 |
// Public License along with the TXM platform. If not, see |
|
| 20 |
// http://www.gnu.org/licenses. |
|
| 21 |
// |
|
| 22 |
// |
|
| 23 |
// |
|
| 24 |
// $LastChangedDate:$ |
|
| 25 |
// $LastChangedRevision:$ |
|
| 26 |
// $LastChangedBy:$ |
|
| 27 |
// |
|
| 28 |
package org.txm.queryindex.rcp.commands; |
|
| 29 |
|
|
| 30 |
import java.util.ArrayList; |
|
| 31 |
|
|
| 32 |
import org.eclipse.core.commands.AbstractHandler; |
|
| 33 |
import org.eclipse.core.commands.ExecutionEvent; |
|
| 34 |
import org.eclipse.core.commands.ExecutionException; |
|
| 35 |
import org.eclipse.jface.viewers.ArrayContentProvider; |
|
| 36 |
import org.eclipse.jface.viewers.IStructuredSelection; |
|
| 37 |
import org.eclipse.jface.viewers.LabelProvider; |
|
| 38 |
import org.eclipse.swt.widgets.Dialog; |
|
| 39 |
import org.eclipse.swt.widgets.Shell; |
|
| 40 |
import org.eclipse.ui.IWorkbenchWindow; |
|
| 41 |
import org.eclipse.ui.dialogs.ListSelectionDialog; |
|
| 42 |
import org.eclipse.ui.handlers.HandlerUtil; |
|
| 43 |
import org.txm.lexicaltable.core.functions.LexicalTable; |
|
| 44 |
import org.txm.lexicaltable.rcp.messages.LexicalTableUIMessages; |
|
| 45 |
import org.txm.queryindex.core.functions.QueryIndex; |
|
| 46 |
import org.txm.rcp.StatusLine; |
|
| 47 |
import org.txm.rcp.messages.TXMUIMessages; |
|
| 48 |
import org.txm.searchengine.cqp.corpus.Partition; |
|
| 49 |
import org.txm.searchengine.cqp.corpus.Property; |
|
| 50 |
import org.txm.utils.logger.Log; |
|
| 51 |
// TODO: Auto-generated Javadoc |
|
| 52 |
/** |
|
| 53 |
* The Class IndexToLexicalTable. |
|
| 54 |
*/ |
|
| 55 |
public class QueryIndexToLexicalTable extends AbstractHandler {
|
|
| 56 |
|
|
| 57 |
/** The window. */ |
|
| 58 |
private IWorkbenchWindow window; |
|
| 59 |
|
|
| 60 |
/** The selection. */ |
|
| 61 |
private IStructuredSelection selection; |
|
| 62 |
private static Shell shell; |
|
| 63 |
/* (non-Javadoc) |
|
| 64 |
* @see org.eclipse.core.commands.AbstractHandler#execute(org.eclipse.core.commands.ExecutionEvent) |
|
| 65 |
*/ |
|
| 66 |
@Override |
|
| 67 |
public Object execute(ExecutionEvent event) throws ExecutionException {
|
|
| 68 |
// TODO Auto-generated method stub |
|
| 69 |
window = HandlerUtil.getActiveWorkbenchWindow(event); |
|
| 70 |
selection = (IStructuredSelection) HandlerUtil.getCurrentSelection(event); |
|
| 71 |
shell = HandlerUtil.getActiveWorkbenchWindowChecked(event) |
|
| 72 |
.getShell(); |
|
| 73 |
return null; |
|
| 74 |
} |
|
| 75 |
|
|
| 76 |
/** |
|
| 77 |
* Builds the lexical table. |
|
| 78 |
* |
|
| 79 |
* @param qindex the voc |
|
| 80 |
* @param from the from |
|
| 81 |
* @param to the to |
|
| 82 |
* @return true, if successful |
|
| 83 |
*/ |
|
| 84 |
public boolean buildLexicalTable(QueryIndex qindex, int from, int to) {
|
|
| 85 |
LexicalTable table; |
|
| 86 |
Partition partition; |
|
| 87 |
Property property; |
|
| 88 |
|
|
| 89 |
if (!qindex.isComputedWithPartition()) {
|
|
| 90 |
|
|
| 91 |
System.out.println(TXMUIMessages.cannotCreateALexicalTableFromAnIndexCreatedWithACorpusMoreThanOneColumnIsNeeded); |
|
| 92 |
StatusLine.setMessage(TXMUIMessages.cannotCreateALexicalTableFromAnIndexCreatedWithACorpusMoreThanOneColumnIsNeeded); |
|
| 93 |
return false; |
|
| 94 |
} |
|
| 95 |
|
|
| 96 |
Log.info(LexicalTableUIMessages.openingMargeConfigurationDialog); |
|
| 97 |
ArrayList<String> choices = new ArrayList<String>(); |
|
| 98 |
choices.add(LexicalTableUIMessages.useAllOccurrences); |
|
| 99 |
choices.add(LexicalTableUIMessages.userIndexOccurrences); |
|
| 100 |
ListSelectionDialog dialog = new ListSelectionDialog(shell, |
|
| 101 |
choices, new ArrayContentProvider(), new LabelProvider(), |
|
| 102 |
LexicalTableUIMessages.selectWhichMarginsYouWantToUse); |
|
| 103 |
|
|
| 104 |
int ret = dialog.open(); |
|
| 105 |
//System.out.println("ret= "+ret);
|
|
| 106 |
if (ret != dialog.OK) {
|
|
| 107 |
return false; |
|
| 108 |
} |
|
| 109 |
|
|
| 110 |
// TODO: fix line 119 |
|
| 111 |
// try {
|
|
| 112 |
// table = LexicalTableImpl.createLexicalTableImpl(voc, QuantitativeDataStructureImpl |
|
| 113 |
// .createSymbole(LexicalTableImpl.class)); |
|
| 114 |
// partition = voc.getPartition(); |
|
| 115 |
// property = voc.getCorpus().getProperties().get(0); |
|
| 116 |
// } catch (Exception e) {
|
|
| 117 |
// org.txm.utils.logger.Log.printStackTrace(e); |
|
| 118 |
// return false; |
|
| 119 |
// } |
|
| 120 |
// |
|
| 121 |
// try {
|
|
| 122 |
// IWorkbenchWindow window = PlatformUI.getWorkbench() |
|
| 123 |
// .getActiveWorkbenchWindow(); |
|
| 124 |
// IWorkbenchPage page = window.getActivePage(); |
|
| 125 |
// LexicalTableEditorInput editorInput = new LexicalTableEditorInput( |
|
| 126 |
// table, partition, property); |
|
| 127 |
// StatusLine.setMessage(RCPMessages.ComputeLexicalTable_10); |
|
| 128 |
// page |
|
| 129 |
// .openEditor(editorInput, |
|
| 130 |
// "org.txm.rcp.editors.lexicaltable.LexicalTableEditor"); //$NON-NLS-1$ |
|
| 131 |
// } catch (PartInitException e) {
|
|
| 132 |
// org.txm.utils.logger.Log.printStackTrace(e); |
|
| 133 |
// } |
|
| 134 |
|
|
| 135 |
return false; |
|
| 136 |
} |
|
| 137 |
|
|
| 138 |
} |
|
| 0 | 139 | |
| TXM/trunk/bundles/org.txm.queryindex.rcp/src/org/txm/queryindex/core/functions/QueryIndex.java (revision 3953) | ||
|---|---|---|
| 20 | 20 |
import org.eclipse.jface.resource.ImageDescriptor; |
| 21 | 21 |
import org.eclipse.ui.model.IWorkbenchAdapter; |
| 22 | 22 |
import org.txm.core.messages.TXMCoreMessages; |
| 23 |
import org.txm.core.results.TXMParameters; |
|
| 24 | 23 |
import org.txm.core.results.TXMResult; |
| 25 | 24 |
import org.txm.index.core.functions.LineComparator.SortMode; |
| 26 | 25 |
import org.txm.index.core.messages.IndexCoreMessages; |
| ... | ... | |
| 45 | 44 |
LinkedHashMap<String, QueryIndexLine> lines = new LinkedHashMap<>(); |
| 46 | 45 |
|
| 47 | 46 |
List<String> partnames; |
| 48 |
// private int FilterFmin; |
|
| 49 |
// private int FilterFmax; |
|
| 50 |
// private int FilterVmax; |
|
| 47 |
|
|
| 51 | 48 |
|
| 52 |
// public int getFilterFmin() {
|
|
| 53 |
// return FilterFmin; |
|
| 54 |
// } |
|
| 55 |
// |
|
| 56 |
// public int getFilterFmax() {
|
|
| 57 |
// return FilterFmax; |
|
| 58 |
// } |
|
| 59 |
// |
|
| 60 |
// public int getFilterVmax() {
|
|
| 61 |
// return FilterVmax; |
|
| 62 |
// } |
|
| 63 |
|
|
| 64 | 49 |
/** The writer. */ |
| 65 | 50 |
private OutputStreamWriter writer; |
| 66 | 51 |
|
| 67 | 52 |
public int getT() {
|
| 53 |
|
|
| 68 | 54 |
int t = 0; |
| 69 | 55 |
for (QueryIndexLine line : lines.values()) {
|
| 70 | 56 |
t += line.getFrequency(); |
| ... | ... | |
| 73 | 59 |
} |
| 74 | 60 |
|
| 75 | 61 |
public int getFmin() {
|
| 62 |
|
|
| 76 | 63 |
int t = Integer.MAX_VALUE; |
| 77 | 64 |
for (QueryIndexLine line : lines.values()) {
|
| 78 | 65 |
int f = line.getFrequency(); |
| ... | ... | |
| 82 | 69 |
} |
| 83 | 70 |
|
| 84 | 71 |
public int getFmax() {
|
| 72 |
|
|
| 85 | 73 |
int t = 0; |
| 86 | 74 |
for (QueryIndexLine line : lines.values()) {
|
| 87 | 75 |
int f = line.getFrequency(); |
| ... | ... | |
| 95 | 83 |
} |
| 96 | 84 |
|
| 97 | 85 |
public QueryIndex(CQPCorpus corpus) {
|
| 86 |
|
|
| 98 | 87 |
super(corpus); |
| 99 | 88 |
this.corpus = corpus; |
| 100 | 89 |
partnames = Arrays.asList(corpus.getName()); |
| ... | ... | |
| 103 | 92 |
|
| 104 | 93 |
@Override |
| 105 | 94 |
public String getName() {
|
| 106 |
if (partition != null) |
|
| 95 |
|
|
| 96 |
if (partition != null) {
|
|
| 107 | 97 |
return partition.getName(); |
| 98 |
} |
|
| 108 | 99 |
return corpus.getName(); |
| 109 | 100 |
} |
| 110 | 101 |
|
| 111 | 102 |
public QueryIndex(Partition partition) {
|
| 103 |
|
|
| 112 | 104 |
super(partition); |
| 113 | 105 |
this.corpus = partition.getParent(); |
| 114 | 106 |
this.partition = partition; |
| ... | ... | |
| 117 | 109 |
} |
| 118 | 110 |
|
| 119 | 111 |
public CQPCorpus getCorpus() {
|
| 112 |
|
|
| 120 | 113 |
return corpus; |
| 121 | 114 |
} |
| 122 | 115 |
|
| 123 | 116 |
public Partition getPartition() {
|
| 117 |
|
|
| 124 | 118 |
return partition; |
| 125 | 119 |
} |
| 126 | 120 |
|
| 127 | 121 |
public Collection<QueryIndexLine> getLines() {
|
| 122 |
|
|
| 128 | 123 |
return lines.values(); |
| 129 | 124 |
} |
| 130 | 125 |
|
| ... | ... | |
| 198 | 193 |
lines = sortedMap; |
| 199 | 194 |
} |
| 200 | 195 |
|
| 201 |
// public void cut(int vmax) {
|
|
| 202 |
// System.out.println("TODO cut tmax="+vmax );
|
|
| 203 |
// this.FilterVmax = vmax; |
|
| 204 |
// } |
|
| 205 |
|
|
| 206 | 196 |
public boolean isComputedWithPartition() {
|
| 197 |
|
|
| 207 | 198 |
return partition != null; |
| 208 | 199 |
} |
| 209 | 200 |
|
| 210 | 201 |
public void addLinesFromFile(File propFile) throws CqiClientException, IOException {
|
| 211 |
BufferedReader reader = new BufferedReader(new InputStreamReader( |
|
| 212 |
new FileInputStream(propFile), "UTF-8")); //$NON-NLS-1$ |
|
| 213 | 202 |
|
| 203 |
BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(propFile), "UTF-8")); //$NON-NLS-1$ |
|
| 204 |
|
|
| 214 | 205 |
String line = reader.readLine(); |
| 215 | 206 |
while (line != null) {
|
| 216 | 207 |
String[] split = line.split("=", 2); //$NON-NLS-1$
|
| ... | ... | |
| 240 | 231 |
*/ |
| 241 | 232 |
@Override |
| 242 | 233 |
public boolean _toTxt(File outfile, String encoding, String colseparator, String txtseparator) {
|
| 234 |
|
|
| 243 | 235 |
try {
|
| 244 | 236 |
toTxt(outfile, 0, lines.size(), encoding, colseparator, txtseparator); |
| 245 | 237 |
} |
| ... | ... | |
| 264 | 256 |
*/ |
| 265 | 257 |
public void toTxt(File outfile, int from, int to, String encoding, String colseparator, String txtseparator) |
| 266 | 258 |
throws CqiClientException, IOException {
|
| 259 |
|
|
| 267 | 260 |
// NK: writer declared as class attribute to perform a clean if the operation is interrupted |
| 268 | 261 |
this.writer = new OutputStreamWriter(new FileOutputStream(outfile), |
| 269 | 262 |
encoding); |
| ... | ... | |
| 291 | 284 |
} |
| 292 | 285 |
|
| 293 | 286 |
public List<String> getPartnames() {
|
| 287 |
|
|
| 294 | 288 |
return partnames; |
| 295 | 289 |
} |
| 296 | 290 |
|
| 297 | 291 |
public QueryIndexLine addLine(String name, CQLQuery query) throws CqiClientException {
|
| 292 |
|
|
| 298 | 293 |
if (lines.containsKey(name)) return null; |
| 299 | 294 |
QueryResult[] qresults; |
| 300 | 295 |
if (partition != null) {
|
| ... | ... | |
| 317 | 312 |
} |
| 318 | 313 |
|
| 319 | 314 |
public LexicalTable toLexicalTable() {
|
| 315 |
|
|
| 320 | 316 |
if (partition == null) return null; |
| 321 | 317 |
|
| 322 | 318 |
int npart = partition.getPartsCount(); |
| ... | ... | |
| 354 | 350 |
} |
| 355 | 351 |
|
| 356 | 352 |
public boolean removeLine(String name) {
|
| 353 |
|
|
| 357 | 354 |
if (lines.containsKey(name)) {
|
| 358 | 355 |
lines.remove(name); |
| 359 | 356 |
return true; |
| ... | ... | |
| 364 | 361 |
} |
| 365 | 362 |
|
| 366 | 363 |
public boolean hasLine(String name) {
|
| 364 |
|
|
| 367 | 365 |
return lines.containsKey(name); |
| 368 | 366 |
} |
| 369 | 367 |
|
| 370 | 368 |
public ArrayList<QueryIndexLine> getLines(int from, int to) {
|
| 369 |
|
|
| 371 | 370 |
if (lines.size() == 0) return new ArrayList<>(); |
| 372 | 371 |
|
| 373 | 372 |
if (from < 0) from = 0; |
| ... | ... | |
| 388 | 387 |
|
| 389 | 388 |
@Override |
| 390 | 389 |
public void clean() {
|
| 390 |
|
|
| 391 | 391 |
try {
|
| 392 | 392 |
this.writer.flush(); |
| 393 | 393 |
this.writer.close(); |
| ... | ... | |
| 399 | 399 |
|
| 400 | 400 |
@Override |
| 401 | 401 |
public Object getAdapter(Class adapterType) {
|
| 402 |
|
|
| 402 | 403 |
if (adapterType == IWorkbenchAdapter.class) |
| 403 | 404 |
return queryindexAdapter; |
| 404 | 405 |
return null; |
| ... | ... | |
| 437 | 438 |
|
| 438 | 439 |
@Override |
| 439 | 440 |
public String getSimpleName() {
|
| 441 |
|
|
| 440 | 442 |
return ""; //$NON-NLS-1$ |
| 441 | 443 |
} |
| 442 | 444 |
|
| 443 | 445 |
@Override |
| 444 | 446 |
public String getDetails() {
|
| 447 |
|
|
| 445 | 448 |
return ""; //$NON-NLS-1$ |
| 446 | 449 |
} |
| 447 | 450 |
|
| 448 | 451 |
@Override |
| 449 | 452 |
public boolean canCompute() {
|
| 453 |
|
|
| 450 | 454 |
return corpus != null || partition != null; |
| 451 | 455 |
} |
| 452 | 456 |
|
| ... | ... | |
| 473 | 477 |
|
| 474 | 478 |
@Override |
| 475 | 479 |
public String getResultType() {
|
| 476 |
return "Query index"; //$NON-NLS-1$ |
|
| 480 |
|
|
| 481 |
return "Query Index"; //$NON-NLS-1$ |
|
| 477 | 482 |
} |
| 478 | 483 |
|
| 479 | 484 |
} |
Formats disponibles : Unified diff