MCPcopy Index your code
hub / github.com/methodofaction/Method-Draw / updateContextPanel

Function updateContextPanel

src/js/Panel.js:148–374  ·  view source on GitHub ↗
(elems)

Source from the content-addressed store, hash-verified

146 }
147
148 function updateContextPanel(elems) {
149 if (!elems) elems = editor.selected;
150 var elem = elems[0] || editor.selected[0];
151 const isNode = svgCanvas.pathActions.getNodePoint()
152 // If element has just been deleted, consider it null
153 if(!elem || !elem.parentNode) elem = null;
154
155 const multiselected = elems.length > 1;
156
157 var currentLayerName = svgCanvas.getCurrentDrawing().getCurrentLayerName();
158 var currentMode = svgCanvas.getMode();
159
160 $('.context_panel').hide();
161 $("#align_tools").toggle(elem && !multiselected);
162
163 if (currentMode === 'pathedit') return showPathEdit();
164
165 var menu_items = $('#cmenu_canvas li');
166
167 //hack to show the proper multialign box
168 if (multiselected) {
169 const multi = elems.filter(Boolean);
170 elem = (svgCanvas.elementsAreSame(multi)) ? multi[0] : null
171 if (elem) $("#panels").addClass("multiselected");
172 const canTextPath = canPutTextOnPath(multi);
173 $("#tool_text_on_path").toggle(canTextPath);
174 }
175 else {
176 $("#panels").removeClass("multiselected");
177 }
178
179 if (!elem && !multiselected) {
180 $("#stroke_panel").hide();
181 $("#canvas_panel").show();
182 }
183
184 if (elem !== null) {
185 $("#stroke_panel").show();
186 const strokeWidth = elem.getAttribute("stroke") && !elem.getAttribute("stroke-width") ? 1 : elem.getAttribute("stroke-width") || 0;
187 $('#stroke_width').val(strokeWidth);
188 // stroke style
189 const strokeStyle = elem.getAttribute("stroke-dasharray") || "none";
190 const strokeStyles = {
191 "none": "—",
192 "2,2": "...",
193 "5,5": "- -",
194 "5,2,2,2": "-·-",
195 "5,2,2,2,2,2": "-··-"
196 };
197 $("#stroke_style_label").html(strokeStyles[strokeStyle] || "—");
198 var elname = elem.nodeName;
199 var angle = svgCanvas.getRotationAngle(elem);
200 $('#angle').val(Math.round(angle));
201 $('#group_opacity').val(svgCanvas.getOpacity(elem)*100 || 100);
202 $.fn.dragInput.updateCursor(document.getElementById("group_opacity"));
203 $('#tool_angle_indicator').css("transform", "rotate("+angle+"deg)");
204 var blurval = svgCanvas.getBlur(elem);
205 $('#blur').val(blurval);

Callers 7

convertToPathFunction · 0.85
rotateSelectedFunction · 0.85
clickClearFunction · 0.85
clickBoldFunction · 0.85
clickItalicFunction · 0.85
import_imageFunction · 0.85
importImageFileFunction · 0.85

Calls 3

$Function · 0.85
showPathEditFunction · 0.85
canPutTextOnPathFunction · 0.85

Tested by

no test coverage detected