Skip to content

Commit 6cd99f7

Browse files
committed
更新:可以從參數、指令標題處添加及刪除子元件
1. 可以從參數、指令標題處添加及刪除子元件 2. 每個參數、指令元件都可以使用添加、清空、刪除功能 - 目前指令參數還不適用 3. 修正已暫存的編輯器未在刪除元件時清理 4. 刪除初始提供的第一個參數與指令元件
1 parent 12ca2fd commit 6cd99f7

2 files changed

Lines changed: 65 additions & 279 deletions

File tree

index.html

Lines changed: 12 additions & 266 deletions
Original file line numberDiff line numberDiff line change
@@ -163,15 +163,6 @@
163163
box-shadow: 0 0 4px #F339;
164164
}
165165

166-
/* input:invalid::after {
167-
data-invalid="it must be start by A-Z, a-z, and _, with no white space between letters"
168-
content: attr(data-invalid);
169-
170-
position: absolute;
171-
top: 5px;
172-
z-index: 1;
173-
} */
174-
175166
#root_param .param.block select.param_input_type,
176167
#root_command .block .command_parameter_group select.param_input_type {
177168
width: calc(100% - 4px - 4em);
@@ -277,7 +268,12 @@
277268
padding-left: 1em;
278269
}
279270

280-
271+
#root_param .root_operation,
272+
#root_command .root_operation {
273+
justify-content: flex-end;
274+
align-items: center;
275+
gap: 4px;
276+
}
281277

