Skip to content

Commit

Permalink
置換マネージャで項目の削除をコンテキストメニューから実行するようにした closes #184
Browse files Browse the repository at this point in the history
- 削除時に確認するようにした
- 一度に複数個の項目を削除できるようにした
  • Loading branch information
nodaguti committed Nov 22, 2014
1 parent df799a4 commit db89b4c
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 9 deletions.
23 changes: 16 additions & 7 deletions chaika/chrome/content/chaika/settings/replacement-manager.js
Original file line number Diff line number Diff line change
Expand Up @@ -81,15 +81,16 @@ var gReplacementManager = {
case 'command':
switch(aEvent.originalTarget.className){
case 'button-add':
case 'context-add':
this.add();
break;

case 'button-import':
this.import();
break;

case 'button-remove':
this.remove();
case 'context-remove-selected':
this.removeSelected();
break;

case 'button-save':
Expand Down Expand Up @@ -143,13 +144,21 @@ var gReplacementManager = {
},


/**
* 選択されているデータを削除する
*/
remove: function(){
removeSelected: function(){
if(this._listbox.selectedIndex === -1) return;

ChaikaContentReplacer.remove(JSON.parse(this._listbox.selectedItem.value));
let rv;

if(this._listbox.selectedItems.length > 1){
rv = window.confirm(this._listbox.selectedItems.length + ' 件のデータを削除してもよろしいですか?');
}else{
rv = window.confirm(JSON.parse(this._listbox.selectedItem.value).title + ' を削除してもよろしいですか?');
}

if(rv){
this._listbox.selectedItems.map((node) => JSON.parse(node.value))
.forEach((item) => ChaikaContentReplacer.remove(item));
}
},


Expand Down
10 changes: 8 additions & 2 deletions chaika/chrome/content/chaika/settings/replacement-manager.xul
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,24 @@
persist="screenX screenY width height"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">

<popupset>
<menupopup id="contextMenu">
<menuitem label="選択項目を削除" class="context-remove-selected" />
<menuitem label="新規" class="context-add" />
</menupopup>
</popupset>

<hbox>
<button label="新規" class="button-add" />
<button label="ReplaceStr.txt 形式のデータを読み込む..." class="button-import" />
<spacer flex="1" />
</hbox>

<listbox id="rulelist" />
<listbox id="rulelist" seltype="multiple" context="contextMenu" />

<hbox>
<spacer flex="1" />
<button label="保存" class="button-save" />
<button label="削除" class="button-remove" />
</hbox>

<vbox id="editor" flex="1"></vbox>
Expand Down

0 comments on commit db89b4c

Please sign in to comment.