remove standalone browser

This commit is contained in:
Juergen E. Fischer 2017-02-20 11:27:29 +01:00
parent 4505ba7a01
commit 74df8754f9
44 changed files with 6 additions and 1404 deletions

View File

@ -762,7 +762,7 @@ ENDIF (APPLE)
# manual page - makes sense only on unix systems
IF (UNIX AND NOT APPLE)
INSTALL (FILES qgis.1 qbrowser.1 DESTINATION ${QGIS_MANUAL_DIR}/man1)
INSTALL (FILES qgis.1 DESTINATION ${QGIS_MANUAL_DIR}/man1)
ENDIF (UNIX AND NOT APPLE)
INSTALL(FILES cmake/FindQGIS.cmake DESTINATION ${QGIS_DATA_DIR})

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 432 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 690 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

View File

@ -1,56 +0,0 @@
[Desktop Entry]
Type=Application
Name=QGIS Browser
Version=1.0
GenericName=Geographic Information System
GenericName[ar]=نظام المعلومات الجغرافي
GenericName[az]=Coğrafi informasiya sistemi
GenericName[bg]=Географска информационна система
GenericName[bs]=Geografski informacioni sistem
GenericName[ca]=Sistema d'informació geogràfica
GenericName[cs]=Geografický Informační Systém
GenericName[de]=Geographisches Informationssystem
GenericName[el]=Σύστημα Γεωγραφικών Πληροφοριών
GenericName[es]=Sistema de Información Geográfica
GenericName[et]=Geoinfosüsteem
GenericName[eu]=Geografia-informazioko sistemen
GenericName[fa]=سامانه اطلاعات مکانی
GenericName[fi]=Maantieteellinen Tietojärjestelmä
GenericName[fr]=Système d'Information Géographique
GenericName[gl]=Sistema de información xeográfica
GenericName[he]=מערכת מידע גאוגרפית
GenericName[hi]=__
GenericName[hr]=Geografski informacijski sustav
GenericName[hu]=Földrajzi információs rendszer
GenericName[hy]=Աշխարհագրական տեղեկատվական համակարգ
GenericName[id]=Sistem informasi geografis
GenericName[is]=Landfræðilegt upplýsingakerfi
GenericName[it]=Sistema Informativo Geografico
GenericName[ka]=
GenericName[lt]=Geografinė informacinė sistema
GenericName[lv]=Ģeogrāfiskā informācijas sistēma
GenericName[mk]=Географски информационен систем
GenericName[ml]=ി...
GenericName[nl]=Geografisch informatiesysteem
GenericName[nn]=Geografiske informasjonssystem
GenericName[no]=Geografiske informasjonssystemer
GenericName[pl]=System Informacji Geograficznej
GenericName[pt]=Sistema de Informação Geográfica
GenericName[ro]=Sistem Informatic Geografic
GenericName[ru]=Геоинформационная система
GenericName[sh]=Geografski informacijski sistem
GenericName[sk]=Geografický informačný systém
GenericName[sl]=Geografski informacijski sistem
GenericName[sr]=Географски информациони систем
GenericName[sv]=Geografiskt Informationssystem
GenericName[th]=
GenericName[tr]=Coğrafi bilgi sistemi
GenericName[uk]=Геоінформаційна система
GenericName[uz]=Geografik axborot tizimi
Icon=qbrowser
TryExec=/usr/bin/qbrowser
Exec=/usr/bin/qbrowser %F
Terminal=false
StartupNotify=false
Categories=Qt;Education;Science;Geography;
Keywords=map;globe;postgis;wms;wfs;ogc;osgeo;

15
debian/rules vendored
View File

@ -63,7 +63,6 @@ CMAKE_OPTS := \
-DBINDINGS_GLOBAL_INSTALL=TRUE \
-DPEDANTIC=TRUE \
-DSERVER_SKIP_ECW=TRUE \
-DSUPPRESS_SIP_WARNINGS=TRUE \
-DQGIS_CGIBIN_SUBDIR=/usr/lib/cgi-bin \
-DWITH_APIDOC=TRUE \
-DGENERATE_QHP=TRUE \
@ -225,7 +224,7 @@ binary binary-arch binary-indep build build-arch build-indep clean install insta
dh $@ --with python3 --parallel --builddirectory=$(QGIS_BUILDDIR)
override_dh_clean: cleantemplates
dh_clean qgis.bin.1 qbrowser.bin.1
dh_clean qgis.bin.1
-$(RM) -r $(CURDIR)/$(QGIS_BUILDDIR)/
@ -282,7 +281,6 @@ override_dh_auto_install:
# Man pages are installed by dh_installman
$(RM) $(CURDIR)/debian/tmp/usr/man/man1/qgis.1
$(RM) $(CURDIR)/debian/tmp/usr/man/man1/qbrowser.1
# Don't ship srs.db, automatically updated in postinst with crssync
mv $(CURDIR)/debian/tmp/usr/share/qgis/resources/srs.db $(CURDIR)/debian/tmp/usr/share/qgis/resources/srs-template.db
@ -290,9 +288,7 @@ override_dh_auto_install:
# Install menu pixmap
install -o root -g root -d $(CURDIR)/debian/tmp/usr/share/pixmaps
install -o root -g root -m 644 $(CURDIR)/images/icons/qgis_icon.svg $(CURDIR)/debian/tmp/usr/share/pixmaps/qgis.svg
install -o root -g root -m 644 $(CURDIR)/images/icons/qbrowser_icon.svg $(CURDIR)/debian/tmp/usr/share/pixmaps/qbrowser.svg
install -o root -g root -m 644 $(CURDIR)/images/icons/qgis-icon.png $(CURDIR)/debian/tmp/usr/share/pixmaps/qgis.png
install -o root -g root -m 644 $(CURDIR)/images/icons/qbrowser-icon.png $(CURDIR)/debian/tmp/usr/share/pixmaps/qbrowser.png
install -o root -g root -m 644 $(CURDIR)/images/icons/qgis-mime-icon.png $(CURDIR)/debian/tmp/usr/share/pixmaps/qgis-mime.png
# Install MIME type icon
@ -315,17 +311,14 @@ override_dh_auto_install:
for size in 8x8 16x16 22x22 24x24 32x32 36x36 42x42 48x48 64x64 72x72 80x80 96x96 128x128 192x192 256x256 512x512; do \
install -o root -g root -d $(CURDIR)/debian/tmp/usr/share/icons/hicolor/$${size}/apps ; \
install -o root -g root -m 644 $(CURDIR)/debian/icons/qgis-icon$${size}.png $(CURDIR)/debian/tmp/usr/share/icons/hicolor/$${size}/apps/qgis.png ; \
install -o root -g root -m 644 $(CURDIR)/debian/icons/qbrowser-icon$${size}.png $(CURDIR)/debian/tmp/usr/share/icons/hicolor/$${size}/apps/qbrowser.png ; \
done
install -o root -g root -d $(CURDIR)/debian/tmp/usr/share/icons/hicolor/scalable/apps
install -o root -g root -m 644 $(CURDIR)/images/icons/qgis_icon.svg $(CURDIR)/debian/tmp/usr/share/icons/hicolor/scalable/apps/qgis.svg
install -o root -g root -m 644 $(CURDIR)/images/icons/qbrowser_icon.svg $(CURDIR)/debian/tmp/usr/share/icons/hicolor/scalable/apps/qbrowser.svg
# Install desktop files
install -o root -g root -d $(CURDIR)/debian/tmp/usr/share/applications
install -o root -g root -m 644 $(CURDIR)/debian/qgis.desktop $(CURDIR)/debian/tmp/usr/share/applications
install -o root -g root -m 644 $(CURDIR)/debian/qbrowser.desktop $(CURDIR)/debian/tmp/usr/share/applications
# Mime info
install -o root -g root -d $(CURDIR)/debian/tmp/usr/share/mime/packages
@ -337,10 +330,8 @@ override_dh_auto_install:
# qgis binaries
install -o root -g root -m 755 -d $(CURDIR)/debian/qgis/usr/bin
install -o root -g root -m 755 $(CURDIR)/debian/tmp/usr/bin/qgis $(CURDIR)/debian/qgis/usr/bin/qgis.bin
install -o root -g root -m 755 $(CURDIR)/debian/tmp/usr/bin/qbrowser $(CURDIR)/debian/qgis/usr/bin/qbrowser.bin
$(RM) $(CURDIR)/debian/tmp/usr/bin/qgis
$(RM) $(CURDIR)/debian/tmp/usr/bin/qbrowser
# qgis binary wrappers
sed -r \
@ -349,7 +340,6 @@ override_dh_auto_install:
$(CURDIR)/debian/qgis.sh.in >$(CURDIR)/debian/qgis.sh
install -o root -g root -m 755 $(CURDIR)/debian/qgis.sh $(CURDIR)/debian/qgis/usr/bin/qgis
install -o root -g root -m 755 $(CURDIR)/debian/qgis.sh $(CURDIR)/debian/qgis/usr/bin/qbrowser
override_dh_install:
dh_install --autodest --list-missing
@ -359,9 +349,8 @@ override_dh_installchangelogs:
override_dh_installman:
cp qgis.1 qgis.bin.1
cp qbrowser.1 qbrowser.bin.1
dh_installman -pqgis qgis.1 qbrowser.1 qgis.bin.1 qbrowser.bin.1
dh_installman -pqgis qgis.1 qgis.bin.1
override_dh_installmime:
dh_installmime -pqgis

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@ -43,7 +43,7 @@
<file>flags/xh.png</file>
<file>icons/qgis-icon-16x16.png</file>
<file>icons/qgis-icon-60x60.png</file>
<file>icons/qbrowser-icon-60x60.png</file>
<file>icons/qbrowser_icon.svg</file>
<file>north_arrows/default.png</file>
<file>north_arrows/gpsarrow.svg</file>
<file>north_arrows/gpsarrow2.svg</file>

