/usr/include/qgis/qgsrasterlayersaveasdialog.h is in libqgis-dev 2.8.6+dfsg-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 | /***************************************************************************
qgsrasterlayersaveasdialog.h
---------------------
begin : May 2012
copyright : (C) 2012 by Marco Hugentobler
email : marco dot hugentobler at sourcepole dot ch
***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef QGSRASTERLAYERSAVEASDIALOG_H
#define QGSRASTERLAYERSAVEASDIALOG_H
#include "ui_qgsrasterlayersaveasdialogbase.h"
#include "qgsrectangle.h"
#include "qgscoordinatereferencesystem.h"
#include "qgsrasterrange.h"
class QgsRasterLayer;
class QgsRasterDataProvider;
class QgsRasterFormatOptionsWidget;
class GUI_EXPORT QgsRasterLayerSaveAsDialog: public QDialog, private Ui::QgsRasterLayerSaveAsDialogBase
{
Q_OBJECT
public:
enum Mode
{
RawDataMode,
RenderedImageMode
};
enum CrsState
{
OriginalCrs,
CurrentCrs,
UserCrs
};
enum ResolutionState
{
OriginalResolution,
UserResolution
};
QgsRasterLayerSaveAsDialog( QgsRasterLayer* rasterLayer,
QgsRasterDataProvider* sourceProvider, const QgsRectangle& currentExtent,
const QgsCoordinateReferenceSystem& layerCrs, const QgsCoordinateReferenceSystem& currentCrs,
QWidget* parent = 0, Qt::WindowFlags f = 0 );
~QgsRasterLayerSaveAsDialog();
Mode mode() const;
int nColumns() const;
int nRows() const;
double xResolution() const;
double yResolution() const;
int maximumTileSizeX() const;
int maximumTileSizeY() const;
bool tileMode() const;
QString outputFileName() const;
QString outputFormat() const;
QgsCoordinateReferenceSystem outputCrs();
QStringList createOptions() const;
QgsRectangle outputRectangle() const;
QgsRasterRangeList noData() const;
QList< int > pyramidsList() const;
QgsRaster::RasterBuildPyramids buildPyramidsFlag() const;
QString pyramidsResamplingMethod() const { return mPyramidsOptionsWidget->resamplingMethod(); }
QgsRaster::RasterPyramidsFormat pyramidsFormat() const { return mPyramidsOptionsWidget->pyramidsFormat(); }
QStringList pyramidsConfigOptions() const { return mPyramidsOptionsWidget->configOptions(); }
void hideFormat();
void hideOutput();
public slots:
virtual void accept() override { if ( validate() ) return QDialog::accept(); }
private slots:
void on_mRawModeRadioButton_toggled( bool );
void on_mBrowseButton_clicked();
void on_mSaveAsLineEdit_textChanged( const QString& text );
void on_mFormatComboBox_currentIndexChanged( const QString& text );
void on_mResolutionRadioButton_toggled( bool ) { toggleResolutionSize(); }
void on_mOriginalResolutionPushButton_clicked() { setOriginalResolution(); }
void on_mXResolutionLineEdit_textEdited( const QString & ) { mResolutionState = UserResolution; recalcSize(); }
void on_mYResolutionLineEdit_textEdited( const QString & ) { mResolutionState = UserResolution; recalcSize(); }
void on_mOriginalSizePushButton_clicked() { setOriginalSize(); }
void on_mColumnsLineEdit_textEdited( const QString & ) { mResolutionState = UserResolution; recalcResolution(); }
void on_mRowsLineEdit_textEdited( const QString & ) { mResolutionState = UserResolution; recalcResolution(); }
void on_mAddNoDataManuallyToolButton_clicked();
void on_mLoadTransparentNoDataToolButton_clicked();
void on_mRemoveSelectedNoDataToolButton_clicked();
void on_mRemoveAllNoDataToolButton_clicked();
void noDataCellTextEdited( const QString & text );
void on_mTileModeCheckBox_toggled( bool toggled );
void on_mPyramidsGroupBox_toggled( bool toggled );
void populatePyramidsLevels();
void extentChanged();
private:
QgsRasterLayer* mRasterLayer;
QgsRasterDataProvider* mDataProvider;
QgsRectangle mCurrentExtent;
QgsCoordinateReferenceSystem mLayerCrs; // may differ from provider CRS
QgsCoordinateReferenceSystem mCurrentCrs;
QgsCoordinateReferenceSystem mPreviousCrs;
ResolutionState mResolutionState;
QVector<bool> mNoDataToEdited;
void setValidators();
void toggleResolutionSize();
void setResolution( double xRes, double yRes, const QgsCoordinateReferenceSystem& srcCrs );
void setOriginalResolution();
void setOriginalSize();
void recalcSize();
void recalcResolution();
void updateResolutionStateMsg();
void recalcResolutionSize();
void addNoDataRow( double min, double max );
void setNoDataToEdited( int row );
double noDataCellValue( int row, int column ) const;
void adjustNoDataCellWidth( int row, int column );
bool validate() const;
private slots:
void crsChanged();
};
#endif // QGSRASTERLAYERSAVEASDIALOG_H
|