282278
@media (max-width: 1400px) {
283279
#build_result_button {
@@ -475,271 +471,21 @@
475471
<span class="title">Parameters</span>
476472
</div>
477473

478-
<!-- base -->
479-
<div class="param block" data-id="0">
480-
<span class="param_title title" onclick="ParameterControl.onMainTitleClick(0)">參數<span
481-
class="origin_name">(param)</span></span>
482-
<div class="param_input data_input data">
483-
<div class="list_cell">
484-
<input class="param_input_name" type="text" pattern="^[A-Za-z_]+[A-Za-z0-9_]*" placeholder="parameter name">
485-
<button type="button" class="append_parameter" onclick="ParameterControl.onMainAddClick(0)">Add</button>
486-
<button type="button" class="delete_parameter" onclick="ParameterControl.onMainClrClick(0)">Clr</button>
487-
</div>
488-
<div class="list_cell">
489-
<span class="text_title title sub_title">名稱<span class="origin_name">(text)</span></span>
490-
<input class="param_input_display" type="text" placeholder="display name">
491-
</div>
492-
<div class="list_cell">
493-
<span class="desc_title title sub_title">描述<span class="origin_name">(desc)</span></span>
494-
<input class="param_input_desc" type="text" placeholder="descript">
495-
</div>
496-
<div class="list_cell">
497-
<span class="type_title title sub_title">類型<span class="origin_name">(type)</span></span>
498-
<select id="id_0_param_value_type" class="param_input_type" onchange="ParameterControl.onTypeChange(0)">
499-
<option value="string">字串</option>
500-
<option value="mul_string">多行字串</option>
501-
<option value="number">數字</option>
502-
<option value="boolean">是否</option>
503-
504-
<option value="select">單選</option>
505-
<option value="combo">多選</option>
506-
507-
<option value="file">檔案</option>
508-
509-
<option value="actor">角色</option>
510-
<option value="class">職業</option>
511-
<option value="skill">技能</option>
512-
<option value="item">道具</option>
513-
<option value="weapon">武器</option>
514-
<option value="armor">裝備</option>
515-
<option value="enemy">敵人</option>
516-
<option value="troop">敵隊</option>
517-
<option value="state">狀態</option>
518-
<option value="animation">動畫</option>
519-
<option value="tileset">圖塊集</option>
520-
<option value="common_event">公共事件</option>
521-
<option value="map">地圖</option>
522-
<option value="location">座標</option>
523-
<option value="switch">開關</option>
524-
<option value="variable">變數</option>
525-
<option value="struct">自定義</option>
526-
</select>
527-
<span class="param_input_type_isarray" onclick="ParameterControl.onTypeIsArrayClick(this)"
528-
onmouseenter="ParameterControl.onTypeIsArrayEnter(this)"
529-
onmouseleave="ParameterControl.onTypeIsArrayLeave(this)">&nbsp;array&nbsp;</span>
530-
</div>
531-
<div class="list_cell">
532-
<span class="default_title title sub_title">預設值<span class="origin_name">(default)</span></span>
533-
<input class="param_input_default" type="text" placeholder="default value">
534-
</div>
535-
<div class="group_list_cell param_type_number" data-type="number" hidden>
536-
<div class="list_cell">
537-
<span class="param_title title sub_title">最大值<span class="origin_name">(max)</span></span>
538-
<input class="param_input_maximum" type="number" placeholder="maximum value">
539-
</div>
540-
<div class="list_cell">
541-
<span class="param_title title sub_title">最小值<span class="origin_name">(min)</span></span>
542-
<input class="param_input_minimum" type="number" placeholder="minimum value">
543-
</div>
544-
<div class="list_cell">
545-
<span class="param_title title sub_title">小數位<span class="origin_name">(decimals)</span></span>
546-
<input class="param_input_decimal" type="number" placeholder="decimal length">
547-
</div>
548-
</div>
549-
<div class="group_list_cell param_type_file" data-type="file" hidden>
550-
<div class="list_cell">
551-
<span class="param_title title sub_title">資料夾<span class="origin_name">(dir)</span></span>
552-
<input class="param_input_folder" type="text" placeholder="folder of file">
553-
</div>
554-
</div>
555-
<div class="group_list_cell param_type_boolean" data-type="boolean" hidden>
556-
<div class="list_cell">
557-
<span class="param_title title sub_title">開啟名稱<span class="origin_name">(on)</span></span>
558-
<input class="param_input_switchon" type="text" placeholder="display name of switch on">
559-
</div>
560-
<div class="list_cell">
561-
<span class="param_title title sub_title">關閉名稱<span class="origin_name">(off)</span></span>
562-
<input class="param_input_switchoff" type="text" placeholder="display name of switch off">
563-
</div>
564-
</div>
565-
<div class="group_list_cell param_type_combo" data-type="combo" hidden>
566-
<div class="list_cell" data-id="0">
567-
<span class="param_title title sub_title">選項<span class="origin_name">(option)</span></span>
568-
<input class="param_input_combo_option" type="text" placeholder="option">
569-
<div>
570-
<button type="button" onclick="ParameterControl.onComboAddClick(0)"
571-
style="margin: 0 -5px 0 0;">+</button>
572-
<button type="button" onclick="ParameterControl.onComboClrClick(0)">-</button>
573-
</div>
574-
</div>
575-
</div>
576-
<div class="group_list_cell param_type_select" data-type="select" hidden>
577-
<div class="list_cell" data-id="0">
578-
<span class="param_title title sub_title">選項<span class="origin_name">(option)</span></span>
579-
<input class="param_input_select_name" type="text" placeholder="display name">
580-
<span class="param_title title sub_title">實際值<span class="origin_name">(value)</span></span>
581-
<input class="param_input_select_value" type="text" pattern="^[A-Za-z_]+[A-Za-z0-9_]*"
582-
placeholder="option value">
583-
<div>
584-
<button type="button" onclick="ParameterControl.onSelectAddClick(0)"
585-
style="margin: 0 -5px 0 0;">+</button>
586-
<button type="button" onclick="ParameterControl.onSelectClrClick(0)">-</button>
587-
</div>
588-
</div>
589-
</div>
590-
<div class="list_cell">
591-
<span class="parent_title title sub_title">上級參數<span class="origin_name">(parent)</span></span>
592-
<input class="param_input_parent" type="parent" placeholder="parent parameter name">
593-
</div>
594-
595-
</div>
474+
<div class="param block root_operation">
475+
<button type="button" onclick="ParameterControl.onRootAddClick()">Add</button>
476+
<button type="button" onclick="ParameterControl.onRootDelClick()">Del All</button>
596477
</div>
597-
<!-- base -->
598478

599479
</div>
600480
<div id="root_command" class="root">
601481
<div class="root_title" onclick="onRootTitleClick('comn')">
602482
<span class="title">Event Command</span>
603483
</div>
604484

605-
<!-- command -->
606-
<div class="command block" data-id="0">
607-
<span class="command_title title" onclick="CommandControl.onMainTitleClick(0)">指令<span
608-
class="origin_name">(command)</span></span>
609-
<div class="command_input_list data_input data">
610-
<div class="list_cell">
611-
<input class="command_input_name" type="text" pattern="^[A-Za-z_]+[A-Za-z0-9_]*" placeholder="command name">
612-
<button type="button" class="append_command" onclick="CommandControl.onMainAddClick(0)">Add</button>
613-
<button type="button" class="delete_command" onclick="CommandControl.onMainClrClick(0)">Clr</button>
614-
</div>
615-
<div class="list_cell">
616-
<span class="text_title title sub_title">名稱<span class="origin_name">(text)</span></span>
617-
<input class="command_input_display" type="text" placeholder="display name">
618-
</div>
619-
<div class="list_cell">
620-
<span class="desc_title title sub_title">描述<span class="origin_name">(desc)</span></span>
621-
<input class="command_input_desc" type="text" placeholder="descript">
622-
</div>
623-
624-
<div class="command_parameter_group" data-id="0">
625-
<div class="list_cell">
626-
<span class="param_title title sub_title" onclick="CommandControl.onParamTitleClick(0)">參數<span
627-
class="origin_name">(arg)</span></span>
628-
<input class="param_input_name" type="text" pattern="^[A-Za-z_]+[A-Za-z0-9_]*" placeholder="code name">
629-
<button type="button" class="append_parameter" onclick="CommandControl.onParamAddClick(0)">Add</button>
630-
<button type="button" class="delete_parameter" onclick="CommandControl.onParamClrClick(0)">Clr</button>
631-
</div>
632-
<div class="list_cell">
633-
<span class="text_title title sub_title">名稱<span class="origin_name">(text)</span></span>
634-
<input class="param_input_display" type="text" placeholder="display name">
635-
</div>
636-
<div class="list_cell">
637-
<span class="desc_title title sub_title">描述<span class="origin_name">(desc)</span></span>
638-
<input class="param_input_desc" type="text" placeholder="descript">
639-
</div>
640-
<div class="list_cell">
641-
<span class="type_title title sub_title">類型<span class="origin_name">(type)</span></span>
642-
<select id="id_0_command_param_value_type" class="param_input_type"
643-
onchange="CommandControl.onTypeChange(0)">
644-
<option value="string">字串</option>
645-
<option value="mul_string">多行字串</option>
646-
<option value="number">數字</option>
647-
<option value="boolean">是否</option>
648-
649-
<option value="select">單選</option>
650-
<option value="combo">多選</option>
651-
652-
<option value="file">檔案</option>
653-
654-
<option value="actor">角色</option>
655-
<option value="class">職業</option>
656-
<option value="skill">技能</option>
657-
<option value="item">道具</option>
658-
<option value="weapon">武器</option>
659-
<option value="armor">裝備</option>
660-
<option value="enemy">敵人</option>
661-
<option value="troop">敵隊</option>
662-
<option value="state">狀態</option>
663-
<option value="animation">動畫</option>
664-
<option value="tileset">圖塊集</option>
665-
<option value="common_event">公共事件</option>
666-
<option value="map">地圖</option>
667-
<option value="location">座標</option>
668-
<option value="switch">開關</option>
669-
<option value="variable">變數</option>
670-
<option value="struct">自定義</option>
671-
</select>
672-
<span class="param_input_type_isarray" onclick="ParameterControl.onTypeIsArrayClick(this)"
673-
onmouseenter="ParameterControl.onTypeIsArrayEnter(this)"
674-
onmouseleave="ParameterControl.onTypeIsArrayLeave(this)">&nbsp;array&nbsp;</span>
675-
</div>
676-
<div class="list_cell">
677-
<span class="default_title title sub_title">預設值<span class="origin_name">(default)</span></span>
678-
<input class="param_input_default" type="text" placeholder="default value">
679-
</div>
680-
<div class="group_list_cell param_type_number" data-type="number" hidden>
681-
<div class="list_cell">
682-
<span class="param_title title sub_title">最大值<span class="origin_name">(max)</span></span>
683-
<input class="param_input_maximum" type="number" placeholder="maximum value">
684-
</div>
685-
<div class="list_cell">
686-
<span class="param_title title sub_title">最小值<span class="origin_name">(min)</span></span>
687-
<input class="param_input_minimum" type="number" placeholder="minimum value">
688-
</div>
689-
<div class="list_cell">
690-
<span class="param_title title sub_title">小數位<span class="origin_name">(decimals)</span></span>
691-
<input class="param_input_decimal" type="number" placeholder="decimal length">
692-
</div>
693-
</div>
694-
<div class="group_list_cell param_type_file" data-type="file" hidden>
695-
<div class="list_cell">
696-
<span class="param_title title sub_title">資料夾<span class="origin_name">(dir)</span></span>
697-
<input class="param_input_folder" type="text" placeholder="folder of file">
698-
</div>
699-
</div>
700-
<div class="group_list_cell param_type_boolean" data-type="boolean" hidden>
701-
<div class="list_cell">
702-
<span class="param_title title sub_title">開啟名稱<span class="origin_name">(on)</span></span>
703-
<input class="param_input_switchon" type="text" placeholder="display name of switch on">
704-
</div>
705-
<div class="list_cell">
706-
<span class="param_title title sub_title">關閉名稱<span class="origin_name">(off)</span></span>
707-
<input class="param_input_switchoff" type="text" placeholder="display name of switch off">
708-
</div>
709-
</div>
710-
<div class="group_list_cell param_type_combo" data-type="combo" hidden>
711-
<div class="list_cell" data-id="0">
712-
<span class="param_title title sub_title">選項<span class="origin_name">(option)</span></span>
713-
<input class="param_input_combo_option" type="text" placeholder="option">
714-
<div>
715-
<button type="button" onclick="CommandControl.onComboAddClick(0)"
716-
style="margin: 0 -5px 0 0;">+</button>
717-
<button type="button" onclick="CommandControl.onComboClrClick(0)">-</button>
718-
</div>
719-
</div>
720-
</div>
721-
<div class="group_list_cell param_type_select" data-type="select" hidden>
722-
<div class="list_cell" data-id="0">
723-
<span class="param_title title sub_title">選項<span class="origin_name">(option)</span></span>
724-
<input class="param_input_select_name" type="text" placeholder="display name">
725-
<span class="param_title title sub_title">實際值<span class="origin_name">(value)</span></span>
726-
<input class="param_input_select_value" type="text" pattern="^[A-Za-z_]+[A-Za-z0-9_]*"
727-
placeholder="option value">
728-
<div>
729-
<button type="button" onclick="CommandControl.onSelectAddClick(0)"
730-
style="margin: 0 -5px 0 0;">+</button>
731-
<button type="button" onclick="CommandControl.onSelectClrClick(0)">-</button>
732-
</div>
733-
</div>
734-
</div>
735-
</div>
736-
737-
<div class="list_cell" style="height: auto;">
738-
<div id="id_0_command_editor" style="height: 200px; width: 100%;"></div>
739-
</div>
740-
</div>
485+
<div class="command block root_operation">
486+
<button type="button" onclick="CommandControl.onRootAddClick()">Add</button>
487+
<button type="button" onclick="CommandControl.onRootDelClick()">Del All</button>
741488
</div>
742-
<!-- command -->
743489

744490
</div>
745491
<div id="root_display" class="root">

0 commit comments

Comments
 (0)