/usr/include/qgis/qgsattributedialog.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 137 138 139 140 141 142 143 144 145 146 147 | /***************************************************************************
qgsattributedialog.h - description
-------------------
begin : October 2004
copyright : (C) 2004 by Marco Hugentobler
email : marco.hugentobler@autoform.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 QGSATTRIBUTEDIALOG_H
#define QGSATTRIBUTEDIALOG_H
#include "qgsfeature.h"
#include "qgsattributeeditorcontext.h"
#include "qgsattributeform.h"
#include <QDialog>
#include <QMenuBar>
#include <QGridLayout>
class QgsDistanceArea;
class QgsFeature;
class QgsField;
class QgsHighlight;
class QgsVectorLayer;
class QgsVectorLayerTools;
class GUI_EXPORT QgsAttributeDialog : public QDialog
{
Q_OBJECT
public:
/**
* Create an attribute dialog for a given layer and feature
*
* @param vl The layer for which the dialog will be generated
* @param thepFeature A feature for which the dialog will be generated
* @param featureOwner Set to true, if the dialog should take ownership of the feature
* @param myDa A QgsDistanceArea which will be used for expressions
* @param parent A parent widget for the dialog
* @param showDialogButtons True: Show the dialog buttons accept/cancel
*
* @deprecated
*/
QgsAttributeDialog( QgsVectorLayer *vl, QgsFeature *thepFeature, bool featureOwner, const QgsDistanceArea& myDa, QWidget* parent = 0, bool showDialogButtons = true );
/**
* Create an attribute dialog for a given layer and feature
*
* @param vl The layer for which the dialog will be generated
* @param thepFeature A feature for which the dialog will be generated
* @param featureOwner Set to true, if the dialog should take ownership of the feature
* @param parent A parent widget for the dialog
* @param showDialogButtons True: Show the dialog buttons accept/cancel
* @param context The context in which this dialog is created
*
*/
QgsAttributeDialog( QgsVectorLayer *vl, QgsFeature *thepFeature, bool featureOwner, QWidget* parent = 0, bool showDialogButtons = true, const QgsAttributeEditorContext& context = QgsAttributeEditorContext() );
~QgsAttributeDialog();
/** Saves the size and position for the next time
* this dialog box will be used.
*/
void saveGeometry();
/** Restores the size and position from the last time
* this dialog box was used.
*/
void restoreGeometry();
/**
* @brief setHighlight
* @param h The highlight. Ownership is taken.
*/
void setHighlight( QgsHighlight *h );
/**
* @brief Returns reference to self. Only here for legacy compliance
*
* @return this
*
* @deprecated Do not use. Just use this object itself. Or QgsAttributeForm if you want to embed.
*/
Q_DECL_DEPRECATED QDialog *dialog() { return this; }
QgsAttributeForm* attributeForm() { return mAttributeForm; }
const QgsFeature* feature() { return &mAttributeForm->feature(); }
/**
* Is this dialog editable?
*
* @return returns true, if this dialog was created in an editable manner.
*/
bool editable() { return mAttributeForm->editable(); }
/**
* Toggles the form mode between edit feature and add feature.
* If set to true, the dialog will be editable even with an invalid feature.
* If set to true, the dialog will add a new feature when the form is accepted.
*
* @param isAddDialog If set to true, turn this dialog into an add feature dialog.
*/
void setIsAddDialog( bool isAddDialog ) { mAttributeForm->setIsAddDialog( isAddDialog ); }
/**
* Sets the edit command message (Undo) that will be used when the dialog is accepted
*
* @param message The message
*/
void setEditCommandMessage( const QString& message ) { mAttributeForm->setEditCommandMessage( message ); }
public slots:
void accept() override;
//! Show the dialog non-blocking. Reparents this dialog to be a child of the dialog form and is deleted when
//! closed.
void show( bool autoDelete = true );
private:
void init( QgsVectorLayer* layer, QgsFeature* feature, const QgsAttributeEditorContext& context, QWidget* parent );
QString mSettingsPath;
// Used to sync multiple widgets for the same field
QgsHighlight *mHighlight;
int mFormNr;
bool mShowDialogButtons;
QString mReturnvarname;
QgsAttributeForm* mAttributeForm;
QgsFeature *mOwnedFeature;
// true if this dialog is editable
bool mEditable;
static int sFormCounter;
static QString sSettingsPath;
};
#endif
|