QGIS API Documentation  3.13.0-Master (7f54853aae)
Public Slots | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
QgsDirectoryItem Class Reference

A directory: contains subdirectories and layers. More...

#include <qgsdataitem.h>

Inheritance diagram for QgsDirectoryItem:
Inheritance graph
[legend]

Public Slots

void childrenCreated () override
 
void directoryChanged ()
 
- Public Slots inherited from QgsDataItem
virtual void childrenCreated ()
 
virtual void deleteLater ()
 Safely delete the item: More...
 
virtual void depopulate ()
 Remove children recursively and set as not populated. This is used when refreshing collapsed items. More...
 
virtual void populate (bool foreground=false)
 
virtual void refresh ()
 
virtual void refreshConnections ()
 Refresh connections: update GUI and emit signal. More...
 

Public Member Functions

 QgsDirectoryItem (QgsDataItem *parent, const QString &name, const QString &path)
 Constructor for QgsDirectoryItem, with the specified parent item. More...
 
 QgsDirectoryItem (QgsDataItem *parent, const QString &name, const QString &dirPath, const QString &path, const QString &providerKey=QString())
 Constructor for QgsDirectoryItem, with the specified parent item. More...
 
QVector< QgsDataItem * > createChildren () override
 Create children. More...
 
QString dirPath () const
 Returns the full path to the directory the item represents. More...
 
bool equal (const QgsDataItem *other) override
 Returns true if this item is equal to another item (by testing item type and path). More...
 
bool hasDragEnabled () const override
 Returns true if the item may be dragged. More...
 
QIcon icon () override
 
QgsMimeDataUtils::Uri mimeUri () const override
 Returns mime URI for the data item. More...
 
Q_DECL_DEPRECATED QWidget * paramWidget () override
 Returns source widget from data item for QgsBrowserPropertiesWidget. More...
 
void setState (State state) override
 Set item state. More...
 
- Public Member Functions inherited from QgsDataCollectionItem
 QgsDataCollectionItem (QgsDataItem *parent, const QString &name, const QString &path=QString(), const QString &providerKey=QString())
 Constructor for QgsDataCollectionItem, with the specified parent item. More...
 
 ~QgsDataCollectionItem () override
 
void addChild (QgsDataItem *item)
 
- Public Member Functions inherited from QgsDataItem
 QgsDataItem (QgsDataItem::Type type, QgsDataItem *parent, const QString &name, const QString &path, const QString &providerKey=QString())
 Constructor for QgsDataItem, with the specified parent item. More...
 
 ~QgsDataItem () override
 
virtual Q_DECL_DEPRECATED bool acceptDrop ()
 Returns whether the item accepts drag and dropped layers - e.g. More...
 
virtual QList< QAction * > actions (QWidget *parent)
 Returns the list of actions available for this item. More...
 
virtual void addChildItem (QgsDataItem *child, bool refresh=false)
 Inserts a new child item. More...
 
virtual Capabilities capabilities2 () const
 Returns the capabilities for the data item. More...
 
QVector< QgsDataItem * > children () const
 
virtual void deleteChildItem (QgsDataItem *child)
 Removes and deletes a child item, emitting relevant signals to the model. More...
 
virtual bool handleDoubleClick ()
 Called when a user double clicks on the item. More...
 
virtual Q_DECL_DEPRECATED bool handleDrop (const QMimeData *, Qt::DropAction)
 Attempts to process the mime data dropped on this item. More...
 
bool hasChildren ()
 
virtual QList< QMenu * > menus (QWidget *parent)
 Returns the list of menus available for this item. More...
 
void moveToThread (QThread *targetThread)
 Move object and all its descendants to thread. More...
 
QString name () const
 Returns the name of the item (the displayed text for the item). More...
 
QgsDataItemparent () const
 Gets item parent. More...
 
QString path () const
 
