org.crosswire.bibledesktop.book
Class AdvancedSearchPane

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by org.crosswire.bibledesktop.book.AdvancedSearchPane
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, EventListener, Accessible, DocumentListener

public class AdvancedSearchPane
extends JPanel
implements DocumentListener

An advanced search dialog.

Author:
Joe Walker [joe at eireneh dot com]
See Also:
for license details.
The copyright to this program is held by it's authors.
, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
private  ActionFactory actions
          The ActionFactory holding the actions used by this Component.
protected  boolean bailout
          If escape was pressed we don't want to update the parent
private  JButton btnGo
           
private  JButton btnRestrict
           
private  JComboBox cboPresets
           
private  JCheckBox chkHebGrk
           
private  JCheckBox chkRank
           
private  JCheckBox chkRestrict
           
private  JCheckBox chkSummary
           
private  JCheckBox chkTime
           
private static String CUSTOM
          The first entry means that the user has either no selection or a custom one.
protected  JDialog dlgMain
           
private  PassageSelectionPane dlgSelect
           
private  boolean editingRestrict
          If we are editing the restrict text box, ignore preset updates
private  JLabel lblAfter
           
private  JLabel lblBefore
           
private  JLabel lblExcludes
           
private  JLabel lblGrkExc
           
private  JLabel lblGrkInc
           
private  JLabel lblHeading
           
private  JLabel lblHebExc
           
private  JLabel lblHebInc
           
private  JLabel lblIncludes
           
private  JLabel lblPhrase
           
private  JLabel lblPresets
           
private  JLabel lblRank
           
private  JLabel lblRestrict
           
private  JLabel lblSpell
           
private  JLabel lblStartsWith
           
private  JLabel lblSummary
           
private  Object[] presets
          The entries in the restrictions preset.
private  JScrollPane scrSummary
           
private static long serialVersionUID
          Serialization ID
private  org.crosswire.common.icu.NumberShaper shaper
          The transformer of numeric representation.
private  JSlider sliderRank
           
private static String SPACE
          In our parsing we use space quite a lot and this ensures there is only one.
private  JTextField txtAfter
           
private  JTextField txtBefore
           
private  JTextField txtExcludes
           
private  JTextField txtGrkExc
           
private  JTextField txtGrkInc
           
private  JTextField txtHebExc
           
private  JTextField txtHebInc
           
private  JTextField txtIncludes
           
private  JTextField txtPhrase
           
private  JTextField txtRestrict
           
private  JTextField txtSpell
           
private  JTextField txtStartsWith
           
private  JTextArea txtSummary
           
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
AdvancedSearchPane()
          This is the default constructor
 
Method Summary
 void changedUpdate(DocumentEvent ev)
           
private  Dictionary<Integer,JLabel> createSliderLabels()
          Create the internationalized labels for the slider.
 void doDone()
          Someone clicked on OK
 void doHeadOriginal()
          Someone clicked the original strongs toggle button
 void doHeadRank()
          Someone clicked the rank check button
 void doHeadRestrict()
          Someone clicked the restrict toggle button
 void doHeadSummary()
          Someone clicked the restrict toggle button
 void doHeadTime()
          Someone clicked the original strongs toggle button
 void doRestrictSelect()
           
private  void initialize()
          This method initializes this GUI
 void insertUpdate(DocumentEvent ev)
           
 boolean isRanked()
           
private  void readObject(ObjectInputStream is)
          Serialization support.
 void removeUpdate(DocumentEvent ev)
           
 void setLabelRank(int val)
           
 String showInDialog(Component parent, String title, boolean modal, String search)
          Open us in a new (optionally modal) dialog window
 void updatePreset()
           
private  void updateSearchString()
          Regenerate the search string from the input boxes
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SPACE

private static final String SPACE
In our parsing we use space quite a lot and this ensures there is only one.

See Also:
Constant Field Values

CUSTOM

private static final String CUSTOM
The first entry means that the user has either no selection or a custom one.

See Also:
Constant Field Values

bailout

protected boolean bailout
If escape was pressed we don't want to update the parent


actions

private transient ActionFactory actions
The ActionFactory holding the actions used by this Component.


shaper

