private void makeLayout(DrawerUtil drawerUtil) {
		this.removeAll();
		
		if (this.mdSettingConstraints != null) {
			GridBagLayout gbl = new GridBagLayout();
			GridBagConstraints gbc = new GridBagConstraints();
	
			gbc.fill = GridBagConstraints.HORIZONTAL;
			gbc.weightx = 0;
			gbc.weighty = 0;
			gbc.gridx=0;
			gbc.gridy=0;
	
			this.mdSettingObserver = new MdSettingObserverImpl();
			OrderedMap<String, SettingConstraint<?>> mscl = mdSettingConstraints.getSettingConstantMap();
			mdSettingEditors = new OrderedMap<String, MdSettingEditor>(new HashMap<String, MdSettingEditor>());
			for (String key:mscl.getKeyList()) {
				SettingConstraint<?> sc = mscl.get(key);
				if (sc.isEnable()) {
					JLabel nameLabel = new JLabel(sc.getName());
					MdSettingEditor msd = sc.createMdSettingEditor(drawerUtil);
					mdSettingEditors.put(key,msd);
					JComponent editorComponent = msd.getEditorComponent();
					if (sc.getDescription() != null) {
						nameLabel.setToolTipText(sc.getDescription());
					}
					if (sc.isApplyImmediate()) {
						msd.setMdSettingObserver(mdSettingObserver);
					}
					
					gbc.gridx=0;
					gbc.weightx = 0;
					gbl.setConstraints(nameLabel, gbc);
					gbc.gridx=1;
					gbc.weightx = 1;
					gbl.setConstraints(editorComponent, gbc);
					
					gbc.gridy++;
					
					this.add(nameLabel);
					this.add(editorComponent);
				}
			}
			this.setLayout(gbl);
		}
	}