- Timestamp:
- 2001-04-04T22:44:38+12:00 (23 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/java-client/org/nzdl/gsdl/SimpleGraphicalClient/SearchPanel.java
r2275 r2281 68 68 JPanel queryTypePanel, searchControlPanel; 69 69 JPanel collectionListPanel, searchTextFieldPanel, searchButtonPanel; 70 JPopupMenu resultPopup; 71 Result selectedResult; 72 ResultModel resultListModel; 70 73 JList resultsList; 71 74 JCheckBox stemCheckBox, caseFoldCheckBox; … … 207 210 resultsPanel.setLayout(new BorderLayout()); 208 211 resultsPanel.setBorder(BorderFactory.createEmptyBorder(5,5,5,5)); 209 ResultModelresultListModel = csModel.getResultsModel();212 resultListModel = csModel.getResultsModel(); 210 213 resultsList = new JList(resultListModel); 211 214 resultsList.setFont(resultsFont); … … 215 218 resultsPanel.add(scrollResultsPane, BorderLayout.CENTER); 216 219 csModel.addResult(Result.INITIAL_FAKE_RESULT); 220 221 resultPopup = new JPopupMenu(); 222 JMenuItem addBerryItem = new JMenuItem("Add to BerryBasket"); 223 addBerryItem.addActionListener(new ActionListener() { 224 public void actionPerformed(ActionEvent e) { 225 System.err.println("SelectedResult = " + selectedResult); 226 //System.err.println("add berry now..."); 227 csModel.getBerryBasketModel().add( new Berry(selectedResult.getQueryHistoryItem(),selectedResult.getDocID(),selectedResult.getCollectionName(), selectedResult.toString())); 228 } // actionPerformed 229 }); 230 resultPopup.add(addBerryItem); 231 MouseListener popupListener = new PopupListener(); 232 resultsList.addMouseListener(popupListener); 233 234 235 217 236 218 237 dataPanel = new JPanel(); … … 264 283 NzdlQuery nzdlQuery = new NzdlQuery(queryString); 265 284 nzdlQuery.setQueryType(buttonGroup.getSelection().getActionCommand()); 266 System.err.println(buttonGroup.getSelection().getActionCommand());267 285 //nzdlQuery.setQueryType("boolean"); 268 286 nzdlQuery.setStemming(stemCheckBox.isSelected()); … … 295 313 // update the results list 296 314 csModel.clearResults(); 297 315 316 QueryHistoryItem queryHistoryItem = new QueryHistoryItem(new Query(queryString), new Date(), collectionName, "user",docIDs.size(),buttonGroup.getSelection().getActionCommand(),stemCheckBox.isSelected(), caseFoldCheckBox.isSelected()); 317 csModel.getQueryHistoryModel().add(queryHistoryItem); 318 298 319 if (docIDs.size() == 0 ) { // give some feedback for 0 results 299 320 csModel.addResult(Result.FAKE_RESULT); … … 304 325 while (docIDsIterator.hasNext()) { 305 326 String resultDocID = (String) docIDsIterator.next(); 306 csModel.addResult(new Result((String)titleMap.get(resultDocID), resultDocID, collectionName ));327 csModel.addResult(new Result((String)titleMap.get(resultDocID), resultDocID, collectionName, queryHistoryItem )); 307 328 } //end while 308 329 if (NzdlPreferences.getInstance().getBoolean(NzdlConstants.DISPLAY_FIRST_DOC)) … … 310 331 } // end else 311 332 312 333 /* 313 334 csModel.getQueryHistoryModel().add( new QueryHistoryItem(new Query(queryString), new Date(), collectionName, "user",docIDs.size(),buttonGroup.getSelection().getActionCommand(),stemCheckBox.isSelected(), caseFoldCheckBox.isSelected() )); 314 335 */ 315 336 titleMap.clear(); 316 337 titleMetaData.clear(); … … 443 464 444 465 466 class PopupListener extends MouseAdapter { 467 public void mousePressed(MouseEvent e) { 468 maybeShowPopup(e); 469 } 470 471 public void mouseReleased(MouseEvent e) { 472 maybeShowPopup(e); 473 } 474 475 private void maybeShowPopup(MouseEvent e) { 476 if (e.isPopupTrigger()) { 477 int index = resultsList.locationToIndex(new Point(e.getX(), e.getY())); 478 if (index < resultListModel.getSize()) { 479 Result result = (Result) resultListModel.getElementAt(index); 480 if (result != Result.INITIAL_FAKE_RESULT) { 481 selectedResult = result; 482 resultPopup.show(e.getComponent(), 483 e.getX(), e.getY()); 484 } 485 } 486 else 487 System.err.println("popup not on item"); 488 } 489 } 490 } // PopupListener 491 492 493 445 494 } //end SearchPanel
Note:
See TracChangeset
for help on using the changeset viewer.