Source: formats/kml/features/KmlFolder.js

  1. /*
  2. * Copyright 2003-2006, 2009, 2017, 2020 United States Government, as represented
  3. * by the Administrator of the National Aeronautics and Space Administration.
  4. * All rights reserved.
  5. *
  6. * The NASAWorldWind/WebWorldWind platform is licensed under the Apache License,
  7. * Version 2.0 (the "License"); you may not use this file except in compliance
  8. * with the License. You may obtain a copy of the License
  9. * at http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software distributed
  12. * under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
  13. * CONDITIONS OF ANY KIND, either express or implied. See the License for the
  14. * specific language governing permissions and limitations under the License.
  15. *
  16. * NASAWorldWind/WebWorldWind also contains the following 3rd party Open Source
  17. * software:
  18. *
  19. * ES6-Promise – under MIT License
  20. * libtess.js – SGI Free Software License B
  21. * Proj4 – under MIT License
  22. * JSZip – under MIT License
  23. *
  24. * A complete listing of 3rd Party software notices and licenses included in
  25. * WebWorldWind can be found in the WebWorldWind 3rd-party notices and licenses
  26. * PDF found in code directory.
  27. */
  28. define([
  29. './KmlContainer',
  30. './../KmlElements'
  31. ], function (
  32. KmlContainer,
  33. KmlElements
  34. ) {
  35. "use strict";
  36. /**
  37. * Constructs an KmlFolder. Applications usually don't call this constructor. It is called by {@link KmlFile} as
  38. * objects from Kml file are read. This object is already concrete implementation.
  39. * @alias KmlFolder
  40. * @classdesc Contains the data associated with Folder options.
  41. * @param options {Object}
  42. * @param options.objectNode {Node} Node representing this Folder
  43. * @constructor
  44. * @throws {ArgumentError} If the node is null or undefined.
  45. * @see https://developers.google.com/kml/documentation/kmlreference#folder
  46. * @augments KmlContainer
  47. */
  48. var KmlFolder = function (options) {
  49. KmlContainer.call(this, options);
  50. };
  51. KmlFolder.prototype = Object.create(KmlContainer.prototype);
  52. /**
  53. * @inheritDoc
  54. */
  55. KmlFolder.prototype.getTagNames = function () {
  56. return ['Folder'];
  57. };
  58. KmlElements.addKey(KmlFolder.prototype.getTagNames()[0], KmlFolder);
  59. return KmlFolder;
  60. });