Added save weight presets for edges.

This commit is contained in:
Unick Soft
2020-04-26 20:15:08 +02:00
parent 4517ee12a3
commit 72f94e5ddd
4 changed files with 44 additions and 15 deletions

View File

@@ -46,6 +46,9 @@ function Application(document, window)
this.backgroundPrintStyle = new PrintBackgroundStyle(); this.backgroundPrintStyle = new PrintBackgroundStyle();
this.isBackgroundCommonStyleCustom = false; this.isBackgroundCommonStyleCustom = false;
this.renderPathWithEdges = false; this.renderPathWithEdges = false;
this.edgePresets = [1, 3, 5, 7, 11, 42];
this.maxEdgePresets = 6;
}; };
// List of graph. // List of graph.
@@ -530,6 +533,9 @@ Application.prototype.CreateNewArc = function(graph1, graph2, isDirect, weight,
} }
} }
if (edgeObject.useWeight)
this.UpdateEdgePresets(edgeObject.weight);
return edge; return edge;
} }
@@ -1570,3 +1576,25 @@ Application.prototype.GraphTypeChanged = function()
{ {
$("#CanvasMessage").text(this.graph.isMulti() ? g_GrapsIsMultiMessage : g_GrapsIsGeneralMessage); $("#CanvasMessage").text(this.graph.isMulti() ? g_GrapsIsMultiMessage : g_GrapsIsGeneralMessage);
} }
Application.prototype.UpdateEdgePresets = function(weight)
{
var oldPresets = this.edgePresets;
this.edgePresets = [1];
oldPresets.unshift(weight);
for(var i = 0; i < oldPresets.length; i ++)
{
var k = oldPresets[i];
if (!this.edgePresets.includes(k))
this.edgePresets.push(k);
if (this.edgePresets.length >= this.maxEdgePresets)
break;
}
}
Application.prototype.GetEdgePresets = function()
{
return this.edgePresets;
}

View File

