GraphNode.Font/Fixed
authorTomas Zeman <tomas@functionals.cz>
Tue, 07 Apr 2020 19:00:01 +0200
changeset 9 0df6b425c802
parent 8 f91f69dadd72
child 10 a0459902fe32
GraphNode.Font/Fixed
visjs/src/cz/functionals/visjs/GraphNode.scala
--- a/visjs/src/cz/functionals/visjs/GraphNode.scala	Fri Oct 18 16:39:09 2019 +0200
+++ b/visjs/src/cz/functionals/visjs/GraphNode.scala	Tue Apr 07 19:00:01 2020 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright 2019 Tomas Zeman <tomas@functionals.cz>, <tzeman@volny.cz>
+ * Copyright 2019-2020 Tomas Zeman <tomas@functionals.cz>
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -15,11 +15,14 @@
  */
 package cz.functionals.visjs
 
+import cz.functionals.visjs.GraphNode.{Fixed, Font}
 import org.scalajs.dom
 
 import scala.scalajs.js
 import scala.scalajs.js.{UndefOr, |}
 
+// https://visjs.github.io/vis-network/docs/network/nodes.html
+
 class GraphNode(
   val id: String,
   val label: String,
@@ -27,9 +30,31 @@
   val color: UndefOr[String] = js.undefined,
   val image: UndefOr[js.Any] = js.undefined,
   val shape: UndefOr[String] = js.undefined,
-  val widthConstraint: Boolean | Int | GraphNodeMinMax = false
+  val widthConstraint: Boolean | Int | GraphNodeMinMax = false,
+  val fixed: Boolean | Fixed = false,
+  val font: String | Font = new Font()
 ) extends js.Object
 
 class GraphNodeMinMax(
   val minimum: UndefOr[Int] = js.undefined,
   val maximum: UndefOr[Int] = js.undefined) extends js.Object
+
+object GraphNode {
+  class Font(
+    val color: String = "#343434",
+    val size: Int = 14,
+    val face: String = "arial",
+    val background: UndefOr[String] = js.undefined,
+    val strokeWidth: Int = 0,
+    val strokeColor: String = "#ffffff",
+    val align: String = "center",
+    val vadjust: Int = 0,
+    val multi: Boolean | String = false,
+    val bold: Boolean | js.Object = false,
+    val ital: Boolean | js.Object = false,
+    val boldital: Boolean | js.Object = false,
+    val mono: Boolean | js.Object = false
+  ) extends js.Object
+
+  class Fixed(val x: Boolean = false, val y: Boolean = false) extends js.Object
+}