.. index:: Browser panel
The QGIS Browser panel is a great tool for browsing, searching, inspecting, copying and loading QGIS resources. Only resources that QGIS knows how to handle are shown in the browser.
Using the Browser panel you can locate, inspect and add data, as described in :ref:`browser_panel`. In addition, the Browser panel supports drag and drop of many QGIS resources, such as project files, Python scripts, Processing scripts and Processing models.
Python scripts, Processing scripts and Processing models can also be opened for editing in an external editor and the graphical modeller.
You can drag and drop layers from the :guilabel:`Layers` panel to the :guilabel:`Browser` panel, for instance into a GeoPackage or a PostgreSQL database.
The browser panel (:numref:`figure_browser_panel`) is organised
as an expandable hierarchy with some fixed top-level entries that
organise the resources handled by the browser.
Node entries are expanded by clicking on
to the left
of the entry name.
A branch is collapsed by clicking on
.
The
Collapse All button collapses all top-level
entries.
In :menuselection:`Settings --> Interface Customization` it is possible to disable resources. If you, for instance, would not like to show Python scripts in the browser, you can uncheck the :menuselection:`Browser --> py` entry, and if you want to get rid of your home folder in the browser, you can uncheck the :menuselection:`Browser --> special:Home` entry.
A filter (
Filter Browser) can be used for searching
based on entry names (both leaf entries and node entries in the
hierarchy).
Using the
Options pull-down menu next to the filter
text field, you can
- toggle :guilabel:`Case Sensitive` search
- set the :guilabel:`Filter pattern syntax` to one of
The Properties widget, showing useful information about some
entries / resources, can be enabled / disabled using the
Enable/disable properties widget button.
When enabled, it opens at the bottom of the browser panel, as shown in
:numref:`figure_properties_widget`.
A second browser panel can be opened by activating the :guilabel:`Browser (2)` panel in :menuselection:`View --> Panels`. Having two browser panels can be useful when copying layers between resources that are locationed deep down in different branches of the browser hierarchy.
A lot can be accomplished in the Browser panel
- Add vector, raster and mesh layers to your map by double-clicking,
dragging onto the map canvas or clicking the
Add Selected Layers button (after selecting layers) - Run Python scripts (including Processing algorithms) by double-clicking or dragging onto the map canvas
- Run models by double-clicking or dragging onto the map canvas
- :guilabel:`Extract Symbols...` from QGIS Project files using the context menu
- Open files with their default applications (:guilabel:`Open <file type> Externally...` in the context menu). Examples: HTML files, spreadsheets, images, PDFs, text files, ...
- Copy entries
- Rename and delete (multiple) layers (context menu: :menuselection:`Manage -->`)
- Open a file explorer window and directly select the file :guilabel:`Show in Files`
Resource specific actions are listed for the different resource groups sorted under the top-level entries listed below.
Often used file system locations can be tagged as favorites. The ones you have tagged will appear here.
In addition to the operations described under Home, the context menu allows you to :guilabel:`Rename Favorite...` and :guilabel:`Remove Favorite`.
This is where you will find your :ref:`spatial bookmarks <sec_bookmarks>`, divided into :guilabel:`Project Bookmarks` and :guilabel:`User Bookmarks`.
Available once the project file has been saved, the :guilabel:`Project home` entry is a folder containing data and other contents (scripts, models, text, ...) that may be used within the current project. Displayed in the :guilabel:`Browser` panel, it allows you to quickly access data and other files of the project.
It defaults to the project file folder but can be changed through the :menuselection:`Project --> Properties... --> General --> Project home` option, or by right-clicking on the :guilabel:`Project Home` item of the Browser panel and selecting :guilabel:`Set project home...`. Customizing that folder is especially useful in contexts where QGIS projects are not stored in the root folder of an organisational 'project', along with datasets.
The next items of the :guilabel:`Browser` panel depend on the OS in use and concern the top level entries of its file system.
They are mainly:
- The :guilabel:`Home` folder, pointing to the current user home folder
- on Unix-based machines, the root :guilabel:`/` folder
- the connected drives, either local or network. Depending on the OS,
they are directly listed (eg,
C:\,D:\) or through the/Volumesentry.
From the contextual menu of each of these folders or drives, you can:
- refresh the contents
- create a :menuselection:`New -->` subitem that is a :guilabel:`Directory`, :guilabel:`GeoPackage` or ESRI :guilabel:`Shapefile` format dataset
- hide the directory (:guilabel:`Hide from Browser`)
- :guilabel:`Set color`: customize the folder icon color, aiding in rapid browser navigation of complex folder structures
- enable :guilabel:`Scanning`:
:guilabel:`Monitor for changes`: allows to manually control
whether a particular directory should be monitored and automatically updated.
This setting applies to the selected directory and all subdirectories.
This means that you can manually opt-in to monitoring of network drives
if you know there's no issue, or manually opt-out of monitoring of large
directories which you don't want monitored for other reasons.
By default, remote or network drives are not automatically monitored.
:guilabel:`Fast scan this directory`
- open the directory in your file manager (:guilabel:`Open Directory...`)
- open the directory in a terminal window (:guilabel:`Open in Terminal...`)
- inspect the :guilabel:`Properties...` or the parent :guilabel:`Directory Properties...`
Depending on your OS and installed drivers, you might have access to different database types to use in QGIS. Below are listed the different entries of contextual menu at each level of the dataset tree.
| [1] | The different entries may also be available for some GDAL supported vector file formats such as ESRI File Geodatabase, FlatGeobuf, GeoParquet, NetCDF, ... when compatible. |
| [2] | For PostgreSQL connections: only supported with ALTER TABLE privilege. |
QGIS allows you to import vector layers directly into a database from the :guilabel:`Browser` panel.
This provides a simple way to transfer datasets into supported database
formats without using
DB Manager (see :ref:`dbmanager`).
You can start the import in two ways:
- Drag and drop a single vector layer from the Browser panel or from the Project into a database connection or schema item.
- Right-click on a database connection or schema item and choose :guilabel:`Import Vector Layer...` from the context menu.
Note
When multiple layers are dragged into a database, they are imported immediately without further options. All imports run in the background, so the QGIS interface remains responsive during the process.
To add a layer using :guilabel:`Import Vector Layer...` follow these steps:
Add :guilabel:`Source layer`: the layer to import, chosen from the current QGIS project. To import only selected features of the source layer use the
:guilabel:`Selected features only` option.Set the :guilabel:`Table name`: the name of the destination table in the database. By default, it is taken from the source layer name but can be modified. You can also use the
:guilabel:`Replace destination table (if exists)`
to overwrite an existing table.Define the :guilabel:`Output CRS`: the coordinate reference system of the destination table. By default, it is the CRS of the source layer, but it can be changed using the :ref:`CRS selector <crs_selector>`.
Configure the :guilabel:`Attributes`:
- :guilabel:`Source expression`: expression used to populate the field. By default, this corresponds to the original source field.
- :guilabel:`Name`: name of the field in the destination table.
- :guilabel:`Type`: field data type (integer, text, real, etc.).
- :guilabel:`Length` and :guilabel:`Precision`: length and precision of the field, where applicable.
- :guilabel:`Constraints`: rules to enforce on the field values (e.g. NOT NULL, UNIQUE, DEFAULT). Support depends on the destination database.
- :guilabel:`Alias`: an alternate display name for the field.
- :guilabel:`Comment`: a description or note attached to the field.
You can use buttons on the right side to:
Add new field to add a new field to the destination table.
Delete selected field to remove a field from the destination table.
Move selected field up or
Move selected field down to reorder fields.
Reset all fields to clear all fields and start from scratch.
Convert All Fields To Lowercase or
Convert All Fields To Uppercase,
to change the case of all field names.
Optionally, apply a spatial filter with :ref:`Filter by Extent <extent_selector>`. This restricts the import to features within a defined bounding box.
Optionally, apply an attribute filter with :ref:`Feature filter <expression_builder>`. This allows you to use an expression to select which features are imported.
| Level and Context menu | Type of services | ||||
|---|---|---|---|---|---|
|
WMS / WMTS |
XYZ Tiles |
WCS |
WFS / OGC API - Features |
ArcGIS REST Servers |
|
| Top menu | |||||
| Create a :guilabel:`New Connection…` | ![]() |
![]() |
![]() |
![]() |
![]() |
| :guilabel:`Save Connections…` details to a file | ![]() |
![]() |
![]() |
![]() |
![]() |
| :guilabel:`Load Connections…` | ![]() |
![]() |
![]() |
![]() |
![]() |
| Connection | |||||
| :guilabel:`Refresh` connection | ![]() |
![]() |
![]() |
![]() |
![]() |
| :guilabel:`Edit Connection…` settings | ![]() |
![]() |
![]() |
![]() |
![]() |
| :guilabel:`Duplicate Connection` | ![]() |
![]() |
![]() |
![]() |
![]() |
| :guilabel:`Remove Connection…` | ![]() |
![]() |
![]() |
![]() |
![]() |
| :guilabel:`View Service Info` in Web browser | ![]() |
||||
| Table / Layer | |||||
| :menuselection:`Export Layer --> To File…` | ![]() |
![]() |
![]() |
![]() |
![]() |
| :guilabel:`Add Layer to Project` | ![]() |
![]() |
![]() |
![]() |
|
| :guilabel:`Add Vector Layer (FeatureServer) to Project` | ![]() |
||||
| :guilabel:`Add Raster Layer (MapServer) to Project` | ![]() |
||||
| :guilabel:`Add Raster with All MapServer Layers` | ![]() |
||||
| :guilabel:`Add Filtered Layer to Project…` | ![]() |
||||
| Open :guilabel:`Layer properties…` dialog | ![]() |
![]() |
![]() |
![]() |
![]() |
| :guilabel:`View Service Info` in Web browser | ![]() |
||||
| Level and Context menu | Type of services | ||||
|---|---|---|---|---|---|
|
Vector Tiles |
Scene |
Cloud |
SensorThings |
STAC |
|
| Top menu | |||||
| Create a :guilabel:`New Connection…` | ![]() |
![]() |
![]() |
![]() |
|
| Create a :guilabel:`New Generic Connection…` | ![]() |
||||
| Create a :guilabel:`New ArcGIS Vector Tile Service Connection…` | ![]() |
||||
| :guilabel:`Save Connections…` details to a file | ![]() |
![]() |
![]() |
![]() |
![]() |
| :guilabel:`Load Connections…` | ![]() |
![]() |
![]() |
![]() |
![]() |
| Connection | |||||
| :guilabel:`Edit Connection…` settings | ![]() |
![]() |
![]() |
![]() |
![]() |
| :guilabel:`Duplicate Connection` | ![]() |
![]() |
![]() |
![]() |
|
| :guilabel:`Delete Connection…` | ![]() |
![]() |
![]() |
![]() |
![]() |
| :guilabel:`Refresh` | ![]() |
||||
| :guilabel:`Details…` | ![]() |
||||
| Table / Layer | |||||
| :menuselection:`Export Layer --> To File…` | ![]() |
||||
| :guilabel:`Add Layer to Project` | ![]() |
![]() |
![]() |
||
| Open :guilabel:`Layer properties…` dialog | ![]() |
![]() |
![]() |
||
| :guilabel:`Refresh` | ![]() |
||||
| :guilabel:`Download assets…` | ![]() |
||||
| :guilabel:`Details…` | ![]() |
||||
| File type | Context menu |
|---|---|
| QGIS Layer Definition (.qlr) | :menuselection:`Export Layer --> To File…` |
| :menuselection:`Add Layer to Project` | |
| :menuselection:`Layer Properties…` | |
| Processing Model (.model3) | :menuselection:`Run Model…` |
| :menuselection:`Edit Model…` | |
| Print Composer Template (.qpt) | :menuselection:`New Layout from Template` |
| Python script (.py) | :menuselection:`Run Script…` |
| :menuselection:`Open in External Editor` |