@@ -461,6 +461,17 @@ ConnectionGraphHandler.prototype.SelectVertex = function(selectedObject)
handler.AddNewEdge(selectedObject, false); handler.AddNewEdge(selectedObject, false);
$( this ).dialog( "close" ); $( this ).dialog( "close" );
}; };
var edgePresets = this.app.GetEdgePresets();
var presetsStr = "<span onClick=\"document.getElementById('EdgeWeight').value='" + g_DefaultWeightPreset + "'; document.getElementById('EdgeWeightSlider').value='" + g_DefaultWeightPreset + "';\" style=\"cursor: pointer\" class=\"defaultWeigth\">" + g_DefaultWeightPreset + "</span>";
for(var i = 0; i < edgePresets.length; i ++)
{
var edgePreset = edgePresets[i];
presetsStr += "<span onClick=\"document.getElementById('EdgeWeight').value='" + edgePreset + "'; document.getElementById('EdgeWeightSlider').value=" + edgePreset + ";\" style=\"cursor: pointer\" class=\"defaultWeigth\">" + edgePreset + "</span>";
}
document.getElementById("EdgesPresets").innerHTML = presetsStr;
$( "#addEdge" ).dialog({ $( "#addEdge" ).dialog({
resizable: false, resizable: false,
height: "auto", height: "auto",

View File

@@ -106,6 +106,7 @@ var g_backgroundStyle = "Bacgkround style";
var g_GrapsIsMultiMessage = "Graph is multigraph"; var g_GrapsIsMultiMessage = "Graph is multigraph";
var g_GrapsIsGeneralMessage = ""; var g_GrapsIsGeneralMessage = "";
var g_DefaultWeightPreset = "no weight";
function loadTexts() function loadTexts()
{ {
@@ -214,4 +215,5 @@ function loadTexts()
g_GrapsIsMultiMessage = document.getElementById("graphIsMultiMessage").innerHTML; g_GrapsIsMultiMessage = document.getElementById("graphIsMultiMessage").innerHTML;
g_GrapsIsGeneralMessage = document.getElementById("graphIsGeneralMessage").innerHTML; g_GrapsIsGeneralMessage = document.getElementById("graphIsGeneralMessage").innerHTML;
g_DefaultWeightPreset = document.getElementById("defaultWeightPreset").innerHTML;
} }

View File

@@ -163,7 +163,6 @@
</div> </div>
</section> </section>
<? if (L('current_language') != "en"): ?>
<section style="height:32px;text-align: center;" id="adv" class="hidden-phone"> <section style="height:32px;text-align: center;" id="adv" class="hidden-phone">
<a class="ProgresssBarLink" href="opensource" target="_blank"> <a class="ProgresssBarLink" href="opensource" target="_blank">
<div class="ProgressBar" style="height:32px"> <div class="ProgressBar" style="height:32px">
@@ -172,18 +171,6 @@
</div> </div>
</a> </a>
</section> </section>
<? endif; ?>
<? if (L('current_language') == "en"): ?>
<section style="height:32px;text-align: center;" id="adv" class="hidden-phone">
<a class="ProgresssBarLink" href="/fr/">
<div class="ProgressBar" style="height:32px">
<div class="ProgressBarFill" style="width:0%;"></div>
<span class="ProgressBarText" style="top:-28px"><p><?= L('french_add')?></p></span>
</div>
</a>
</section>
<? endif; ?>
<? if (L('current_language') == "ru" && false): ?> <? if (L('current_language') == "ru" && false): ?>
<!-- <!--
@@ -231,7 +218,7 @@
<div> <div>
<label id="WeightLabel"><?= L('edge_weight')?>&nbsp; </label> <input type="range" id="EdgeWeightSlider" min="0" max="29" value="0" oninput="document.getElementById('EdgeWeight').value = (this.value > 0 ? this.value : '<?= L('default_weight')?>');" onchange="document.getElementById('EdgeWeight').value = (this.value > 0 ? this.value : '<?= L('default_weight')?>');"> &nbsp; &nbsp;<input type="text" name="edgeWeight" value="<?= L('default_weight')?>" id="EdgeWeight" class="inputBox"> <label id="WeightLabel"><?= L('edge_weight')?>&nbsp; </label> <input type="range" id="EdgeWeightSlider" min="0" max="29" value="0" oninput="document.getElementById('EdgeWeight').value = (this.value > 0 ? this.value : '<?= L('default_weight')?>');" onchange="document.getElementById('EdgeWeight').value = (this.value > 0 ? this.value : '<?= L('default_weight')?>');"> &nbsp; &nbsp;<input type="text" name="edgeWeight" value="<?= L('default_weight')?>" id="EdgeWeight" class="inputBox">
</div> </div>
<div> <div id="EdgesPresets">
<span onClick="document.getElementById('EdgeWeight').value='<?= L('default_weight')?>'; document.getElementById('EdgeWeightSlider').value=0;" style="cursor: pointer" class="defaultWeigth"><?= L('default_weight')?></span> <span onClick="document.getElementById('EdgeWeight').value='<?= L('default_weight')?>'; document.getElementById('EdgeWeightSlider').value=0;" style="cursor: pointer" class="defaultWeigth"><?= L('default_weight')?></span>
<span onClick="document.getElementById('EdgeWeight').value='1'; document.getElementById('EdgeWeightSlider').value=1;" style="cursor: pointer" class="defaultWeigth">1</span> <span onClick="document.getElementById('EdgeWeight').value='1'; document.getElementById('EdgeWeightSlider').value=1;" style="cursor: pointer" class="defaultWeigth">1</span>
<span onClick="document.getElementById('EdgeWeight').value='3'; document.getElementById('EdgeWeightSlider').value=3;" style="cursor: pointer" class="defaultWeigth">3</span> <span onClick="document.getElementById('EdgeWeight').value='3'; document.getElementById('EdgeWeightSlider').value=3;" style="cursor: pointer" class="defaultWeigth">3</span>
@@ -576,6 +563,7 @@
<p id="graphIsMultiMessage" class="translation"><?= L('graph_is_multi_message')?></p> <p id="graphIsMultiMessage" class="translation"><?= L('graph_is_multi_message')?></p>
<p id="graphIsGeneralMessage" class="translation"><?= L('graph_is_general_message')?></p> <p id="graphIsGeneralMessage" class="translation"><?= L('graph_is_general_message')?></p>
<p id="defaultWeightPreset" class="translation"><?= L('default_weight')?></p>
</section> </section>
<!-- <!--