private org.crosswire.common.icu.NumberShaper shaper
The transformer of numeric representation.


presets

private Object[] presets
The entries in the restrictions preset. It is object so that a blank entry can be in the list.


editingRestrict

private boolean editingRestrict
If we are editing the restrict text box, ignore preset updates


dlgSelect

private PassageSelectionPane dlgSelect

lblPhrase

private JLabel lblPhrase

lblIncludes

private JLabel lblIncludes

txtIncludes

private JTextField txtIncludes

txtPhrase

private JTextField txtPhrase

lblExcludes

private JLabel lblExcludes

txtExcludes

private JTextField txtExcludes

lblSpell

private JLabel lblSpell

txtSpell

private JTextField txtSpell

lblStartsWith

private JLabel lblStartsWith

txtStartsWith

private JTextField txtStartsWith

lblHeading

private JLabel lblHeading

chkRank

private JCheckBox chkRank

lblRank

private JLabel lblRank

sliderRank

private JSlider sliderRank

chkRestrict

private JCheckBox chkRestrict

lblRestrict

private JLabel lblRestrict

txtRestrict

private JTextField txtRestrict

btnRestrict

private JButton btnRestrict

btnGo

private JButton btnGo

lblPresets

private JLabel lblPresets

cboPresets

private JComboBox cboPresets

dlgMain

protected JDialog dlgMain

chkHebGrk

private JCheckBox chkHebGrk

lblHebInc

private JLabel lblHebInc

txtHebInc

private JTextField txtHebInc

lblHebExc

private JLabel lblHebExc

txtHebExc

private JTextField txtHebExc

lblGrkInc

private JLabel lblGrkInc

txtGrkInc

private JTextField txtGrkInc

lblGrkExc

private JLabel lblGrkExc

txtGrkExc

private JTextField txtGrkExc

chkTime

private JCheckBox chkTime

lblBefore

private JLabel lblBefore

txtBefore

private JTextField txtBefore

lblAfter

private JLabel lblAfter

txtAfter

private JTextField txtAfter

lblSummary

private JLabel lblSummary

chkSummary

private JCheckBox chkSummary

txtSummary

private JTextArea txtSummary

scrSummary

private JScrollPane scrSummary

serialVersionUID

private static final long serialVersionUID
Serialization ID

See Also:
Constant Field Values
Constructor Detail

AdvancedSearchPane

public AdvancedSearchPane()
This is the default constructor

Method Detail

initialize

private void initialize()
This method initializes this GUI


showInDialog

public String showInDialog(Component parent,
                           String title,
                           boolean modal,
                           String search)
Open us in a new (optionally modal) dialog window

Parameters:
parent - The component to which to attach the new dialog
title - The title for the new dialog

isRanked

public boolean isRanked()

setLabelRank

public final void setLabelRank(int val)

doHeadRank

public void doHeadRank()
Someone clicked the rank check button


doHeadRestrict

public void doHeadRestrict()
Someone clicked the restrict toggle button


doHeadSummary

public void doHeadSummary()
Someone clicked the restrict toggle button


doHeadOriginal

public void doHeadOriginal()
Someone clicked the original strongs toggle button


doHeadTime

public void doHeadTime()
Someone clicked the original strongs toggle button


doRestrictSelect

public void doRestrictSelect()

doDone

public void doDone()
Someone clicked on OK


updatePreset

public final void updatePreset()

updateSearchString

private void updateSearchString()
Regenerate the search string from the input boxes


changedUpdate

public void changedUpdate(DocumentEvent ev)
Specified by:
changedUpdate in interface DocumentListener

insertUpdate

public void insertUpdate(DocumentEvent ev)
Specified by:
insertUpdate in interface DocumentListener

removeUpdate

public void removeUpdate(DocumentEvent ev)
Specified by:
removeUpdate in interface DocumentListener

createSliderLabels

private Dictionary<Integer,JLabel> createSliderLabels()
Create the internationalized labels for the slider.

Returns:
the labels

readObject

private void readObject(ObjectInputStream is)
                 throws IOException,
                        ClassNotFoundException
Serialization support.

Parameters:
is -
Throws:
IOException
ClassNotFoundException

Copyright ยจ 2003-2013