QString providerKey () const
 Returns the provider key that created this item (e.g. More...
 
virtual QgsDataItemremoveChildItem (QgsDataItem *child)
 Removes a child item and returns it without deleting it. More...
 
virtual Q_DECL_DEPRECATED bool rename (const QString &name)
 Sets a new name for the item, and returns true if the item was successfully renamed. More...
 
int rowCount ()
 
virtual void setCapabilities (Capabilities capabilities)
 Sets the capabilities for the data item. More...
 
virtual Q_DECL_DEPRECATED bool setCrs (const QgsCoordinateReferenceSystem &crs)
 Writes the selected crs into data source. More...
 
void setIcon (const QIcon &icon)
 
void setIconName (const QString &iconName)
 
void setName (const QString &name)
 Sets the name of the item (the displayed text for the item). More...
 
void setParent (QgsDataItem *parent)
 Set item parent and connect / disconnect parent to / from item signals. More...
 
void setPath (const QString &path)
 
void setProviderKey (const QString &value)
 Sets the provider key that created this item (e.g. More...
 
void setSortKey (const QVariant &key)
 Sets a custom sorting key for the item. More...
 
void setToolTip (const QString &msg)
 
virtual QVariant sortKey () const
 Returns the sorting key for the item. More...
 
State state () const
 
QString toolTip () const
 
Type type () const
 

Static Public Member Functions

static bool hiddenPath (const QString &path)
 Check if the given path is hidden from the browser model. More...
 
- Static Public Member Functions inherited from QgsDataCollectionItem
static QIcon iconDataCollection ()
 Returns the standard browser data collection icon. More...
 
static QIcon iconDir ()
 Returns the standard browser directory icon. More...
 
- Static Public Member Functions inherited from QgsDataItem
static void deleteLater (QVector< QgsDataItem *> &items)
 
static int findItem (QVector< QgsDataItem *> items, QgsDataItem *item)
 
static QString pathComponent (const QString &component)
 Create path component replacing path separators. More...
 

Protected Member Functions

void init ()
 
- Protected Member Functions inherited from QgsDataItem
bool deferredDelete ()
 The item is scheduled to be deleted. More...
 
virtual void populate (const QVector< QgsDataItem *> &children)
 
virtual void refresh (const QVector< QgsDataItem *> &children)
 Refresh the items from a specified list of child items. More...
 

Protected Attributes

QString mDirPath
 
- Protected Attributes inherited from QgsDataItem
Capabilities mCapabilities
 
QVector< QgsDataItem * > mChildren
 
QIcon mIcon
 
QMap< QString, QIcon > mIconMap
 
QString mIconName
 
QString mName
 
QgsDataItemmParent = nullptr
 
QString mPath
 
QString mProviderKey
 
QVariant mSortKey
 Custom sort key. If invalid, name() will be used for sorting instead. More...
 
State mState
 
QString mToolTip
 
Type mType
 

Additional Inherited Members

- Public Types inherited from QgsDataItem
enum  Capability {
  NoCapabilities = 0, SetCrs = 1 << 0, Fertile = 1 << 1, Fast = 1 << 2,
  Collapse = 1 << 3, Rename = 1 << 4, Delete = 1 << 5
}
 
enum  State { NotPopulated, Populating, Populated }
 
enum  Type {
  Collection, Directory, Layer, Error,
  Favorites, Project, Custom
}
 
- Signals inherited from QgsDataItem
void beginInsertItems (QgsDataItem *parent, int first, int last)
 
void beginRemoveItems (QgsDataItem *parent, int first, int last)
 
void connectionsChanged ()
 Emitted when the provider's connections of the child items have changed This signal is normally forwarded to the app in order to refresh the connection item in the provider dialogs and to refresh the connection items in the other open browsers. More...
 
void dataChanged (QgsDataItem *item)
 
void endInsertItems ()
 
void endRemoveItems ()
 
void stateChanged (QgsDataItem *item, QgsDataItem::State oldState)
 
- Protected Slots inherited from QgsDataItem
void updateIcon ()
 Will request a repaint of this icon. More...
 
- Static Protected Member Functions inherited from QgsDataCollectionItem
static QIcon homeDirIcon ()
 Shared home directory icon. More...
 
static QIcon openDirIcon ()
 Shared open directory icon. More...
 

Detailed Description

A directory: contains subdirectories and layers.

Definition at line 654 of file qgsdataitem.h.

Constructor & Destructor Documentation

◆ QgsDirectoryItem() [1/2]

QgsDirectoryItem::QgsDirectoryItem ( QgsDataItem parent,
const QString &  name,
const QString &  path 
)

Constructor for QgsDirectoryItem, with the specified parent item.

The name argument specifies the text to show in the model for the item. This is usually the directory name, but in certain cases may differ for special directories (e.g. "Home"). If a non-directory-name text is used, it should be a translated string when appropriate.

The path argument specifies the directory path in the file system (e.g. "/home/gsherman/stuff"). A valid directory path must be specified.

Definition at line 826 of file qgsdataitem.cpp.

◆ QgsDirectoryItem() [2/2]

QgsDirectoryItem::QgsDirectoryItem ( QgsDataItem parent,
const QString &  name,
const QString &  dirPath,
const QString &  path,
const QString &  providerKey = QString() 
)

Constructor for QgsDirectoryItem, with the specified parent item.

The name argument specifies the text to show in the model for the item. This is usually the directory name, but in certain cases may differ for special directories (e.g. "Home"). If a non-directory-name text is used, it should be a translated string when appropriate.

The dirPath argument specifies the directory path in the file system (e.g. "/home/gsherman/stuff"). A valid directory path must be specified.

The path argument gives the item path in the browser tree. The path string can take any form, but is usually the same as dirPath or dirPath with a prefix, e.g. "favorites:/home/gsherman/Downloads"). QgsDirectoryItem items pointing to different dirPaths should always use a different item path.

The optional providerKey string can be used to specify the key for the QgsDataItemProvider that created this item.

Definition at line 835 of file qgsdataitem.cpp.

Member Function Documentation

◆ childrenCreated

void QgsDirectoryItem::childrenCreated ( )
overrideslot

Definition at line 1044 of file qgsdataitem.cpp.

◆ createChildren()

QVector< QgsDataItem * > QgsDirectoryItem::createChildren ( )
overridevirtual

Create children.

Children are not expected to have parent set. This method MUST BE THREAD SAFE.

Reimplemented from QgsDataItem.

Definition at line 876 of file qgsdataitem.cpp.

◆ directoryChanged

void QgsDirectoryItem::directoryChanged ( )
slot

Definition at line 1007 of file qgsdataitem.cpp.

◆ dirPath()

QString QgsDirectoryItem::dirPath ( ) const
inline

Returns the full path to the directory the item represents.

Definition at line 700 of file qgsdataitem.h.

◆ equal()

bool QgsDirectoryItem::equal ( const QgsDataItem other)
overridevirtual

Returns true if this item is equal to another item (by testing item type and path).

Reimplemented from QgsDataItem.

Definition at line 1063 of file qgsdataitem.cpp.

◆ hasDragEnabled()

bool QgsDirectoryItem::hasDragEnabled ( ) const
inlineoverridevirtual

Returns true if the item may be dragged.

Default implementation returns false. A draggable item has to implement mimeUri() that will be used to pass data.

See also
mimeUri()
Since
QGIS 3.0

Reimplemented from QgsDataItem.

Definition at line 705 of file qgsdataitem.h.

◆ hiddenPath()

bool QgsDirectoryItem::hiddenPath ( const QString &  path)
static

Check if the given path is hidden from the browser model.

Definition at line 1035 of file qgsdataitem.cpp.

◆ icon()

QIcon QgsDirectoryItem::icon ( )
overridevirtual

Reimplemented from QgsDataItem.

Definition at line 851 of file qgsdataitem.cpp.

◆ init()

void QgsDirectoryItem::init ( )
protected

Definition at line 846 of file qgsdataitem.cpp.

◆ mimeUri()

QgsMimeDataUtils::Uri QgsDirectoryItem::mimeUri ( ) const
overridevirtual

Returns mime URI for the data item.

Items that return valid URI will be returned in mime data when dragging a selection from browser model.

See also
hasDragEnabled()
Since
QGIS 3.0

Reimplemented from QgsDataItem.

Definition at line 1078 of file qgsdataitem.cpp.

◆ paramWidget()

QWidget * QgsDirectoryItem::paramWidget ( )
overridevirtual

Returns source widget from data item for QgsBrowserPropertiesWidget.

Use QgsDataItemGuiProvider::createParamWidget() instead

Deprecated:
QGIS 3.10

Reimplemented from QgsDataItem.

Definition at line 1073 of file qgsdataitem.cpp.

◆ setState()

void QgsDirectoryItem::setState ( State  state)
overridevirtual

Set item state.

It also take care about starting/stopping loading icon animation.

Parameters
state
Since
QGIS 2.8

Reimplemented from QgsDataItem.

Definition at line 983 of file qgsdataitem.cpp.

Member Data Documentation

◆ mDirPath

QString QgsDirectoryItem::mDirPath
protected

Definition at line 717 of file qgsdataitem.h.


The documentation for this class was generated from the following files: