@Override
	protected void bindToModelModifications() {

		keySystemModel.addPropertyChangeListener(
				keySystemModel.getPropertyName(), new PropertyChangeListener() {

					@Override
					public void propertyChange(PropertyChangeEvent evt) {
						if (!lock)
							pKeyboard.loadVK((TagAndURISubModel[]) evt
									.getNewValue());
					}
				});

		keyprofileModel.addPropertyChangeListener(new PropertyChangeListener() {

			@Override
			public void propertyChange(PropertyChangeEvent evt) {
				if (!lock)
					switch (evt.getPropertyName()) {
					case VirtualKeyboardProfileModel.AUTOMATIC_CLICK_PROPERTY:
						pKeyboard.setClickAuto((boolean) evt.getNewValue());
						break;
					case VirtualKeyboardProfileModel.CLICK_LENGTH_PROPERTY:
						pKeyboard.setDuree((int) evt.getNewValue());
						break;
					case VirtualKeyboardProfileModel.ENABLED_PROPERTY:
						pKeyboard.setActivated((boolean) evt.getNewValue());
						break;
					case VirtualKeyboardProfileModel.USED_KEYBOARD_PROPERTY:

						pKeyboard.setUsedKeyboard(VitipiTools
								.normalizeName((String) evt.getNewValue()));

						break;
					default:
						break;
					}
			}
		});
	}