View File

@ -1,80 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleName</key>
<string>QGIS Browser</string>
<key>CFBundleIdentifier</key>
<string>org.qgis.qgis3_browser</string>
<key>CFBundleExecutable</key>
<string>QGIS Browser</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>QGSB</string>
<key>CFBundleGetInfoString</key>
<string>${QGIS_APP_NAME} Browser ${COMPLETE_VERSION}-${RELEASE_NAME} (${SHA}), © 2002-2016 QGIS Development Team</string>
<key>CFBundleShortVersionString</key>
<string>${COMPLETE_VERSION}</string>
<key>CFBundleVersion</key>
<string>${COMPLETE_VERSION} (${SHA})</string>
<key>CFBundleIconFile</key>
<string>qgisb.icns</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CSResourcesFileMapped</key>
<true/>
<key>CFBundleLocalizations</key>
<array>
<string>en</string>
<string>af</string>
<string>ar</string>
<string>bg</string>
<string>ca_ES</string>
<string>cs_CZ</string>
<string>da_DK</string>
<string>de</string>
<string>el_GR</string>
<string>es</string>
<string>fa</string>
<string>fi</string>
<string>fr</string>
<string>gl_ES</string>
<string>he</string>
<string>hr_HR</string>
<string>hu</string>
<string>id</string>
<string>is</string>
<string>it</string>
<string>ja</string>
<string>ka_GE</string>
<string>ko_KR</string>
<string>lo</string>
<string>lt</string>
<string>lv</string>
<string>mn</string>
<string>nl</string>
<string>no</string>
<string>pl_PL</string>
<string>pt_BR</string>
<string>pt_PT</string>
<string>ro</string>
<string>ru</string>
<string>sk</string>
<string>sl_SI</string>
<string>sq_AL</string>
<string>sr_CS-Latn</string>
<string>sv</string>
<string>ta</string>
<string>th</string>
<string>tr</string>
<string>uk</string>
<string>vi</string>
<string>xh</string>
<string>zh_CN</string>
<string>zh_TW</string>
</array>
</dict>
</plist>

View File

@ -1,10 +0,0 @@
@echo off
call "%~dp0\o4w_env.bat"
call "%OSGEO4W_ROOT%\apps\grass\grass-@grassversion@\etc\env.bat"
call qt5_env.bat
call py3_env.bat
@echo off
path %OSGEO4W_ROOT%\apps\@package@\bin;%OSGEO4W_ROOT%\apps\grass\grass-@grassversion@\lib;%OSGEO4W_ROOT%\apps\grass\grass-@grassversion@\bin;%PATH%
set QGIS_PREFIX_PATH=%OSGEO4W_ROOT:\=/%/apps/@package@
set QT_PLUGIN_PATH=%OSGEO4W_ROOT%\apps\@package@\qtplugins;%OSGEO4W_ROOT%\apps\qt5\plugins
start "QGIS Browser" /B "%OSGEO4W_ROOT%\bin\@package@-browser-bin.exe" %*

View File

@ -1,9 +0,0 @@
@echo off
call "%~dp0\o4w_env.bat"
call qt5_env.bat
call py3_env.bat
@echo off
path %OSGEO4W_ROOT%\apps\@package@\bin;%PATH%
set QGIS_PREFIX_PATH=%OSGEO4W_ROOT:\=/%/apps/@package@
set QT_PLUGIN_PATH=%OSGEO4W_ROOT%\apps\@package@\qtplugins;%OSGEO4W_ROOT%\apps\qt5\plugins
start "QGIS Browser" /B "%OSGEO4W_ROOT%\bin\@package@-browser-bin.exe" %*

View File

@ -200,7 +200,6 @@ cmake -G Ninja ^
-D QCA_INCLUDE_DIR=%OSGEO4W_ROOT%\apps\Qt5\include\QtCrypto ^
-D QCA_LIBRARY=%OSGEO4W_ROOT%\apps\Qt5\lib\qca-qt5.lib ^
-D QSCINTILLA_LIBRARY=%OSGEO4W_ROOT%\apps\Qt5\lib\qscintilla2.lib ^
-D SUPPRESS_SIP_WARNINGS=TRUE ^
%CMAKE_OPT% ^
%SRCDIR:\=/%
if errorlevel 1 (echo cmake failed & goto error)
@ -277,10 +276,6 @@ for %%g IN (%GRASS_VERSIONS%) do (
sed -e 's/@package@/%PACKAGENAME%/g' -e 's/@version@/%VERSION%/g' -e 's/@grassversion@/%%g/g' qgis-grass.bat.tmpl >%OSGEO4W_ROOT%\bin\%PACKAGENAME%-g%%g.bat.tmpl
if errorlevel 1 (echo creation of desktop template failed & goto error)
set batches=!batches! bin/%PACKAGENAME%-g%%g.bat.tmpl
sed -e 's/@package@/%PACKAGENAME%/g' -e 's/@version@/%VERSION%/g' -e 's/@grassversion@/%%g/g' browser-grass.bat.tmpl >%OSGEO4W_ROOT%\bin\%PACKAGENAME%-browser-g%%g.bat.tmpl
if errorlevel 1 (echo creation of browser template & goto error)
set batches=!batches! bin/%PACKAGENAME%-browser-g%%g.bat.tmpl
)
sed -e 's/@package@/%PACKAGENAME%/g' -e 's/@version@/%VERSION%/g' python.bat.tmpl >%OSGEO4W_ROOT%\bin\python-%PACKAGENAME%.bat.tmpl
@ -297,10 +292,6 @@ move %PKGDIR%\bin\qgis.exe %OSGEO4W_ROOT%\bin\%PACKAGENAME%-bin.exe
if errorlevel 1 (echo move of desktop executable failed & goto error)
copy qgis.vars %OSGEO4W_ROOT%\bin\%PACKAGENAME%-bin.vars
if errorlevel 1 (echo copy of desktop executable vars failed & goto error)
move %PKGDIR%\bin\qbrowser.exe %OSGEO4W_ROOT%\bin\%PACKAGENAME%-browser-bin.exe
if errorlevel 1 (echo move of browser executable failed & goto error)
copy qgis.vars %OSGEO4W_ROOT%\bin\%PACKAGENAME%-browser-bin.vars
if errorlevel 1 (echo copy of browser executable vars failed & goto error)
if not exist %PKGDIR%\qtplugins\sqldrivers mkdir %PKGDIR%\qtplugins\sqldrivers
move %OSGEO4W_ROOT%\apps\qt5\plugins\sqldrivers\qsqlocispatial.dll %PKGDIR%\qtplugins\sqldrivers
@ -322,7 +313,6 @@ tar -C %OSGEO4W_ROOT% -cjf %ARCH%/release/qgis/%PACKAGENAME%/%PACKAGENAME%-%VERS
--exclude "*.pyc" ^
apps/%PACKAGENAME% ^
bin/%PACKAGENAME%-bin.exe ^
bin/%PACKAGENAME%-browser-bin.exe ^
%batches% ^
bin/%PACKAGENAME%-designer.bat.tmpl ^
bin/python-%PACKAGENAME%.bat.tmpl ^

View File

