title: JavaFX entirely customized windows?
body: <p>I would like to have an application where I've entirely customized the window's appearance. So far I've learned that I can remove the typical window stuff with:</p>
  
  <pre><code>class Application extends javafx.application.Application {
    /**
     * Starts the application.
     *
     * @param stage
     */
    override def start(stage: Stage) {
      stage.initStyle(StageStyle.TRANSPARENT)
  
      // Load the main window view.
      val loader = new FXMLLoader()
      loader.setLocation(getClass.getResource("/com/myproj/application/MainWindow.fxml"))
  
      val root = loader.load().asInstanceOf[Parent]
      val scene: Scene = new Scene(root, Color.TRANSPARENT)
  
      stage.setScene(scene)
      stage.show()
    }
  }
  </code></pre>
  
  <p>Everything else works fine, except that window dragging, double-click-to-maximize, dragging to screen top edge on Windows should active maximizing, etc. The native Window capabilities are missing entirely.</p>
  
  <p>Can I somehow rather easily customize the entire appear of the window without losing all these nice capabilities.</p>
  
  <p>I'm talking about something like Adobe Photoshop which looks entirely different but still retains these features (or implements them on top of their UI manually).</p>
  
  <p>It would be a start if I could at least implement dragging + window buttons for starters. I am targeting Linux, Mac and Windows here.</p>