private void setSettings() {
		this.setBorder(new Border() {
			@Override
			public Insets getBorderInsets(Component c) {
				return new Insets(5, 7, 5, 7);
			}
			
			@Override
			public boolean isBorderOpaque() {
				return false;
			}
			
			@Override
			public void paintBorder(Component c, Graphics g, int x, int y,
					int width, int height) {
				if (HintArea.this.isFocusOwner()) {
					g.setColor(new Color(0x6d96be));
					g.drawRect(x, y, width--, height--);
				} else {
					g.setColor(new Color(0xa2a2a2));
					g.drawRect(x, y, width--, height--);
				}
				g.setColor(new Color(0xd0d0d0));
				g.drawRect(++x, ++y, --width, --height);
				
			}
		});
		this.setWrapStyleWord(true);
		this.setLineWrap(true);
		this.addFocusListener(new FocusListener() {
			@Override
			public void focusGained(FocusEvent fe) {
				if (HintArea.this.selectAll) {
					HintArea.this.selectAll();
				}
			}
			
			@Override
			public void focusLost(FocusEvent fe) {
				if (HintArea.this.selectAll) {
					HintArea.this.setCaretPosition(0);
				}
			}
		});
		this.addKeyListener(new KeyListener() {
			private final int	BACKSPACE	= 8;
			private HintArea	me			= HintArea.this;
			
			@Override
			public void keyPressed(KeyEvent e) {
				boolean meta = (e.getModifiers() & ActionEvent.META_MASK) == ActionEvent.META_MASK
						|| (e.getModifiers() & ActionEvent.ALT_MASK) == ActionEvent.ALT_MASK;
				switch (e.getKeyCode()) {
					case BACKSPACE:
						if (meta) {
							int caretPosition = this.me.getCaretPosition();
							int startPos;
							String text = this.me.getText();
							char c;
							for (startPos = caretPosition - 1; startPos > 0; startPos--) {
								if ((c = text.charAt(startPos)) == '\r'
										|| c == '\n') {
									break;
								}
							}
							this.me.setText(text.substring(0, startPos)
									+ text.substring(caretPosition,
											text.length()));
							this.me.setCaretPosition(startPos);
						}
						break;
				}
				HintArea.this.layer.repaint();
			}
			
			@Override
			public void keyReleased(KeyEvent e) {}
			
			@Override
			public void keyTyped(KeyEvent e) {}
		});
	}