-
-
Notifications
You must be signed in to change notification settings - Fork 3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
18 changed files
with
1,021 additions
and
428 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,112 +1,144 @@ | ||
/** | ||
* This class manages a set of relations between layers. | ||
*/ | ||
/************************************************************************ | ||
* This file has been generated automatically from * | ||
* * | ||
* src/core/qgsrelationmanager.h * | ||
* * | ||
* Do not edit manually ! Edit header and run scripts/sipify.pl again * | ||
************************************************************************/ | ||
|
||
|
||
|
||
|
||
|
||
class QgsRelationManager : QObject | ||
{ | ||
%Docstring | ||
This class manages a set of relations between layers. | ||
%End | ||
|
||
%TypeHeaderCode | ||
#include "qgsrelationmanager.h" | ||
%End | ||
public: | ||
|
||
/** Constructor for QgsRelationManager. | ||
* @param project associated project (used to notify project of changes) | ||
*/ | ||
explicit QgsRelationManager( QgsProject *project = 0 ); | ||
%Docstring | ||
Constructor for QgsRelationManager. | ||
\param project associated project (used to notify project of changes) | ||
%End | ||
|
||
/** | ||
* Will set the specified relations and remove any relation currently set. | ||
* | ||
* @param relations A list of relations to set. | ||
*/ | ||
void setRelations( const QList<QgsRelation> &relations ); | ||
%Docstring | ||
Will set the specified relations and remove any relation currently set. | ||
|
||
\param relations A list of relations to set. | ||
%End | ||
|
||
/** | ||
* Get access to the relations managed by this class. | ||
* | ||
* @return A QMap where the key is the relation id, the value the relation object. | ||
*/ | ||
QMap<QString, QgsRelation> relations() const; | ||
%Docstring | ||
Get access to the relations managed by this class. | ||
|
||
:return: A QMap where the key is the relation id, the value the relation object. | ||
:rtype: QMap<str, QgsRelation> | ||
%End | ||
|
||
/** | ||
* Add a relation. | ||
* | ||
* @param relation The relation to add. | ||
*/ | ||
void addRelation( const QgsRelation &relation ); | ||
%Docstring | ||
Add a relation. | ||
|
||
\param relation The relation to add. | ||
%End | ||
|
||
/** | ||
* Remove a relation. | ||
* | ||
* @param id The id of the relation to remove. | ||
*/ | ||
void removeRelation( const QString &id ); | ||
%Docstring | ||
Remove a relation. | ||
|
||
\param id The id of the relation to remove. | ||
%End | ||
|
||
/** | ||
* Remove a relation. | ||
* | ||
* @param relation The relation to remove. | ||
*/ | ||
void removeRelation( const QgsRelation &relation ); | ||
%Docstring | ||
Remove a relation. | ||
|
||
\param relation The relation to remove. | ||
%End | ||
|
||
/** | ||
* Get access to a relation by its id. | ||
* | ||
* @param id The id to search for | ||
* | ||
* @return A relation. Invalid if not found. | ||
* @see relationsByName() | ||
*/ | ||
QgsRelation relation( const QString &id ) const; | ||
%Docstring | ||
Get access to a relation by its id. | ||
|
||
\param id The id to search for | ||
|
||
:return: A relation. Invalid if not found. | ||
.. seealso:: relationsByName() | ||
:rtype: QgsRelation | ||
%End | ||
|
||
/** Returns a list of relations with matching names. | ||
* @param name relation name to search for. Searching is case insensitive. | ||
* @returns a list of matching relations | ||
* @note added in QGIS 2.16 | ||
* @see relation() | ||
*/ | ||
QList<QgsRelation> relationsByName( const QString &name ) const; | ||
%Docstring | ||
Returns a list of relations with matching names. | ||
\param name relation name to search for. Searching is case insensitive. | ||
:return: a list of matching relations | ||
.. versionadded:: 2.16 | ||
.. seealso:: relation() | ||
:rtype: list of QgsRelation | ||
%End | ||
|
||
/** | ||
* Remove any relation managed by this class. | ||
*/ | ||
void clear(); | ||
%Docstring | ||
Remove any relation managed by this class. | ||
%End | ||
|
||
/** | ||
* Get all relations where the specified layer (and field) is the referencing part (i.e. the child table with the foreign key). | ||
* | ||
* @param layer The layer which should be searched for. | ||
* @param fieldIdx The field which should be part of the foreign key. If not set will return all relations. | ||
* | ||
* @return A list of relations matching the given layer and fieldIdx. | ||
*/ | ||
QList<QgsRelation> referencingRelations( const QgsVectorLayer *layer = 0, int fieldIdx = -2 ) const; | ||
%Docstring | ||
Get all relations where the specified layer (and field) is the referencing part (i.e. the child table with the foreign key). | ||
|
||
\param layer The layer which should be searched for. | ||
\param fieldIdx The field which should be part of the foreign key. If not set will return all relations. | ||
|
||
:return: A list of relations matching the given layer and fieldIdx. | ||
:rtype: list of QgsRelation | ||
%End | ||
|
||
/** | ||
* Get all relations where this layer is the referenced part (i.e. the parent table with the primary key being referenced from another layer). | ||
* | ||
* @param layer The layer which should be searched for. | ||
* | ||
* @return A list of relations where the specified layer is the referenced part. | ||
*/ | ||
QList<QgsRelation> referencedRelations( QgsVectorLayer *layer = 0 ) const; | ||
%Docstring | ||
Get all relations where this layer is the referenced part (i.e. the parent table with the primary key being referenced from another layer). | ||
|
||
/** | ||
* Discover all the relations available from the current layers. | ||
* | ||
* @param existingRelations the existing relations to filter them out | ||
* @param layers the current layers | ||
* @return the list of discovered relations | ||
* @note added in QGIS 3.0 | ||
*/ | ||
static QList<QgsRelation> discoverRelations( const QList<QgsRelation> &existingRelations, const QList<QgsVectorLayer*> &layers ); | ||
\param layer The layer which should be searched for. | ||
|
||
:return: A list of relations where the specified layer is the referenced part. | ||
:rtype: list of QgsRelation | ||
%End | ||
|
||
static QList<QgsRelation> discoverRelations( const QList<QgsRelation> &existingRelations, const QList<QgsVectorLayer *> &layers ); | ||
%Docstring | ||
Discover all the relations available from the current layers. | ||
|
||
\param existingRelations the existing relations to filter them out | ||
\param layers the current layers | ||
:return: the list of discovered relations | ||
.. versionadded:: 3.0 | ||
:rtype: list of QgsRelation | ||
%End | ||
|
||
signals: | ||
/** This signal is emitted when the relations were loaded after reading a project */ | ||
void relationsLoaded(); | ||
%Docstring | ||
This signal is emitted when the relations were loaded after reading a project | ||
%End | ||
|
||
/** | ||
* Emitted when relations are added or removed to the manager. | ||
* @note added in QGIS 2.5 | ||
*/ | ||
void changed(); | ||
%Docstring | ||
Emitted when relations are added or removed to the manager. | ||
.. versionadded:: 2.5 | ||
%End | ||
|
||
}; | ||
|
||
/************************************************************************ | ||
* This file has been generated automatically from * | ||
* * | ||
* src/core/qgsrelationmanager.h * | ||
* * | ||
* Do not edit manually ! Edit header and run scripts/sipify.pl again * | ||
************************************************************************/ |
Oops, something went wrong.