@ -192,7 +192,6 @@ cmake -G Ninja ^
-D QCA_INCLUDE_DIR=%OSGEO4W_ROOT%\apps\Qt5\include\QtCrypto ^
-D QCA_LIBRARY=%OSGEO4W_ROOT%\apps\Qt5\lib\qca-qt5.lib ^
-D QSCINTILLA_LIBRARY=%OSGEO4W_ROOT%\apps\Qt5\lib\qscintilla2.lib ^
-D SUPPRESS_SIP_WARNINGS=TRUE ^
%CMAKE_OPT% ^
%SRCDIR:\=/%
if errorlevel 1 (echo cmake failed & goto error)
@ -254,9 +253,6 @@ if errorlevel 1 (echo creation of desktop preremove failed & goto error)
sed -e 's/@package@/%PACKAGENAME%/g' -e 's/@version@/%VERSION%/g' qgis.bat.tmpl >%OSGEO4W_ROOT%\bin\%PACKAGENAME%.bat.tmpl
if errorlevel 1 (echo creation of desktop template failed & goto error)
sed -e 's/@package@/%PACKAGENAME%/g' -e 's/@version@/%VERSION%/g' browser.bat.tmpl >%OSGEO4W_ROOT%\bin\%PACKAGENAME%-browser.bat.tmpl
if errorlevel 1 (echo creation of browser template & goto error)
sed -e 's/@package@/%PACKAGENAME%/g' -e 's/@version@/%VERSION%/g' designer.bat.tmpl >%OSGEO4W_ROOT%\bin\%PACKAGENAME%-designer.bat.tmpl
if errorlevel 1 (echo creation of designer template failed & goto error)
@ -289,8 +285,6 @@ for %%g IN (%GRASS_VERSIONS%) do (
if errorlevel 1 (echo creation of grass desktop preremove failed & goto error)
sed -e 's/@package@/%PACKAGENAME%/g' -e 's/@version@/%VERSION%/g' -e 's/@grassversion@/%%g/g' -e 's/@grassmajor@/!v!/g' qgis-grass.bat.tmpl >%OSGEO4W_ROOT%\bin\%PACKAGENAME%-grass!v!.bat.tmpl
if errorlevel 1 (echo creation of grass desktop template failed & goto error)
sed -e 's/@package@/%PACKAGENAME%/g' -e 's/@version@/%VERSION%/g' -e 's/@grassversion@/%%g/g' -e 's/@grassmajor@/!v!/g' browser-grass.bat.tmpl >%OSGEO4W_ROOT%\bin\%PACKAGENAME%-browser-grass!v!.bat.tmpl
if errorlevel 1 (echo creation of grass browser template & goto error)
set packages=!packages! "-grass-plugin!w!"
)
@ -358,10 +352,6 @@ move %PKGDIR%\bin\qgis.exe %OSGEO4W_ROOT%\bin\%PACKAGENAME%-bin.exe
if errorlevel 1 (echo move of desktop executable failed & goto error)
copy qgis.vars %OSGEO4W_ROOT%\bin\%PACKAGENAME%-bin.vars
if errorlevel 1 (echo copy of desktop executable vars failed & goto error)
move %PKGDIR%\bin\qbrowser.exe %OSGEO4W_ROOT%\bin\%PACKAGENAME%-browser-bin.exe
if errorlevel 1 (echo move of browser executable failed & goto error)
copy qgis.vars %OSGEO4W_ROOT%\bin\%PACKAGENAME%-browser-bin.vars
if errorlevel 1 (echo copy of browser executable vars failed & goto error)
if not exist %PKGDIR%\qtplugins\sqldrivers mkdir %PKGDIR%\qtplugins\sqldrivers
move %OSGEO4W_ROOT%\apps\qt5\plugins\sqldrivers\qsqlocispatial.dll %PKGDIR%\qtplugins\sqldrivers
@ -384,13 +374,10 @@ tar -C %OSGEO4W_ROOT% -cjf %ARCH%/release/qgis/%PACKAGENAME%/%PACKAGENAME%-%VERS
--exclude "apps/%PACKAGENAME%/python/qgis/_server.pyd" ^
--exclude "apps/%PACKAGENAME%/python/qgis/_server.lib" ^
--exclude "apps/%PACKAGENAME%/python/qgis/server" ^
"bin/%PACKAGENAME%-browser-bin.exe" ^
"bin/%PACKAGENAME%-browser-bin.vars" ^
"bin/%PACKAGENAME%-bin.exe" ^
"bin/%PACKAGENAME%-bin.vars" ^
"bin/python-%PACKAGENAME%.bat.tmpl" ^
"apps/%PACKAGENAME%/bin/qgis_app.dll" ^
"apps/%PACKAGENAME%/bin/qgis_browser.dll" ^
"apps/%PACKAGENAME%/bin/qgis.reg.tmpl" ^
"apps/%PACKAGENAME%/i18n/" ^
"apps/%PACKAGENAME%/icons/" ^
@ -410,7 +397,6 @@ tar -C %OSGEO4W_ROOT% -cjf %ARCH%/release/qgis/%PACKAGENAME%/%PACKAGENAME%-%VERS
"apps/%PACKAGENAME%/resources/customization.xml" ^
"apps/%PACKAGENAME%/resources/themes/" ^
"bin/%PACKAGENAME%.bat.tmpl" ^
"bin/%PACKAGENAME%-browser.bat.tmpl" ^
"bin/%PACKAGENAME%-designer.bat.tmpl" ^
"etc/postinstall/%PACKAGENAME%.bat" ^
"etc/preremove/%PACKAGENAME%.bat"
@ -447,7 +433,6 @@ for %%g IN (%GRASS_VERSIONS%) do (
"apps/%PACKAGENAME%/plugins/grassplugin!v!.dll" ^
"apps/%PACKAGENAME%/plugins/grassprovider!v!.dll" ^
"apps/%PACKAGENAME%/plugins/grassrasterprovider!v!.dll" ^
"bin/%PACKAGENAME%-browser-grass!v!.bat.tmpl" ^
"bin/%PACKAGENAME%-grass!v!.bat.tmpl" ^
"etc/postinstall/%PACKAGENAME%-grass-plugin!w!.bat" ^
"etc/preremove/%PACKAGENAME%-grass-plugin!w!.bat"

View File

@ -1,5 +1,4 @@
textreplace -std -t bin\@package@.bat
textreplace -std -t bin\@package@-browser.bat
textreplace -std -t bin\@package@-designer.bat
textreplace -std -t bin\python-@package@.bat
@ -8,7 +7,6 @@ for %%i in ("%OSGEO4W_ROOT%") do set O4W_ROOT=%%~fsi
if "%OSGEO4W_DESKTOP%"=="" set OSGEO4W_DESKTOP=~$folder.common_desktop$
"%OSGEO4W_ROOT%\bin\@package@.bat" --exit
"%OSGEO4W_ROOT%\bin\@package@-browser.bat" --exit
if not %OSGEO4W_MENU_LINKS%==0 mkdir "%OSGEO4W_STARTMENU%"
if not %OSGEO4W_DESKTOP_LINKS%==0 mkdir "%OSGEO4W_DESKTOP%"
@ -16,9 +14,6 @@ if not %OSGEO4W_DESKTOP_LINKS%==0 mkdir "%OSGEO4W_DESKTOP%"
if not %OSGEO4W_MENU_LINKS%==0 nircmd shortcut "%O4W_ROOT%\bin\@package@-bin.exe" "%OSGEO4W_STARTMENU%" "QGIS Desktop @version@"
if not %OSGEO4W_DESKTOP_LINKS%==0 nircmd shortcut "%O4W_ROOT%\bin\package@-bin.exe" "%OSGEO4W_DESKTOP%" "QGIS Desktop @version@"
if not %OSGEO4W_MENU_LINKS%==0 nircmd shortcut "%O4W_ROOT%\bin\@package@-browser-bin.exe" "%OSGEO4W_STARTMENU%" "QGIS Browser @version@"
if not %OSGEO4W_DESKTOP_LINKS%==0 nircmd shortcut "%O4W_ROOT%\bin\@package@-browser-bin.exe" "%OSGEO4W_DESKTOP%" "QGIS Browser @version@"
if not %OSGEO4W_MENU_LINKS%==0 nircmd shortcut "%O4W_ROOT%\bin\nircmd.exe" "%OSGEO4W_STARTMENU%" "Qt Designer with QGIS @version@ custom widgets" "exec hide """%OSGEO4W_ROOT%\bin\@package@-designer.bat"" "%O4W_ROOT%\apps\@package@\icons\QGIS.ico"
if not %OSGEO4W_DESKTOP_LINKS%==0 nircmd shortcut "%O4W_ROOT%\bin\nircmd.exe" "%OSGEO4W_DESKTOP%" "Qt Designer with QGIS @version@ custom widgets" "exec hide %O4W_ROOT%\bin\@package@-designer.bat" "%O4W_ROOT%\apps\@package@\icons\QGIS.ico"

View File

@ -14,14 +14,6 @@ for %%g in (@grassversions@) do (
if not %OSGEO4W_MENU_LINKS%==0 nircmd shortcut "%OSGEO4W_ROOT%\bin\@package@-bin-g%%g.exe" "%OSGEO4W_STARTMENU%" "QGIS Desktop @version@ with GRASS %%g (Nightly)"
if not %OSGEO4W_DESKTOP_LINKS%==0 nircmd shortcut "%OSGEO4W_ROOT%\bin\@package@-bin-g%%g.exe" "%OSGEO4W_DESKTOP%" "QGIS Desktop @version@ with GRASS %%g (Nightly)"
copy "%OSGEO4W_ROOT%\bin\@package@-browser-bin.exe" "%OSGEO4W_ROOT%\bin\@package@-browser-bin-g%%g.exe"
copy "%OSGEO4W_ROOT%\bin\@package@-bin.vars" "%OSGEO4W_ROOT%\bin\@package@-browser-bin-g%%g.vars"
textreplace -std -t bin\@package@-browser-g%%g.bat
"%OSGEO4W_ROOT%\bin\@package@-browser-g%%g.bat" --exit
if not %OSGEO4W_MENU_LINKS%==0 nircmd shortcut "%OSGEO4W_ROOT%\bin\@package@-browser-bin-g%%g.exe" "%OSGEO4W_STARTMENU%" "QGIS Browser @version@ with GRASS %%g (Nightly)"
if not %OSGEO4W_DESKTOP_LINKS%==0 nircmd shortcut "%OSGEO4W_ROOT%\bin\@package@-browser-bin-g%%g.exe" "%OSGEO4W_DESKTOP%" "QGIS Browser @version@ with GRASS %%g (Nightly)"
)
if not %OSGEO4W_MENU_LINKS%==0 nircmd shortcut "%OSGEO4W_ROOT%\bin\nircmd.exe" "%OSGEO4W_STARTMENU%" "Qt Designer with QGIS @version@ custom widgets (Nightly)" "exec hide """%OSGEO4W_ROOT%\bin\@package@-designer.bat"" "%OSGEO4W_ROOT%\apps\@package@\icons\QGIS.ico"

View File

@ -1,5 +1,4 @@
textreplace -std -t bin\@package@-grass@grassmajor@.bat
textreplace -std -t bin\@package@-browser-grass@grassmajor@.bat
if "%OSGEO4W_DESKTOP%"=="" set OSGEO4W_DESKTOP=~$folder.common_desktop$
@ -12,6 +11,3 @@ if not %OSGEO4W_DESKTOP_LINKS%==0 mkdir "%OSGEO4W_DESKTOP%"
if not %OSGEO4W_MENU_LINKS%==0 nircmd shortcut "%OSGEO4W_ROOT%\bin\@package@-bin-grass@grassmajor@.exe" "%OSGEO4W_STARTMENU%" "QGIS Desktop @version@ with GRASS @grassversion@"
if not %OSGEO4W_DESKTOP_LINKS%==0 nircmd shortcut "%OSGEO4W_ROOT%\bin\@package@-bin-grass@grassmajor@.exe" "%OSGEO4W_DESKTOP%" "QGIS Desktop @version@ with GRASS @grassversion@"
if not %OSGEO4W_MENU_LINKS%==0 nircmd shortcut "%OSGEO4W_ROOT%\bin\nircmd.exe" "%OSGEO4W_STARTMENU%" "QGIS Browser @version@ with GRASS @grassversion@" "exec hide %OSGEO4W_ROOT%\bin\@package@-browser-grass@grassmajor@.bat" "%OSGEO4W_ROOT%\apps\@package@\icons\browser.ico"
if not %OSGEO4W_DESKTOP_LINKS%==0 nircmd shortcut "%OSGEO4W_ROOT%\bin\nircmd.exe" "%OSGEO4W_DESKTOP%" "QGIS Browser @version@ with GRASS @grassversion@" "exec hide %OSGEO4W_ROOT%\bin\@package@-browser-grass@grassmajor@.bat" "%OSGEO4W_ROOT%\apps\@package@\icons\browser.ico"

View File

@ -9,9 +9,6 @@ rmdir "%OSGEO4W_DESKTOP%"
del "%OSGEO4W_ROOT%\bin\@package@.bat"
del "%OSGEO4W_ROOT%\bin\@package@-bin.vars"
del "%OSGEO4W_ROOT%\bin\@package@-bin.env"
del "%OSGEO4W_ROOT%\bin\@package@-browser.bat"
del "%OSGEO4W_ROOT%\bin\@package@-browser-bin.vars"
del "%OSGEO4W_ROOT%\bin\@package@-browser-bin.env"
del "%OSGEO4W_ROOT%\bin\@package@-designer.bat"
del "%OSGEO4W_ROOT%\apps\@package@\python\qgis\qgisconfig.py"
del "%OSGEO4W_ROOT%\apps\@package@\bin\qgis.reg"

View File

@ -7,10 +7,6 @@ for %%g in (@grassversions@) do (
del "%OSGEO4W_ROOT%\bin\@package@-bin-g%%g.exe"
del "%OSGEO4W_ROOT%\bin\@package@-bin-g%%g.env"
del "%OSGEO4W_ROOT%\bin\@package@-bin-g%%g.vars"
del "%OSGEO4W_ROOT%\bin\@package@-browser-g%%g.bat"
del "%OSGEO4W_ROOT%\bin\@package@-browser-bin-g%%g.exe"
del "%OSGEO4W_ROOT%\bin\@package@-browser-bin-g%%g.env"
del "%OSGEO4W_ROOT%\bin\@package@-browser-bin-g%%g.vars"
)
del "%OSGEO4W_STARTMENU%\Qt Designer with QGIS @version@ custom widgets (Nightly).lnk"
@ -19,7 +15,6 @@ del "%OSGEO4W_DESKTOP%\Qt Designer with QGIS @version@ custom widgets (Nightly).
rmdir "%OSGEO4W_DESKTOP%"
del "%OSGEO4W_ROOT%\bin\@package@-bin.env"
del "%OSGEO4W_ROOT%\bin\@package@-browser-bin.env"
del "%OSGEO4W_ROOT%\bin\@package@-designer.bat"
del "%OSGEO4W_ROOT%\bin\python-@package@.bat"
del "%OSGEO4W_ROOT%\apps\@package@\python\qgis\qgisconfig.py"

View File

@ -5,7 +5,6 @@ del "%OSGEO4W_DESKTOP%\QGIS Desktop @version@ with GRASS @grassversion@.lnk"
del "%OSGEO4W_DESKTOP%\QGIS Browser @version@ with GRASS @grassversion@.lnk"
rmdir "%OSGEO4W_DESKTOP%"
del "%OSGEO4W_ROOT%\bin\@package@-grass@grassmajor@.bat"
del "%OSGEO4W_ROOT%\bin\@package@-browser-grass@grassmajor@.bat"
del "%OSGEO4W_ROOT%\bin\@package@-bin-grass@grassmajor@.exe"
del "%OSGEO4W_ROOT%\bin\@package@-bin-grass@grassmajor@.vars"
del "%OSGEO4W_ROOT%\bin\@package@-bin-grass@grassmajor@.env"

View File

@ -1,17 +0,0 @@
.TH QGIS 1 "May 23, 2011"
.SH NAME
qbrowser \- QGIS Geographic Information System Browser
.SH SYNOPSIS
.B qbrowser
.SH DESCRIPTION
QGIS is a cross platform, Free and Open Source Geographic
Information System (GIS). Supported platforms include Linux/Unix, Mac OS X and
Microsoft Windows. QGIS supports vector, raster, and database formats. QGIS is
licensed under the GNU General Public License.
This is the browser.
.SH BUGS
See the QGIS home page (http://qgis.org) for a list of known issues with the
latest release.
.SH AUTHOR
Juergen E. Fischer <jef at norbit dot de>

View File

@ -248,8 +248,7 @@ desktop-file-install \
--dir=%{buildroot}%{_datadir}/applications \
debian/qgis.desktop
desktop-file-install --dir=%{buildroot}%{_datadir}/applications \
debian/qbrowser.desktop
desktop-file-install --dir=%{buildroot}%{_datadir}/applications
# Install MIME type definitions
install -d %{buildroot}%{_datadir}/mime/packages
@ -345,9 +344,7 @@ update-mime-database %{?fedora:-n} %{_datadir}/mime &> /dev/null || :
%{_libdir}/%{name}/
%{_qt4_prefix}/plugins/sqldrivers/libqsqlspatialite.so
%{_bindir}/%{name}
%{_bindir}/qbrowser
%{_mandir}/man1/%{name}.1*
%{_mandir}/man1/qbrowser.1*
%dir %{_datadir}/%{name}/
%{_datadir}/mime/packages/qgis.xml
%{_datadir}/pixmaps/%{name}.png
@ -356,7 +353,6 @@ update-mime-database %{?fedora:-n} %{_datadir}/mime &> /dev/null || :
%{_datadir}/icons/hicolor/128x128/mimetypes/application-x-qgis-layer-settings.png
%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
%{_datadir}/applications/*%{name}.desktop
%{_datadir}/applications/qbrowser.desktop
%{_datadir}/%{name}/images/
%{_datadir}/%{name}/resources/
%{_datadir}/%{name}/svg/

View File

@ -30,7 +30,6 @@ src/plugins/grass/qtermwidget/
#Specific files
ChangeLog
debian/qbrowser.desktop
debian/qgis.desktop
debian/qgis-plugin-grass.lintian-overrides
debian/qgis-provider-grass.lintian-overrides

View File

@ -10,7 +10,6 @@ ADD_SUBDIRECTORY(test)
IF (WITH_DESKTOP)
ADD_SUBDIRECTORY(app)
ADD_SUBDIRECTORY(helpviewer)
ADD_SUBDIRECTORY(browser)
ADD_SUBDIRECTORY(plugins)
ENDIF(WITH_DESKTOP)

View File

@ -1,131 +0,0 @@
########################################################
# Files
SET (BROWSER_SRCS
main.cpp
qgsbrowser.cpp
)
SET (BROWSER_UIS qgsbrowserbase.ui)
SET (BROWSER_MOC_HDRS
qgsbrowser.h
)
#SET (BROWSER_RCCS qgsgps_plugin.qrc)
IF (WIN32)
IF (MSVC)
SET (BROWSER_SRCS ${BROWSER_SRCS} qgis_win32.rc)
ELSE(MSVC)
# Icon for windows MINGW
# Note: can't include .rc directly to source files
# as it's ignored when used MinGW
IF (NOT WINDRES)
FIND_PROGRAM(WINDRES windres)
IF (NOT WINDRES)
MESSAGE(FATAL_ERROR "windres not found - aborting")
ENDIF (NOT WINDRES)
ENDIF (NOT WINDRES)
#############################################################
# application icon
# resource compilation for MinGW
ADD_CUSTOM_COMMAND( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/icon.o
COMMAND ${WINDRES} -I${CMAKE_CURRENT_SOURCE_DIR} -iqgis_win32.rc
-o ${CMAKE_CURRENT_BINARY_DIR}/icon.o )
SET(QGIS_APP_SRCS ${QGIS_APP_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/icon.o)
ENDIF (MSVC)
ENDIF (WIN32)
SET(IMAGE_RCCS ../../images/images.qrc)
########################################################
# Build
QT5_WRAP_UI (BROWSER_UIS_H ${BROWSER_UIS})
QT5_WRAP_CPP (BROWSER_MOC_SRCS ${BROWSER_MOC_HDRS})
QT5_ADD_RESOURCES(IMAGE_RCC_SRCS ${IMAGE_RCCS})
#QT5_ADD_RESOURCES(BROWSER_RCC_SRCS ${BROWSER_RCCS})
IF(WIN32)
SET(BROWSER_TARGET qgis_browser)
ADD_LIBRARY(${BROWSER_TARGET} SHARED ${BROWSER_SRCS} ${BROWSER_MOC_SRCS} ${BROWSER_UIS_H} ${IMAGE_RCC_SRCS})
ADD_EXECUTABLE(qbrowser WIN32 ../app/mainwin.cpp)
SET_SOURCE_FILES_PROPERTIES(../app/mainwin.cpp PROPERTIES COMPILE_FLAGS -DMAINWIN_DLL=\\\"qgis_browser.dll\\\")
ELSE(WIN32)
SET(BROWSER_TARGET qbrowser)
ADD_EXECUTABLE (qbrowser MACOSX_BUNDLE ${BROWSER_SRCS} ${BROWSER_MOC_SRCS} ${BROWSER_UIS_H} ${IMAGE_RCC_SRCS})
ENDIF(WIN32)
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/../core
${CMAKE_CURRENT_SOURCE_DIR}/../core/geometry
${CMAKE_CURRENT_SOURCE_DIR}/../core/raster
${CMAKE_CURRENT_SOURCE_DIR}/../core/symbology-ng
${CMAKE_CURRENT_SOURCE_DIR}/../gui
${CMAKE_CURRENT_SOURCE_DIR}/../gui/attributetable
${CMAKE_CURRENT_SOURCE_DIR}/../gui/editorwidgets
${CMAKE_CURRENT_SOURCE_DIR}/../gui/editorwidgets/core
${CMAKE_CURRENT_BINARY_DIR}/../ui
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_BINARY_DIR}/src/core
${CMAKE_BINARY_DIR}/src/gui
)
INCLUDE_DIRECTORIES(SYSTEM
${GEOS_INCLUDE_DIR}
${GDAL_INCLUDE_DIR} # remove once raster layer is cleaned up
${SQLITE3_INCLUDE_DIR}
)
TARGET_LINK_LIBRARIES(${BROWSER_TARGET}
qgis_core
qgis_gui
${QT_QTCORE_LIBRARY}
${QT_QTGUI_LIBRARY}
${QT_QTNETWORK_LIBRARY}
${QT_QTSVG_LIBRARY}
${QT_QTXML_LIBRARY}
${QT_QTWEBKIT_LIBRARY}
${SQLITE3_LIBRARY}
)
IF(APPLE)
SET_TARGET_PROPERTIES(${BROWSER_TARGET} PROPERTIES
INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}/${QGIS_LIB_DIR}
INSTALL_RPATH_USE_LINK_PATH true
MACOSX_BUNDLE_INFO_PLIST "${CMAKE_SOURCE_DIR}/mac/browser.info.plist.in"
OUTPUT_NAME "QGIS Browser"
)
ENDIF(APPLE)
IF(WIN32)
IF(MSVC)
INSTALL(FILES browser.ico DESTINATION ${CMAKE_INSTALL_PREFIX}/icons)
ENDIF(MSVC)
INSTALL (TARGETS qbrowser
BUNDLE DESTINATION ${QGIS_BIN_DIR}
RUNTIME DESTINATION ${QGIS_BIN_DIR}
)
ENDIF(WIN32)
########################################################
# Install
INSTALL (TARGETS ${BROWSER_TARGET}
BUNDLE DESTINATION ${QGIS_BIN_DIR}
RUNTIME DESTINATION ${QGIS_BIN_DIR}
)
IF (APPLE)
INSTALL (CODE "EXECUTE_PROCESS(COMMAND ln -sfh ../../../${QGIS_FW_SUBDIR} \"$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${QGIS_BIN_DIR}/QGIS Browser.app/Contents/Frameworks\")")
INSTALL (CODE "EXECUTE_PROCESS(COMMAND ln -sfh ../../../../${QGIS_LIB_SUBDIR} \"$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${QGIS_BIN_DIR}/QGIS Browser.app/Contents/MacOS/lib\")")
INSTALL (CODE "EXECUTE_PROCESS(COMMAND ln -sfh ../../../${QGIS_PLUGIN_SUBDIR}/.. \"$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${QGIS_BIN_DIR}/QGIS Browser.app/Contents/Plugins\")")
INSTALL (CODE "EXECUTE_PROCESS(COMMAND ln -sfh ../../../${QGIS_DATA_SUBDIR} \"$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${QGIS_BIN_DIR}/QGIS Browser.app/Contents/Resources\")")
# may not exist, unless BundleUtilities are used
INSTALL (CODE "EXECUTE_PROCESS(COMMAND ln -sfh ../../../../share \"$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${QGIS_BIN_DIR}/QGIS Browser.app/Contents/MacOS/share\")")
ENDIF (APPLE)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

View File

@ -1,132 +0,0 @@
/***************************************************************************
main.cpp
Browser main method
-------------------
begin : 2011-04-01
copyright : (C) 2011 Radim Blazek
email : radim dot blazek at gmail dot com
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#include <QLocale>
#include <QSettings>
#include <QTranslator>
#include <QMainWindow>
#include <QLabel>
#include <QDialog>
#include <QApplication>
#include "qgsbrowser.h"
#include "qgsapplication.h"
#include "qgslogger.h"
#include "qgsconfig.h"
#include "qgsnetworkaccessmanager.h"
#include <qmainwindow.h>
#include "qgseditorwidgetregistry.h"
#ifdef Q_OS_WIN
__declspec( dllexport )
#endif
int main( int argc, char ** argv )
{
QSettings settings;
QgsApplication a( argc, argv, true );
// update any saved setting for older themes to new default 'gis' theme (2013-04-15)
QString theme = settings.value( QStringLiteral( "/Themes" ), "default" ).toString();
if ( theme == QLatin1String( "gis" )
|| theme == QLatin1String( "classic" )
|| theme == QLatin1String( "nkids" ) )
{
theme = QStringLiteral( "default" );
}
a.setThemeName( theme );
a.initQgis();
a.setWindowIcon( QIcon( QgsApplication::iconsPath() + "qbrowser-icon-60x60.png" ) );
// Set up the QSettings environment must be done after qapp is created
QCoreApplication::setOrganizationName( QStringLiteral( "QGIS" ) );
QCoreApplication::setOrganizationDomain( QStringLiteral( "qgis.org" ) );
QCoreApplication::setApplicationName( QStringLiteral( "QGIS3" ) );
#ifdef Q_OS_MACX
// If the GDAL plugins are bundled with the application and GDAL_DRIVER_PATH
// is not already defined, use the GDAL plugins in the application bundle.
QString gdalPlugins( QCoreApplication::applicationDirPath().append( "/lib/gdalplugins" ) );
if ( QFile::exists( gdalPlugins ) && !getenv( "GDAL_DRIVER_PATH" ) )
{
setenv( "GDAL_DRIVER_PATH", gdalPlugins.toUtf8(), 1 );
}
// Point GDAL_DATA at any GDAL share directory embedded in the app bundle
if ( !getenv( "GDAL_DATA" ) )
{
QStringList gdalShares;
QString appResources( QDir::cleanPath( QgsApplication::pkgDataPath() ) );
gdalShares << QCoreApplication::applicationDirPath().append( "/share/gdal" )
<< appResources.append( "/share/gdal" )
<< appResources.append( "/gdal" );
Q_FOREACH ( const QString& gdalShare, gdalShares )
{
if ( QFile::exists( gdalShare ) )
{
setenv( "GDAL_DATA", gdalShare.toUtf8().constData(), 1 );
break;
}
}
}
#endif
QString i18nPath = QgsApplication::i18nPath();
bool myLocaleOverrideFlag = settings.value( QStringLiteral( "locale/overrideFlag" ), false ).toBool();
QString myUserLocale = settings.value( QStringLiteral( "locale/userLocale" ), "" ).toString();
QString myTranslationCode = !myLocaleOverrideFlag || myUserLocale.isEmpty() ? QLocale::system().name() : myUserLocale;
QTranslator qgistor( nullptr );
QTranslator qttor( nullptr );
if ( myTranslationCode != QLatin1String( "C" ) )
{
if ( qgistor.load( QStringLiteral( "qgis_" ) + myTranslationCode, i18nPath ) )
{
a.installTranslator( &qgistor );
}
else
{
qWarning( "loading of qgis translation failed [%s]", QStringLiteral( "%1/qgis_%2" ).arg( i18nPath, myTranslationCode ).toLocal8Bit().constData() );
}
/* Translation file for Qt.
* The strings from the QMenuBar context section are used by Qt/Mac to shift
* the About, Preferences and Quit items to the Mac Application menu.
* These items must be translated identically in both qt_ and qgis_ files.
*/
if ( qttor.load( QStringLiteral( "qt_" ) + myTranslationCode, QLibraryInfo::location( QLibraryInfo::TranslationsPath ) ) )
{
a.installTranslator( &qttor );
}
else
{
qWarning( "loading of qt translation failed [%s]", QStringLiteral( "%1/qt_%2" ).arg( QLibraryInfo::location( QLibraryInfo::TranslationsPath ), myTranslationCode ).toLocal8Bit().constData() );
}
}
QgsBrowser w;
a.connect( &a, SIGNAL( aboutToQuit() ), &w, SLOT( saveWindowState() ) );
w.restoreWindowState();
w.show();
a.connect( &a, SIGNAL( lastWindowClosed() ), &a, SLOT( quit() ) );
QgsEditorWidgetRegistry::initEditors();
return a.exec();
}

