@Override
	public void setToCurrent() {
		for (int i = 0, limit = getPreferenceListSize(); i < limit; i++) {
			PreferencesGUITreeComponent comp = getPreference(i);
			Preference pref = comp.getPreference();
			
			if (comp instanceof PreferencesGUITreeTextFieldComponent) {
				JTextField text = (JTextField) comp.getComponent();
				text.setText(pref.getCur());
				
			} else if (comp instanceof PreferencesGUITreeComboBoxComponent) {
				JComboBox comboBox = (JComboBox) comp.getComponent();
				comboBox.setSelectedItem(pref.getCur());
				
			} else if (comp instanceof PreferencesGUITreeCheckBoxComponent) {
				JCheckBox checkBox = (JCheckBox) comp.getComponent();
				checkBox.setSelected(new Boolean(pref.getCur()).booleanValue());
				
			} else if (comp instanceof PreferencesGUITreeColorButtonComponent) {
				JButton button = (JButton) comp.getComponent();
				PreferenceColor prefColor = (PreferenceColor) pref;
				button.setBackground(prefColor.cur);
				
			} else if (comp instanceof PreferencesGUITreeTextAreaComponent) {
				JTextArea list = (JTextArea) ((JScrollPane) comp.getComponent()).getViewport().getView();
				PreferenceStringList prefStringList = (PreferenceStringList) pref;
				
				StringBuffer buf = new StringBuffer();
				for (int j = 0; j < prefStringList.cur.size(); j++) {
					buf.append(prefStringList.cur.get(j)).append("\n");
				}
				list.setText(buf.toString());
			} else if (comp instanceof PreferencesGUITreeTableComponent) {
				JTable table = (JTable) ((JScrollPane) comp.getComponent()).getViewport().getView();
				PreferenceHashMap prefHashMap = (PreferenceHashMap) pref;
				
				DefaultTableModel model = (DefaultTableModel) table.getModel();
				model.setRowCount(0);
				HashMap map = prefHashMap.cur;
				
				Iterator it = map.keySet().iterator();
				
				while (it.hasNext()) {
					String key = (String) it.next();
					String value = (String) map.get(key);
					Object[] data = {"Remove",key,value};
					model.addRow(data);
				}
				
				table.setModel(model);
				model.fireTableDataChanged();
			}
		}
	}