Merge "Yangman - highlighting search results, unify selected item in modules, history...
authorMaxime Millette-Coulombe <mmcoulombe@inocybe.com>
Thu, 11 Aug 2016 22:27:36 +0000 (22:27 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Thu, 11 Aug 2016 22:27:36 +0000 (22:27 +0000)
modules/yangman-resources/src/main/resources/yangman/controllers/requests-list.controller.js
modules/yangman-resources/src/main/resources/yangman/controllers/yangman.controller.js
modules/yangman-resources/src/main/resources/yangman/views/leftpanel/collections-tab.tpl.html
modules/yangman-resources/src/main/resources/yangman/views/leftpanel/history-tab.tpl.html
modules/yangman-resources/src/main/resources/yangman/views/leftpanel/modules-tab.tpl.html
modules/yangman-resources/src/main/resources/yangman/views/leftpanel/request-item.tpl.html
modules/yangman-resources/src/main/resources/yangman/yangman.less

index 69d8a65d98f82257eab227ca26d455faccc5627c..ddfe7162fc6e8e3981f61167eedde59047e4f7a5 100644 (file)
@@ -192,7 +192,8 @@ define([
         function showForm(reqObj) {
             var data = reqObj.method === 'GET' ? reqObj.receivedData : reqObj.sentData;
 
-            $scope.rootBroadcast('YANGMAN_SET_ERROR_DATA', reqObj.receivedData.hasOwnProperty('errors') ? reqObj.receivedData : {});
+            $scope.rootBroadcast('YANGMAN_SET_ERROR_DATA',
+                reqObj.receivedData && reqObj.receivedData.hasOwnProperty('errors') ? reqObj.receivedData : {});
 
             $scope.rootBroadcast('YANGMAN_FILL_NODE_FROM_REQ', { requestUrl: reqObj.path, requestData: data },
                 function (){
index 6648f47bdc03dbff5cf7ad72d75271a25ba34df2..30fc24e18d0a72066edb8ede457a262b6ff4973b 100644 (file)
@@ -81,11 +81,6 @@ define([
         $scope.unsetPlugin = unsetPlugin;
         $scope.setCMHintShown = setCMHintShown;
 
-
-        $scope.$on('YANGMAN_EXECUTING_REQUEST_PROGRESS_START', startExecutingRequestProgress);
-        $scope.$on('YANGMAN_EXECUTING_REQUEST_PROGRESS_STOP', stopExecutingRequestProgress);
-
-
         init();
 
         function setCMHintShown(shown) {
@@ -130,13 +125,15 @@ define([
          * Initialization
          */
         function init(){
+            $scope.$on('YANGMAN_EXECUTING_REQUEST_PROGRESS_START', startExecutingRequestProgress);
+            $scope.$on('YANGMAN_EXECUTING_REQUEST_PROGRESS_STOP', stopExecutingRequestProgress);
+
             YangmanDesignService.hideMainMenu();
             YangmanDesignService.setDraggableLeftPanel();
             YangmanDesignService.setJsonSplitter(forceCMsRefresh);
 
             EventDispatcherService.registerHandler(constants.EV_FILL_PATH, fillPathIdentifiersByKey);
             EventDispatcherService.registerHandler(constants.EV_LIST_CHANGED, fillPathIdentifiersByListData);
-
         }
 
         /**
@@ -179,6 +176,7 @@ define([
             }
         }
 
+        // TODO :: description
         function modulesTreeDisplayed() {
             return main.selectedMainTab === 0;
         }
@@ -293,7 +291,11 @@ define([
         function setApi(api, subApi, setUrl){
             $scope.selectedApi = api;
             $scope.selectedSubApi = subApi;
-            PathUtilsService.clearPath($scope.selectedSubApi.pathArray);
+
+            if ( subApi ) {
+                PathUtilsService.clearPath($scope.selectedSubApi.pathArray);
+            }
+
             $scope.$broadcast('SET_SEL_OPERATIONS', subApi ? $scope.selectedSubApi.operations : [], setUrl);
         }
 
index f05a9ee9d62d9e75008eb69a1923a233ce78ed4c..2ccb9b5c627e2fe7661a83b5c596be255f460e41 100644 (file)
             <md-list ng-show="collection.expanded" class="yangmanModule__requests-list__collection__requests">
                 <div ng-repeat="request in collection.data"
                      layout="row"
+                     class="yangmanModule__requests-list__item-container"
                      ng-include src="globalViewPath + 'leftpanel/request-item.tpl.html'">
                 </div>
             </md-list>
index f1b925edf5da74de662d340fd91e35eadb155d89..136de2559146fce77623d41c16be35441cf39ec3 100644 (file)
                 <md-list>
                     <div ng-repeat="request in group.requests | filter: reqList.filterReq  | orderBy: '-timestamp' track by $index"
                          layout="row"
+                         class="yangmanModule__requests-list__item-container"
                          ng-include src="globalViewPath + 'leftpanel/request-item.tpl.html'">
                     </div>
                 </md-list>
index 0df94d4ef50d378595780fe95ff9bc2f6ee589ae..3e4ca9019461136fcc5067e3412b879cc096fa12 100644 (file)
@@ -57,7 +57,7 @@
                     <md-icon md-font-set="material-icons" class="top-icon top-element">
                         {{module.expanded ? 'keyboard_arrow_down':'keyboard_arrow_right'}}
                     </md-icon>
-                    <p flex class="top-element"> {{module.label}} </p>
+                    <p flex class="top-element" md-highlight-text="modulesList.search"> {{module.label}} </p>
                 </div>
 
                 <!-- Datastore && rpc -->
index 82599a49ae21abdf5e759bce90bd6d9e64f1b94f..1fe796e88f088e3768c1b4a73e02ef6b9c5780e8 100644 (file)
 <!-- /request row -->
 
 <!-- request submenu -->
-<md-menu class="yangmanModule__requests-list__group__itemMenu" md-offset="35 15"  layout-align="center start">
+<md-menu class="yangmanModule__requests-list__group__itemMenu"
+         md-offset="35 15"
+         layout-align="center start"
+         ng-class="{selected: request.selected}">
+
     <md-button aria-label="menu" class="md-primary" ng-click="$mdOpenMenu()">
         <i class="material-icons">menu</i>
     </md-button>
+
     <md-menu-content class="reqMenu">
         <md-menu-item>
             <md-button aria-label="{{'YANGMAN_REQ_RUN'| translate}}" class="" ng-click="reqList.executeRequest(request)">
index abfd786c0a23a8543bd7bef3928d0d2b7866dbe8..b49ae10fccbe1e22899ac505c670645c37e92fb6 100644 (file)
@@ -23,6 +23,7 @@
 @reqMethodPost: #ea9c30;
 @reqMethodDelete: #eabb2f;
 @reqError: #ff0000;
+@darkBlueColor: rgb(33,150,243);
 
 // helpers
 .pointer{
@@ -246,7 +247,7 @@ md-dialog{
     }
 
     .highlight{
-        color: @fontHighlight;
+        color: @darkBlueColor;
     }
     md-tabs-content-wrapper{
         top: 0!important;
@@ -951,21 +952,40 @@ md-dialog{
             padding-top: 0;
         }
 
+        &__item-container{
+            position: relative;
+        }
+
         &__group{
 
             padding: 0!important;
 
             &__item{
 
+                &.selected{
+                    background-color: @colorActive;
+
+                    .yangmanModule__requests-list__group__item__path{
+                        color: #fff;
+                    }
+
+                    .yangmanModule__requests-list__group__item__method{
+                        .GET, .PUT, .POST, .DELETE, .error{
+                            color: #fff;
+                        }
+                    }
+                }
+
                 &__path{
                     white-space: -webkit-pre-wrap; /*Chrome & Safari */
                     word-break: break-all;
                     white-space: normal;
                     line-height: 18px;
                     color: @fontColor;
+                    padding: 5px 0;
 
                     p{
-                        padding-right: 9px;
+                        padding: 0 9px;
                     }
                 }
 
@@ -992,9 +1012,19 @@ md-dialog{
             }
 
             &__itemMenu{
-                position: relative;
-                margin-left: -52px;
-                padding-top: 0;
+                position: absolute;
+                top: 50%;
+                margin: -20px 0 0 0;
+                right: 5px;
+                padding: 0;
+
+                &.selected{
+                    > button{
+                        i.material-icons{
+                            color: #fff;
+                        }
+                    }
+                }
 
                 > button{
                     min-width: 0;