/** * @param {JQuery} $element Element. * @param {angular.IScope} $scope Angular scope. * @param {import('ngeo/query/MapQuerent').QueryResult} ngeoQueryResult ngeo query result. * @param {import('ngeo/query/MapQuerent').MapQuerent} ngeoMapQuerent ngeo map querent service. * @param {import('gmf/options').gmfCsvFilename} gmfCsvFilename The CSV file name. * @param {import('gmf/options').gmfDisplayQueryWindowOptions} gmfDisplayQueryWindowOptions The options. * @class * @hidden * @ngdoc controller * @ngname GmfDisplayquerywindowController */ export function QueryWindowController($element: JQuery, $scope: angular.IScope, ngeoQueryResult: import("ngeo/query/MapQuerent").QueryResult, ngeoMapQuerent: import("ngeo/query/MapQuerent").MapQuerent, gmfCsvFilename: import("gmf/options").gmfCsvFilename, gmfDisplayQueryWindowOptions: import("gmf/options").gmfDisplayQueryWindowOptions): void; export class QueryWindowController { /** * @param {JQuery} $element Element. * @param {angular.IScope} $scope Angular scope. * @param {import('ngeo/query/MapQuerent').QueryResult} ngeoQueryResult ngeo query result. * @param {import('ngeo/query/MapQuerent').MapQuerent} ngeoMapQuerent ngeo map querent service. * @param {import('gmf/options').gmfCsvFilename} gmfCsvFilename The CSV file name. * @param {import('gmf/options').gmfDisplayQueryWindowOptions} gmfDisplayQueryWindowOptions The options. * @class * @hidden * @ngdoc controller * @ngname GmfDisplayquerywindowController */ constructor($element: JQuery, $scope: angular.IScope, ngeoQueryResult: import("ngeo/query/MapQuerent").QueryResult, ngeoMapQuerent: import("ngeo/query/MapQuerent").MapQuerent, gmfCsvFilename: import("gmf/options").gmfCsvFilename, gmfDisplayQueryWindowOptions: import("gmf/options").gmfDisplayQueryWindowOptions); /** * @type {import('gmf/options').gmfDisplayQueryWindowOptions} */ options: import("gmf/options").gmfDisplayQueryWindowOptions; /** * @type {Element|string} */ draggableContainment: Element | string; /** * @type {boolean} */ desktop: boolean; /** * @type {?import('ol/Map').default} */ map: import("ol/Map").default | null; /** * Is the window currently collapsed? * When used for Desktop, it is shown non-collapsed. * * @type {boolean} */ collapsed: boolean; /** * @type {import('ngeo/query/MapQuerent').QueryResult} */ ngeoQueryResult: import("ngeo/query/MapQuerent").QueryResult; /** * @type {import('ngeo/query/MapQuerent').MapQuerent} */ ngeoMapQuerent_: import("ngeo/query/MapQuerent").MapQuerent; /** * @type {import('ngeo/download/Csv').DownloadCsvService} */ ngeoCsvDownload_: import("ngeo/download/Csv").DownloadCsvService; /** * Filename * * @type {import('gmf/options').gmfCsvFilename} */ filename_: import("gmf/options").gmfCsvFilename; /** * @type {?import('ngeo/statemanager/WfsPermalink').QueryResultSource} */ selectedSource: import("ngeo/statemanager/WfsPermalink").QueryResultSource | null; /** * @type {import('ol/Collection').default>} */ features_: import("ol/Collection").default>; /** * @type {import('ol/Collection').default>} */ highlightFeatures_: import("ol/Collection").default>; /** * @type {?import('ngeo/statemanager/WfsPermalink').QueryResultSource} */ source: import("ngeo/statemanager/WfsPermalink").QueryResultSource | null; /** * @type {?import('ol/Feature').default} */ feature: import("ol/Feature").default | null; /** * @type {number} */ currentResult: number; /** * @type {boolean} */ isNext: boolean; /** * @type {number} */ animate: number; /** * @type {boolean} */ open: boolean; /** * @constant {JQuery} */ element_: JQuery; /** * @type {boolean} */ isLoading: boolean; /** * Initialize the controller. */ $onInit(): void; /** * Remove current displayed results then get new results from the * ngeoQueryResult service. Display all results on the map and display, * highlight the first feature. */ show(): void; updateFeatures_(): void; /** * Select a source and a feature depending of the given position. * * @param {number} position The index of the feature. If the position is bigger * than the length of the first source, get it in the next source. Etc. * @param {boolean} setHighlight True to set the highlight automatically. * @returns {boolean} True if result has changed. False else. */ setCurrentResult_(position: number, setHighlight: boolean): boolean; /** * Select the logical previous source and feature then highlight this feature on * the map. */ previous(): void; /** * Select the logical next source and feature then highlight this feature on * the map. */ next(): void; /** * Remove features without properties from the query result. * * @param {import('ngeo/query/MapQuerent').QueryResult} queryResult ngeo query result. */ updateQueryResult_(queryResult: import("ngeo/query/MapQuerent").QueryResult): void; /** * Get the total count of features in the result of the query. If a source * has been select, only the number of features of that source are returned. * * @returns {number} Total number of features. */ getResultLength(): number; /** * @returns {boolean} If the first result is active. */ isFirst(): boolean; /** * @returns {boolean} If the last result is active. */ isLast(): boolean; /** * Delete the unwanted ol3 properties from the current feature then return the * properties. * * @returns {Object?} Filtered properties of the current feature or null. */ getFeatureValues(): { [x: string]: string | number | boolean; } | null; /** * Special function that's used to set the "animation" value after to set the * "isNext" value. The aim is to wait on Angular to add a class (corresponding * to "isNext") on the DOM before to set the "animation" value and do the * animation. * * @param {boolean} isNext used to indicate if the user wants to see the next * or the previous result. */ animate_(isNext: boolean): void; /** * Collect all features in the queryResult object. */ collectFeatures_(): void; /** * Highlight the current displayed feature. * * @param {import('ol/Feature').default} [opt_lastFeature] last highlighted feature. Require if * it exists because it must be added to the 'non-selected' features collection. */ highlightCurrentFeature_(opt_lastFeature?: import("ol/Feature").default): void; /** * Remove the current selected feature and source and remove all features * from the map. */ close(): void; /** * Remove the current selected feature and source and remove all features * from the map. */ clear(): void; /** * @param {import('ngeo/statemanager/WfsPermalink').QueryResultSource} source The source to select. */ setSelectedSource(source: import("ngeo/statemanager/WfsPermalink").QueryResultSource): void; /** * Download a CSV with features of the given source. * * @param {import('ngeo/statemanager/WfsPermalink').QueryResultSource} source The source to export as csv. */ downloadCSV(source: import("ngeo/statemanager/WfsPermalink").QueryResultSource): void; /** * @param {import('ngeo/statemanager/WfsPermalink').QueryResultSource} source The source to export as csv. * @returns {Object[]} data. */ getCSVData_(source: import("ngeo/statemanager/WfsPermalink").QueryResultSource): { [x: string]: string | number | boolean; }[]; /** * @param {Object[]} data where keys with at least one defined value will be used as csv column header. * @returns {import('ngeo/download/Csv').GridColumnDef[]} columns definitions for the CSV. */ getCSVHeaderDefinition_(data: { [x: string]: string | number | boolean; }[]): import("ngeo/download/Csv").GridColumnDef[]; /** * Zoom to current feature. */ zoomToCurrentFeature(): void; } export namespace QueryWindowController { let $inject: string[]; } export default myModule; import angular from 'angular'; /** * @type {angular.IModule} * @hidden */ declare const myModule: angular.IModule;