diff --git a/bundles/org.eclipse.e4.tools.emf.ui/META-INF/MANIFEST.MF b/bundles/org.eclipse.e4.tools.emf.ui/META-INF/MANIFEST.MF
index 144702f..336ddf5 100644
--- a/bundles/org.eclipse.e4.tools.emf.ui/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.e4.tools.emf.ui/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.e4.tools.emf.ui;singleton:=true
-Bundle-Version: 4.7.200.qualifier
+Bundle-Version: 4.7.300.qualifier
 Bundle-ClassPath: .
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.e4.tools.emf.ui/pom.xml b/bundles/org.eclipse.e4.tools.emf.ui/pom.xml
index 563a8a5..b9824bf 100644
--- a/bundles/org.eclipse.e4.tools.emf.ui/pom.xml
+++ b/bundles/org.eclipse.e4.tools.emf.ui/pom.xml
@@ -21,7 +21,7 @@
 
   <groupId>eclipse.platform.ui.tools</groupId>
   <artifactId>org.eclipse.e4.tools.emf.ui</artifactId>
-  <version>4.7.200-SNAPSHOT</version>
+  <version>4.7.300-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 
   <properties>
diff --git a/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/component/ControlFactory.java b/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/component/ControlFactory.java
index 9e53bef..ef8926e 100644
--- a/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/component/ControlFactory.java
+++ b/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/component/ControlFactory.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2010, 2017 BestSolution.at and others.
+ * Copyright (c) 2010, 2022 BestSolution.at and others.
  *
  * This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License 2.0
@@ -759,17 +759,13 @@
 	public static <M> void createCheckBox(Composite parent, String label, String tooltip, IObservableValue<M> master,
 			EMFDataBindingContext context, IWidgetValueProperty<Button, Boolean> selectionProp,
 			IValueProperty<? super M, Boolean> modelProp) {
-		final Label l = new Label(parent, SWT.NONE);
-		l.setText(label);
+		final Button checkBox = new Button(parent, SWT.CHECK);
+		checkBox.setText(label);
 		if (tooltip != null) {
-			l.setToolTipText(tooltip);
+			checkBox.setToolTipText(tooltip);
 		}
-		l.setLayoutData(new GridData());
-
-		final Button t = new Button(parent, SWT.CHECK);
-		t.setLayoutData(new GridData(GridData.BEGINNING, GridData.CENTER, false, false, 2, 1));
-		context.bindValue(selectionProp.observe(t), modelProp.observeDetail(master));
-
+		checkBox.setLayoutData(new GridData(GridData.BEGINNING, GridData.CENTER, false, false, 3, 1));
+		context.bindValue(selectionProp.observe(checkBox), modelProp.observeDetail(master));
 	}
 
 	public static String getLocalizedLabel(ProjectOSGiTranslationProvider translationProvider, MUILabel element) {
