private GeoSearchPanel() {
		super(new BorderLayout(8, 8));
		setBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4));
		setBackground(Color.white);
		JPanel topPanel = new JPanel(new BorderLayout(4, 4));
		topPanel.setOpaque(false);
		topPanel.add(new JLabel("Find:"), BorderLayout.WEST);
		topPanel.add(this.searchBox, BorderLayout.CENTER);
		add(topPanel, BorderLayout.NORTH);
		add(this.resultPanel, BorderLayout.CENTER);
		this.searchBox.setEditable(true);
		Component editorComponent = this.searchBox.getEditor().getEditorComponent();
		this.searchBox.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				doSearch(searchBox.getSelectedItem());
			}

		});

		if (editorComponent instanceof JTextField) {
			final JTextField textField = (JTextField) editorComponent;
			textField.addFocusListener(new FocusAdapter() {
				public void focusGained(FocusEvent e) {
					textField.selectAll();
				}
			});
		}

		this.okButton = new JButton("Ok");
		this.cancelButton = new JButton("Cancel");
		this.okButton.setEnabled(false);

		JPanel buttonWrapper = new JPanel();
		buttonWrapper.add(this.okButton);
		buttonWrapper.add(this.cancelButton);

		add(buttonWrapper, BorderLayout.SOUTH);
		createFrame();
	}