diff --git a/helloworld-cdi-gradle/.idea/description.html b/helloworld-cdi-gradle/.idea/description.html
new file mode 100644
index 0000000..affb970
--- /dev/null
+++ b/helloworld-cdi-gradle/.idea/description.html
@@ -0,0 +1,2 @@
+Simple mvvmFX application with Gradle that includes simple .fxml file with attached View and ViewModel. For dependency injection CDI is used.
+
\ No newline at end of file
diff --git a/helloworld-cdi-gradle/build.gradle b/helloworld-cdi-gradle/build.gradle
new file mode 100644
index 0000000..2e165d8
--- /dev/null
+++ b/helloworld-cdi-gradle/build.gradle
@@ -0,0 +1,18 @@
+group 'mvvmfx.intellij.plugin'
+version '1.0'
+
+apply plugin: 'java'
+
+sourceCompatibility = 1.8
+
+repositories {
+ mavenCentral()
+}
+
+dependencies {
+ dependencies {
+ compile group: 'de.saxsys', name: 'mvvmfx', version: '1.4.1'
+ compile group: 'de.saxsys', name: 'mvvmfx-cdi', version: '1.4.1'
+ }
+ testCompile group: 'junit', name: 'junit', version: '4.11'
+}
diff --git a/helloworld-cdi-gradle/gradle/wrapper/gradle-wrapper.properties b/helloworld-cdi-gradle/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 0000000..a17147c
--- /dev/null
+++ b/helloworld-cdi-gradle/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,6 @@
+#Wed Mar 16 13:52:51 CET 2016
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.5-all.zip
diff --git a/helloworld-cdi-gradle/src/main/java/App.java b/helloworld-cdi-gradle/src/main/java/App.java
new file mode 100644
index 0000000..e488958
--- /dev/null
+++ b/helloworld-cdi-gradle/src/main/java/App.java
@@ -0,0 +1,27 @@
+import de.saxsys.mvvmfx.FluentViewLoader;
+import de.saxsys.mvvmfx.ViewTuple;
+import de.saxsys.mvvmfx.cdi.MvvmfxCdiApplication;
+
+import javafx.scene.Parent;
+import javafx.scene.Scene;
+import javafx.stage.Stage;
+
+public class App extends MvvmfxCdiApplication {
+
+ public static void main(String... args) {
+ launch(args);
+ }
+
+
+ @Override
+ public void startMvvmfx(Stage stage) throws Exception {
+ stage.setTitle("Hello World Application");
+
+ ViewTuple viewTuple = FluentViewLoader.fxmlView(HelloWorldView.class)
+ .load();
+
+ Parent root = viewTuple.getView();
+ stage.setScene(new Scene(root));
+ stage.show();
+ }
+}
diff --git a/helloworld-cdi-gradle/src/main/java/HelloWorldView.java b/helloworld-cdi-gradle/src/main/java/HelloWorldView.java
new file mode 100644
index 0000000..d5deda2
--- /dev/null
+++ b/helloworld-cdi-gradle/src/main/java/HelloWorldView.java
@@ -0,0 +1,22 @@
+import de.saxsys.mvvmfx.FxmlView;
+import de.saxsys.mvvmfx.InjectViewModel;
+import javafx.fxml.FXML;
+import javafx.fxml.Initializable;
+import javafx.scene.control.Label;
+
+import java.net.URL;
+import java.util.ResourceBundle;
+
+public class HelloWorldView implements FxmlView, Initializable {
+
+ @FXML
+ private Label helloLabel;
+
+ @InjectViewModel
+ private HelloWorldViewModel viewModel;
+
+ @Override
+ public void initialize(URL location, ResourceBundle resources) {
+ helloLabel.textProperty().bind(viewModel.helloMessage());
+ }
+}
diff --git a/helloworld-cdi-gradle/src/main/java/HelloWorldViewModel.java b/helloworld-cdi-gradle/src/main/java/HelloWorldViewModel.java
new file mode 100644
index 0000000..542342e
--- /dev/null
+++ b/helloworld-cdi-gradle/src/main/java/HelloWorldViewModel.java
@@ -0,0 +1,20 @@
+import de.saxsys.mvvmfx.ViewModel;
+import javafx.beans.property.SimpleStringProperty;
+import javafx.beans.property.StringProperty;
+
+public class HelloWorldViewModel implements ViewModel {
+
+ private StringProperty helloMessage = new SimpleStringProperty("Hello World");
+
+ public StringProperty helloMessage(){
+ return helloMessage;
+ }
+
+ public String getHelloMessage(){
+ return helloMessage.get();
+ }
+
+ public void setHelloMessage(String message){
+ helloMessage.set(message);
+ }
+}
diff --git a/helloworld-cdi-gradle/src/main/resources/HelloWorldView.fxml b/helloworld-cdi-gradle/src/main/resources/HelloWorldView.fxml
new file mode 100644
index 0000000..b6aa0c6
--- /dev/null
+++ b/helloworld-cdi-gradle/src/main/resources/HelloWorldView.fxml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/helloworld-cdi-gradle/src/main/resources/META-INF/beans.xml b/helloworld-cdi-gradle/src/main/resources/META-INF/beans.xml
new file mode 100644
index 0000000..330e12f
--- /dev/null
+++ b/helloworld-cdi-gradle/src/main/resources/META-INF/beans.xml
@@ -0,0 +1,21 @@
+
+
+
+
\ No newline at end of file
diff --git a/helloworld-cdi-maven/.idea/description.html b/helloworld-cdi-maven/.idea/description.html
new file mode 100644
index 0000000..1d7c369
--- /dev/null
+++ b/helloworld-cdi-maven/.idea/description.html
@@ -0,0 +1,2 @@
+Simple mvvmFX application with Maven that includes simple .fxml file with attached View and ViewModel. For dependency injection CDI is used.
+
\ No newline at end of file
diff --git a/helloworld-cdi-maven/pom.xml b/helloworld-cdi-maven/pom.xml
new file mode 100644
index 0000000..6523d27
--- /dev/null
+++ b/helloworld-cdi-maven/pom.xml
@@ -0,0 +1,29 @@
+
+
+ 4.0.0
+
+ mvvmfx.intellij.plugin
+ helloworld-cdi-maven
+ 1.0
+
+
+ UTF-8
+ 1.8
+ 1.8
+
+
+
+
+ de.saxsys
+ mvvmfx
+ 1.4.1
+
+
+ de.saxsys
+ mvvmfx-cdi
+ 1.4.1
+
+
+
\ No newline at end of file
diff --git a/helloworld-cdi-maven/src/main/java/App.java b/helloworld-cdi-maven/src/main/java/App.java
new file mode 100644
index 0000000..34f5b52
--- /dev/null
+++ b/helloworld-cdi-maven/src/main/java/App.java
@@ -0,0 +1,27 @@
+import de.saxsys.mvvmfx.FluentViewLoader;
+import de.saxsys.mvvmfx.ViewTuple;
+import de.saxsys.mvvmfx.cdi.MvvmfxCdiApplication;
+import javafx.application.Application;
+import javafx.scene.Parent;
+import javafx.scene.Scene;
+import javafx.stage.Stage;
+
+public class App extends MvvmfxCdiApplication {
+
+ public static void main(String... args) {
+ launch(args);
+ }
+
+
+ @Override
+ public void startMvvmfx(Stage stage) throws Exception {
+ stage.setTitle("Hello World Application");
+
+ ViewTuple viewTuple = FluentViewLoader.fxmlView(HelloWorldView.class)
+ .load();
+
+ Parent root = viewTuple.getView();
+ stage.setScene(new Scene(root));
+ stage.show();
+ }
+}
diff --git a/helloworld-cdi-maven/src/main/java/HelloWorldView.java b/helloworld-cdi-maven/src/main/java/HelloWorldView.java
new file mode 100644
index 0000000..d5deda2
--- /dev/null
+++ b/helloworld-cdi-maven/src/main/java/HelloWorldView.java
@@ -0,0 +1,22 @@
+import de.saxsys.mvvmfx.FxmlView;
+import de.saxsys.mvvmfx.InjectViewModel;
+import javafx.fxml.FXML;
+import javafx.fxml.Initializable;
+import javafx.scene.control.Label;
+
+import java.net.URL;
+import java.util.ResourceBundle;
+
+public class HelloWorldView implements FxmlView, Initializable {
+
+ @FXML
+ private Label helloLabel;
+
+ @InjectViewModel
+ private HelloWorldViewModel viewModel;
+
+ @Override
+ public void initialize(URL location, ResourceBundle resources) {
+ helloLabel.textProperty().bind(viewModel.helloMessage());
+ }
+}
diff --git a/helloworld-cdi-maven/src/main/java/HelloWorldViewModel.java b/helloworld-cdi-maven/src/main/java/HelloWorldViewModel.java
new file mode 100644
index 0000000..542342e
--- /dev/null
+++ b/helloworld-cdi-maven/src/main/java/HelloWorldViewModel.java
@@ -0,0 +1,20 @@
+import de.saxsys.mvvmfx.ViewModel;
+import javafx.beans.property.SimpleStringProperty;
+import javafx.beans.property.StringProperty;
+
+public class HelloWorldViewModel implements ViewModel {
+
+ private StringProperty helloMessage = new SimpleStringProperty("Hello World");
+
+ public StringProperty helloMessage(){
+ return helloMessage;
+ }
+
+ public String getHelloMessage(){
+ return helloMessage.get();
+ }
+
+ public void setHelloMessage(String message){
+ helloMessage.set(message);
+ }
+}
diff --git a/helloworld-cdi-maven/src/main/resources/HelloWorldView.fxml b/helloworld-cdi-maven/src/main/resources/HelloWorldView.fxml
new file mode 100644
index 0000000..b6aa0c6
--- /dev/null
+++ b/helloworld-cdi-maven/src/main/resources/HelloWorldView.fxml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/helloworld-cdi-maven/src/main/resources/META-INF/beans.xml b/helloworld-cdi-maven/src/main/resources/META-INF/beans.xml
new file mode 100644
index 0000000..330e12f
--- /dev/null
+++ b/helloworld-cdi-maven/src/main/resources/META-INF/beans.xml
@@ -0,0 +1,21 @@
+
+
+
+
\ No newline at end of file
diff --git a/helloworld-gradle/.idea/description.html b/helloworld-gradle/.idea/description.html
new file mode 100644
index 0000000..facfb40
--- /dev/null
+++ b/helloworld-gradle/.idea/description.html
@@ -0,0 +1,2 @@
+Simple mvvmFX application with Gradle that includes simple .fxml file with attached View and ViewModel.
+
\ No newline at end of file
diff --git a/helloworld-gradle/build.gradle b/helloworld-gradle/build.gradle
new file mode 100644
index 0000000..43de6a1
--- /dev/null
+++ b/helloworld-gradle/build.gradle
@@ -0,0 +1,17 @@
+group 'mvvmfx.intellij.plugin'
+version '1.0'
+
+apply plugin: 'java'
+
+sourceCompatibility = 1.8
+
+repositories {
+ mavenCentral()
+}
+
+dependencies {
+ dependencies {
+ compile group: 'de.saxsys', name: 'mvvmfx', version: '1.4.1'
+ }
+ testCompile group: 'junit', name: 'junit', version: '4.11'
+}
diff --git a/helloworld-gradle/gradle/wrapper/gradle-wrapper.properties b/helloworld-gradle/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 0000000..0af2fcd
--- /dev/null
+++ b/helloworld-gradle/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,6 @@
+#Wed Mar 16 11:14:01 CET 2016
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.5-all.zip
diff --git a/helloworld-gradle/src/main/java/App.java b/helloworld-gradle/src/main/java/App.java
new file mode 100644
index 0000000..b46a788
--- /dev/null
+++ b/helloworld-gradle/src/main/java/App.java
@@ -0,0 +1,26 @@
+import de.saxsys.mvvmfx.FluentViewLoader;
+import de.saxsys.mvvmfx.ViewTuple;
+import javafx.application.Application;
+import javafx.scene.Parent;
+import javafx.scene.Scene;
+import javafx.stage.Stage;
+
+public class App extends Application {
+
+ public static void main(String... args) {
+ launch(args);
+ }
+
+
+ @Override
+ public void start(Stage stage) throws Exception {
+ stage.setTitle("Hello World Application");
+
+ ViewTuple viewTuple = FluentViewLoader.fxmlView(HelloWorldView.class)
+ .load();
+
+ Parent root = viewTuple.getView();
+ stage.setScene(new Scene(root));
+ stage.show();
+ }
+}
diff --git a/helloworld-gradle/src/main/java/HelloWorldView.java b/helloworld-gradle/src/main/java/HelloWorldView.java
new file mode 100644
index 0000000..d5deda2
--- /dev/null
+++ b/helloworld-gradle/src/main/java/HelloWorldView.java
@@ -0,0 +1,22 @@
+import de.saxsys.mvvmfx.FxmlView;
+import de.saxsys.mvvmfx.InjectViewModel;
+import javafx.fxml.FXML;
+import javafx.fxml.Initializable;
+import javafx.scene.control.Label;
+
+import java.net.URL;
+import java.util.ResourceBundle;
+
+public class HelloWorldView implements FxmlView, Initializable {
+
+ @FXML
+ private Label helloLabel;
+
+ @InjectViewModel
+ private HelloWorldViewModel viewModel;
+
+ @Override
+ public void initialize(URL location, ResourceBundle resources) {
+ helloLabel.textProperty().bind(viewModel.helloMessage());
+ }
+}
diff --git a/helloworld-gradle/src/main/java/HelloWorldViewModel.java b/helloworld-gradle/src/main/java/HelloWorldViewModel.java
new file mode 100644
index 0000000..542342e
--- /dev/null
+++ b/helloworld-gradle/src/main/java/HelloWorldViewModel.java
@@ -0,0 +1,20 @@
+import de.saxsys.mvvmfx.ViewModel;
+import javafx.beans.property.SimpleStringProperty;
+import javafx.beans.property.StringProperty;
+
+public class HelloWorldViewModel implements ViewModel {
+
+ private StringProperty helloMessage = new SimpleStringProperty("Hello World");
+
+ public StringProperty helloMessage(){
+ return helloMessage;
+ }
+
+ public String getHelloMessage(){
+ return helloMessage.get();
+ }
+
+ public void setHelloMessage(String message){
+ helloMessage.set(message);
+ }
+}
diff --git a/helloworld-gradle/src/main/resources/HelloWorldView.fxml b/helloworld-gradle/src/main/resources/HelloWorldView.fxml
new file mode 100644
index 0000000..b6aa0c6
--- /dev/null
+++ b/helloworld-gradle/src/main/resources/HelloWorldView.fxml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/helloworld-guice-gradle/.idea/description.html b/helloworld-guice-gradle/.idea/description.html
new file mode 100644
index 0000000..4999936
--- /dev/null
+++ b/helloworld-guice-gradle/.idea/description.html
@@ -0,0 +1,2 @@
+Simple mvvmFX application with Gradle that includes simple .fxml file with attached View and ViewModel. For dependency injection Guice is used.
+
\ No newline at end of file
diff --git a/helloworld-guice-gradle/build.gradle b/helloworld-guice-gradle/build.gradle
new file mode 100644
index 0000000..d66a882
--- /dev/null
+++ b/helloworld-guice-gradle/build.gradle
@@ -0,0 +1,18 @@
+group 'mvvmfx.intellij.plugin'
+version '1.0'
+
+apply plugin: 'java'
+
+sourceCompatibility = 1.8
+
+repositories {
+ mavenCentral()
+}
+
+dependencies {
+ dependencies {
+ compile group: 'de.saxsys', name: 'mvvmfx', version: '1.4.1'
+ compile group: 'de.saxsys', name: 'mvvmfx-guice', version: '1.4.1'
+ }
+ testCompile group: 'junit', name: 'junit', version: '4.11'
+}
diff --git a/helloworld-guice-gradle/gradle/wrapper/gradle-wrapper.properties b/helloworld-guice-gradle/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 0000000..0bcd687
--- /dev/null
+++ b/helloworld-guice-gradle/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,6 @@
+#Wed Mar 16 13:52:47 CET 2016
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.5-all.zip
diff --git a/helloworld-guice-gradle/src/main/java/App.java b/helloworld-guice-gradle/src/main/java/App.java
new file mode 100644
index 0000000..2490494
--- /dev/null
+++ b/helloworld-guice-gradle/src/main/java/App.java
@@ -0,0 +1,27 @@
+import de.saxsys.mvvmfx.FluentViewLoader;
+import de.saxsys.mvvmfx.ViewTuple;
+import de.saxsys.mvvmfx.guice.MvvmfxGuiceApplication;
+
+import javafx.scene.Parent;
+import javafx.scene.Scene;
+import javafx.stage.Stage;
+
+public class App extends MvvmfxGuiceApplication {
+
+ public static void main(String... args) {
+ launch(args);
+ }
+
+
+ @Override
+ public void startMvvmfx(Stage stage) throws Exception {
+ stage.setTitle("Hello World Application");
+
+ ViewTuple viewTuple = FluentViewLoader.fxmlView(HelloWorldView.class)
+ .load();
+
+ Parent root = viewTuple.getView();
+ stage.setScene(new Scene(root));
+ stage.show();
+ }
+}
diff --git a/helloworld-guice-gradle/src/main/java/HelloWorldView.java b/helloworld-guice-gradle/src/main/java/HelloWorldView.java
new file mode 100644
index 0000000..d5deda2
--- /dev/null
+++ b/helloworld-guice-gradle/src/main/java/HelloWorldView.java
@@ -0,0 +1,22 @@
+import de.saxsys.mvvmfx.FxmlView;
+import de.saxsys.mvvmfx.InjectViewModel;
+import javafx.fxml.FXML;
+import javafx.fxml.Initializable;
+import javafx.scene.control.Label;
+
+import java.net.URL;
+import java.util.ResourceBundle;
+
+public class HelloWorldView implements FxmlView, Initializable {
+
+ @FXML
+ private Label helloLabel;
+
+ @InjectViewModel
+ private HelloWorldViewModel viewModel;
+
+ @Override
+ public void initialize(URL location, ResourceBundle resources) {
+ helloLabel.textProperty().bind(viewModel.helloMessage());
+ }
+}
diff --git a/helloworld-guice-gradle/src/main/java/HelloWorldViewModel.java b/helloworld-guice-gradle/src/main/java/HelloWorldViewModel.java
new file mode 100644
index 0000000..542342e
--- /dev/null
+++ b/helloworld-guice-gradle/src/main/java/HelloWorldViewModel.java
@@ -0,0 +1,20 @@
+import de.saxsys.mvvmfx.ViewModel;
+import javafx.beans.property.SimpleStringProperty;
+import javafx.beans.property.StringProperty;
+
+public class HelloWorldViewModel implements ViewModel {
+
+ private StringProperty helloMessage = new SimpleStringProperty("Hello World");
+
+ public StringProperty helloMessage(){
+ return helloMessage;
+ }
+
+ public String getHelloMessage(){
+ return helloMessage.get();
+ }
+
+ public void setHelloMessage(String message){
+ helloMessage.set(message);
+ }
+}
diff --git a/helloworld-guice-gradle/src/main/resources/HelloWorldView.fxml b/helloworld-guice-gradle/src/main/resources/HelloWorldView.fxml
new file mode 100644
index 0000000..b6aa0c6
--- /dev/null
+++ b/helloworld-guice-gradle/src/main/resources/HelloWorldView.fxml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/helloworld-guice-gradle/src/main/resources/META-INF/beans.xml b/helloworld-guice-gradle/src/main/resources/META-INF/beans.xml
new file mode 100644
index 0000000..330e12f
--- /dev/null
+++ b/helloworld-guice-gradle/src/main/resources/META-INF/beans.xml
@@ -0,0 +1,21 @@
+
+
+
+
\ No newline at end of file
diff --git a/helloworld-guice-maven/.idea/description.html b/helloworld-guice-maven/.idea/description.html
new file mode 100644
index 0000000..750c88b
--- /dev/null
+++ b/helloworld-guice-maven/.idea/description.html
@@ -0,0 +1,2 @@
+Simple mvvmFX application with Maven that includes simple .fxml file with attached View and ViewModel. For dependency injection Guice is used.
+
\ No newline at end of file
diff --git a/helloworld-guice-maven/pom.xml b/helloworld-guice-maven/pom.xml
new file mode 100644
index 0000000..3cabfb1
--- /dev/null
+++ b/helloworld-guice-maven/pom.xml
@@ -0,0 +1,29 @@
+
+
+ 4.0.0
+
+ mvvmfx.intellij.plugin
+ helloworld-guice-maven
+ 1.0
+
+
+ UTF-8
+ 1.8
+ 1.8
+
+
+
+
+ de.saxsys
+ mvvmfx
+ 1.4.1
+
+
+ de.saxsys
+ mvvmfx-guice
+ 1.4.1
+
+
+
\ No newline at end of file
diff --git a/helloworld-guice-maven/src/main/java/App.java b/helloworld-guice-maven/src/main/java/App.java
new file mode 100644
index 0000000..2490494
--- /dev/null
+++ b/helloworld-guice-maven/src/main/java/App.java
@@ -0,0 +1,27 @@
+import de.saxsys.mvvmfx.FluentViewLoader;
+import de.saxsys.mvvmfx.ViewTuple;
+import de.saxsys.mvvmfx.guice.MvvmfxGuiceApplication;
+
+import javafx.scene.Parent;
+import javafx.scene.Scene;
+import javafx.stage.Stage;
+
+public class App extends MvvmfxGuiceApplication {
+
+ public static void main(String... args) {
+ launch(args);
+ }
+
+
+ @Override
+ public void startMvvmfx(Stage stage) throws Exception {
+ stage.setTitle("Hello World Application");
+
+ ViewTuple viewTuple = FluentViewLoader.fxmlView(HelloWorldView.class)
+ .load();
+
+ Parent root = viewTuple.getView();
+ stage.setScene(new Scene(root));
+ stage.show();
+ }
+}
diff --git a/helloworld-guice-maven/src/main/java/HelloWorldView.java b/helloworld-guice-maven/src/main/java/HelloWorldView.java
new file mode 100644
index 0000000..d5deda2
--- /dev/null
+++ b/helloworld-guice-maven/src/main/java/HelloWorldView.java
@@ -0,0 +1,22 @@
+import de.saxsys.mvvmfx.FxmlView;
+import de.saxsys.mvvmfx.InjectViewModel;
+import javafx.fxml.FXML;
+import javafx.fxml.Initializable;
+import javafx.scene.control.Label;
+
+import java.net.URL;
+import java.util.ResourceBundle;
+
+public class HelloWorldView implements FxmlView, Initializable {
+
+ @FXML
+ private Label helloLabel;
+
+ @InjectViewModel
+ private HelloWorldViewModel viewModel;
+
+ @Override
+ public void initialize(URL location, ResourceBundle resources) {
+ helloLabel.textProperty().bind(viewModel.helloMessage());
+ }
+}
diff --git a/helloworld-guice-maven/src/main/java/HelloWorldViewModel.java b/helloworld-guice-maven/src/main/java/HelloWorldViewModel.java
new file mode 100644
index 0000000..542342e
--- /dev/null
+++ b/helloworld-guice-maven/src/main/java/HelloWorldViewModel.java
@@ -0,0 +1,20 @@
+import de.saxsys.mvvmfx.ViewModel;
+import javafx.beans.property.SimpleStringProperty;
+import javafx.beans.property.StringProperty;
+
+public class HelloWorldViewModel implements ViewModel {
+
+ private StringProperty helloMessage = new SimpleStringProperty("Hello World");
+
+ public StringProperty helloMessage(){
+ return helloMessage;
+ }
+
+ public String getHelloMessage(){
+ return helloMessage.get();
+ }
+
+ public void setHelloMessage(String message){
+ helloMessage.set(message);
+ }
+}
diff --git a/helloworld-guice-maven/src/main/resources/HelloWorldView.fxml b/helloworld-guice-maven/src/main/resources/HelloWorldView.fxml
new file mode 100644
index 0000000..b6aa0c6
--- /dev/null
+++ b/helloworld-guice-maven/src/main/resources/HelloWorldView.fxml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/helloworld-guice-maven/src/main/resources/META-INF/beans.xml b/helloworld-guice-maven/src/main/resources/META-INF/beans.xml
new file mode 100644
index 0000000..330e12f
--- /dev/null
+++ b/helloworld-guice-maven/src/main/resources/META-INF/beans.xml
@@ -0,0 +1,21 @@
+
+
+
+
\ No newline at end of file
diff --git a/helloworld-maven/.idea/description.html b/helloworld-maven/.idea/description.html
new file mode 100644
index 0000000..2cae33f
--- /dev/null
+++ b/helloworld-maven/.idea/description.html
@@ -0,0 +1,2 @@
+Simple mvvmFX application with Maven that includes simple .fxml file with attached View and ViewModel.
+
\ No newline at end of file
diff --git a/helloworld-maven/pom.xml b/helloworld-maven/pom.xml
new file mode 100644
index 0000000..05a5dc1
--- /dev/null
+++ b/helloworld-maven/pom.xml
@@ -0,0 +1,24 @@
+
+
+ 4.0.0
+
+ mvvmfx.intellij.plugin
+ helloworld-maven
+ 1.0
+
+
+ UTF-8
+ 1.8
+ 1.8
+
+
+
+
+ de.saxsys
+ mvvmfx
+ 1.4.1
+
+
+
\ No newline at end of file
diff --git a/helloworld-maven/src/main/java/App.java b/helloworld-maven/src/main/java/App.java
new file mode 100644
index 0000000..b46a788
--- /dev/null
+++ b/helloworld-maven/src/main/java/App.java
@@ -0,0 +1,26 @@
+import de.saxsys.mvvmfx.FluentViewLoader;
+import de.saxsys.mvvmfx.ViewTuple;
+import javafx.application.Application;
+import javafx.scene.Parent;
+import javafx.scene.Scene;
+import javafx.stage.Stage;
+
+public class App extends Application {
+
+ public static void main(String... args) {
+ launch(args);
+ }
+
+
+ @Override
+ public void start(Stage stage) throws Exception {
+ stage.setTitle("Hello World Application");
+
+ ViewTuple viewTuple = FluentViewLoader.fxmlView(HelloWorldView.class)
+ .load();
+
+ Parent root = viewTuple.getView();
+ stage.setScene(new Scene(root));
+ stage.show();
+ }
+}
diff --git a/helloworld-maven/src/main/java/HelloWorldView.java b/helloworld-maven/src/main/java/HelloWorldView.java
new file mode 100644
index 0000000..d5deda2
--- /dev/null
+++ b/helloworld-maven/src/main/java/HelloWorldView.java
@@ -0,0 +1,22 @@
+import de.saxsys.mvvmfx.FxmlView;
+import de.saxsys.mvvmfx.InjectViewModel;
+import javafx.fxml.FXML;
+import javafx.fxml.Initializable;
+import javafx.scene.control.Label;
+
+import java.net.URL;
+import java.util.ResourceBundle;
+
+public class HelloWorldView implements FxmlView, Initializable {
+
+ @FXML
+ private Label helloLabel;
+
+ @InjectViewModel
+ private HelloWorldViewModel viewModel;
+
+ @Override
+ public void initialize(URL location, ResourceBundle resources) {
+ helloLabel.textProperty().bind(viewModel.helloMessage());
+ }
+}
diff --git a/helloworld-maven/src/main/java/HelloWorldViewModel.java b/helloworld-maven/src/main/java/HelloWorldViewModel.java
new file mode 100644
index 0000000..542342e
--- /dev/null
+++ b/helloworld-maven/src/main/java/HelloWorldViewModel.java
@@ -0,0 +1,20 @@
+import de.saxsys.mvvmfx.ViewModel;
+import javafx.beans.property.SimpleStringProperty;
+import javafx.beans.property.StringProperty;
+
+public class HelloWorldViewModel implements ViewModel {
+
+ private StringProperty helloMessage = new SimpleStringProperty("Hello World");
+
+ public StringProperty helloMessage(){
+ return helloMessage;
+ }
+
+ public String getHelloMessage(){
+ return helloMessage.get();
+ }
+
+ public void setHelloMessage(String message){
+ helloMessage.set(message);
+ }
+}
diff --git a/helloworld-maven/src/main/resources/HelloWorldView.fxml b/helloworld-maven/src/main/resources/HelloWorldView.fxml
new file mode 100644
index 0000000..b6aa0c6
--- /dev/null
+++ b/helloworld-maven/src/main/resources/HelloWorldView.fxml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/META-INF/plugin.xml b/resources/META-INF/plugin.xml
index a184532..27bd19c 100644
--- a/resources/META-INF/plugin.xml
+++ b/resources/META-INF/plugin.xml
@@ -1,15 +1,17 @@
- de.saxsys
- mvvmFX-plugin
- 1.0-SNAPSHOT
- Saxonia Systems
+ mvvmfx
+ mvvmFX
+ 1.0
+ Andre Krause
1.0:
+ - Added Project-Templates for all possible project types
]]>
@@ -23,6 +25,11 @@
-->
-
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/resources/projectTemplates/mvvmFX/helloworld-cdi-gradle.zip b/src/resources/projectTemplates/mvvmFX/helloworld-cdi-gradle.zip
new file mode 100644
index 0000000..e534613
Binary files /dev/null and b/src/resources/projectTemplates/mvvmFX/helloworld-cdi-gradle.zip differ
diff --git a/src/resources/projectTemplates/mvvmFX/helloworld-cdi-maven.zip b/src/resources/projectTemplates/mvvmFX/helloworld-cdi-maven.zip
new file mode 100644
index 0000000..dc6047f
Binary files /dev/null and b/src/resources/projectTemplates/mvvmFX/helloworld-cdi-maven.zip differ
diff --git a/src/resources/projectTemplates/mvvmFX/helloworld-gradle.zip b/src/resources/projectTemplates/mvvmFX/helloworld-gradle.zip
new file mode 100644
index 0000000..011bea5
Binary files /dev/null and b/src/resources/projectTemplates/mvvmFX/helloworld-gradle.zip differ
diff --git a/src/resources/projectTemplates/mvvmFX/helloworld-guice-gradle.zip b/src/resources/projectTemplates/mvvmFX/helloworld-guice-gradle.zip
new file mode 100644
index 0000000..43d4165
Binary files /dev/null and b/src/resources/projectTemplates/mvvmFX/helloworld-guice-gradle.zip differ
diff --git a/src/resources/projectTemplates/mvvmFX/helloworld-guice-maven.zip b/src/resources/projectTemplates/mvvmFX/helloworld-guice-maven.zip
new file mode 100644
index 0000000..332c88e
Binary files /dev/null and b/src/resources/projectTemplates/mvvmFX/helloworld-guice-maven.zip differ
diff --git a/src/resources/projectTemplates/mvvmFX/helloworld-maven.zip b/src/resources/projectTemplates/mvvmFX/helloworld-maven.zip
new file mode 100644
index 0000000..bdfb23a
Binary files /dev/null and b/src/resources/projectTemplates/mvvmFX/helloworld-maven.zip differ
diff --git a/src/resources/projectTemplates/mvvmFX/mvvmFX Application.zip b/src/resources/projectTemplates/mvvmFX/mvvmFX Application.zip
deleted file mode 100644
index cf1d6c5..0000000
Binary files a/src/resources/projectTemplates/mvvmFX/mvvmFX Application.zip and /dev/null differ