| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 /** | 5 /** |
| 6 * EventsView displays a filtered list of all events sharing a source, and | 6 * EventsView displays a filtered list of all events sharing a source, and |
| 7 * a details pane for the selected sources. | 7 * a details pane for the selected sources. |
| 8 * | 8 * |
| 9 * +----------------------++----------------+ | 9 * +----------------------++----------------+ |
| 10 * | filter box || | | 10 * | filter box || | |
| 11 * +----------------------+| | | 11 * +----------------------+| | |
| 12 * | || | | 12 * | || | |
| 13 * | || | | 13 * | || | |
| 14 * | || | | 14 * | || | |
| 15 * | || | | 15 * | || | |
| 16 * | source list || details | | 16 * | source list || details | |
| 17 * | || view | | 17 * | || view | |
| 18 * | || | | 18 * | || | |
| 19 * | || | | 19 * | || | |
| 20 * | || | | 20 * | || | |
| 21 * | || | | 21 * | || | |
| 22 * +----------------------++ | | 22 * +----------------------++ | |
| 23 * | action bar || | | 23 * | action bar || | |
| 24 * +----------------------++----------------+ | 24 * +----------------------++----------------+ |
| 25 */ | 25 */ |
| 26 var EventsView = (function() { |
| 27 'use strict'; |
| 26 | 28 |
| 27 var EventsView = (function() { | |
| 28 // IDs for special HTML elements in events_view.html | 29 // IDs for special HTML elements in events_view.html |
| 29 const TBODY_ID = 'events-view-source-list-tbody'; | 30 var TBODY_ID = 'events-view-source-list-tbody'; |
| 30 const FILTER_INPUT_ID = 'events-view-filter-input'; | 31 var FILTER_INPUT_ID = 'events-view-filter-input'; |
| 31 const FILTER_COUNT_ID = 'events-view-filter-count'; | 32 var FILTER_COUNT_ID = 'events-view-filter-count'; |
| 32 const DELETE_SELECTED_ID = 'events-view-delete-selected'; | 33 var DELETE_SELECTED_ID = 'events-view-delete-selected'; |
| 33 const DELETE_ALL_ID = 'events-view-delete-all'; | 34 var DELETE_ALL_ID = 'events-view-delete-all'; |
| 34 const SELECT_ALL_ID = 'events-view-select-all'; | 35 var SELECT_ALL_ID = 'events-view-select-all'; |
| 35 const SORT_BY_ID_ID = 'events-view-sort-by-id'; | 36 var SORT_BY_ID_ID = 'events-view-sort-by-id'; |
| 36 const SORT_BY_SOURCE_TYPE_ID = 'events-view-sort-by-source'; | 37 var SORT_BY_SOURCE_TYPE_ID = 'events-view-sort-by-source'; |
| 37 const SORT_BY_DESCRIPTION_ID = 'events-view-sort-by-description'; | 38 var SORT_BY_DESCRIPTION_ID = 'events-view-sort-by-description'; |
| 38 const TAB_HANDLES_CONTAINER_ID = 'events-view-details-tab-handles'; | 39 var TAB_HANDLES_CONTAINER_ID = 'events-view-details-tab-handles'; |
| 39 const LOG_TAB_ID = 'events-view-details-log-tab'; | 40 var LOG_TAB_ID = 'events-view-details-log-tab'; |
| 40 const TIMELINE_TAB_ID = 'events-view-details-timeline-tab'; | 41 var TIMELINE_TAB_ID = 'events-view-details-timeline-tab'; |
| 41 const DETAILS_LOG_BOX_ID = 'events-view-details-log-box'; | 42 var DETAILS_LOG_BOX_ID = 'events-view-details-log-box'; |
| 42 const DETAILS_TIMELINE_BOX_ID = 'events-view-details-timeline-box'; | 43 var DETAILS_TIMELINE_BOX_ID = 'events-view-details-timeline-box'; |
| 43 const TOPBAR_ID = 'events-view-filter-box'; | 44 var TOPBAR_ID = 'events-view-filter-box'; |
| 44 const MIDDLE_BOX_ID = 'events-view-source-list'; | 45 var MIDDLE_BOX_ID = 'events-view-source-list'; |
| 45 const BOTTOM_BAR_ID = 'events-view-action-box'; | 46 var BOTTOM_BAR_ID = 'events-view-action-box'; |
| 46 const SIZER_ID = 'events-view-splitter-box'; | 47 var SIZER_ID = 'events-view-splitter-box'; |
| 47 | 48 |
| 48 // How soon after updating the filter list the counter should be updated. | 49 // How soon after updating the filter list the counter should be updated. |
| 49 const REPAINT_FILTER_COUNTER_TIMEOUT_MS = 0; | 50 var REPAINT_FILTER_COUNTER_TIMEOUT_MS = 0; |
| 50 | 51 |
| 51 // We inherit from View. | 52 // We inherit from View. |
| 52 var superClass = View; | 53 var superClass = View; |
| 53 | 54 |
| 54 /** | 55 /* |
| 55 * @constructor | 56 * @constructor |
| 56 */ | 57 */ |
| 57 function EventsView() { | 58 function EventsView() { |
| 59 assertFirstConstructorCall(EventsView); |
| 60 |
| 58 // Call superclass's constructor. | 61 // Call superclass's constructor. |
| 59 superClass.call(this); | 62 superClass.call(this); |
| 60 | 63 |
| 61 // Initialize the sub-views. | 64 // Initialize the sub-views. |
| 62 var leftPane = new TopMidBottomView(new DivView(TOPBAR_ID), | 65 var leftPane = new TopMidBottomView(new DivView(TOPBAR_ID), |
| 63 new DivView(MIDDLE_BOX_ID), | 66 new DivView(MIDDLE_BOX_ID), |
| 64 new DivView(BOTTOM_BAR_ID)); | 67 new DivView(BOTTOM_BAR_ID)); |
| 65 | 68 |
| 66 this.detailsView_ = new DetailsView(TAB_HANDLES_CONTAINER_ID, | 69 this.detailsView_ = new DetailsView(TAB_HANDLES_CONTAINER_ID, |
| 67 LOG_TAB_ID, | 70 LOG_TAB_ID, |
| (...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 188 * |remainingText| - |sourceText| with |directive|:parameter removed, | 191 * |remainingText| - |sourceText| with |directive|:parameter removed, |
| 189 and excess whitespace deleted. | 192 and excess whitespace deleted. |
| 190 * |parameter| - the parameter itself. | 193 * |parameter| - the parameter itself. |
| 191 * | 194 * |
| 192 * On failure, returns null. | 195 * On failure, returns null. |
| 193 */ | 196 */ |
| 194 parseDirective_: function(sourceText, directive) { | 197 parseDirective_: function(sourceText, directive) { |
| 195 // Adding a leading space allows a single regexp to be used, regardless of | 198 // Adding a leading space allows a single regexp to be used, regardless of |
| 196 // whether or not the directive is at the start of the string. | 199 // whether or not the directive is at the start of the string. |
| 197 sourceText = ' ' + sourceText; | 200 sourceText = ' ' + sourceText; |
| 198 regExp = new RegExp('\\s+' + directive + ':(\\S*)\\s*', 'i'); | 201 var regExp = new RegExp('\\s+' + directive + ':(\\S*)\\s*', 'i'); |
| 199 matchInfo = regExp.exec(sourceText); | 202 var matchInfo = regExp.exec(sourceText); |
| 200 if (matchInfo == null) | 203 if (matchInfo == null) |
| 201 return null; | 204 return null; |
| 202 | 205 |
| 203 return {'remainingText': sourceText.replace(regExp, ' ').trim(), | 206 return {'remainingText': sourceText.replace(regExp, ' ').trim(), |
| 204 'parameter': matchInfo[1]}; | 207 'parameter': matchInfo[1]}; |
| 205 }, | 208 }, |
| 206 | 209 |
| 207 /** | 210 /** |
| 208 * Just like parseDirective_, except can optionally be a '-' before or | 211 * Just like parseDirective_, except can optionally be a '-' before or |
| 209 * the parameter, to negate it. Before is more natural, after | 212 * the parameter, to negate it. Before is more natural, after |
| (...skipping 389 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 599 this.filterCount_.innerHTML = ''; | 602 this.filterCount_.innerHTML = ''; |
| 600 addTextNode(this.filterCount_, | 603 addTextNode(this.filterCount_, |
| 601 this.numPostfilter_ + ' of ' + this.numPrefilter_); | 604 this.numPostfilter_ + ' of ' + this.numPrefilter_); |
| 602 } | 605 } |
| 603 }; // end of prototype. | 606 }; // end of prototype. |
| 604 | 607 |
| 605 // ------------------------------------------------------------------------ | 608 // ------------------------------------------------------------------------ |
| 606 // Helper code for comparisons | 609 // Helper code for comparisons |
| 607 // ------------------------------------------------------------------------ | 610 // ------------------------------------------------------------------------ |
| 608 | 611 |
| 609 COMPARISON_FUNCTION_TABLE = { | 612 var COMPARISON_FUNCTION_TABLE = { |
| 610 // sort: and sort:- are allowed | 613 // sort: and sort:- are allowed |
| 611 '': compareSourceId, | 614 '': compareSourceId, |
| 612 'active': compareActive, | 615 'active': compareActive, |
| 613 'desc': compareDescription, | 616 'desc': compareDescription, |
| 614 'description': compareDescription, | 617 'description': compareDescription, |
| 615 'duration': compareDuration, | 618 'duration': compareDuration, |
| 616 'id': compareSourceId, | 619 'id': compareSourceId, |
| 617 'source': compareSourceType, | 620 'source': compareSourceType, |
| 618 'type': compareSourceType | 621 'type': compareSourceType |
| 619 }; | 622 }; |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 686 var source1Text = source1.getSourceTypeString(); | 689 var source1Text = source1.getSourceTypeString(); |
| 687 var source2Text = source2.getSourceTypeString(); | 690 var source2Text = source2.getSourceTypeString(); |
| 688 var compareResult = source1Text.localeCompare(source2Text); | 691 var compareResult = source1Text.localeCompare(source2Text); |
| 689 if (compareResult != 0) | 692 if (compareResult != 0) |
| 690 return compareResult; | 693 return compareResult; |
| 691 return compareSourceId(source1, source2); | 694 return compareSourceId(source1, source2); |
| 692 } | 695 } |
| 693 | 696 |
| 694 return EventsView; | 697 return EventsView; |
| 695 })(); | 698 })(); |
| OLD | NEW |