~jstys-z/helioviewer.org/client5

« back to all changes in this revision

Viewing changes to src/js/Events/HelioviewerEventLayerManager.js

  • Committer: Keith Hughitt
  • Date: 2012-04-23 16:02:25 UTC
  • mto: This revision was merged to the branch mainline in revision 732.
  • Revision ID: keith.hughitt@nasa.gov-20120423160225-xzoh82ejf37c8yr7
Incorporated HVPull code

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/**
2
 
 * @fileOverview Contains the class definition for a HelioviewerEventLayerManager class.
3
 
 * @author <a href="mailto:jeff.stys@nasa.gov">Jeff Stys</a>
4
 
 * @see EventLayerManager, EventManager
5
 
 * @requires EventLayerManager
6
 
 *
7
 
 */
8
 
/*jslint browser: true, white: true, onevar: true, undef: true, nomen: false, eqeqeq: true, plusplus: true,
9
 
bitwise: true, regexp: true, strict: true, newcap: true, immed: true, maxlen: 120, sub: true */
10
 
/*global Helioviewer, HelioviewerEventLayer, EventLayerManager, parseLayerString, $ */
11
 
"use strict";
12
 
var HelioviewerEventLayerManager = EventLayerManager.extend(
13
 
/** @lends HelioviewerEventLayerManager.prototype */
14
 
{
15
 
    /**
16
 
     * @constructs
17
 
     * @description Creates a new TileLayerManager instance
18
 
     */
19
 
    init: function (requestDate, defaultEventTypes, viewportScale, rsun,
20
 
                    savedEventLayers, urlEventLayers) {
21
 
 
22
 
        this._super(requestDate, defaultEventTypes, viewportScale, rsun,
23
 
                    savedEventLayers, urlEventLayers);
24
 
 
25
 
        this._loadStartingLayers(defaultEventTypes);
26
 
    },
27
 
 
28
 
    /**
29
 
     * @description Adds a layer that is not already displayed
30
 
     */
31
 
    addNewLayer: function () {
32
 
 
33
 
        // Add the event layer
34
 
        this.addEventLayer(
35
 
            new HelioviewerEventLayer(this._eventLayers.length, this._requestDate, this.viewportScale,
36
 
                'HEK', true, true)
37
 
        );
38
 
 
39
 
        // Don't save the event layer here.  We're just adding the accordion stuff,
40
 
        // not checking checkboxes.  Differs from how tile layers are managed.
41
 
        /// this.save();
42
 
    },
43
 
 
44
 
    /**
45
 
     * Loads initial layers either from URL parameters, saved user settings, or the defaults.
46
 
     */
47
 
    _loadStartingLayers: function (layers) {
48
 
        var eventLayer, basicParams, self = this;
49
 
 
50
 
        // Add the event layer
51
 
        this.addEventLayer(
52
 
            new HelioviewerEventLayer(this._eventLayers.length, this._requestDate, this.viewportScale,
53
 
                'HEK', true, Helioviewer.userSettings.get("state.eventLabels"))
54
 
        );
55
 
    },
56
 
 
57
 
    /**
58
 
     * @description Generate a string of URIs for use by JHelioviewer
59
 
     */
60
 
    toURIString: function () {
61
 
        var str = "";
62
 
 
63
 
        $.each(this._eventLayers, function () {
64
 
            str += this.uri + ",";
65
 
        });
66
 
 
67
 
        // Remove trailing comma
68
 
        str = str.slice(0, -1);
69
 
        return str;
70
 
    }
71
 
});
 
 
b'\\ No newline at end of file'