Simon Hunt

GUI -- Start of implementation of Panel Service.

Change-Id: I2729acc88c7130172587856f1af80ca0d66e4c5b
/*
* Copyright 2015 Open Networking Laboratory
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*
ONOS GUI -- Layers Module
*/
(function () {
'use strict';
angular.module('onosLayer', ['onosUtil']);
}());
/*
* Copyright 2015 Open Networking Laboratory
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*
ONOS GUI -- Layer -- Panel Service
*/
(function () {
'use strict';
var $log;
var defaultSettings = {
position: 'TR',
side: 'right',
width: 200
};
angular.module('onosLayer')
.factory('PanelService', ['$log', function (_$log_) {
$log = _$log_;
function createPanel(opts) {
var settings = angular.extend({}, defaultSettings, opts);
function renderPanel() {
}
function showPanel() {
}
function hidePanel() {
}
var api = {
render: renderPanel,
show: showPanel,
hide: hidePanel
};
$log.debug('creating panel with settings: ', settings);
return api;
}
return {
createPanel: createPanel
};
}]);
}());
......@@ -57,6 +57,9 @@
<script src="fw/widget/widget.js"></script>
<script src="fw/widget/table.js"></script>
<script src="fw/layer/layer.js"></script>
<script src="fw/layer/panel.js"></script>
<!-- Framework and library stylesheets included here -->
<!-- TODO: use a single catenated-minified file here -->
<link rel="stylesheet" href="onos.css">
......
/*
* Copyright 2015 Open Networking Laboratory
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*
ONOS GUI -- Layer -- Panel Service - Unit Tests
*/
describe('factory: fw/layer/panel.js', function () {
var $log, fs, ps;
beforeEach(module('onosLayer'));
beforeEach(inject(function (_$log_, FnService, PanelService) {
$log = _$log_;
fs = FnService;
ps = PanelService;
}));
it('should define PanelService', function () {
expect(ps).toBeDefined();
});
it('should define api functions', function () {
expect(fs.areFunctions(ps, [
'createPanel'
])).toBeTruthy();
});
});
......@@ -30,6 +30,7 @@ module.exports = function(config) {
'../app/fw/svg/svg.js',
'../app/fw/remote/remote.js',
'../app/fw/widget/widget.js',
'../app/fw/layer/layer.js',
// now load services etc. that augment the modules
'../app/**/*.js',
......