2 #include <QCoreApplication>
11 gContextHelpTexts.insert(
"QgsNewSpatialiteLayerDialog", QCoreApplication::translate(
"context_help",
"<h3>Create a New SpatiaLite Layer</h3>\n"
12 "You can use this dialog to create a new SpatiaLite database and/or an empty SpatiaLite layer for editing. See below for an explanation of the dialog inputs.\n"
14 "Choose the database from the drop-down list. This list is created from your saved SpatiaLite connections. If you don't have a saved connection or want to create a new database, click on the button (<label>...</label>) to the right of the drop-down.\n"
15 "<h4>Layer name</h4>\n"
16 "Enter a name for the layer you want to create. The name should be one word. You can use underscores in the name if you like.\n"
17 "<h4>Geometry column</h4>\n"
18 "Enter a name for the geometry column or accept the default.\n"
20 "Choose the type of layer you want to create. \n"
21 "<h4>EPSG SRID</h4>\n"
22 "Enter the EPSG number for the spatial reference id (SRID). By default the SRID for WGS 84 is filled in for you. Click on <label>Find SRID</label> button to change the coordinate reference system of the layer if needed. The SRID must exist within the spatial_ref_sys in your SpatiaLite database. You can search for the SRID using partial matches on both name and SRID.\n"
23 "<h4>Create an auto-incrementing Primary Key</h4>\n"
24 "Clicking this check box will add a primary key to the new layer. This key field will be auto-incrementing, meaning you don't have to enter a value for it when adding features to the attribute table of the layer.\n"
25 "<h4>New attribute</h4>\n"
26 "Add the desired attributes by clicking on the <label>Add to attributes list</label> button after you have specified a name and type for the attribute. Only real, integer, and string attributes are supported.<br/>\n"
27 "Width and precision are irrelevant in a SpatiaLite database so you do not have to specify these.\n"
28 "<h4>Attributes list</h4>\n"
29 "In this section you can see the list of attributes. To delete one of them, click on it and choose <label>Remove selected attribute</label> button.\n"
32 "Click on <label>OK</label> to create the layer and close the dialog. Clicking <label>Apply</label> also creates the layer, but keeps the dialog open, thereby allowing you to create more similar layers. <label>Cancel</label> will close the layer without further changes.\n"
34 gContextHelpTexts.insert(
"QgsWMSSourceSelect", QCoreApplication::translate(
"context_help",
"<h3>Create a new WMS connection</h3>\n"
35 "WMS layers can be added quite simply, as long as you know the URL to access the WMS server, you have a serviceable connection to that server, and the server understands HTTP as the data transport mechanism.<p>\n"
36 "QGIS currently can act as a WMS client that understands WMS 1.1, 1.1.1 and 1.3 servers.\n"
38 "<a href=\"#serv\">Servers</a><br/>\n"
39 "<a href=\"#load\">Loading WMS Layers</a><br/>\n"
40 "<a href=\"#lay\">Layer Order</a><br/>\n"
41 "<a href=\"#search\">Server Search</a><br/>\n"
46 "To define a new WMS server in the <label>Server Connections</label> section, select <label>New</label>. Then enter the parameters to connect to your desired WMS server.<p>\n"
47 "You can add some servers to play with by clicking the <label>Add default servers</label> button. This will add at least three WMS servers for you to use.<p>\n"
48 "Once the new WMS Server connection has been created, it will be preserved for future QGIS sessions.\n"
51 "<h5>Loading WMS Layers</h5>\n"
53 "Select the <label>Connect</label> button to retrieve the capabilities of the selected server. This includes the Image encoding, Layers, Layer Styles and Projections.<br/>\n"
54 "While downloading data from the WMS server, the download progress is visualized in the left bottom of the WMS Plugin dialog.<p>\n"
55 "The <label>Image encoding</label> section now lists the formats that are supported by both the client and server.<br/>\n"
56 "Choose one depending on your image accuracy requirements.<p>\n"
57 "You can select several layers at once, they will be combined at the WMS Server and transmitted to QGIS in one go.<p>\n"
58 "Each WMS Layer can be presented in multiple CRSs, depending on the capability of the WMS server. To choose a CRS, select <label>Change...</label>\n"
61 "<h4>Layer Order</h4>\n"
63 "On this tab you can change the order of loaded WMS layers.\n"
65 "<a name=\"search\">\n"
66 "<h4>Server Search</h4>\n"
68 "On this tab you can search for WMS servers. It is possible to enter a search-string in the text field an hit the <label>Search</label> button.<p>\n"
69 "To visualize the results, select an table entry, press the <label>Add selected row to WMS list</label> button and change back to the <label>Servers</label> tab.<p>\n"
70 "You only need to request the list of layers by clicking the <label>Connect</label> button.\n"
72 gContextHelpTexts.insert(
"SaNewConnection", QCoreApplication::translate(
"context_help",
"<h3>Create a New SQL Anywhere Connection</h3>\n"
73 "This dialog allows you to define the settings for a connection to a\n"
74 "SQL Anywhere database.\n"
77 "<li> <label>Name</label> A name to identify the connection settings.\n"
79 "<li> <label>Host</label> Name or IP address of the computer hosting the database server (leave blank for local connections). \n"
81 "<li> <label>Port</label> IP port used by the database server (leave blank for local connections or to use default port 2638).\n"
83 "<li> <label>Server</label> Name of the database server (leave blank for default server on host).\n"
85 "<li> <label>Database</label> Name of the database (leave blank for default database on server).\n"
87 "<li> <label>Connection Parameters</label> Additional parameters to add to the connection string (semi-colon delimitted list). See the SQL Anywhere documentation for a list and description of available connection parameters.\n"
89 "<li> <label>Username</label> Database user name.\n"
90 "<li> <label>Password</label> Database password.\n"
92 "<li> <label>Save Username</label> Indicates whether to save the database user name in the connection configuration.\n"
94 "<li> <label>Save Password</label> Indicates whether to save the database password in the connection settings. <em>Passwords are saved in <strong>clear text</strong> in the system configuration!</em>\n"
96 "<li> <label>Simple Encryption</label> Secure the connection to the database using simple encryption.\n"
98 "<li> <label>Estimate table metadata</label> When initializing layers, various queries may be needed to establish the characteristics of the geometries stored in the database table. When this option is checked, these queries examine only a sample of the rows, rather than the entire table. This can significantly speed up layer initialization, but may result in incorrect characterization of layers containing heterogenous types.\n"
100 "<li> <label>Search other users' tables</label> Indicates that the layer list should be populated from all layers stored in the database. When unchecked (the default), only layers stored in tables owned by the connected user are displayed.\n"
104 gContextHelpTexts.insert(
"QgsProjectProperties", QCoreApplication::translate(
"context_help",
"<h3>Project Properties</h3>\n"
105 "This dialog allows you to set a number of properties related to the <label>Project</label>. A Project is a saved set of layers and their settings, as well as other information required to restore the project from disk.<p>\n"
107 "<a href=\"#general\">General Tab</a><br/>\n"
108 "<a href=\"#crs\">Coordinate Reference System (CRS) Tab</a><br/>\n"
109 "<a href=\"#layers\">Identifiable layers Tab</a><br/>\n"
111 "<a name=\"general\">\n"
112 "<h4>General Tab</h4>\n"
115 "<tr><td><label>Project title</label></td><td>A descriptive title for the project. This title will be displayed in the title bar of the QGIS window</td></tr>\n"
116 "<tr><td><label>Selection color</label></td><td>Selected features are displayed on the map using this color.</td></tr>\n"
117 "<tr><td><label>Background color</label></td><td>The color of the map canvas.</td></tr>\n"
118 "<tr><td><label>Save paths</label></td><td>Ability to save the paths as absolute or relative.</td></tr>\n"
119 "<tr><td><label>Layer units</label></td><td>Choose the units appropriate for the layers in the project.</td></tr>\n"
120 "<tr><td><label>Precision</label></td><td>Use the manual setting to set the precision of the display in the status bar. As the mouse is moved over the map canvas, the coordinates are updated and displayed in the status bar using the precision you choose. Automatic (the default) results in a default precision based on the map units.</td></tr>\n"
121 "<tr><td><label>Digitizing</label></td><td>The option <label> Enable topological editing</label> enables editing and maintaining common boundaries in polygon mosaics. Editing a vertex in shared boundary will result in updating both boundaries.<p>\n"
122 "To avoid digitizing all vertices of the common boundary select <label>Avoid intersections of new polygons</label>. In the dialog window tick appropriate layers to which the new polygon will be adjusted. Draw the new polygon in the way it overlap the existing one, it will be cut automatically. <p>\n"
123 "<label>Snapping options</label> allows you to set the snapping tolerance in pixels or map units and the snapping mode: <label>to vertex</label>, <label>to segment</label>, <label>to vertex and segment</label> for every layer separately.</td></tr>\n"
127 "<h4>Coordinate Reference System (CRS) Tab</h4>\n"
129 "The Coordinate Reference System (CRS) tab allows you to set the projection for the current project and enable on the fly transformation. You do not need to have a saved project to setup and enable 'on the fly' CRS transformation.\n"
130 "<p>To use 'on the fly' CRS transformation, click the <label>Enable 'on the fly' CRS transformation</label> check box. Then choose the projection for the project (map canvas) from the list of Geographic or Projected coordinate systems.\n"
131 "<p>You can find a coordinate system by entering its name, EPSG code or the QGIS ID and clicking the <label>Find</label> button.\n"
132 "<p>The list of recently used coordinate systems will be available on the bottom for quick access.\n"
134 "<a name=\"layers\">\n"
135 "<h4>Identifiable layers Tab</h4>\n"
137 "On this tab you can choose on which layers the identify tool will work.\n"
139 gContextHelpTexts.insert(
"QgsPluginManager", QCoreApplication::translate(
"context_help",
"<h3>Manage and install Plugins</h3>\n"
142 "Manage and install plugins.\n"
146 "<a href=\"#installedtab\">Installed tab</a><br/>\n"
147 "<a href=\"#getmoretab\">Get more tab</a><br/>\n"
148 "<a href=\"#newtab\">New tab</a><br/>\n"
149 "<a href=\"#upgradabletab\">Upgradable tab</a><br/>\n"
150 "<a href=\"#invalidtab\">Invalid tab</a><br/>\n"
151 "<a href=\"#settingstab\">Settings tab</a><br/>\n"
153 "<a name=\"installedtab\">\n"
154 "<h4>Installed tab</h4>\n"
157 "This tab shows you the list of currently installed plugins on your system. Both\n"
158 "python and C++ plugins are listed.\n"
161 "You can enable or disable them by clicking the checkbox in front of the name.<br/>\n"
162 "Selecting an item show the plugin information in the detail pane.\n"
165 "There is a context menu (right click) available, to change the sorting on:\n"
166 "name, number of downloads, votes and status.\n"
170 "<a name=\"getmoretab\">\n"
171 "<h4>Get more tab</h4>\n"
174 "This tab shows you the list of available plugins from the remote repositories.\n"
175 "It is downloaded once if you start up. But you can change that in the Settings\n"
178 "Selecting an item shows you the plugin information in the detail pane.\n"
181 "<a name=\"newtab\">\n"
185 "This tab will be shown when a new plugin is made available! It will be shown\n"
189 "<a name=\"upgradabletab\">\n"
190 "<h4>Upgradable tab</h4>\n"
193 "This tab is only available if one of your installed plugins can be upgraded\n"
194 "from the remote repositories.\n"
197 "<a name=\"Invalid tab\">\n"
198 "<h4>Invalid tab</h4>\n"
201 "This tab is only available if there is a invalid plugin. Mostly caused by an error \n"
202 "during loading the plugin.\n"
205 "<a name=\"settingstab\">\n"
206 "<h4>Settings tab</h4>\n"
209 "In this tab you can change the Settings for the plugin manager.\n"
212 "It is possible to check how often QGIS will download the list and update information \n"
213 "from the available repositories.\n"
216 "By checking the 'Show experimental plugins' checkbox, all plugins will be shown\n"
217 "in the lists, even the ones that are considered 'experimental' by the author.\n"
219 "<table border=1 width='95%' align='center'><tr><td>\n"
220 "Note: Experimental plugins are generally unsuitable for production use. These plugins are in the early stages of development, and should be considered \"incomplete\" or \"proof of concept\" tools. The QGIS development team does not recommend installing these plugins unless you intend to use them for testing purposes.\n"
221 "</td></tr></table>\n"
225 gContextHelpTexts.insert(
"QgsNewOgrConnection", QCoreApplication::translate(
"context_help",
"<h3>New OGR Database Connection Dialog</h3>\n"
227 gContextHelpTexts.insert(
"QgsBookmarks", QCoreApplication::translate(
"context_help",
"<h3>Spatial Bookmarks</h3>\n"
228 "Spatial Bookmarks allow you to \"bookmark\" a geographic location and return to it later.\n"
230 "<a href=\"#creating\">Creating a Bookmark</a><br/>\n"
231 "<a href=\"#working\">Working with Bookmarks</a><br/>\n"
232 "<a href=\"#zooming\">Zooming to a Bookmark</a><br/>\n"
233 "<a href=\"#deleting\">Deleting a Bookmark</a><br/>\n"
234 "<a href=\"#updating\">Updating a Bookmark</a><br/>\n"
236 "<a name=\"creating\">\n"
237 "<h4>Creating a Bookmark</h4>\n"
239 "To create a bookmark:\n"
241 "<li>Zoom or pan to the area of interest.\n"
242 "<li>Click on the <label>New bookmark</label> or type Ctrl-B.\n"
243 "<li>Enter a descriptive name for the bookmark (up to 255 characters).\n"
244 "<li>Click <label>OK</label> to add the bookmark or <label>Cancel</label> to exit without adding the bookmark.\n"
246 "Note that you can have multiple bookmarks with the same name.\n"
247 "<a name=\"working\">\n"
248 "<h4>Working with Bookmarks</h4>\n"
250 "To use or manage bookmarks, click on the <label>Show bookmarks</label> button or choose <label>Show Bookmarks</label> from the <label>View</label> menu. The bookmarks dialog allows you to zoom to or delete a bookmark. You can not edit the bookmark name or coordinates.\n"
251 "<a name=\"zooming\">\n"
252 "<h5>Zooming to a Bookmark</h5>\n"
254 "From the Geo spatial Bookmarks dialog, select the desired bookmark by clicking on it, then click the <label>Zoom to</label> button.\n"
256 "You can also zoom to a bookmark by double-clicking on it.\n"
257 "<a name=\"deleting\">\n"
258 "<h5>Deleting a Bookmark</h5>\n"
260 "To delete a bookmark from the Bookmarks dialog, click on it then click the <label>Delete</label> button. Confirm your choice by clicking <label>OK</label> or cancel the delete by clicking <label>Cancel</label>.\n"
261 "<a name=\"updating\">\n"
262 "<h5>Updating a Bookmark</h5>\n"
264 "To update the extent of a bookmark, click on it then click the <label>Update</label> button. Confirm your choice by clicking <label>OK</label> or cancel the update by clicking <label>Cancel</label>.\n"
267 gContextHelpTexts.insert(
"QgsIdentifyResultsDialog", QCoreApplication::translate(
"context_help",
"<h3>Identify Features</h3>\n"
269 "The results dialog shows all the features identified within the search tolerance. To see the results details, expand the feature information on the left of each feature.\n"
272 "The search radius can be set in the options dialog <label>Settings > Options > Map tools</label>, Identify section, as a percentage of map width. In this section you may also set identify mode to <label>Current layer</label>, <label>Top down, stop at first</label>, <label>Top down</label>. <br>\n"
273 "You may also tick an <label>Open feature form, if a single feature is identified</label> option.<br>\n"
274 "Identifiable layers can be set in the Project Properties dialog <label>Settings > Project Properties > Identifiable layers</label> where all the layers names are listed, their type (vector, raster, etc.) and ability to be identified.\n"
277 gContextHelpTexts.insert(
"QgsOptions", QCoreApplication::translate(
"context_help",
"<h3>Options</h3>\n"
278 "This dialog allows you to select some basic options for QGIS. There are eight tabs:\n"
281 "<a href=\"#general\">General</a><br/>\n"
282 "<a href=\"#ren\">Rendering & SVG</a><br/>\n"
283 "<a href=\"#map\">Map tools</a><br/>\n"
284 "<a href=\"#over\">Overlay</a><br/>\n"
285 "<a href=\"#digit\">Digitizing</a><br/>\n"
286 "<a href=\"#crs\">CRS</a><br/>\n"
287 "<a href=\"#loc\">Locale</a><br/>\n"
288 "<a href=\"#net\">Network & Proxy</a><br/>\n"
290 "<a name=\"general\">\n"
293 "On this tab you can set general options for project behavior on opening/saving, default map appearance, your favorite icon theme and many others.\n"
295 "<h4>Rendering & SVG</h4>\n"
297 "Within this tab you can set general rendering options for map layers.<br>\n"
298 "By default, QGIS renders all visible layers whenever the map canvas must be refreshed. The events that trigger a refresh of the map canvas include:\n"
300 "<li>Adding a layer\n"
301 "<li>Panning or zooming\n"
302 "<li>Resizing the QGIS window\n"
303 "<li>Changing the visibility of a layer or layers\n"
305 "QGIS allows you to control the rendering process in a number of ways:<p>\n"
306 "You can set an option to always load new layers without drawing them.<br>\n"
307 "This means the layer will be added to the map, but its visibility check box in the legend will be unchecked by default. To set this option, uncheck the <label>By default new layers added to the map should be displayed</label> check box.<p>\n"
308 "You can set an option to update the map display as features are drawn. <br>\n"
309 "By default, QGIS does not display any features for a layer until the entire layer has been rendered. To update the display as features are read from the data store, set the <label>Number of features to draw before updating the display</label> to an appropriate value. Setting a value of 0 disables update during drawing (this is the default). Setting a value too low will result in poor performance as the map canvas is continually updated during the reading of the features. A suggested value to start with is 500.\n"
311 "<h4>Map tools</h4>\n"
313 "<h5>Identify</h5>\n"
314 "The <label>Mode</label> setting determines which layers will be shown by the <label>Identify</label> tool. By switching to <label>Top down</label> instead of <label>Current layer</label> attributes for all identifiable layers will be shown with the <label>Identify</label> tool.\n"
315 "<h5>Measure tool</h5>\n"
316 "Here you can set an ellipsoid for distance calculations, measurement units and preferred color of rubber band.\n"
317 "<h5>Panning and zooming</h5>\n"
318 "Allows to define mouse wheel action and zoom factor.\n"
319 "<a name=\"over\">\n"
322 "Define placement algorithm for labels. Choose between <label>central point (fastest)</label>, <label>chain (fast)</label>, <label>popmusic tabu chain (slow)</label>, <label>popmusic tabu (slow)</label> and <label>popmusic chain (very slow)</label>.\n"
324 "<a name=\"digit\">\n"
325 "<h4>Digitizing</h4>\n"
327 "<h5>Rubber band</h5>\n"
328 "In the <label>Digitizing</label> tab you can define settings for digitizing line width and color.\n"
329 "<h5>Snapping</h5>\n"
330 "Here you can define a general, project wide snapping tolerance. <p>\n"
331 "You can select between <label>To vertex</label>, <label>To segment</label> or <label>To vertex and segment</label> as default snap mode. You can also define a default snapping tolerance and a search radius for vertex edits. The tolerance can be set either in map units or in pixels. The advantage of choosing pixels, is that the snapping tolerance doesn't have to be changed after zoom operations.<p>\n"
332 "A layer based snapping tolerance can be defined by choosing <label>Settings</label> (or <label>File</label>) > <label>Project Properties...</label>. In the <label>General</label> tab, section <label>Digitize</label> you can click on <label>Snapping options...</label> to enable and adjust snapping mode and tolerance on a layer basis.\n"
333 "<h5>Vertex markers</h5>\n"
334 "You can define marker style as <label>Semi transparent circle</label>, <label>Cross</label> or <label>None</label> and size; you can also set showing markers only for selected features.\n"
335 "<h5>Enter attribute values</h5>\n"
336 "By default, after digitizing a new feature, QGIS asks you to enter attribute values for that feature. Ticking <label>Suppress attributes pop-up windows after each created feature</label> allows you to enter the attributes later.\n"
340 "QGIS no longer sets the map CRS to the coordinate reference system of the first layer loaded. When you start a QGIS session with layers that do not have a CRS, you need to check and define the CRS definition for these layers. This can be done globally on this tab.<p>\n"
341 "The global default CRS <i>proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs</i> comes predefined in QGIS but can of course be changed, and the new definition will be saved for subsequent QGIS sessions.\n"
345 "Informs you about active system locale. To change it tick <label>Override system locale</label> and restart QGIS.\n"
347 "<h4>Network & Proxy</h4>\n"
349 "Tick <label>Use proxy for web access</label> to define host, port, user, and password.\n"
351 gContextHelpTexts.insert(
"QgsMeasureDialog", QCoreApplication::translate(
"context_help",
"<h3>Measure Tools</h3>\n"
352 "There are two measure tools: length and area. With them, you can measure both distances and areas on the map canvas. Currently the tools provide results in metric units only. A single right mouse click stops the measuring, while two right mouse clicks starts measuring anew.\n"
353 "<h4>Measuring Lengths</h4>\n"
354 "To measure lengths, select the tool and click along the path you want to measure. The length of each segment is displayed as is the total length for the path.\n"
355 "<h4>Measuring Areas</h4>\n"
356 "To measure areas, select the tool and click to create the area. The total area is dynamically displayed as you click.\n"
358 gContextHelpTexts.insert(
"HeatmapGui", QCoreApplication::translate(
"context_help",
"<h1>Heatmap Plugin Help</h1>\n"
359 "<p>The Heatmap plugin uses Kernel Density Estimation to create a density (heatmap)\n"
360 "raster of an input point vector layer. The density is calculated based on the\n"
361 "number of points in a location, with larger numbers of clustered points resulting\n"
362 "in larger values. Heatmaps allow easy identification of \"hotspots\" and\n"
363 "clustering of points.</p>\n"
365 "<h2>Dialog Parameters</h2>\n"
367 "<h3>Input point layer</h3>\n"
368 "<p>The input is always a vector layer of point type. All the point vector layers that are currently loaded in the canvas are shown in the drop-down list. Click the dropdown button and select the desired layer.</p>\n"
370 "<h3>Output raster</h3>\n"
371 "<p>The output raster location and filename can be set by clicking the <label>...</label> button next to the output raster textbox.<br/>\n"
372 "<b>Note:</b> The file format is automatically added depending upon the output format selected, if not explicitly given.</p>\n"
374 "<h3>Output format</h3>\n"
375 "<p>All the file creation supporting GDAL formats are available in the drop down list. Click and select the required output format for your file.<br/>\n"
376 "<b>Note:</b> GeoTiff and ERDAS Imagine .img formats are recommended. Some formats make the application crash. Kindly stick to the recommended formats until the crash issue is resolved or use other formats if you know GDAL supports it completely.</p>\n"
378 "<h3>Radius (bandwidth)</h3>\n"
379 "<p>Used to specify the heatmap search radius (or kernel bandwidth) in meters or map units. The radius specifies the distance around a point at which the influence\n"
380 " of the point will be felt. Larger values result in greater smoothing, but smaller values may show finer details and variation in point density.</p>\n"
382 "<h3>Advanced Options</h3>\n"
384 "<h4>Rows and Columns</h4>\n"
385 "<p>Used to change the dimensions of the output raster file. These values are also linked to the <b>Cell size X</b> and <b>Cell size Y</b> values. \n"
386 "Increasing the number of rows or colums will decrease the cell size and increase the file size of the output file. The values in Rows and Columns\n"
387 "are also linked, so doubling the number of rows will automatically double the number of columns and the cell sizes will also be halved. The geographical area of the output raster will remain the same!</p>\n"
389 "<h4>Cell size X and Y</h4>\n"
390 "<p>Control the geographic size of each pixel in the output raster. Changing these values will also change the number of Rows and Columns in the output\n"
393 "<h4>Kernel shape</h4>\n"
394 "<p>The kernel shape controls the rate at which the influence of a point decreases as the distance from the point increases. Different kernels decay at\n"
395 "different rates, so a triweight kernel gives features greater weight for distances closer to the point than the Epanechnikov kernel does. Consequently,\n"
396 "triweight results in \"sharper\" hotspots, and Epanechnikov results in \"smoother\" hotspots. A number of standard kernel functions are available in QGIS,\n"
397 "which are described and illustrated on <a href=\"http://en.wikipedia.org/wiki/Kernel_(statistics)#Kernel_functions_in_common_use\">Wikipedia</a>.</p>\n"
399 "<h4>Decay ratio</h4>\n"
400 "<p>For triangular kernels, the decay ratio defines amount of influence that applies to the outermost pixels in the buffer radius. A value of 0 reflects a standard triangular kernel, where the influences drops to zero as the distance from the pixel to the point approaches the specified radius. In contrast, a value of 1 indicates that no falloff occurs as the distance from the point increases.</p>\n"
402 "<h4>Use radius from field</h4>\n"
403 "<p>Optionally, the value in a specified field can be used to control the kernel radius for each point in the input layer.</p>\n"
405 "<h4>Use weight from field</h4>\n"
406 "<p>Optionally, a attribute containing weights for points can be used to weight some points in the input layer more than others.</p>\n"
408 "<h2>Further Details</h2>\n"
409 "<p>Contact the author through aruntheguy at gmail dot com</p>\n"
412 gContextHelpTexts.insert(
"QgsOracleNewConnection", QCoreApplication::translate(
"context_help",
"<h3>Create a New Oracle Connection</h3>\n"
413 "This dialog allows you to define the settings for a connection to a Oracle database.\n"
416 "<li> <label>Name</label> A name to identify the connection settings.\n"
418 "<li> <label>Database</label> SID or SERVICE_NAME of the Oracle instance.\n"
420 "<li> <label>Host</label> Name or IP address of the computer hosting the database server\n"
422 "<li> <label>Port</label> IP port used by the database server\n"
424 "<li> <label>Username</label> Database user name.\n"
425 "<li> <label>Password</label> Database password.\n"
427 "<li> <label>Save Username</label> Indicates whether to save the database user name in the connection configuration.\n"
429 "<li> <label>Save Password</label> Indicates whether to save the database password in the connection settings. <font color=\"red\">Passwords are saved in <strong>clear text</strong> in the system configuration and in the project files!</font>\n"
431 "<li> <label>Only look in meta data table</label> Restricts the displayed tables to those that are in the all_sdo_geom_metadata view. This can speed up the initial display of spatial tables.\n"
433 "<li> <label>Only look for user's tables</label> When searching for spatial tables restrict the search to tables that are owner by the user.\n"
435 "<li> <label>Also list tables with no geometry</label> Indicates that tables without geometry should also be listed by default.\n"
437 "<li> <label>Use estimated table statistics for the layer metadata</label> When\n"
438 "the layer is setup various metadata is required for the Oracle table. This\n"
439 "includes information such as the table row count, geometry type and spatial\n"
440 "extents of the data in the geometry column. If the table contains a large\n"
441 "number of rows determining this metadata is time consuming. By activating this\n"
442 "option the following fast table metadata operations are done: Row count is\n"
443 "determined from all_tables.num_rows. Table extents are always determined with\n"
444 "the SDO_TUNE.EXTENTS_OF function even if a layer filter is applied. The table\n"
445 "geometry is determined from the first 100 non-null geometry rows in the table.\n"
447 "<li> <label>Only existing geometry types</label> Only list the existing\n"
448 "geometry types and don't offer to add others.\n"
452 gContextHelpTexts.insert(
"QgsCustomProjectionDialog", QCoreApplication::translate(
"context_help",
"<h3>Custom Coordinate Reference System Definition</h3>\n"
453 "If QGIS does not provide the coordinate reference system you need, you can define a custom CRS. <p>\n"
454 "To define a CRS, select <label>Custom CRS</label> from the <label>Edit</label> (Gnome, OSX) or <label>Settings</label> (KDE, Windows) menu. Custom CRS are stored in your QGIS user database. In addition to your custom CRS, this database also contains your spatial bookmarks and other custom data.\n"
457 "To create a new CRS, click the <label>New</label> button and enter:\n"
459 "<li>descriptive name \n"
460 "<li>CRS parameters\n"
462 "After that you can save your CRS by clicking the button <label>Save</label>.\n"
464 "Note that the Parameters must begin with a +proj=-block, to represent the new coordinate reference\n"
467 "Defining a custom CRS in QGIS requires a good understanding of the Proj.4 projection library. To begin, refer to the <a href=\"ftp://ftp.remotesensing.org/proj/OF90-284.pdf\">Cartographic Projection Procedures for the UNIX Environment</a> - A User's Manual by Gerald I. Evenden, U.S. Geological Survey Open-File Report 90-284, 1990. This manual describes the use of the <i>proj.4</i> and related command line utilities. The cartographic parameters used with <i>proj.4</i> are described in the user manual, and are the same as those used by QGIS.\n"
469 gContextHelpTexts.insert(
"QgsComposer", QCoreApplication::translate(
"context_help",
"<h3>Print Composer</h3>\n"
472 "The print composer lets you arrange items onto a page, which can then be printed. Items include the content of the map canvas, the scale bar, the legend, and arbitrary images.\n"
476 "Click on one of the icons along the top of the composer window to select what type of item to place on the page, then click and draw on the page to place the item. The size of some items, such as the map canvas and scale bar can be set by clicking and dragging on the page. Other items have a fixed size, but which can be changed later on by highlighting the item and then adjusting the size fields in the left hand pane.\n"
481 gContextHelpTexts.insert(
"QgsNewVectorLayerDialog", QCoreApplication::translate(
"context_help",
"<h3>Create New Vector Layer</h3>\n"
482 "To create a new layer for editing, choose <label>New Vector Layer</label> from the <label>Layer</label> menu.<br/>\n"
483 "With this dialog you can create a shape file layer.\n"
485 "Choose the type of layer <label>Point</label>, <label>Line</label> or <label>Polygon</label>.<br/>\n"
486 "Click on <label>Specify CRS</label> button to change the coordinate reference system of the layer if needed.\n"
487 "<h4>New attribute</h4>\n"
488 "Add the desired attributes by clicking on the <label>Add to attributes list</label> button after you have specified a name and type for the attribute. Only real, integer, and string attributes are supported.<br/>\n"
489 "You can also define the width and precision of the new attribute column.\n"
490 "<h4>Attributes list</h4>\n"
491 "In this section you can see the list of attributes. To delete one of them, click on it and choose <label>Remove selected attribute</label> button.\n"
493 gContextHelpTexts.insert(
"QgsDecorationNorthArrowDialog", QCoreApplication::translate(
"context_help",
"<h3> North Arrow Plugin</h3>\n"
494 "Displays a north arrow overlayed onto the map.\n"
496 "At present there is only one style available. You can adjust the angle of the arrow or let QGIS set the direction automatically. If you choose to let QGIS determine the direction, it makes its best guess as to how the arrow should be oriented. For placement of the arrow you have four options, corresponding to the four corners of the map canvas.") );
497 gContextHelpTexts.insert(
"QgsDecorationCopyrightDialog", QCoreApplication::translate(
"context_help",
"<h3>Copyright Label Plugin</h3>\n"
498 "Draws a copyright label with information.<br/>\n"
499 "You can add any random text to the map not only a copyright label.\n"
501 "<a href=\"#howto\">How to</a><br/>\n"
502 "<a href=\"#text\">Text formatting</a><br/>\n"
504 "<a name=\"howto\">\n"
508 "<li>Make sure the plugin is loaded.\n"
509 "<li>Click on <label>Plugins > Decorations > Copyright Label</label> or use the <label>Copyright Label</label> button from the Toolbar.\n"
510 "<li>Enter the text you want to place on the map. You can use HTML.\n"
511 "<li>Choose the placement of the label from the <label>Placement Bottom Right</label> drop-down box.\n"
512 "<li>Make sure the <label>Enable Copyright Label check box</label> is checked.\n"
513 "<li>Click <label>OK</label>.\n"
515 "<a name=\"text\">\n"
516 "<h4> Text formatting </h4>\n"
518 "This plugin supports basic HTML markup tags for formatting text. For example:\n"
521 "<li><B><b> Bold text </b></B>\n"
523 "<li><I><i> Italics </i></I>\n"
525 "<li><U><u> Underlined text </u></U>\n"
529 gContextHelpTexts.insert(
"QgsVectorLayerProperties", QCoreApplication::translate(
"context_help",
"<h3>Vector Layer Properties</h3>\n"
530 "This dialog allows you to work with vector layer settings and properties. There are seven tabs:\n"
532 "<a href=\"#symbology\">Symbology</a><br/>\n"
533 "<a href=\"#labels\">Labels</a><br/>\n"
534 "<a href=\"#attributes\">Attributes</a><br/>\n"
535 "<a href=\"#general\">General</a><br/>\n"
536 "<a href=\"#metadata\">Metadata</a><br/>\n"
537 "<a href=\"#actions\">Actions</a><br/>\n"
538 "<a href=\"#diagram\">Diagram Overlay</a><br/>\n"
540 "<a name=\"symbology\">\n"
541 "<h4>Symbology</h4>\n"
543 "To change the symbology for a layer, simply double click on its legend entry and the vector <label>Layer Properties</label> dialog will be shown.<p>\n"
544 "Within this dialog you can style your vector layer. Depending on the selected rendering option you have the possibility to also classify your map features.\n"
546 "<h5>Legend type</h5>\n"
547 "QGIS supports a number of symbology renderers to control how vector features are displayed. Currently the following renderers are available:\n"
549 "<li><label>Single symbol</label> - a single style is applied to every object in the layer.\n"
550 "<li><label>Graduated symbol</label> - objects within the layer are displayed with different symbols classified by the values of a particular field.\n"
551 "<li><label>Continuous color</label> - objects within the layer are displayed with a spread of colors classified by the numerical values within a specified field.\n"
552 "<li><label>Unique value</label> - objects are classified by the unique values within a specified field with each value having a different symbol.\n"
555 "<h5>New symbology</h5>\n"
556 "Click <label>New symbology</label> button to use new symbology implementation for the layer.\n"
558 "<h5>Vector transparency</h5>\n"
559 "QGIS allows to set a transparency for every vector layer. This can be done with the slider <label>Transparency</label>. This is very useful for overlaying several vector layers.\n"
561 "<h5>Saving styles</h5>\n"
562 "Once you have styled your layer you also could save your layer-style to a separate file (with *.qml ending). To do this, use the button <label>Save Style...</label>. No need to say that <label>Load Style...</label> loads your saved layer-style-file.<br/>\n"
563 "If you wish to always use a particular style whenever the layer is loaded, use the <label>Save As Default</label> button to make your style the default. Also, if you make changes to the style that you are not happy with, use the <label>Restore Default Style</label> button to revert to your default style.\n"
565 "<a name=\"labels\">\n"
568 "The Labels tab allows you to enable labeling features and control a number of options related to fonts, placement, style, alignment and buffering.<br/>\n"
569 "Check the <label>Display labels</label> check box to enable labeling.\n"
571 "<h5>Basic Label options</h5>\n"
572 "Choose the field to label with.<p>\n"
573 "Select the use the <label>Font</label> and <label>Color</label> buttons to set the font and color. You can also change the angle and the placement of the text-label.<p>\n"
574 "If have labels extending over several lines, check <label>Multiline labels?</label>. QGIS will check for a true line return in your label field and insert the line breaks accordingly. A true line return is a single character \n, (not two separate characters, like a backslash \ followed by the character n).\n"
576 "<h5>Placement</h5>\n"
577 "Change the label placement by selecting one of the radio buttons in the <label>Placement</label> group.\n"
579 "<h5>Font size units</h5>\n"
580 "The <label>Font size units</label> allows you to select between <label>Points</label> or <label>Map units</label>.\n"
582 "<h5>Buffer labels</h5>\n"
583 "To buffer the labels means putting a backdrop around them to make them stand out better. To buffer the lakes labels:\n"
585 "<li>Click the <label>Buffer Labels</label> check box to enable buffering.\n"
586 "<li>Choose a size for the buffer using the spin box.\n"
587 "<li>Choose a color by clicking on <label>Color</label> and choosing your favorite from the color selector. You can also set some transparency for the buffer if you prefer.\n"
588 "<li>Click <label>Apply</label> to see if you like the changes.\n"
590 "Notice you can also specify the buffer size in map \n"
591 "units if that works out better for you.\n"
593 "<h5>Data defined placement, properties, buffer, position</h5>\n"
594 "The remaining entries inside the <label>Label</label> tab allow you control the appearance of the labels using attributes stored in the layer. The entries beginning with <label>Data defined</label> allow you to set all the parameters for the labels using fields in the layer.\n"
597 "<a name=\"attributes\">\n"
598 "<h4>Attributes</h4>\n"
600 "Within the <label>Attributes</label> tab the attributes of the selected data set can be manipulated. The buttons <label>New Column</label> and <label>Delete Column</label> can be used, when the data set is in editing mode. The OGR library supports to add new columns, but not to remove them, if you have a GDAL version >= 1.6 installed. Otherwise only columns from PostGIS layers can be edited.<p>\n"
601 "The <label>Toggle editing mode</label> button toggles this mode.<p>\n"
602 "Within the Attributes tab you also find an edit widget column. This column can be used to define values or a range of values that are allowed to be added to the specific attribute table column. If you click on the <label>edit widget</label> button, a dialog opens, where you can define different widgets. These widgets are:<br/>\n"
604 "<li><label>Line edit</label> an edit field which allows to enter simple text (or restrict to numbers for numeric attributes).\n"
605 "<li><label>Classification</label> Displays a combo box with the values used for classification, if you have chosen <label>unique value</label> as legend type in the symbology tab of the properties dialog.\n"
606 "<li><label>Range</label> Allows to set numeric values from a specific range. The edit widget can be either a slider or a spin box.\n"
607 "<li><label>Unique value</label> The user can select one of the values already used in the attribute table. If <label>editable</label> is activated, a line edit is shown with auto completion support, but additional values are possible, otherwise a combo box is used.\n"
608 "<li><label>File name</label> Simplifies the selection by adding a file chooser dialog.\n"
609 "<li><label>Value map</label> a combo box with predefined items. The value is stored in the attribute, the description is shown in the combo box. You can define values manually or load them from a layer or a csv file.\n"
610 "<li><label>Enumeration</label> Opens a combo box with values that can be used within the columns type. This is currently only supported by the Postgres provider.\n"
611 "<li><label>Immutable</label> The immutable attribute column is read-only. The user is not able to modify the content.\n"
612 "<li><label>Hidden</label> A hidden attribute column is invisible to the user.\n"
613 "<li><label>Checkbox</label> A check box is shown. The value representing the state of the check box in the attribute has to be entered.\n"
614 "<li><label>Text edit</label> A text edit field is shown, that allows entering multiline text.\n"
617 "<a name=\"general\">\n"
620 "The General tab allows you to change the display name, set scale dependent rendering options, create a spatial index of the vector file (only for OGR supported formats and PostGIS) and view or change the projection of the specific vector layer.<p>\n"
621 "You can also set a provider specific filter expressions using the <label>Query Builder</label>.\n"
624 "The <label>Query Builder</label> button allows you to limit the features of a layer to a subset matching an provider specific filter expression.\n"
626 "<a name=\"metadata\">\n"
627 "<h4>Metadata</h4>\n"
629 "The <label>Metadata</label> tab contains information about the layer, including specifics about the type and location, number of features, feature type, and the editing capabilities. The Layer Spatial Reference System section, providing projection information, is displayed on this tab. This is a quick way to get information about the layer.\n"
631 "<a name=\"actions\">\n"
634 "QGIS provides the ability to perform an action based on the attributes of a feature. This can be used to perform any number of actions, for example, running a program with arguments built from the attributes of a feature or passing parameters to a web reporting tool. <br/>\n"
635 "Actions are useful when you frequently want to run an external application or view a web page based on one or more values in your vector layer.<p>\n"
637 "The new implementation of actions uses the QGIS expression engine to do evaluations. Each expression is evaluated and replaced by its result at runtime.<p>\n"
638 "An expression must be enclosed between <code>[%</code> and <code>%]</code> - the GUI has some buttons which do that for you automatically. \n"
639 "The <label>Insert expression...</label> button launches the <label>Expression builder</label> which allows to write an expression easily, the <label>Insert field</label> button inserts into the action a placeholder like <code>[% \"fieldname\" %]</code> where fieldname is the name of the field selected in the field dropdown list.<p>\n"
641 "See the User Guide for further information.\n"
643 "<h5>Using Actions</h5>\n"
644 "Actions can be invoked from the <label>Identify Results</label> dialog or using the <label>Run feature action</label> tool on the toolbar.<p>\n"
646 "Each action adds a little set of custom expressions to the default set available in the <label>Expression builder</label>.<br/>\n"
647 "While running actions from the <label>Identify Results</label> dialog the custom expression <code>$currfield</code> will be replaced with the value of the selected field in the dialog, using the <label>Run feature action</label> tool the following custom expressions are available (instead of $currfield):\n"
649 "<li><code>$clickx</code> returns the x coordinate of the click position on the canvas</li>\n"
650 "<li><code>$clicky</code> returns the y coordinate of the click position on the canvas</li>\n"
651 "<li><code>$layerid</code> returns the ID of the selected layer in the legend</li>\n"
654 "Note: the <label>Run feature action</label> tool executes the actions on all the matching features, where as <label>Identify Results</label> allows you to select which specific feature to run action on.<p>\n"
657 "<h5>Action Examples</h5>\n"
658 "You can add some example actions by clicking on the <label>Add default actions</label> button.\n"
661 "<a name=\"diagram\">\n"
662 "<h4>Diagram Overlay</h4>\n"
664 "The Diagram tab allows you to add a graphic overlay to a vector layer. To activate this feature, open the <label>Plugin Manager</label> and select the <label>Diagram Overlay</label> plugin. After this, there is a new tab in the vector <label>Layer Properties</label> dialog where the settings for diagrams may be entered.<p>\n"
665 "The current implementation of diagrams provides support for pie- and bar charts and for linear scaling\n"
666 "of the diagram size according to a classification attribute.\n"
668 gContextHelpTexts.insert(
"RgSettingsDlg", QCoreApplication::translate(
"context_help",
"<h3>Road graph plugin settings</h3>\n"
669 "<p>Road graph is a C++ plugin for QGIS, that calculates the shortest path between two points on any polyline layer and plots this path over the road network.</p>\n"
671 "<a href=\"#creating\">Plugin units</a><br/>\n"
672 "<a href=\"#topologyTolerance\">Topology tolerance</a><br/>\n"
673 "<a href=\"#layerSettings\">Transport layer settings</a><br/>\n"
676 "<a name=\"creating\">\n"
677 "<h4>Plugin units</h4>\n"
679 "<p>You can adjust the units of the calculated distance and time of the path. Select the units in <label>Distance unit</label> and <label>Time unit</label>.</p>\n"
681 "<a name=\"topologyTolerance\">\n"
682 "<h4>Topology tolerance</h4>\n"
684 "<p><label>Topology tolerance</label> - the distance in units of the project. If the distance of two points falls short the topological tolerance, they are considered to be the vertex. A topological tolerance value greater than zero slows down the plugin, but you can use not ideal data sources.</p>\n"
687 "<p>The Road graph plugin considers two roads as linked, if they have a common node. A Node is uniquely identified by it's coordinates. However, in the process of digitizing errors may occur. The errors sometimes occur when the network is transformed from one coordinate reference system to another. This might cause the Road graph plugin to consider connected roads as disconnected. In that case the topological tolerance should be set to a value greater than zero.</p>\n"
689 "<a name=\"LayerSettings\">\n"
690 "<h4>Transport layer settings</h4>\n"
692 "<p><label>Layer</label> - the data layer of roads.</p>\n"
693 "<p><label>Field direction</label> - the value of this field indicates how to interpret the Road graph plugin layers feature. <label>Value for forward direction</label> - the direction of movement corresponds to the order of points in a feature. <label>Value for reverse direction</label> - the direction of movement corresponds to the reverse order of points in the feature. <label>Value for two-way direction</label> - both possible.</p>\n"
694 "<p>Speed field</p> - field containing the recorded speed on the road.</p>\n"
696 "<h5>Default settings</h5>\n"
697 "<p>If the attribute table of your linear layer does not contain the required fields or fields contain unexpected values, the plugin will use default values. You can set them in the default tab <label>Default settings</label>.</p>\n"
699 gContextHelpTexts.insert(
"QgsPgNewConnection", QCoreApplication::translate(
"context_help",
"<h3>Create a New PostgreSQL Connection</h3>\n"
700 "This dialog allows you to define the settings for a connection to a PostgreSQL database.\n"
703 "<li> <label>Name</label> A name to identify the connection settings.\n"
705 "<li> <label>Service</label> A name of a service listed in the <a href=\"http://www.postgresql.org/docs/current/static/libpq-pgservice.html\">Connection Service File</a>.\n"
707 "<li> <label>Host</label> Name or IP address of the computer hosting the database server (leave blank for local connections or services).\n"
709 "<li> <label>Port</label> IP port used by the database server (leave blank for local connections or to use default port 5432).\n"
711 "<li> <label>Database</label> Name of the database (leave blank for default database).\n"
713 "<li> <label>SSL mode</label> <a href=\"http://www.postgresql.org/docs/9.0/static/libpq-ssl.html#LIBPQ-SSL-SSLMODE-STATEMENTS\">SSL mode</a> of the connection\n"
715 "<li> <label>Username</label> Database user name.\n"
716 "<li> <label>Password</label> Database password.\n"
718 "<li> <label>Save Username</label> Indicates whether to save the database user name in the connection configuration.\n"
720 "<li> <label>Save Password</label> Indicates whether to save the database password in the connection settings. <font color=\"red\">Passwords are saved in <strong>clear text</strong> in the system configuration and in the project files!</font>\n"
722 "<li> <label>Only look in the geometry_columns table</label> Indicates that only \"listed\" geometry columns should be used - opposed to scanning all tables for geometry columns.\n"
724 "<li> <label>Only look in the 'public' schema</label> Indicates that only tables in the 'public' schema should be considers - opposed to all accessible tables.\n"
726 "<li> <label>Also list tables with no geometry</label> Indicates that tables without geometry should also be listed by default.\n"
728 "<li> <label>Use estimated table metadata</label> When initializing layers, various queries may be needed to establish the characteristics of the geometries stored in the database table. When this option is checked, these queries examine only a sample of the rows and use the table statistics, rather than the entire table. This can drastically speed up operations on large datasets, but may result in incorrect characterization of layers (eg. the <font color=\"red\">feature count</font> of filtered layers will not be accurately determined).\n"
732 gContextHelpTexts.insert(
"PythonConsole", QCoreApplication::translate(
"context_help",
"<style>\n"
733 " #toolbarConsole td{\n"
734 " background: #f6f6f6;\n"
737 "<h3>Python Console for QGIS</h3>\n"
738 "<a href=\"#console\">Console</a><br>\n"
739 "<a href=\"#editor\">Editor</a><br>\n"
740 "<a href=\"#settings\">Settings</a><br><br>\n"
744 " <p align='justify'>\n"
745 " The QGIS Python Console is an interactive shell for the python command executions. \n"
746 " It also has a python file editor that allows you to edit and save your python scripts. \n"
747 " Both console and editor are based on PyQScintilla2 package.<br>\n"
748 " The console is split in two main panes, top and bottom one \n"
749 " resizable by using the horizontal splitter. Output area pane is a widget read-only which \n"
750 " shows the commands output. You can drag and drop or copy and paste text into input area and \n"
751 " execute code snippets from the output pane by selecting some text and clicking on the \n"
752 " <label>Enter selected</label> command from the context menu. \n"
753 " No matter if selected text contains the interpreter prompt (>>>, ...). Input area pane is the interactive \n"
754 " python shell for input commands.<br>To access to the python file editor use the \n"
755 " <label>Show editor</label> button \n"
756 " from the toolbar. The editor allows to edit and save python file and it offers basic functionality \n"
757 " for managing your code (comment and \n"
758 " uncomment code, check syntax, share the code via codepad.org and much more).\n"
763 "<a name=\"console\">\n"
766 "<b><i>Main features:</i></b>\n"
771 " <li>Code completion, highlighting syntax and calltips for the following APIs:\n"
776 " <li>QScintilla2</li>\n"
777 " <li>osgeo-gdal-ogr</li>\n"
781 " <li><label>Ctrl+Alt+Space</label> to view the auto-completion list.</li>\n"
783 " <li><label>Ctrl+Shift+Space</label> to view the command history list.</li>\n"
785 " <li>Execute code snippets with the <label>Enter selected</label> command from output pane.</li>\n"
787 " <li>Open QGIS API documentation by typing <label>_api</label>.</li>\n"
789 " <li>Open PyQGIS Cookbook by typing <label>_pyqgis</label>.</li>\n"
791 " <li>Save and clear the command history accessing from context menu of input pane. \n"
792 " The history will be saved into the file ~/.qgis2/console_history.txt</li>\n"
796 " <td><img src=\"qrc:/images/themes/default/console/consoleHelp.png\" /></td>\n"
799 "<b><i>Toolbar:</i></b>\n"
800 " <table width=\"100%\" id='toolbarConsole'>\n"
802 " <td><img src=\"qrc:/images/themes/default/console/iconClearConsole.png\" /></td>\n"
803 " <td colspan=\"2\">Clear python console</td>\n"
806 " <td><img src=\"qrc:/images/themes/default/console/iconClassConsole.png\" /></td>\n"
807 " <td><img src=\"qrc:/images/themes/default/console/iconProcessingConsole.png\" /></td>\n"
808 " <td>Import Processing class</td>\n"
812 " <td><img src=\"qrc:/images/themes/default/console/iconQtCoreConsole.png\" /></td>\n"
813 " <td>Import PyQt4.QtCore class</td>\n"
817 " <td><img src=\"qrc:/images/themes/default/console/iconQtGuiConsole.png\" /></td>\n"
818 " <td>Tool to import PyQt4.QtGui class</td>\n"
821 " <td><img src=\"qrc:/images/themes/default/console/iconRunConsole.png\" /></td>\n"
822 " <td colspan=\"2\">Run command (like Enter key pressed)</td>\n"
825 " <td><img src=\"qrc:/images/themes/default/console/iconSettingsConsole.png\" /></td>\n"
826 " <td colspan=\"2\">Settings</td>\n"
829 " <td><img src=\"qrc:/images/themes/default/console/iconHelpConsole.png\" /></td>\n"
830 " <td colspan=\"2\">Help</td>\n"
833 "<a name=\"editor\">\n"
836 "<b><i>Main features:</i></b>\n"
840 " <img src=\"qrc:/images/themes/default/console/editorHelp.png\" />\n"
841 " <img src=\"qrc:/images/themes/default/console/classBrowserHelp.png\" />\n"
845 " <li>Code completion, highlighting syntax and calltips for the following APIs:\n"
850 " <li>QScintilla2</li>\n"
851 " <li>osgeo-gdal-ogr</li>\n"
855 " <li><label>Ctrl+Space</label> to view the auto-completion list.</li>\n"
857 " <li>Sharing code snippets via codepad.org.</li>\n"
859 " <li><label>Ctrl+4</label> Syntax check.</li> \n"
861 " <li>Object inspector: a class and function browser.</li>\n"
863 " <li>Go to an object definition with a mouse click. (from Object inspector)</li>\n"
865 " <li>Execute code snippets with the <label>Enter selected</label> command.</li>\n"
867 " <li>Execute the whole script with the <label>Run script</label> command \n"
868 " (this creates a byte-compiled file with the extension .pyc)</li>\n"
874 "<a name=\"settings\">\n"
875 "<h4>Settings</h4>\n"
877 "<b><i>Further settings for python console:</i></b>\n"
879 "<li><label>Autocompletion:</label> If checked the code completion is enabled. You can get autocompletion\n"
880 "from current document, from installed APIs and both from APIs and current document</li>\n"
882 "<li><label>Autocompletion threshold:</label> Sets the threshold to display the autocompletion list (in chars typed)</li>\n"
884 "<li><label>Automatic parentheses insertion:</label> If checked enables the autoclosing for bracket</li>\n"
886 "<li><label>Auto-save script before running:</label> Allows you to save automatically the\n"
887 "script to be executed in order to avoid to save it after any modification.\n"
888 "This action will store a temporary file into the temporary system directory \n"
889 "that will be automatically deleted after running.</li>\n"
891 "<li><label>Using preloaded APIs file:</label> You can choose whether use the preload APIs file or load some APIs files saved on your system.</li>\n"
893 "<li><label>Using prepared APIs file:</label> If checked the *.pap file will be used for code completion. To generate a prepared APIs file you have to load least an *.api file and then compile it by clicking on <label>Compile Apis...</label> button.</li>\n"
895 "<p style='border: 1px solid; background:#f6f6f6;' align='justify'>\n"
896 " <b>Note:</b> To save the state of console's widgets you have to close the Python Console \n"
897 " from the close button. This allows you to save the geometry to be restored to the next start.\n"
900 gContextHelpTexts.insert(
"QgsAttributeTableDialog", QCoreApplication::translate(
"context_help",
"<h3>Attribute table</h3>\n"
901 "The attribute table displays features of a selected layer. Each row in the table represents one map feature with its attributes shown in several columns. The features in the table can be searched, selected, moved or even edited. By default the attribute table is a separate window. If you opened it and cannot see it anymore, it is most likely hidden under the main QGIS window. You can make it also a docked window, by checking <label>Open attribute table in a dock window</label> in <label>Settings > Options > General</label>.<p>\n"
903 "The number of total number of layer features, filtered features and selected features is printed on the window header.<p>\n"
905 "<a href=\"#Selecting\">Selecting</a><br/>\n"
906 "<a href=\"#Sorting\">Sorting</a><br/>\n"
907 "<a href=\"#Filtering\">Filtering</a><br/>\n"
908 "<a href=\"#Editing\">Editing</a><br/>\n"
909 "<a href=\"#FieldCalc\">Field Calculator</a><br/>\n"
911 "<a name=\"Selecting\">\n"
912 "<h4>Selecting</h4>\n"
914 "Rows can be selected by clicking on the row number on the left side of the row. Subsequent rows can be selected by holding the mouse button down and moving the mouse to the other end of the selection. Multiple non-subsequent rows can be selected by holding the <label>Ctrl</label> key.<br>\n"
915 "A continuous selection can be made by holding the <label>Shift</label> key and clicking on several row headers on the left side of the rows. All rows between the current cursor position and the clicked row are selected.\n"
917 "<a name=\"Sorting\">\n"
920 "Each column can be sorted by clicking on its column header. A small arrow indicates the sort order (downward pointing means descending values from the top row down, upward pointing means ascending values from the top row down).<br>\n"
921 "Activate the <label>Selected on top</label> button to show the selected rows always on top, regardless of the current sort column.\n"
923 "<a name=\"Filtering\">\n"
924 "<h4>Filtering</h4>\n"
926 "To only navigate through parts of your data, you can use the filter button on the bottom left. The following options are available.\n"
927 "<h5>Show All Features</h5>\n"
928 "Shows all features of the layer.\n"
929 "<h5>Show Selected Features</h5>\n"
930 "Shows all features which are currently selected.\n"
931 "<h5>Show Features Visible on Map</h5>\n"
932 "Shows all features which are currently visible on the map canvas, taking the currently visible extent and scale based visibility into account.\n"
933 "<h5>Show Edited and New Features</h5>\n"
934 "Shows only edited and new features. In this mode, features with uncommitted changes are shown and this is therefore a good filter to review changes, before committing them. Please note, that deleted features are not shown in this mode.\n"
935 "<h5>Column Filter</h5>\n"
936 "A simple filter, which lets you filter by an attribute. If the attribute contains text, it looks for sub-strings also. Searching for <b>man</b> will therefore also show records containing <b>woman</b>. After changing the filter text, press <label>Enter</label> or click on <label>Apply</label>. You can also toggle the check-box <label>Case sensitive</label>, so your filter will also match <b>Night</b> when your search text is <b>night</b>. \n"
937 "<h5>Advanced Filter</h5>\n"
938 "For more complex searches, this mode offers a powerful expression builder, which is similar to a SQL WHERE clause. Please refer to the built-in help of the expression builder for details on the syntax.\n"
940 "<a name=\"Editing\">\n"
943 "To edit values, you first have to switch the layer to editing mode. To switch to editing mode click on the <label>Toggle editing mode</label> (pencil) button or press <label>Ctrl + E</label>. Afterwards double-click on the value you want to edit or place the cursor on it and use the <label>Space</label>-Key. You can customize the widgets used for field editing in <label>Vector Layer Properties > Fields</label> \n"
945 "<a name=\"FieldCalc\">\n"
946 "<h4>Field Calculator</h4>\n"
948 "The <label>Field Calculator</label> button in the attribute table allows to perform calculations on basis of existing attribute values or defined functions, e.g. to calculate length or area of geometry features.<br>\n"
949 "The results can be written to a new attribute column or it can be used to update values in an already existing column.<br>\n"
950 "The vector layer needs to be in editing mode, before you can click on the <label>Field calculator</label> icon to open the dialog.\n"
952 gContextHelpTexts.insert(
"QgsVectorLayerSaveAsDialog", QCoreApplication::translate(
"context_help",
"<h3>Save vector layer as...</h3>\n"
954 "<p>This dialog allows you to save vector data in various formats using GDAL/OGR.\n"
957 "<li>From the <label>Format</label> list you can select the destination format (as advertised by OGR).\n"
958 "<li>At <label>Save as</label> you can enter a destination files name or select one using the <label>Browse</label> button.\n"
959 "<li>In the <label>Encoding</label> list you can define in which encoding the data should be saved.\n"
960 "<li>Using the <label>CRS</label> you can select a CRS into which the data about to be saved should be reprojected.\n"
961 "<li>OGR also has various options for the different formats it supports. Use the <label>datasource</label> creation field to set the datasource options and the <label>layer</label> creation options. Enter one options per line (e.g. <code>SPATIALITE=yes</code> in the <label>datasource</label> to create a spatialite database using the SQLite driver).\n"
964 "See <a href=\"http://gdal.org/ogr/ogr_formats.html\">OGR Vector formats</a> for a list of supported formats and the available options.\n"
966 gContextHelpTexts.insert(
"QgsQueryBuilder", QCoreApplication::translate(
"context_help",
"<h3>Query Builder</h3>\n"
967 "The query builder allows you to create provider specific filter expressions.\n"
969 "These are usually evaluated much faster than the generic QGIS expressions, but\n"
970 "are sometimes limited (e.g. for shape files) or behave diffently.\n"
972 "<h4>Providers</h4>\n"
976 " <th>Provider</th>\n"
977 " <th>Documentation</th>\n"
981 " <td>where clauses depending on the\n"
982 " <a href=\"http://www.gdal.org/ogr/ogr_formats.html\">format</a> (eg.\n"
983 " <a href=\"http://www.gdal.org/ogr/ogr_sql.html\">OGR SQL</a>\n"
984 " for shape files)\n"
988 " <td>PostgreSQL/PostGIS</td>\n"
989 " <td>where clauses using\n"
990 " <a href=\"http://www.postgresql.org/docs/\">PostgreSQL</a> and\n"
991 " <a href=\"http://postgis.net/documentation\">PostGIS</a> \n"
995 " <td>SpatiaLite</td>\n"
996 " <td>where clauses using\n"
997 " <a href=\"http://www.sqlite.org/lang_select.html\">SQLite</a> and\n"
998 " <a href=\"http://www.gaia-gis.it/gaia-sins/spatialite-sql-4.1.0.html\">SpatiaLite</a>\n"
1002 " <td>Oracle Spatial/Locator</td>\n"
1003 " <td>where clauses using\n"
1004 " <a href=\"http://docs.oracle.com/cd/B28359_01/appdev.111/b28400/sdo_index_query.htm#autoId9\">Oracle Spatial/Locator</a>\n"
1008 " <td colspan=2>...</td>\n"
1012 gContextHelpTexts.insert(
"QgsDecorationScaleBarDialog", QCoreApplication::translate(
"context_help",
"<h3>Scale bar Plugin</h3>\n"
1013 "Draws a scale bar on the map.\n"
1015 "You can control the style and placement, as well as the labeling of the bar.\n"
1016 "QGIS only supports displaying the scale in the same units as your map frame. So\n"
1017 "if the units of your layers are in meters, you can't create a scale bar in\n"
1018 "feet. Likewise if you are using decimal degrees, you can't create a scale bar\n"
1019 "to display distance in meters.</p> <p>\n"
1020 "To add a scale bar:\n"
1022 "<li>Choose the placement from the <label>Placement</label> drop-down list.</li>\n"
1023 "<li>Choose the style from the <label>Scale bar style</label> list.</li>\n"
1024 "<li>Select the color for the bar <label>Color of bar</label> or use the default black color.</li>\n"
1025 "<li>Set the size of the bar and its label <label>Size of bar</label>. </li>\n"
1026 "<li>Make sure the <label>Enable scale bar</label> checkbox is checked.</li>\n"
1027 "<li>Optionally choose to automatically snap to a round number when the canvas is resized <label>Automatically snap to round number on resize</label>.</li>\n"
1028 "<li>Click <label>OK</label>.</li>\n"
1031 gContextHelpTexts.insert(
"QgsOpenVectorLayerDialog", QCoreApplication::translate(
"context_help",
"<h3>Open Vector Layer Dialog</h3>\n"
1033 "The open vector layer dialog is used to add vector data to the QGIS map view. Vector data are spatial data described using geometries of points, lines and polygons (enclosed areas).</p>\n"
1034 "QGIS supports vector data in a number of formats, including those supported by the OGR library data provider plugin, such as ESRI shape files, MapInfo MIF (interchange format) and MapInfo TAB (native format).</p>\n"
1035 "QGIS supports PostGIS layers in a PostgreSQL database and SpatiaLite layers. Support for additional data types (eg. delimited text) is provided by additional data provider plugins. A list of OGR supported vector formats can be found in Appendix A.1 of the User Guide.</p>\n"
1036 "Detailed description how to proceed with vector data is described in chapter 5 'Working with Vector Data'.\n"
1038 gContextHelpTexts.insert(
"QgsStyleV2ManagerDialog", QCoreApplication::translate(
"context_help",
"<h3>Style Manager</h3>\n"
1040 gContextHelpTexts.insert(
"QgsGPSPluginGui", QCoreApplication::translate(
"context_help",
"<h3>GPS Plugin</h3>\n"
1043 gContextHelpTexts.insert(
"RgShortestPathWidget", QCoreApplication::translate(
"context_help",
"<h3>Finding shortest path</h3>\n"
1044 "<p>Road graph is a C++ plugin for QGIS, that calculates the shortest path between two points on any line layer and plots this path over the road network. Before using the plugin to configure it. This can be done in the menu <label>Plugins → Road graph → Settings</label></p>\n"
1046 "<a href=\"#howto\">How to</a><br/>\n"
1049 "<a name=\"howto\">\n"
1052 "<p>You can select start and end points with the select buttons next to the fields.\n"
1053 "Pressing the <label>Calculate</label> button will run the shortest path calculation using the optimization criterion selected in the <label>Criterion</label> combobox. The <label>Export</label> button allow you to export a calculated path to a new vector layer, and the button <label>Clear</label> will erase all fields and remove the points and calculated path from map canvas.</p>\n"
1056 "<p>In order to bind the start and stop points of the route to the road network Road graph selects the nearest point or arc of the graph. In fact it can bind to any part of the road network. Nevertheless, their route and its characteristics do not take into account the distance from the starting point to the road network and of the road network to the stopping point.</p>\n"
1058 gContextHelpTexts.insert(
"QgsFieldCalculator", QCoreApplication::translate(
"context_help",
"<h3>Field Calculator</h3>\n"
1059 "The field calculator allows you to update fields with expressions.\n"
1061 "<h4>Supported Operations</h4>\n"
1063 "<table border=1>\n"
1065 " <th>Operation</th>\n"
1066 " <th>Description</th>\n"
1070 " <tt>column_name</tt><br>\n"
1071 " <tt>\"column_name\"</tt>\n"
1073 " <td>value of field <tt>column_name</tt></td>\n"
1075 "<tr><td>'<tt>string</tt>'</td><td>literal string value</td></tr>\n"
1076 "<tr><td><tt>number</tt></td><td>number</td></tr>\n"
1077 "<tr><td>NULL</td><td>null value</td></tr>\n"
1078 "<tr><td>exp(<tt>a</tt>)</td><td>Euler's number e to the power of <tt>a</tt></td></tr>\n"
1079 "<tr><td>ln(<tt>a</tt>)</td><td>natural log (i.e. base e) of <tt>a</tt></td></tr>\n"
1080 "<tr><td>log10(<tt>a</tt>)</td><td>log base 10 of <tt>a</tt></td></tr>\n"
1081 "<tr><td>log(<tt>a</tt>,<tt>b</tt>)</td><td>log base <tt>b</tt> of <tt>a</tt></td></tr>\n"
1082 "<tr><td>sqrt(<tt>a</tt>)</td><td>square root</td></tr>\n"
1083 "<tr><td>sin(<tt>a</tt>)</td><td>sine of <tt>a</tt></td></tr>\n"
1084 "<tr><td>cos(<tt>a</tt>)</td><td>cosine of <tt>b</tt></td></tr>\n"
1085 "<tr><td>tan(<tt>a</tt>)</td><td>tangent of <tt>a</tt></td></tr>\n"
1086 "<tr><td>asin(<tt>a</tt>)</td><td>inverse sine of <tt>a</tt></td></tr>\n"
1087 "<tr><td>acos(<tt>a</tt>)</td><td>inverse cosine of <tt>a</tt></td></tr>\n"
1088 "<tr><td>atan(<tt>a</tt>)</td><td>inverse tangent of <tt>a</tt></td></tr>\n"
1089 "<tr><td>to int(<tt>a</tt>)</td><td>convert string <tt>a</tt> to integer</td></tr>\n"
1090 "<tr><td>to real(<tt>a</tt>)</td><td>convert string <tt>a</tt> to real</td></tr>\n"
1091 "<tr><td>to string(<tt>a</tt>)</td><td>convert number <tt>a</tt> to string</td></tr>\n"
1092 "<tr><td>lower(<tt>a</tt>)</td><td>convert string <tt>a</tt> to lower case</td></tr>\n"
1093 "<tr><td>upper(<tt>a</tt>)</td><td>convert string <tt>a</tt> to upper case</td></tr>\n"
1094 "<tr><td>length(<tt>a</tt>)</td><td>length of string <tt>a</tt></td></tr>\n"
1095 "<tr><td>atan2(<tt>y</tt>,<tt>x</tt>)</td><td>inverse tangent of <tt>y</tt>/<tt>x</tt> using the signs of the two arguments to determine the quadrant of the result.</td></tr>\n"
1096 "<tr><td>replace(<tt>a</tt>,<tt>replacethis</tt>,<tt>withthat</tt>)</td><td>replace <tt>replacethis</tt> with <tt>withthat</tt> in string <tt>a</tt></td></td>\n"
1097 "<tr><td>regexp_replace(<tt>a</tt>,<tt>replacethis</tt>,<tt>withthat</tt>)</td><td>replace the regular expression <tt>replacethis</tt> with <tt>withthat</tt> in string <tt>a</tt></td></td>\n"
1098 "<tr><td>substr(<tt>a</tt>,<tt>from</tt>,<tt>len</tt>)</td><td><tt>len</tt> characters of string <tt>a</tt> starting from <tt>from</tt> (first character index is 1)</td></td>\n"
1099 "<tr><td><tt>a</tt> || <tt>b</tt></td><td>concatenate strings <tt>a</tt> and <tt>b</tt></td></tr>\n"
1100 "<tr><td>$rownum</td><td>number current row</td></tr>\n"
1101 "<tr><td>$area</td><td>area of polygon</td></tr>\n"
1102 "<tr><td>$perimeter</td><td>perimeter of polygon</td></tr>\n"
1103 "<tr><td>$length</td><td>area of line</td></tr>\n"
1104 "<tr><td>$id</td><td>feature id</td></tr>\n"
1105 "<tr><td>$x</td><td>x coordinate of point</td></tr>\n"
1106 "<tr><td>$y</td><td>y coordinate of point</td></tr>\n"
1107 "<tr><td>xat(<tt>n</tt>)</td><td>x coordinate of <tt>n</tt>th point of a line (indices start at 0; negative values apply to the last index)</td></tr>\n"
1108 "<tr><td>yat(<tt>n</tt>)</td><td>y coordinate of <tt>n</tt>th point of a line (indices start at 0; negative values apply to the last index)</td></tr>\n"
1109 "<tr><td><tt>a</tt> ^ <tt>b</tt></td><td><tt>a</tt> raised to the power of <tt>b</tt></td></tr>\n"
1110 "<tr><td><tt>a</tt> * <tt>b</tt></td><td><tt>a</tt> multiplied by <tt>b</tt></td></tr>\n"
1111 "<tr><td><tt>a</tt> / <tt>b</tt></td><td><tt>a</tt> divided by <tt>b</tt></td></tr>\n"
1112 "<tr><td><tt>a</tt> + <tt>b</tt></td><td><tt>a</tt> plus <tt>b</tt></td></tr>\n"
1113 "<tr><td><tt>a</tt> - <tt>b</tt></td><td><tt>a</tt> minus <tt>b</tt></td></tr>\n"
1114 "<tr><td>+<tt>a</tt></td><td>positive sign</td></tr>\n"
1115 "<tr><td>-<tt>a</tt></td><td>negative value of <tt>a</tt></td></tr>\n"
1118 gContextHelpTexts.insert(
"QgsPgSourceSelect", QCoreApplication::translate(
"context_help",
"<h3>Add PostGIS Tables</h3>\n"
1119 "This dialog allows you to add PostGIS layers (tables with a geometry column) to the QGIS map canvas.\n"
1121 "<a href=\"#connect\">Connections</a><br/>\n"
1122 "<a href=\"#add\">Adding Layers</a><br/>\n"
1123 "<a href=\"#filter\">Filtering a Layer</a><br/>\n"
1124 "<a href=\"#search\">Search options</a><br/>\n"
1126 "<a href=\"#connect\">\n"
1127 "<h4>Connections</h4>\n"
1130 "<li>Choose the connection to use from the drop-down box and click <label>Connect</label>.\n"
1131 "<li>If there are no connections, use the <label>New</label> button to create a connection.\n"
1132 "<li>To modify a connection, click the <label>Edit</label> button.\n"
1134 "<a name=\"add\">\n"
1135 "<h4>Adding Layers</h4>\n"
1139 "<li>Choose the desired connection from the drop-down box.\n"
1140 "<li>Click <label>Connect</label>.\n"
1141 "<li>Find the layer you want to add in the list and click on it to select it.\n"
1142 "<li>You can select additional layers by holding down the Ctrl key and clicking.\n"
1143 "<li>Click <label>Add</label> to add the layer(s) to the map.\n"
1145 "<a name=\"filter\">\n"
1146 "<h4>Filtering a Layer</h4>\n"
1148 "To filter a layer before adding it to the map, double click on its name or use <label>Build query</label> button. This will open the Query Builder, allowing you to build up a SQL statement to use in filtering the records.\n"
1150 "<a name=\"search\">\n"
1151 "<h4>Search options</h4>\n"
1153 "Ticking <label>Search options</label> enables additional options for searching in different column types and using 2 search modes: <label>Wildcard</label> or <label>RegExp</label>.\n"
1155 gContextHelpTexts.insert(
"SaSourceSelect", QCoreApplication::translate(
"context_help",
"<h3>Add SQL Anywhere Tables</h3>\n"
1156 "This dialog allows you to add SQL Anywhere layers (tables with a geometry column) to the QGIS map canvas.\n"
1158 "<a href=\"#connect\">Connections</a><br/>\n"
1159 "<a href=\"#add\">Adding Layers</a><br/>\n"
1160 "<a href=\"#filter\">Filtering a Layer</a><br/>\n"
1161 "<a href=\"#search\">Search options</a><br/>\n"
1163 "<a href=\"#connect\">\n"
1164 "<h4>Connections</h4>\n"
1167 "<li>Choose the connection to use from the drop-down box and click <label>Connect</label>.\n"
1168 "<li>If there are no connections, use the <label>New</label> button to create a connection.\n"
1169 "<li>To modify or delete the selected connection, click the <label>Edit</label> or <label>Delete</label> buttons, respectively.\n"
1171 "<a name=\"add\">\n"
1172 "<h4>Adding Layers</h4>\n"
1176 "<li>Choose the desired connection from the drop-down box.\n"
1177 "<li>Click <label>Connect</label>, which will populate the list of layers from the database. Options that affect how this list is populated are described in the help for the new connection dialogue box.\n"
1179 "<li>Find the layer you want to add in the list and click on it to select it.\n"
1180 "<li>You can select additional layers by holding down the Ctrl key and clicking.\n"
1181 "<li>Click <label>Add</label> to add the layer(s) to the map.\n"
1183 "<a name=\"filter\">\n"
1184 "<h4>Filtering a Layer</h4>\n"
1186 "To filter a layer before adding it to the map, either double click on its name or select it and click the <label>Build query</label> button. This will open the Query Builder, allowing you to build up a SQL statement to use in filtering the records.\n"
1188 "<a name=\"search\">\n"
1189 "<h4>Search options</h4>\n"
1191 "Ticking <label>Search options</label> enables additional options for searching in different column types and using 2 search modes: <label>Wildcard</label> or <label>RegExp</label>.\n"
1193 gContextHelpTexts.insert(
"eVisDatabaseConnectionGui", QCoreApplication::translate(
"context_help",
"<h3>Database connection</h3>\n"
1195 gContextHelpTexts.insert(
"QgsSpatiaLiteSourceSelect", QCoreApplication::translate(
"context_help",
"<h3>Add SpatiaLite Tables</h3>\n"
1196 "To define a new connection, click on <label>New</label> button and use the file browser to point to your SpatiaLite database, which is a file with a <i>.sqlite</i> extension.<p>\n"
1197 "The connections you define will be remembered for further use and available to choose from the drop down menu.\n"
1199 gContextHelpTexts.insert(
"QgsDelimitedTextSourceSelect", QCoreApplication::translate(
"context_help",
"<h3>Delimited Text File Layer</h3>\n"
1200 "Loads and displays delimited text files\n"
1202 "<a href=\"#re\">Overview</a><br/>\n"
1203 "<a href=\"#creating\">Creating a delimited text layer</a><br/>\n"
1204 "<a href=\"#csv\">How the delimiter, quote, and escape characters work</a><br />\n"
1205 "<a href=\"#regexp\">How regular expression delimiters work</a><br />\n"
1206 "<a href=\"#wkt\">How WKT text is interpreted</a><br />\n"
1207 "<a href=\"#attributes\">Attributes in delimited text files</a><br />\n"
1208 "<a href=\"#example\">Example of a text file with X,Y point coordinates</a><br/>\n"
1209 "<a href=\"#wkt_example\">Example of a text file with WKT geometries</a><br/>\n"
1210 "<a href=\"#python\">Using delimited text layers in Python</a><br/>\n"
1213 "<h4><a name=\"re\">Overview</a></h4>\n"
1214 "<p>A "delimited text file" contains data in which each record starts on a new line, and \n"
1215 "is split into fields by a delimiter such as a comma. \n"
1216 "This type of file is commonly exported from spreadsheets (for example CSV files) or databases. \n"
1217 "Typically the first line of a delimited text file contains the names of the fields. \n"
1220 "Delimited text files can be loaded into QGIS as a layer. \n"
1221 "The records can be displayed spatially either as a point\n"
1222 "defined by X and Y coordinates, or using a Well Known Text (WKT) definition of a geometry which may\n"
1223 "describe points, lines, and polygons of arbitrary complexity. The file can also be loaded as an attribute\n"
1224 "only table, which can then be joined to other tables in QGIS.\n"
1227 "In addition to the geometry definition the file can contain text, integer, and real number fields. By default \n"
1228 "QGIS will choose the type of field based on its the non blank values of the field. If all can be interpreted\n"
1229 "as integer then the type will be integer, if all can be interpreted as real numbers then the type will\n"
1230 "be double, otherwise the type will be text.\n"
1233 "QGIS can also read the types from an OGR CSV driver compatible "csvt" file. \n"
1234 "This is a file alongside the data file, but with a "t" appended to the file name. \n"
1235 "The file should just contain one linewhich lists the type of each field. \n"
1236 "Valid types are "integer", "real", "string", "date", "time", and "datetime". The date, time, and datetime types are treated as strings in QGIS.\n"
1237 "Each type may be followed by a width and precision, for example "real(10.4)".\n"
1238 "The list of types are separated by commas, regardless of the delimiter used in the data file. An\n"
1239 "example of a valid format file would be:\n"
1243 ""integer","string","string(20)","real(20.4)"\n"
1246 "<h4><a name=\"creating\">Creating a delimited text layer</a></h4>\n"
1247 "<p>Creating a delimited text layer involves choosing the data file, defining the format (how each record is to\n"
1248 "be split into fields), and defining the geometry is represented. \n"
1249 "This is managed with the delimited text dialog as detailed below. \n"
1250 "The dialog box displays a sample from the beginning of the file which shows how the format\n"
1251 "options have been applied.\n"
1253 "<h5>Choosing the data file</h5>\n"
1254 "<p>Use the "Browse..." button to select the data file. Once the file is selected the\n"
1255 "layer name will automatically be populated based on the file name. The layer name is used to represent\n"
1256 "the data in the QGIS legend. \n"
1259 "By default files are assumed to be encoded as UTF-8. However other file\n"
1260 "encodings can be selected. For example "System" uses the default encoding for the operating system. \n"
1261 "It is safer to use an explicit coding if the QGIS project needs to be portable.\n"
1263 "<h5>Specifying the file format</h5>\n"
1264 "<p>The file format can be one of\n"
1266 " <li>CSV file format. This is a format commonly used by spreadsheets, in which fields are delimited\n"
1267 " by a comma character, and quoted using a "(quote) character. Within quoted fields, a quote\n"
1268 " mark is entered as "".</li>\n"
1269 " <li>Selected delimiters. Each record is split into fields using one or more delimiter character.\n"
1270 " Quote characters are used for fields which may contain delimiters. Escape characters may be used \n"
1271 " to treat the following character as a normal character (ie to include delimiter, quote, and \n"
1272 " new line characters in text fields). The use of delimiter, quote, and escape characters is detailed <a href=\"#csv\">below</a>.\n"
1273 " <li>Regular expression. Each line is split into fields using a "regular expression" delimiter.\n"
1274 " The use of regular expressions is details <a href=\"#regexp\">below</a>.\n"
1276 "<h5>Record and field options</h5>\n"
1277 "<p>The following options affect the selection of records and fields from the data file</p>\n"
1279 " <li>Number of header lines to discard: used to ignore header lines at the beginning of the text file</li>\n"
1280 " <li>First record has fields names: if selected then the first record in the file (after the discarded lines) is interpreted as names of fields, rather than as a data record.</li>\n"
1281 " <li>Trim fields: if selected then leading and trailing whitespace characters will be removed from each field (except quoted fields). </li>\n"
1282 " <li>Discard empty fields: if selected then empty fields (after trimming) will be discard. This \n"
1283 " affects the alignment of data into fields and is equivalent to treating consecutive delimiters as a \n"
1284 " single delimiter. Quoted fields are never discarded.</li>\n"
1285 " <li>Decimal separator is comma: if selected then commas instead of points are used as the decimal separator in real numbers. For\n"
1286 " example <tt>-51,354</tt> is equivalent to -51.354.\n"
1289 "<h5>Geometry definition</h5>\n"
1290 "<p>The geometry is can be define as one of</p>\n"
1292 " <li>Point coordinates: each feature is represented as a point defined by X and Y coordinates.</li>\n"
1293 " <li>Well known text (WKT) geometry: each feature is represented as a well known text string, for example\n"
1294 " <tt>POINT(1.525622 51.20836)</tt>. See details of the <a href=\"#wkt\">well known text</a> format.\n"
1295 " <li>No geometry (attribute only table): records will not be displayed on the map, but can be viewed\n"
1296 " in the attribute table and joined to other layers in QGIS</li>\n"
1298 "<p>For point coordinates the following options apply:</p>\n"
1300 " <li>X field: specifies the field containing the X coordinate</li>\n"
1301 " <li>Y field: specifies the field containing the Y coordinate</li>\n"
1302 " <li>DMS angles: if selected coordinates are represented as degrees/minutes/seconds\n"
1303 " or degrees/minutes. QGIS is quite permissive in its interpretation of degrees/minutes/seconds.\n"
1304 " A valid DMS coordinate will contain three numeric fields with an optional hemisphere prefix or suffix\n"
1305 " (N, E, or + are positive, S, W, or - are negative). Additional non numeric characters are \n"
1306 " generally discarded. For example <tt>N41d54'01.54"</tt> is a valid coordinate.\n"
1309 "<p>For well known text geometry the following options apply:</p>\n"
1311 " <li>Geometry field: the field containing the well known text definition.</li>\n"
1312 " <li>Geometry type: one of "Detect" (detect), "Point", "Line", or "Polygon".\n"
1313 " QGIS layers can only display one type of geometry feature (point, line, or polygon). This option selects\n"
1314 " which geometry type is displayed in text files containing multiple geometry types. Records containing\n"
1315 " other geometry types are discarded. \n"
1316 " If "Detect" is selected then the type of the first geometry in the file will be used.\n"
1317 " "Point" includes POINT and MULTIPOINT WKT types, "Line" includes LINESTRING and\n"
1318 " MULTLINESTRING WKT types, and "Polygon" includes POLYGON and MULTIPOLYGON WKT types.\n"
1320 "<h5>Layer settings</h5>\n"
1321 "<p>Layer settings control the way the layer is managed in QGIS. The options available are:</p>\n"
1323 "<li>Use spatial index. Create a spatial index to improve the performance of displaying and selecting spatial objects.\n"
1324 "This option may be useful for files larger than a few megabytes in size.</li>\n"
1325 "<li>Use subset index. Create an index if a subset of records is being used (either by explicitly setting a subset string \n"
1326 "from the layer properties dialog, or an implicit subset of features for which the geometry is valid in files\n"
1327 "for which all not geometries are valid). The index will only be created when a subset is defined.</li>\n"
1328 "<li>Watch file. If this options is selected QGIS will watch the file for changes by other applications, and \n"
1329 "reload the file when it is changed. The map will not be updated until refreshed by the user, but indexes and\n"
1330 "extents will be reloaded. This option should be selected if indexes are used and it is likely that another\n"
1331 "application will change the file. </li>\n"
1334 "<h4><a name=\"csv\">How the delimiter, quote, and escape characters work</a></h4>\n"
1335 "<p>Records are split into fields using three character sets: \n"
1336 "delimiter characters, quote characters, and escape characters. \n"
1337 "Other characters in the record are considered as data, split into\n"
1338 "fields by delimiter characters. \n"
1339 "Quote characters occur in pairs and cause the text between them to be treated as a data. Escape characters cause the character following them to be treated as data. \n"
1342 "Quote and escape characters cannot be the same as delimiter characters - they\n"
1343 "will be ignored if they are. Escape characters can be the same as quote characters, but behave differently\n"
1344 "if they are.</p>\n"
1345 "<p>The delimiter characters are used to mark the end of each field. If more than one delimiter character\n"
1346 "is defined then any one of the characters can mark the end of a field. The quote and escape characters \n"
1347 "can override the delimiter character, so that it is treated as a normal data character.</p>\n"
1348 "<p>Quote characters may be used to mark the beginning and end of quoted fields. Quoted fields can \n"
1349 "contain delimiters and may span multiple lines in the text file. If a field is quoted then it must\n"
1350 "start and end with the same quote character. Quote characters cannot occur within a field unless they\n"
1351 "are escaped.</p>\n"
1352 "<p>Escape characters which are not quote characters force the following character to be treated as data. \n"
1353 "(that is, to stop it being treated as a new line, delimiter, or quote character). \n"
1355 "<p>Escape characters that are also quote characters have much more limited effect. They only apply within quotes and only escape themselves. For example, if \n"
1356 "<tt>'</tt> is a quote and escape character, then the string\n"
1357 "<tt>'Smith''s Creek'</tt> will represent the value Smith's Creek.\n"
1361 "<h4><a name=\"regexp\">How regular expression delimiters work</a></h4>\n"
1362 "<p>Regular expressions are mini-language used to represent character patterns. There are many variations\n"
1363 "of regular expression syntax - QGIS uses the syntax provided by the <a href=\"http://qt-project.org/doc/qt-4.8/qregexp.html\">QRegExp</a> class of the <a href=\"http://qt.digia.com\">Qt</a> framework.</p>\n"
1364 "<p>In a regular expression delimited file each line is treated as a record. Each match of the regular expression in the line is treated as the end of a field. \n"
1365 "If the regular expression contains capture groups (eg <tt>(cat|dog)</tt>)\n"
1366 " then these are extracted as fields. \n"
1367 " If this is not desired then use non-capturing groups (eg <tt>(?:cat|dog)</tt>).\n"
1369 "<p>The regular expression is treated differently if it is anchored to the start of the line (that is, the pattern starts with <tt>^</tt>).\n"
1370 "In this case the regular expression is matched against each line. If the line does not match it is discarded\n"
1371 "as an invalid record. Each capture group in the expression is treated as a field. The regular expression\n"
1372 "is invalid if it does not have capture groups. As an example this can be used as a (somewhat \n"
1373 "unintuitive) means of loading data with fixed width fields. For example the \n"
1376 "^(.{5})(.{10})(.{20})(.{20})\n"
1378 "<p>will extract four fields of widths 5, 10, 20, and 20 characters from each line. \n"
1379 "Lines less than 55 characters long will be discarded.\n"
1383 "<h4><a name=\"wkt\">How WKT text is interpreted</a></h4>\n"
1385 "The delimited text layer recognizes the following \n"
1386 "<a href=\"http://en.wikipedia.org/wiki/Well-known_text\">well known text</a> types - \n"
1387 "<tt>POINT</tt>, <tt>MULTIPOINT</tt>, <tt>LINESTRING</tt>, <tt>MULTILINESTRING</tt>, <tt>POLYGON</tt>, and <tt>MULTIPOLYGON</tt>. \n"
1388 "It will accept geometries with\n"
1389 "a Z coordinate (eg <tt>POINT Z</tt>), a measure (<tt>POINT M</tt>), or both (<tt>POINT ZM</tt>).\n"
1392 "It can also handle the PostGIS EWKT variation, in which the geometry is preceded by an spatial reference \n"
1393 "system id (eg <tt>SRID=4326;POINT(175.3 41.2)</tt>), and a variant used by Informix in which the WKT is \n"
1394 "preceded by an integer spatial reference id (eg <tt>1 POINT(175.3 41.2)</tt>).\n"
1395 "In both cases the SRID is ignored.\n"
1400 "<h4><a name=\"attributes\">Attributes in delimited text files</a></h4> \n"
1401 "<p>Each record in the delimited text file is split into fields representing\n"
1402 "attributes of the record. Usually the attribute names are taken from the first\n"
1403 "data record in the file. However if this does not contain attribute names, then they will be named <tt>field_1</tt>, <tt>field_2</tt>, and so on. \n"
1404 "Also if records have more fields than are defined in the header record then these\n"
1405 "will be named <tt>field_#</tt>, where # is the field number (note that empty fields at the end of a record are ignored).\n"
1406 "QGIS may override \n"
1407 "the names in the text file if they are numbers, or have names like <tt>field_#</tt>,\n"
1408 "or are duplicated.\n"
1411 "In addition to the attributes explicitly in the data file QGIS assigns a unique \n"
1412 "feature id to each record which is the line number in the source file on which\n"
1413 "the record starts. \n"
1416 "Each attribute also has a data type, one of string (text), integer, or real number.\n"
1417 "The data type is inferred from the content of the fields - if every non blank value\n"
1418 "is a valid integer then the type is integer, otherwise if it is a valid real\n"
1419 "number then the type is real, otherwise the type is string. Note that this is\n"
1420 "based on the content of the fields - quoting fields does not change the way they\n"
1421 "are interpreted.\n"
1425 "<h4><a name=\"example\">Example of a text file with X,Y point coordinates</a></h4> \n"
1428 "-300120;7689960;13\n"
1429 "-654360;7562040;52\n"
1432 "<p>This file:</p>\n"
1434 "<li> Uses <b>;</b> as delimiter. Any character can be used to delimit the fields.</li>\n"
1435 "<li>The first row is the header row. It contains the field names X, Y and ELEV.</li>\n"
1436 "<li>The x coordinates are contained in the X field.</li>\n"
1437 "<li>The y coordinates are contained in the Y field.</li>\n"
1439 "<h4><a name=\"wkt_example\">Example of a text file with WKT geometries</a></h4>\n"
1442 "1|POINT(172.0702250 -43.6031036)\n"
1443 "2|POINT(172.0702250 -43.6031036)\n"
1444 "3|POINT(172.1543206 -43.5731302)\n"
1445 "4|POINT(171.9282585 -43.5493308)\n"
1446 "5|POINT(171.8827359 -43.5875983)\n"
1448 "<p>This file:</p>\n"
1450 " <li>Has two fields defined in the header row: id and wkt.\n"
1451 " <li>Uses <b>|</b> as a delimiter.</li>\n"
1452 " <li>Specifies each point using the WKT notation\n"
1455 "<h4><a name=\"python\">Using delimited text layers in Python</a></h4>\n"
1456 "<p>Delimited text data sources can be creating from Python in a similar way to other vector layers.\n"
1460 "from PyQt4.QtCore import QUrl, QString\n"
1461 "from qgis.core import QgsVectorLayer, QgsMapLayerRegistry\n"
1463 "# Define the data source\n"
1464 "filename=\"test.csv\"\n"
1465 "uri=QUrl.fromLocalFile(filename)\n"
1466 "uri.addQueryItem(\"type\",\"csv\")\n"
1467 "uri.addQueryItem(\"delimiter\",\"|\")\n"
1468 "uri.addQueryItem(\"wktField\",\"wkt\")\n"
1469 "# ... other delimited text parameters\n"
1470 "layer=QgsVectorLayer(QString(uri.toEncoded()),\"Test CSV layer\",\"delimitedtext\")\n"
1471 "# Add the layer to the map\n"
1472 "if layer.isValid():\n"
1473 " QgsMapLayerRegistry.instance().addMapLayer( layer )\n"
1475 "<p>This could be used to load the second example file above.</p>\n"
1476 "<p>The configuration of the delimited text layer is defined by adding query items to the uri.\n"
1477 "The following options can be added\n"
1480 " <li><tt>encoding=..</tt> defines the file encoding. The default is "UTF-8"</li>\n"
1481 " <li><tt>type=(csv|regexp|whitespace)</tt> defines the delimiter type. Valid values are csv, \n"
1482 " regexp, and whitespace (which is just a special case of regexp). The default is csv.</li>\n"
1483 " <li><tt>delimiter=...</tt> defines the delimiters that will be used for csv formatted files, \n"
1484 " or the regular expression for regexp formatted files. The default is , for CSV files. There is\n"
1485 " no default for regexp files.</li>\n"
1486 " <li><tt>quote=..</tt> (for csv files) defines the characters used to quote fields. The default is "</li>\n"
1487 " <li><tt>escape=..</tt> (for csv files) defines the characters used to escape the special meaning of the next character. The default is "</li>\n"
1488 " <li><tt>skipLines=#</tt> defines the number of lines to discard from the beginning of the file. The default is 0.</li>\n"
1489 " <li><tt>useHeader=(yes|no)</tt> defines whether the first data record contains the names of the data fields. The default is yes.</li>\n"
1490 " <li><tt>trimFields=(yes|no)</tt> defines whether leading and trailing whitespace is to be removed from unquoted fields. The default is no.</li>\n"
1491 " <li><tt>maxFields=#</tt> defines the maximum number of fields that will be loaded from the file. \n"
1492 " Additional fields in each record will be discarded. The default is 0 - include all fields.\n"
1493 " (This option is not available from the delimited text layer dialog box).</li>\n"
1494 " <li><tt>skipEmptyFields=(yes|no)</tt> defines whether empty unquoted fields will be discarded (applied after trimFields). The default is no.</li>\n"
1495 " <li><tt>decimalPoint=.</tt> specifies an alternative character that may be used as a decimal point in numeric fields. The default is a point (full stop) character.</li>\n"
1496 " <li><tt>wktField=fieldname</tt> specifies the name or number (starting at 1) of the field containing a well known text geometry definition</li>\n"
1497 " <li><tt>xField=fieldname</tt> specifies the name or number (starting at 1) of the field the X coordinate (only applies if wktField is not defined)</li>\n"
1498 " <li><tt>yField=fieldname</tt> specifies the name or number (starting at 1) of the field the Y coordinate (only applies if wktField is not defined)</li>\n"
1499 " <li><tt>geomType=(auto|point|line|polygon|none)</tt> specifies type of geometry for wkt fields, or none to load the file as an attribute-only table. The default is auto.</li>\n"
1500 " <li><tt>subset=expression</tt> specifies an expression used to identify a subset of the records that will be \n"
1502 " <li><tt>crs=...</tt> specifies the coordinate system to use for the vector layer, in a format accepted by QgsCoordinateReferenceSystem.createFromString (for example "EPSG:4167"). If this is not \n"
1503 " specified then a dialog box may request this information from the user\n"
1504 " when the layer is loaded (depending on QGIS CRS settings).</li>\n"
1505 " <li><tt>subsetIndex=(yes|no)</tt> specifies whether the provider should build an index to define subset during the initial file scan. The index will apply both for explicitly defined subsets, and for the implicit subset of features for which the geometry definition is valid. By default the subset index is built if it is applicable.</li>\n"
1506 " <li><tt>spatialIndex=(yes|no)</tt> specifies whether the provider should build a spatial index during the initial file scan. By default the spatial index is not built. </li>\n"
1507 " <li><tt>watchFile=(yes|no)</tt> specifies whether the provider should use a file system watcher to monitor for changes to the file.</li>\n"
1508 " <li><tt>quiet=(yes|no)</tt> specifies whether errors encountered loading the layer are presented in a dialog box (they will be written to the QGIS log in any case). The default is no. This option is not available from the GUI</li>\n"