From 630fc2c06e774806920ac8a5ec94bce1d49651e4 Mon Sep 17 00:00:00 2001 From: Alon Levy Date: Mon, 4 May 2015 14:47:06 +0300 Subject: client: single delete button. fixes #523 --- src/client/view/item_info.js | 17 ++++------------- src/client/view/selection.js | 3 +++ 2 files changed, 7 insertions(+), 13 deletions(-) (limited to 'src/client/view') diff --git a/src/client/view/item_info.js b/src/client/view/item_info.js index 9d906d41..ea43ff65 100644 --- a/src/client/view/item_info.js +++ b/src/client/view/item_info.js @@ -14,7 +14,6 @@ var msg_node = $('.info-card-message'), setup_done = false, info_container = $('.info-container'), form_element = $('#editbox'), - delete_button = $('#edit-dialog__delete'), form = _.object(model_types.all_attributes.map(function (attr) { var element = edit_element_for_attribute(attr); @@ -40,8 +39,7 @@ function form_add_element(attr, value_element_type) { var div = $('
'), label = $('
'), - value = $('<' + value_element_type + '>'), - delete_button = form_element.find('#info-container__bottom-btn-bar'); + value = $('<' + value_element_type + '>'); div.attr('id', attr); div.addClass('info-container__row'); @@ -51,7 +49,7 @@ function form_add_element(attr, value_element_type) value.attr('id', 'edit' + attr); div.append(label); div.append(value); - div.insertBefore(delete_button); + div.insertAfter(msg_node); return value; } @@ -160,17 +158,10 @@ function setup_click_handlers() } setup_done = true; form_element.on('keydown', function (e) { - if (e.which == consts.VK_ENTER && e.target !== delete_button[0]) { + if (e.which == consts.VK_ENTER) { e.preventDefault(); } }); - delete_button.on('click', function (e) { - e.preventDefault(); - if (confirm(messages.delete_items_message([item]))) { - delete_item(item); - } - hide(); - }); $('#edit-dialog__save').on('click', function (e) { e.preventDefault(); commit(); @@ -248,7 +239,7 @@ function show(_graph, new_item, new_visible_attributes) var element = edit_element_for_attribute(attr); value = item[attr]; - element.parent().insertBefore(element.parent().parent().children().first()); + element.parent().insertAfter(msg_node); switch (attr) { case 'enddate': case 'startdate': diff --git a/src/client/view/selection.js b/src/client/view/selection.js index 73b11e97..202804a5 100644 --- a/src/client/view/selection.js +++ b/src/client/view/selection.js @@ -297,16 +297,19 @@ var setup_toolbar = function(main_graph, main_graph_view) } } + // operations requiring 2 or more nodes selectionChangedBus.map(function (selection) { return selection.selected.length > 1; }) .skipDuplicates() .onValue(function (visible) { show(multiple_node_operations, visible); }); + // operations requiring 1 or more nodes selectionChangedBus.map(function (selection) { return selection.selected.length > 0; }) .skipDuplicates() .onValue(function (visible) { show(zen_mode_btn, visible); + show(delete_btn, visible); }); zen_mode_btn.asEventStream('click').onValue(main_graph_view.zen_mode__toggle); -- cgit v1.3.1