View File

@ -1 +0,0 @@
IDI_ICON1 ICON DISCARDABLE "browser.ico"

View File

@ -1,547 +0,0 @@
/***************************************************************************
qgsbrowser.cpp -
-------------------
begin : 2011-04-01
copyright : (C) 2011 Radim Blazek
email : radim dot blazek at gmail dot com
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#include <QSettings>
#include <QMessageBox>
#include <QKeyEvent>
#include <QMetaObject>
#include "qgsapplication.h"
#include "qgsdataitem.h"
#include "qgsbrowser.h"
#include "qgsbrowsermodel.h"
#include "qgsencodingfiledialog.h"
#include "qgsgenericprojectionselector.h"
#include "qgslogger.h"
#include "qgsconditionalstyle.h"
#include "qgsproject.h"
#include "qgsmaptoolpan.h"
#include "qgsproviderregistry.h"
#include "qgsvectorlayer.h"
#include "qgsrasterlayer.h"
#include "qgsnewvectorlayerdialog.h"
#include "qgsattributetablemodel.h"
#include "qgsattributetablefiltermodel.h"
#include "qgscredentialdialog.h"
#include "qgsrasterdataprovider.h"
#ifdef ANDROID
#define QGIS_ICON_SIZE 32
#else
#define QGIS_ICON_SIZE 24
#endif
QgsBrowser::QgsBrowser( QWidget *parent, Qt::WindowFlags flags )
: QMainWindow( parent, flags )
, mDirtyMetadata( true )
, mDirtyPreview( true )
, mDirtyAttributes( true )
, mLayer( nullptr )
, mParamWidget( nullptr )
, mAttributeTableFilterModel( nullptr )
{
setupUi( this );
mMapToolPan.reset( new QgsMapToolPan( mapCanvas ) );
mapCanvas->setMapTool( mMapToolPan.get() );
// Disable tabs by default
tabWidget->setTabEnabled( tabWidget->indexOf( paramTab ), false );
tabWidget->setTabEnabled( tabWidget->indexOf( metaTab ), false );
tabWidget->setTabEnabled( tabWidget->indexOf( previewTab ), false );
tabWidget->setTabEnabled( tabWidget->indexOf( attributesTab ), false );
mModel = new QgsBrowserModel( treeView );
treeView->setModel( mModel );
// Last expanded is stored, don't cover whole height with file system
//treeView->expand( mModel->index(0,0) );
connect( treeView, SIGNAL( clicked( const QModelIndex& ) ), this, SLOT( itemClicked( const QModelIndex& ) ) );
treeView->setExpandsOnDoubleClick( false );
connect( treeView, SIGNAL( doubleClicked( const QModelIndex& ) ), this, SLOT( itemDoubleClicked( const QModelIndex& ) ) );
connect( treeView, SIGNAL( expanded( const QModelIndex& ) ), this, SLOT( itemExpanded( const QModelIndex& ) ) );
connect( tabWidget, SIGNAL( currentChanged( int ) ), this, SLOT( tabChanged() ) );
connect( mActionNewVectorLayer, SIGNAL( triggered() ), this, SLOT( newVectorLayer() ) );
connect( stopRenderingButton, SIGNAL( clicked() ), this, SLOT( stopRendering() ) );
mapCanvas->setCanvasColor( Qt::white );
//Set the icon size of for all the toolbars created in the future.
QSettings settings;
int size = settings.value( QStringLiteral( "/IconSize" ), QGIS_ICON_SIZE ).toInt();
setIconSize( QSize( size, size ) );
//Change all current icon sizes.
QList<QToolBar *> toolbars = findChildren<QToolBar *>();
Q_FOREACH ( QToolBar * toolbar, toolbars )
{
toolbar->setIconSize( QSize( size, size ) );
}
// set graphical credential requester
new QgsCredentialDialog( this );
}
QgsBrowser::~QgsBrowser()
{
}
void QgsBrowser::expandPath( const QString& path )
{
QModelIndex idx = mModel->findPath( path );
if ( idx.isValid() )
{
treeView->expand( idx );
treeView->scrollTo( idx, QAbstractItemView::PositionAtTop );
}
}
void QgsBrowser::itemClicked( const QModelIndex& index )
{
mIndex = index;
QgsDataItem *item = mModel->dataItem( index );
if ( !item )
return;
// Disable preview, attributes tab
bool paramEnable = false;
bool metaEnable = false;
bool previewEnable = false;
bool attributesEnable = false;
// mark all tabs as dirty
mDirtyMetadata = true;
mDirtyPreview = true;
mDirtyAttributes = true;
// clear the previous stuff
setLayer( nullptr );
mapCanvas->setLayers( QList<QgsMapLayer*>() );
metaTextBrowser->clear();
if ( mParamWidget )
{
paramLayout->removeWidget( mParamWidget );
mParamWidget->hide();
delete mParamWidget;
mParamWidget = nullptr;
}
// QgsProject deletes the previous layer(s) for us
// TODO: in future we could cache the layers in the registry
QgsProject::instance()->removeAllMapLayers();
mLayer = nullptr;
// this should probably go to the model and only emit signal when a layer is clicked
mParamWidget = item->paramWidget();
if ( mParamWidget )
{
paramLayout->addWidget( mParamWidget );
mParamWidget->show();
paramEnable = true;
}
QgsLayerItem *layerItem = qobject_cast<QgsLayerItem*>( mModel->dataItem( index ) );
if ( layerItem )
{
bool res = layerClicked( layerItem );
if ( res )
{
metaEnable = true;
previewEnable = true;
if ( mLayer->type() == QgsMapLayer::VectorLayer )
{
attributesEnable = true;
}
}
}
else
{
mActionSetProjection->setEnabled( false );
}
// force update of the current tab
updateCurrentTab();
int selected = -1;
if ( mLastTab.contains( item->metaObject()->className() ) )
{
selected = mLastTab[ item->metaObject()->className()];
}
// Enabling tabs call tabChanged !
tabWidget->setTabEnabled( tabWidget->indexOf( paramTab ), paramEnable );
tabWidget->setTabEnabled( tabWidget->indexOf( metaTab ), metaEnable );
tabWidget->setTabEnabled( tabWidget->indexOf( previewTab ), previewEnable );
tabWidget->setTabEnabled( tabWidget->indexOf( attributesTab ), attributesEnable );
// select tab according last selection for this data item
if ( selected >= 0 )
{
QgsDebugMsg( QString( "set tab %1 %2" ).arg( item->metaObject()->className() ).arg( selected ) );
tabWidget->setCurrentIndex( selected );
}
QgsDebugMsg( QString( "clicked: %1 %2 %3" ).arg( index.row() ).arg( index.column() ).arg( item->name() ) );
}
bool QgsBrowser::layerClicked( QgsLayerItem *item )
{
if ( !item )
return false;
mActionSetProjection->setEnabled( item->capabilities2().testFlag( QgsLayerItem::SetCrs ) );
QString uri = item->uri();
if ( !uri.isEmpty() )
{
QgsMapLayer::LayerType type = item->mapLayerType();
QString providerKey = item->providerKey();
QgsDebugMsg( providerKey + " : " + uri );
if ( type == QgsMapLayer::VectorLayer )
{
mLayer = new QgsVectorLayer( uri, QString(), providerKey );
}
if ( type == QgsMapLayer::RasterLayer )
{
mLayer = new QgsRasterLayer( uri, QLatin1String( "" ), providerKey );
}
}
if ( !mLayer || !mLayer->isValid() )
{
qDebug( "No layer" );
return false;
}
QgsDebugMsg( "Layer created" );
QgsProject::instance()->addMapLayers(
QList<QgsMapLayer *>() << mLayer );
return true;
}
void QgsBrowser::itemDoubleClicked( const QModelIndex& index )
{
QgsDataItem *item = mModel->dataItem( index );
if ( !item )
return;
// Currently doing nothing
QgsDebugMsg( QString( "%1 %2 %3" ).arg( index.row() ).arg( index.column() ).arg( item->name() ) );
}
void QgsBrowser::newVectorLayer()
{
// Set file dialog to last selected dir
QModelIndex selectedIndex = treeView->selectionModel()->currentIndex();
if ( selectedIndex.isValid() )
{
QgsDirectoryItem * dirItem = qobject_cast<QgsDirectoryItem *>( mModel->dataItem( selectedIndex ) );
if ( dirItem )
{
QSettings settings;
settings.setValue( QStringLiteral( "/UI/lastVectorFileFilterDir" ), dirItem->dirPath() );
}
}
QString fileName = QgsNewVectorLayerDialog::runAndCreateLayer( this );
if ( !fileName.isEmpty() )
{
QgsDebugMsg( "New vector layer: " + fileName );
expandPath( fileName );
QFileInfo fileInfo( fileName );
QString dirPath = fileInfo.absoluteDir().path();
mModel->refresh( dirPath );
}
}
void QgsBrowser::on_mActionWmsConnections_triggered()
{
QDialog *wmss = dynamic_cast<QDialog*>( QgsProviderRegistry::instance()->selectWidget( QStringLiteral( "wms" ), this ) );
if ( !wmss )
{
QMessageBox::warning( this, tr( "WMS" ), tr( "Cannot get WMS select dialog from provider." ) );
return;
}
wmss->exec();
delete wmss;
// TODO: refresh only WMS
refresh();
}
void QgsBrowser::on_mActionSetProjection_triggered()
{
if ( !mLayer )
return;
QgsGenericProjectionSelector * mySelector = new QgsGenericProjectionSelector( this );
mySelector->setMessage();
mySelector->setSelectedCrsId( mLayer->crs().srsid() );
if ( mySelector->exec() )
{
QgsCoordinateReferenceSystem srs = QgsCoordinateReferenceSystem::fromSrsId( mySelector->selectedCrsId() );
// TODO: open data source in write mode set crs and save
#if 0
mLayer->setCrs( srs );
// Is this safe?
// selectedIndexes() is protected
#endif
QgsDataItem *item = mModel->dataItem( mIndex );
QgsLayerItem *layerItem = qobject_cast<QgsLayerItem*>( item );
if ( layerItem )
{
if ( !layerItem->setCrs( srs ) )
{
QMessageBox::critical( this, tr( "CRS" ), tr( "Cannot set layer CRS" ) );
}
}
QgsDebugMsg( srs.authid() + " - " + srs.description() );
}
else
{
QApplication::restoreOverrideCursor();
}
delete mySelector;
}
void QgsBrowser::saveWindowState()
{
QSettings settings;
settings.setValue( QStringLiteral( "/Windows/Browser/state" ), saveState() );
settings.setValue( QStringLiteral( "/Windows/Browser/geometry" ), saveGeometry() );
settings.setValue( QStringLiteral( "/Windows/Browser/sizes/0" ), splitter->sizes().at( 0 ) );
settings.setValue( QStringLiteral( "/Windows/Browser/sizes/1" ), splitter->sizes().at( 1 ) );
}
void QgsBrowser::restoreWindowState()
{
QSettings settings;
if ( !restoreState( settings.value( QStringLiteral( "/Windows/Browser/state" ) ).toByteArray() ) )
{
QgsDebugMsg( "restore of UI state failed" );
}
if ( !restoreGeometry( settings.value( QStringLiteral( "/Windows/Browser/geometry" ) ).toByteArray() ) )
{
QgsDebugMsg( "restore of UI geometry failed" );
}
int size0 = settings.value( QStringLiteral( "/Windows/Browser/sizes/0" ) ).toInt();
if ( size0 > 0 )
{
QList<int> sizes;
sizes << size0;
sizes << settings.value( QStringLiteral( "/Windows/Browser/sizes/1" ) ).toInt();
QgsDebugMsg( QString( "set splitter sizes to %1 %2" ).arg( sizes[0] ).arg( sizes[1] ) );
splitter->setSizes( sizes );
}
}
void QgsBrowser::keyPressEvent( QKeyEvent * e )
{
if ( e->key() == Qt::Key_Escape )
{
stopRendering();
}
else
{
e->ignore();
}
}
void QgsBrowser::keyReleaseEvent( QKeyEvent * e )
{
if ( treeView->hasFocus() && ( e->key() == Qt::Key_Up || e->key() == Qt::Key_Down ) )
{
itemClicked( treeView->selectionModel()->currentIndex() );
}
else
{
e->ignore();
}
}
void QgsBrowser::stopRendering()
{
if ( mapCanvas )
mapCanvas->stopRendering();
}
QgsBrowser::Tab QgsBrowser::activeTab()
{
QWidget* curr = tabWidget->currentWidget();
if ( curr == metaTab )
return Metadata;
if ( curr == previewTab )
return Preview;
return Attributes;
}
void QgsBrowser::updateCurrentTab()
{
// update contents of the current tab
Tab current = activeTab();
if ( current == Metadata && mDirtyMetadata )
{
if ( mLayer && mLayer->isValid() )
{
// Set meta
QString myStyle = QgsApplication::reportStyleSheet();
metaTextBrowser->document()->setDefaultStyleSheet( myStyle );
metaTextBrowser->setHtml( mLayer->metadata() );
}
else
{
metaTextBrowser->setHtml( QString() );
}
mDirtyMetadata = false;
}
if ( current == Preview && mDirtyPreview )
{
if ( mLayer && mLayer->isValid() )
{
// Create preview: add to map canvas
mapCanvas->setLayers( QList<QgsMapLayer*>() << mLayer );
QgsRectangle fullExtent = mLayer->extent();
fullExtent.scale( 1.05 ); // add some border
mapCanvas->setExtent( fullExtent );
mapCanvas->refresh();
QgsRasterLayer *rlayer = qobject_cast< QgsRasterLayer * >( mLayer );
if ( rlayer )
{
connect( rlayer->dataProvider(), &QgsRasterDataProvider::dataChanged, rlayer, [rlayer] { rlayer->triggerRepaint(); } );
connect( rlayer->dataProvider(), &QgsRasterDataProvider::dataChanged, mapCanvas, &QgsMapCanvas::refresh );
}
}
mDirtyPreview = false;
}
if ( current == Attributes && mDirtyAttributes )
{
if ( mLayer && mLayer->isValid() && mLayer->type() == QgsMapLayer::VectorLayer )
{
QgsVectorLayer* vlayer = qobject_cast<QgsVectorLayer*>( mLayer );
QApplication::setOverrideCursor( Qt::WaitCursor );
setLayer( vlayer );
QApplication::restoreOverrideCursor();
}
else
{
setLayer( nullptr );
}
mDirtyAttributes = false;
}
}
void QgsBrowser::tabChanged()
{
updateCurrentTab();
// Store last selected tab for selected data item
if ( mIndex.isValid() )
{
QgsDataItem *item = mModel->dataItem( mIndex );
if ( !item )
return;
QgsDebugMsg( QString( "save last tab %1 : %2" ).arg( item->metaObject()->className() ).arg( tabWidget->currentIndex() ) );
mLastTab[ item->metaObject()->className()] = tabWidget->currentIndex();
}
}
void QgsBrowser::on_mActionRefresh_triggered()
{
refresh();
}
void QgsBrowser::refresh( const QModelIndex& index )
{
if ( index.isValid() )
{
QgsDataItem *item = mModel->dataItem( index );
if ( item )
{
QgsDebugMsg( "path = " + item->path() );
}
else
{
QgsDebugMsg( "invalid item" );
}
}
mModel->refresh( index );
for ( int i = 0 ; i < mModel->rowCount( index ); i++ )
{
QModelIndex idx = mModel->index( i, 0, index );
if ( treeView->isExpanded( idx ) || !mModel->hasChildren( idx ) )
{
refresh( idx );
}
}
}
void QgsBrowser::setLayer( QgsVectorLayer* vLayer )
{
attributeTable->setModel( nullptr );
if ( mAttributeTableFilterModel )
{
// Cleanup
delete mAttributeTableFilterModel;
mAttributeTableFilterModel = nullptr;
}
if ( vLayer )
{
// Initialize the cache
QSettings settings;
int cacheSize = qMax( 1, settings.value( QStringLiteral( "/qgis/attributeTableRowCache" ), "10000" ).toInt() );
QgsVectorLayerCache* layerCache = new QgsVectorLayerCache( vLayer, cacheSize, this );
layerCache->setCacheGeometry( false );
QgsAttributeTableModel *tableModel = new QgsAttributeTableModel( layerCache );
mAttributeTableFilterModel = new QgsAttributeTableFilterModel( nullptr, tableModel, this );
// Let Qt do the garbage collection
layerCache->setParent( tableModel );
tableModel->setParent( mAttributeTableFilterModel );
attributeTable->setModel( mAttributeTableFilterModel );
tableModel->loadLayer();
}
}

View File

@ -1,89 +0,0 @@
/***************************************************************************
qgsbrowser.h - Data sources browser
-------------------
begin : 2011-04-01
copyright : (C) 2011 Radim Blazek
email : radim dot blazek at gmail dot com
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef QGSBROWSER_H
#define QGSBROWSER_H
#include <QMainWindow>
#include <QMap>
#include <QModelIndex>
#include "ui_qgsbrowserbase.h"
class QgsBrowserModel;
class QgsLayerItem;
class QgsMapLayer;
class QgsMapToolPan;
class QgsBrowser : public QMainWindow, private Ui::QgsBrowserBase
{
Q_OBJECT
public:
QgsBrowser( QWidget *parent = nullptr, Qt::WindowFlags flags = 0 );
~QgsBrowser();
// Expand to given path
void expandPath( const QString& path );
void setLayer( QgsVectorLayer* vLayer );
public slots:
void itemClicked( const QModelIndex& index );
void itemDoubleClicked( const QModelIndex& index );
void on_mActionSetProjection_triggered();
void on_mActionWmsConnections_triggered();
void on_mActionRefresh_triggered();
void newVectorLayer();
void saveWindowState();
void restoreWindowState();
void tabChanged();
void updateCurrentTab();
void stopRendering();
// Refresh all leaf or expanded items
void refresh( const QModelIndex& index = QModelIndex() );
protected:
void keyPressEvent( QKeyEvent * e ) override;
void keyReleaseEvent( QKeyEvent * e ) override;
bool layerClicked( QgsLayerItem* ptr );
enum Tab
{
Metadata,
Preview,
Attributes
};
Tab activeTab();
bool mDirtyMetadata, mDirtyPreview, mDirtyAttributes;
QgsBrowserModel* mModel = nullptr;
QgsMapLayer *mLayer = nullptr;
QModelIndex mIndex;
QWidget *mParamWidget = nullptr;
// last (selected) tab for each
QMap<QString, int> mLastTab;
QgsAttributeTableFilterModel* mAttributeTableFilterModel = nullptr;
private:
std::unique_ptr< QgsMapToolPan > mMapToolPan;
};
#endif // QGSBROWSER_H

View File

@ -1,258 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>QgsBrowserBase</class>
<widget class="QMainWindow" name="QgsBrowserBase">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>712</width>
<height>469</height>
</rect>
</property>
<property name="contextMenuPolicy">
<enum>Qt::NoContextMenu</enum>
</property>
<property name="windowTitle">
<string>QGIS Browser</string>
</property>
<widget class="QWidget" name="centralwidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QSplitter" name="splitter">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>696</width>
<height>0</height>
</size>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<widget class="QgsBrowserTreeView" name="treeView">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
<horstretch>1</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="dragEnabled">
<bool>true</bool>
</property>
<property name="dragDropMode">
<enum>QAbstractItemView::DragOnly</enum>
</property>
<attribute name="headerVisible">
<bool>false</bool>
</attribute>
</widget>
<widget class="QTabWidget" name="tabWidget">
<property name="enabled">
<bool>true</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>3</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="currentIndex">
<number>1</number>
</property>
<widget class="QWidget" name="paramTab">
<property name="enabled">
<bool>true</bool>
</property>
<attribute name="title">
<string>Param</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_5">
<item>
<layout class="QVBoxLayout" name="paramLayout"/>
</item>
</layout>
</widget>
<widget class="QWidget" name="metaTab">
<property name="enabled">
<bool>true</bool>
</property>
<attribute name="title">
<string>Metadata</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QTextBrowser" name="metaTextBrowser"/>
</item>
</layout>
</widget>
<widget class="QWidget" name="previewTab">
<property name="enabled">
<bool>true</bool>
</property>
<attribute name="title">
<string>Preview</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QgsMapCanvas" name="mapCanvas"/>
</item>
<item>
<widget class="QWidget" name="widget" native="true">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>370</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="stopRenderingButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Stop rendering</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="attributesTab">
<property name="enabled">
<bool>true</bool>
</property>
<attribute name="title">
<string>Attributes</string>
</attribute>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QgsAttributeTableView" name="attributeTable"/>
</item>
</layout>
</widget>
</widget>
</widget>
</item>
</layout>
</widget>
<widget class="QToolBar" name="toolBar">
<property name="windowTitle">
<string>toolBar</string>
</property>
<property name="movable">
<bool>false</bool>
</property>
<property name="toolButtonStyle">
<enum>Qt::ToolButtonTextBesideIcon</enum>
</property>
<property name="floatable">
<bool>false</bool>
</property>
<attribute name="toolBarArea">
<enum>TopToolBarArea</enum>
</attribute>
<attribute name="toolBarBreak">
<bool>false</bool>
</attribute>
<addaction name="mActionRefresh"/>
<addaction name="mActionWmsConnections"/>
<addaction name="mActionNewVectorLayer"/>
<addaction name="mActionSetProjection"/>
</widget>
<action name="mActionNewVectorLayer">
<property name="icon">
<iconset resource="../../images/images.qrc">
<normaloff>:/images/themes/default/mActionNewVectorLayer.svg</normaloff>:/images/themes/default/mActionNewVectorLayer.svg</iconset>
</property>
<property name="text">
<string>New Shapefile</string>
</property>
<property name="shortcut">
<string>Ctrl+Shift+N</string>
</property>
</action>
<action name="mActionRefresh">
<property name="icon">
<iconset resource="../../images/images.qrc">
<normaloff>:/images/themes/default/mActionDraw.svg</normaloff>:/images/themes/default/mActionDraw.svg</iconset>
</property>
<property name="text">
<string>Refresh</string>
</property>
<property name="shortcut">
<string>F5</string>
</property>
</action>
<action name="mActionSetProjection">
<property name="enabled">
<bool>false</bool>
</property>
<property name="icon">
<iconset resource="../../images/images.qrc">
<normaloff>:/images/themes/default/mActionSetProjection.svg</normaloff>:/images/themes/default/mActionSetProjection.svg</iconset>
</property>
<property name="text">
<string>Set layer CRS</string>
</property>
<property name="toolTip">
<string>Set layer CRS</string>
</property>
</action>
<action name="mActionWmsConnections">
<property name="icon">
<iconset resource="../../images/images.qrc">
<normaloff>:/images/themes/default/mActionAddWmsLayer.svg</normaloff>:/images/themes/default/mActionAddWmsLayer.svg</iconset>
</property>
<property name="text">
<string>Manage WMS</string>
</property>
<property name="toolTip">
<string>Manage WMS Connections</string>
</property>
<property name="shortcut">
<string>Ctrl+Shift+W</string>
</property>
</action>
</widget>
<customwidgets>
<customwidget>
<class>QgsMapCanvas</class>
<extends>QGraphicsView</extends>
<header>qgsmapcanvas.h</header>
</customwidget>
<customwidget>
<class>QgsAttributeTableView</class>
<extends>QTableView</extends>
<header>qgsattributetableview.h</header>
</customwidget>
</customwidgets>
<resources>
<include location="../../images/images.qrc"/>
</resources>
<connections/>
</ui>

View File

@ -113,7 +113,7 @@
</property>
<property name="icon">
<iconset resource="../../../images/images.qrc">
<normaloff>:/images/icons/qbrowser-icon-60x60.png</normaloff>:/images/icons/qbrowser-icon-60x60.png</iconset>
<normaloff>:/images/icons/qbrowser_icon.svg</normaloff>:/images/icons/qbrowser_icon.svg</iconset>
</property>
</item>
<item>