From 97232f9f388281a951df0eab521570a6289be7c6 Mon Sep 17 00:00:00 2001
From: xyliu <xyliu@theobook160.speedport.ip>
Date: Wed, 4 Sep 2019 15:15:16 +0200
Subject: [PATCH] Fixed bugs.

---
 band_structure_visualization.ipynb | 31 +++++++++++++++++-------------
 1 file changed, 18 insertions(+), 13 deletions(-)

diff --git a/band_structure_visualization.ipynb b/band_structure_visualization.ipynb
index bcab18d..0e3878e 100644
--- a/band_structure_visualization.ipynb
+++ b/band_structure_visualization.ipynb
@@ -3265,19 +3265,24 @@
     "\n",
     "    function check_plot_band_dos_status(lowerLim, upperLim, N_materials_show)\n",
     "    {\n",
-    "        for(var i_material = 0; i_material < N_materials_show; i_material++)\n",
-    "          {\n",
-    "\n",
-    "            //alert(\"Material \"+i);\n",
-    "            var checkbox_material_id = \"checkbox_material\" + i_material.toString();\n",
-    "            var if_selected = check_show_VBM(checkbox_material_id);\n",
-    "            if(if_selected != 1)\n",
-    "            {\n",
-    "              continue;\n",
-    "            }\n",
-    "\n",
-    "            plot_band_dos_i(i_material, lowerLim, upperLim, 0, 0, -1);\n",
-    "          }\n",
+    "      var N_plot_done = 0;\n",
+    "      for (let i_material = 0, p = Promise.resolve(); i_material < N_materials_show; i_material++) {\n",
+    "        p = p.then(_ => new Promise(resolve =>\n",
+    "            setTimeout(function () {\n",
+    "                //alert(i_material)\n",
+    "                var checkbox_material_id = \"checkbox_material\" + i_material.toString();\n",
+    "                var if_selected = check_show_VBM(checkbox_material_id);\n",
+    "                if(if_selected == 1)\n",
+    "                {\n",
+    "                    plot_band_dos_i(i_material, lowerLim, upperLim, 0, 0, -1);\n",
+    "                    N_plot_done ++;\n",
+    "                }\n",
+    "                resolve();\n",
+    "            }, 0)\n",
+    "        ));\n",
+    "      }\n",
+    "      if(N_plot_done != N_materials_show)\n",
+    "        alert(\"Plot not complete\");\n",
     "    }\n",
     "\n",
     "    function plot_band_dos(lowerLim, upperLim, N_materials_show)\n",
-- 
GitLab