diff options
-rw-r--r-- | pcr/qgis/PKGBUILD | 175 | ||||
-rw-r--r-- | pcr/qgis/console.py | 719 | ||||
-rw-r--r-- | pcr/qgis/console_pyqt4.diff | 27 | ||||
-rw-r--r-- | pcr/qgis/libre.patch | 85 |
4 files changed, 184 insertions, 822 deletions
diff --git a/pcr/qgis/PKGBUILD b/pcr/qgis/PKGBUILD index e520de9c7..cee9c291f 100644 --- a/pcr/qgis/PKGBUILD +++ b/pcr/qgis/PKGBUILD @@ -1,137 +1,106 @@ +# Maintainer (Arch): Doug Newgard <scimmia at archlinux dot info> # Contributor (Arch): SaultDon <sault.don gmail> -# Contributor (Arch): pjduplooy <pjduplooy gmail> -# Contributor (Arch): Lantald <lantald at gmx.com> -# Contributor (Arch): Thomas Dziedzic <gostrc at gmail> -# Contributor (Arch): dibblethewrecker <dibblethewrecker.at.jiwe.dot.org> +# Contributor: (Arch) Lantald < lantald at gmx.com > +# Contributor (Arch): Thomas Dziedzic < gostrc at gmail > +# Contributor (Arch): dibblethewrecker dibblethewrecker.at.jiwe.dot.org # Contributor (Arch): Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> -# Contributor (Arch): Eric Forgeot <http://esclinux.tk> +# Contributor (Arch): Eric Forgeot < http://esclinux.tk > # Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe> -# GRASS Plugin, Globe Plugin and QGIS Map Server are disabled in cmake by default. -# Uncomment them in the build() portion if you'd like enabled during the build. +# Globe Plugin and QGIS Map Server are disabled in cmake by default. +# Uncomment them in the build() portion if you'd like them enabled. +# You will also need to install osgearth or fcgi, respectively, before building. pkgname=qgis -pkgver=2.8.2 -pkgrel=1 -pkgdesc='Quantum GIS is a Geographic Information System (GIS) that supports vector, raster & database formats' +pkgver=2.12.0 +pkgrel=2.parabola1 +pkgdesc='Geographic Information System (GIS) that supports vector, raster & database formats' url='http://qgis.org/' license=('GPL') arch=('i686' 'x86_64') -# https://raw.githubusercontent.com/qgis/QGIS/final-2_6_0/INSTALL -depends=('qt4' - 'proj' - 'geos' - 'sqlite' - 'gdal' - 'gsl' - 'expat' - 'qwt' - 'qwtpolar' - 'python2' - 'python2-pyqt4' - 'python2-qscintilla' - 'python2-sip' - 'python2-psycopg2' - 'python2-pygments' - 'python2-dateutil' - 'python2-jinja' - 'python2-markupsafe' - 'python2-pytz' - 'python2-httplib2' - 'libspatialite' - 'spatialindex') -makedepends=('cmake' - 'flex' - 'bison' - 'txt2tags' - 'perl' - 'git') -optdepends=('grass: GRASS plugin support' # Uncomment relevant cmake option in build() below - 'fcgi: QGIS Map Server support' # if you want GRASS, QGIS Map Server - 'osgearth: QGIS Globe plugin support' # or the Globe Plugin enabled - 'gpsbabel: GPS toolbar support') -provides=("${pkgname}=${pkgver}") -conflicts=("${pkgname}-git" "${pkgname}") -install="${pkgname}.install" -source=("${pkgname}-${pkgver}.tar.gz::https://github.com/qgis/QGIS/archive/final-${pkgver//./_}.tar.gz" - "https://raw.githubusercontent.com/Ariki/QGIS/support-configure-ng/python/console/console.py") -md5sums=('ed4e2de0dd929583d3ed1d0e6ae1bbd7' - '57efd9c869ed2d0a50fb7cf35048d99d') -#options=(!makeflags) +depends=('qca-qt4' 'gdal' 'qwtpolar' 'gsl' 'spatialindex' 'icu' + 'python2-qscintilla' 'python2-sip' 'python2-psycopg2' 'python2-six' 'python2-dateutil' + 'python2-httplib2' 'python2-jinja' 'python2-markupsafe' 'python2-pygments' 'python2-pytz') +makedepends=('cmake' 'txt2tags' 'perl') +optdepends=('gpsbabel: GPS Tool plugin') +install="$pkgname.install" +mksource=("http://qgis.org/downloads/$pkgname-$pkgver.tar.bz2") +source=("https://repo.parabola.nu/other/${pkgname}-libre/${pkgname}-libre-${pkgver}.tar.gz" + "console_pyqt4.diff" + "libre.patch") +mkmd5sums=('099efb9482a67e3c57f54f4947986e39') +md5sums=('4f1122610833228e6952028a4f29ba45' + '636b0fd147d19f50e82080a5819ae10a' + '6c5f082d7f41f45762030a80aa89d5ff') + +mksource() { + cd $pkgname-$pkgver + + # remove nonfree resource + rm -rv "resources/cpt-city-qgis-min/es" +} prepare() { - mv "${srcdir}/QGIS-final-${pkgver//./_}" "${srcdir}/${pkgname}" + cd $pkgname-$pkgver - cd "${srcdir}/${pkgname}" + patch -Np1 -i "$srcdir/console_pyqt4.diff" - mv "${srcdir}/console.py" python/console/ + # Fixing shebang for .py files + sed -i 's/\(env \|\/usr\/bin\/\)python$/&2/' $(find . -iname "*.py") - # Fixing by hand shebang for .py files. - find . -iname '*.py' | xargs sed -ie 's:^#!/usr/bin/env python$:#!/usr/bin/env python2:' - find . -iname '*.py' | xargs sed -ie 's:^#!/usr/bin/python$:#!/usr/bin/env python2:' + [[ -d build ]] || mkdir build } build() { - # Fix insecure RPATH is weird, but just works ;) - # echo "os.system(\"sed -i '/^LFLAGS/s|-Wl,-rpath,.\+ ||g' gui/Makefile core/Makefile\")" >> python/configure.py.in - - cd "${srcdir}/${pkgname}" - - if [ -d build ]; then - rm -rf build - fi - mkdir build - cd build + cd $pkgname-$pkgver/build - cmake ../ \ - -Wno-dev \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_SKIP_RPATH=ON \ + cmake -G "Unix Makefiles" ../ \ -DCMAKE_INSTALL_PREFIX=/usr \ - -DENABLE_TESTS=OFF \ -DQGIS_MANUAL_SUBDIR=share/man \ + -DENABLE_TESTS=FALSE \ + -DCMAKE_SKIP_RPATH=TRUE \ -DPYTHON_EXECUTABLE=/usr/bin/python2 \ - -DPYTHON_LIBRARY=/usr/lib/libpython2.7.so \ - -DPYTHON_INCLUDE_PATH=/usr/include/python2.7 \ - -DPYTHON_SITE_PACKAGES_DIR=/usr/lib/python2.7/site-packages \ - -DPYQT4_SIP_DIR=/usr/share/sip/PyQt4 \ - -DQSCI_SIP_DIR=/usr/share/sip/PyQt4 \ - -DQT_QMAKE_EXECUTABLE=/usr/bin/qmake-qt4 \ -DWITH_INTERNAL_QWTPOLAR=FALSE \ - -DQWTPOLAR_LIBRARY=/usr/lib/libqwtpolar.so \ - -DQWT_LIBRARY=/usr/lib/libqwt.so \ -# -DWITH_GRASS=ON \ -# -DGRASS_PREFIX=/opt/grass \ -# -DGRASS_INCLUDE_DIR=/opt/grass/include/ \ + -DWITH_INTERNAL_SIX=FALSE \ + -DWITH_INTERNAL_DATEUTIL=FALSE \ + -DWITH_INTERNAL_HTTPLIB2=FALSE \ + -DWITH_INTERNAL_JINJA2=FALSE \ + -DWITH_INTERNAL_MARKUPSAFE=FALSE \ + -DWITH_INTERNAL_PYGMENTS=FALSE \ + -DWITH_INTERNAL_PYTZ=FALSE \ # -DWITH_SERVER=TRUE \ -# -DWITH_SERVER_PLUGINS=TRUE \ -# -DWITH_GLOBE=TRUE \ +# -DWITH_GLOBE=TRUE make - - # TODO: fix $srcdir warning if it's a real problem... - # Looks like it's only showing up in non-critical files so can ignore warning. } package() { - cd "${srcdir}/${pkgname}" - cd build + cd $pkgname-$pkgver + + # Add optional deps based on selected or autodetected options + [[ -n "$(awk -F= '/^GRASS_PREFIX:/ {print $2}' build/CMakeCache.txt)" ]] && \ + optdepends+=('grass6: GRASS6 plugin') + [[ -n "$(awk -F= '/^GRASS_PREFIX7:/ {print $2}' build/CMakeCache.txt)" ]] && \ + optdepends+=('grass: GRASS7 plugin') + [[ "$(awk -F= '/^WITH_SERVER:/ {print $2}' build/CMakeCache.txt)" == "TRUE" ]] && \ + optdepends+=('fcgi: QGIS Map Server') + [[ "$(awk -F= '/^WITH_GLOBE:/ {print $2}' build/CMakeCache.txt)" == "TRUE" ]] && \ + optdepends+=('osgearth: QGIS Globe plugin') + + make -C build DESTDIR="$pkgdir" install - make DESTDIR="${pkgdir}/" install - # install some freedesktop.org compatibility - install -D -m644 "${srcdir}/${pkgname}/debian/qgis.desktop" \ - "${pkgdir}/usr/share/applications/qgis.desktop" - install -D -m644 "${srcdir}/${pkgname}/debian/qbrowser.desktop" \ - "${pkgdir}/usr/share/applications/qbrowser.desktop" + install -Dm644 debian/{qgis,qbrowser}.desktop -t "$pkgdir/usr/share/applications/" + install -Dm644 debian/qgis-icon512x512.png "$pkgdir/usr/share/pixmaps/qgis.png" + install -Dm644 debian/qbrowser-icon512x512.png "$pkgdir/usr/share/pixmaps/qbrowser.png" + install -Dm644 images/icons/qgis-mime-icon.png "$pkgdir/usr/share/pixmaps/qgis-mime.png" # TODO: these aren't working for some reason, ie, .qgs files are not opened by QGIS... - # Appears to be a conflict with xml file types being defaulted to google-chrome/chromium if it's installed. - install -dm755 "${pkgdir}/usr/share/pixmaps" \ - "${pkgdir}/usr/share/mimelnk/application" - for mime in "${srcdir}/${pkgname}/debian/mime/application/"*.desktop - do install -m644 "$mime" "${pkgdir}/usr/share/mimelnk/application" + # Appears to be a conflict with some file types being defaulted to google-chrome/chromium if that's installed as well. + for mime in debian/mime/application/*.desktop + do install -Dm644 "$mime" -t "$pkgdir/usr/share/mimelnk/application/" done - ln -s /usr/share/qgis/images/icons/qgis-icon.png "${pkgdir}/usr/share/pixmaps/qgis.png" - ln -s /usr/share/qgis/images/icons/qgis-mime-icon.png "${pkgdir}/usr/share/pixmaps/qgis-mime-icon.png" + + # compile python files, since the cmake option doesn't seem to account for DESTDIR + python2 -m compileall -q "$pkgdir" } diff --git a/pcr/qgis/console.py b/pcr/qgis/console.py deleted file mode 100644 index 64ec452df..000000000 --- a/pcr/qgis/console.py +++ /dev/null @@ -1,719 +0,0 @@ -# -*- coding:utf-8 -*- -""" -/*************************************************************************** -Python Console for QGIS - ------------------- -begin : 2012-09-10 -copyright : (C) 2012 by Salvatore Larosa -email : lrssvtml (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. * - * * - ***************************************************************************/ -Some portions of code were taken from https://code.google.com/p/pydee/ -""" - -from PyQt4.QtCore import Qt, QTimer, QSettings, QCoreApplication, QSize, QByteArray, QFileInfo, SIGNAL -from PyQt4.QtGui import QDockWidget, QToolBar, QToolButton, QWidget, QSplitter, QTreeWidget, QAction, QFileDialog, QCheckBox, QSizePolicy, QMenu, QGridLayout, QApplication -from qgis.utils import iface -from console_sci import ShellScintilla -from console_output import ShellOutputScintilla -from console_editor import EditorTabWidget -from console_settings import optionsDialog -from qgis.core import QgsApplication, QgsContextHelp -from qgis.gui import QgsFilterLineEdit - -import sys - -try: - from PyQt4.QtCore import QT_VERSION # works if PyQt4 was built with configure-ng.py -except ImportError: - from PyQt4 import pyqtconfig # works if built with configure.py - QT_VERSION = pyqtconfig.Configuration().qt_version - -_console = None - -def show_console(): - """ called from QGIS to open the console """ - global _console - if _console is None: - parent = iface.mainWindow() if iface else None - _console = PythonConsole( parent ) - _console.show() # force show even if it was restored as hidden - # set focus to the console so the user can start typing - # defer the set focus event so it works also whether the console not visible yet - QTimer.singleShot(0, _console.activate) - else: - _console.setVisible(not _console.isVisible()) - # set focus to the console so the user can start typing - if _console.isVisible(): - _console.activate() - ## Shows help on first launch of the console - settings = QSettings() - if settings.value('pythonConsole/contextHelpOnFirstLaunch', True, type=bool): - QgsContextHelp.run( "PythonConsole" ) - settings.setValue('pythonConsole/contextHelpOnFirstLaunch', False) - -_old_stdout = sys.stdout -_console_output = None - -# hook for python console so all output will be redirected -# and then shown in console -def console_displayhook(obj): - global _console_output - _console_output = obj - -class PythonConsole(QDockWidget): - def __init__(self, parent=None): - QDockWidget.__init__(self, parent) - self.setObjectName("PythonConsole") - self.setWindowTitle(QCoreApplication.translate("PythonConsole", "Python Console")) - #self.setAllowedAreas(Qt.BottomDockWidgetArea) - - self.console = PythonConsoleWidget(self) - self.setWidget( self.console ) - self.setFocusProxy( self.console ) - - # try to restore position from stored main window state - if iface and not iface.mainWindow().restoreDockWidget(self): - iface.mainWindow().addDockWidget(Qt.BottomDockWidgetArea, self) - - def activate(self): - self.activateWindow() - self.raise_() - QDockWidget.setFocus(self) - - def closeEvent(self, event): - self.console.saveSettingsConsole() - QWidget.closeEvent(self, event) - -class PythonConsoleWidget(QWidget): - def __init__(self, parent=None): - QWidget.__init__(self, parent) - self.setWindowTitle(QCoreApplication.translate("PythonConsole", "Python Console")) - - self.settings = QSettings() - - self.shell = ShellScintilla(self) - self.setFocusProxy(self.shell) - self.shellOut = ShellOutputScintilla(self) - self.tabEditorWidget = EditorTabWidget(self) - - ##------------ UI ------------------------------- - - self.splitterEditor = QSplitter(self) - self.splitterEditor.setOrientation(Qt.Horizontal) - self.splitterEditor.setHandleWidth(6) - self.splitterEditor.setChildrenCollapsible(True) - self.splitter = QSplitter(self.splitterEditor) - self.splitter.setOrientation(Qt.Vertical) - self.splitter.setHandleWidth(3) - self.splitter.setChildrenCollapsible(False) - self.splitter.addWidget(self.shellOut) - self.splitter.addWidget(self.shell) - #self.splitterEditor.addWidget(self.tabEditorWidget) - - self.splitterObj = QSplitter(self.splitterEditor) - self.splitterObj.setHandleWidth(3) - self.splitterObj.setOrientation(Qt.Horizontal) - #self.splitterObj.setSizes([0, 0]) - #self.splitterObj.setStretchFactor(0, 1) - - self.widgetEditor = QWidget(self.splitterObj) - self.widgetFind = QWidget(self) - - self.listClassMethod = QTreeWidget(self.splitterObj) - self.listClassMethod.setColumnCount(2) - objInspLabel = QCoreApplication.translate("PythonConsole", "Object Inspector") - self.listClassMethod.setHeaderLabels([objInspLabel, '']) - self.listClassMethod.setColumnHidden(1, True) - self.listClassMethod.setAlternatingRowColors(True) - - - #self.splitterEditor.addWidget(self.widgetEditor) - #self.splitterObj.addWidget(self.listClassMethod) - #self.splitterObj.addWidget(self.widgetEditor) - - # Hide side editor on start up - self.splitterObj.hide() - self.listClassMethod.hide() - # Hide search widget on start up - self.widgetFind.hide() - - sizes = self.splitter.sizes() - self.splitter.setSizes(sizes) - - ##----------------Restore Settings------------------------------------ - - self.restoreSettingsConsole() - - ##------------------Toolbar Editor------------------------------------- - - ## Action for Open File - openFileBt = QCoreApplication.translate("PythonConsole", "Open file") - self.openFileButton = QAction(self) - self.openFileButton.setCheckable(False) - self.openFileButton.setEnabled(True) - self.openFileButton.setIcon(QgsApplication.getThemeIcon("console/iconOpenConsole.png")) - self.openFileButton.setMenuRole(QAction.PreferencesRole) - self.openFileButton.setIconVisibleInMenu(True) - self.openFileButton.setToolTip(openFileBt) - self.openFileButton.setText(openFileBt) - ## Action for Save File - saveFileBt = QCoreApplication.translate("PythonConsole", "Save") - self.saveFileButton = QAction(self) - self.saveFileButton.setCheckable(False) - self.saveFileButton.setEnabled(False) - self.saveFileButton.setIcon(QgsApplication.getThemeIcon("console/iconSaveConsole.png")) - self.saveFileButton.setMenuRole(QAction.PreferencesRole) - self.saveFileButton.setIconVisibleInMenu(True) - self.saveFileButton.setToolTip(saveFileBt) - self.saveFileButton.setText(saveFileBt) - ## Action for Save File As - saveAsFileBt = QCoreApplication.translate("PythonConsole", "Save As...") - self.saveAsFileButton = QAction(self) - self.saveAsFileButton.setCheckable(False) - self.saveAsFileButton.setEnabled(True) - self.saveAsFileButton.setIcon(QgsApplication.getThemeIcon("console/iconSaveAsConsole.png")) - self.saveAsFileButton.setMenuRole(QAction.PreferencesRole) - self.saveAsFileButton.setIconVisibleInMenu(True) - self.saveAsFileButton.setToolTip(saveAsFileBt) - self.saveAsFileButton.setText(saveAsFileBt) - ## Action Cut - cutEditorBt = QCoreApplication.translate("PythonConsole", "Cut") - self.cutEditorButton = QAction(self) - self.cutEditorButton.setCheckable(False) - self.cutEditorButton.setEnabled(True) - self.cutEditorButton.setIcon(QgsApplication.getThemeIcon("console/iconCutEditorConsole.png")) - self.cutEditorButton.setMenuRole(QAction.PreferencesRole) - self.cutEditorButton.setIconVisibleInMenu(True) - self.cutEditorButton.setToolTip(cutEditorBt) - self.cutEditorButton.setText(cutEditorBt) - ## Action Copy - copyEditorBt = QCoreApplication.translate("PythonConsole", "Copy") - self.copyEditorButton = QAction(self) - self.copyEditorButton.setCheckable(False) - self.copyEditorButton.setEnabled(True) - self.copyEditorButton.setIcon(QgsApplication.getThemeIcon("console/iconCopyEditorConsole.png")) - self.copyEditorButton.setMenuRole(QAction.PreferencesRole) - self.copyEditorButton.setIconVisibleInMenu(True) - self.copyEditorButton.setToolTip(copyEditorBt) - self.copyEditorButton.setText(copyEditorBt) - ## Action Paste - pasteEditorBt = QCoreApplication.translate("PythonConsole", "Paste") - self.pasteEditorButton = QAction(self) - self.pasteEditorButton.setCheckable(False) - self.pasteEditorButton.setEnabled(True) - self.pasteEditorButton.setIcon(QgsApplication.getThemeIcon("console/iconPasteEditorConsole.png")) - self.pasteEditorButton.setMenuRole(QAction.PreferencesRole) - self.pasteEditorButton.setIconVisibleInMenu(True) - self.pasteEditorButton.setToolTip(pasteEditorBt) - self.pasteEditorButton.setText(pasteEditorBt) - ## Action Run Script (subprocess) - runScriptEditorBt = QCoreApplication.translate("PythonConsole", "Run script") - self.runScriptEditorButton = QAction(self) - self.runScriptEditorButton.setCheckable(False) - self.runScriptEditorButton.setEnabled(True) - self.runScriptEditorButton.setIcon(QgsApplication.getThemeIcon("console/iconRunScriptConsole.png")) - self.runScriptEditorButton.setMenuRole(QAction.PreferencesRole) - self.runScriptEditorButton.setIconVisibleInMenu(True) - self.runScriptEditorButton.setToolTip(runScriptEditorBt) - self.runScriptEditorButton.setText(runScriptEditorBt) - ## Action Run Script (subprocess) - commentEditorBt = QCoreApplication.translate("PythonConsole", "Comment") - self.commentEditorButton = QAction(self) - self.commentEditorButton.setCheckable(False) - self.commentEditorButton.setEnabled(True) - self.commentEditorButton.setIcon(QgsApplication.getThemeIcon("console/iconCommentEditorConsole.png")) - self.commentEditorButton.setMenuRole(QAction.PreferencesRole) - self.commentEditorButton.setIconVisibleInMenu(True) - self.commentEditorButton.setToolTip(commentEditorBt) - self.commentEditorButton.setText(commentEditorBt) - ## Action Run Script (subprocess) - uncommentEditorBt = QCoreApplication.translate("PythonConsole", "Uncomment") - self.uncommentEditorButton = QAction(self) - self.uncommentEditorButton.setCheckable(False) - self.uncommentEditorButton.setEnabled(True) - self.uncommentEditorButton.setIcon(QgsApplication.getThemeIcon("console/iconUncommentEditorConsole.png")) - self.uncommentEditorButton.setMenuRole(QAction.PreferencesRole) - self.uncommentEditorButton.setIconVisibleInMenu(True) - self.uncommentEditorButton.setToolTip(uncommentEditorBt) - self.uncommentEditorButton.setText(uncommentEditorBt) - ## Action for Object browser - objList = QCoreApplication.translate("PythonConsole", "Object Inspector") - self.objectListButton = QAction(self) - self.objectListButton.setCheckable(True) - self.objectListButton.setEnabled(self.settings.value("pythonConsole/enableObjectInsp", - False, type=bool)) - self.objectListButton.setIcon(QgsApplication.getThemeIcon("console/iconClassBrowserConsole.png")) - self.objectListButton.setMenuRole(QAction.PreferencesRole) - self.objectListButton.setIconVisibleInMenu(True) - self.objectListButton.setToolTip(objList) - self.objectListButton.setText(objList) - ## Action for Find text - findText = QCoreApplication.translate("PythonConsole", "Find Text") - self.findTextButton = QAction(self) - self.findTextButton.setCheckable(True) - self.findTextButton.setEnabled(True) - self.findTextButton.setIcon(QgsApplication.getThemeIcon("console/iconSearchEditorConsole.png")) - self.findTextButton.setMenuRole(QAction.PreferencesRole) - self.findTextButton.setIconVisibleInMenu(True) - self.findTextButton.setToolTip(findText) - self.findTextButton.setText(findText) - - ##----------------Toolbar Console------------------------------------- - - ## Action Show Editor - showEditor = QCoreApplication.translate("PythonConsole", "Show editor") - self.showEditorButton = QAction(self) - self.showEditorButton.setEnabled(True) - self.showEditorButton.setCheckable(True) - self.showEditorButton.setIcon(QgsApplication.getThemeIcon("console/iconShowEditorConsole.png")) - self.showEditorButton.setMenuRole(QAction.PreferencesRole) - self.showEditorButton.setIconVisibleInMenu(True) - self.showEditorButton.setToolTip(showEditor) - self.showEditorButton.setText(showEditor) - ## Action for Clear button - clearBt = QCoreApplication.translate("PythonConsole", "Clear console") - self.clearButton = QAction(self) - self.clearButton.setCheckable(False) - self.clearButton.setEnabled(True) - self.clearButton.setIcon(QgsApplication.getThemeIcon("console/iconClearConsole.png")) - self.clearButton.setMenuRole(QAction.PreferencesRole) - self.clearButton.setIconVisibleInMenu(True) - self.clearButton.setToolTip(clearBt) - self.clearButton.setText(clearBt) - ## Action for settings - optionsBt = QCoreApplication.translate("PythonConsole", "Settings") - self.optionsButton = QAction(self) - self.optionsButton.setCheckable(False) - self.optionsButton.setEnabled(True) - self.optionsButton.setIcon(QgsApplication.getThemeIcon("console/iconSettingsConsole.png")) - self.optionsButton.setMenuRole(QAction.PreferencesRole) - self.optionsButton.setIconVisibleInMenu(True) - self.optionsButton.setToolTip(optionsBt) - self.optionsButton.setText(optionsBt) - ## Action menu for class - actionClassBt = QCoreApplication.translate("PythonConsole", "Import Class") - self.actionClass = QAction(self) - self.actionClass.setCheckable(False) - self.actionClass.setEnabled(True) - self.actionClass.setIcon(QgsApplication.getThemeIcon("console/iconClassConsole.png")) - self.actionClass.setMenuRole(QAction.PreferencesRole) - self.actionClass.setIconVisibleInMenu(True) - self.actionClass.setToolTip(actionClassBt) - self.actionClass.setText(actionClassBt) - ## Import Processing class - loadProcessingBt = QCoreApplication.translate("PythonConsole", "Import Processing class") - self.loadProcessingButton = QAction(self) - self.loadProcessingButton.setCheckable(False) - self.loadProcessingButton.setEnabled(True) - self.loadProcessingButton.setIcon(QgsApplication.getThemeIcon("console/iconProcessingConsole.png")) - self.loadProcessingButton.setMenuRole(QAction.PreferencesRole) - self.loadProcessingButton.setIconVisibleInMenu(True) - self.loadProcessingButton.setToolTip(loadProcessingBt) - self.loadProcessingButton.setText(loadProcessingBt) - ## Import QtCore class - loadQtCoreBt = QCoreApplication.translate("PythonConsole", "Import PyQt.QtCore class") - self.loadQtCoreButton = QAction(self) - self.loadQtCoreButton.setCheckable(False) - self.loadQtCoreButton.setEnabled(True) - self.loadQtCoreButton.setIcon(QgsApplication.getThemeIcon("console/iconQtCoreConsole.png")) - self.loadQtCoreButton.setMenuRole(QAction.PreferencesRole) - self.loadQtCoreButton.setIconVisibleInMenu(True) - self.loadQtCoreButton.setToolTip(loadQtCoreBt) - self.loadQtCoreButton.setText(loadQtCoreBt) - ## Import QtGui class - loadQtGuiBt = QCoreApplication.translate("PythonConsole", "Import PyQt.QtGui class") - self.loadQtGuiButton = QAction(self) - self.loadQtGuiButton.setCheckable(False) - self.loadQtGuiButton.setEnabled(True) - self.loadQtGuiButton.setIcon(QgsApplication.getThemeIcon("console/iconQtGuiConsole.png")) - self.loadQtGuiButton.setMenuRole(QAction.PreferencesRole) - self.loadQtGuiButton.setIconVisibleInMenu(True) - self.loadQtGuiButton.setToolTip(loadQtGuiBt) - self.loadQtGuiButton.setText(loadQtGuiBt) - ## Action for Run script - runBt = QCoreApplication.translate("PythonConsole", "Run command") - self.runButton = QAction(self) - self.runButton.setCheckable(False) - self.runButton.setEnabled(True) - self.runButton.setIcon(QgsApplication.getThemeIcon("console/iconRunConsole.png")) - self.runButton.setMenuRole(QAction.PreferencesRole) - self.runButton.setIconVisibleInMenu(True) - self.runButton.setToolTip(runBt) - self.runButton.setText(runBt) - ## Help action - helpBt = QCoreApplication.translate("PythonConsole", "Help") - self.helpButton = QAction(self) - self.helpButton.setCheckable(False) - self.helpButton.setEnabled(True) - self.helpButton.setIcon(QgsApplication.getThemeIcon("console/iconHelpConsole.png")) - self.helpButton.setMenuRole(QAction.PreferencesRole) - self.helpButton.setIconVisibleInMenu(True) - self.helpButton.setToolTip(helpBt) - self.helpButton.setText(helpBt) - - self.toolBar = QToolBar() - self.toolBar.setEnabled(True) - self.toolBar.setFocusPolicy(Qt.NoFocus) - self.toolBar.setContextMenuPolicy(Qt.DefaultContextMenu) - self.toolBar.setLayoutDirection(Qt.LeftToRight) - self.toolBar.setIconSize(QSize(24, 24)) - self.toolBar.setOrientation(Qt.Vertical) - self.toolBar.setMovable(True) - self.toolBar.setFloatable(True) - self.toolBar.addAction(self.clearButton) - self.toolBar.addAction(self.actionClass) - self.toolBar.addAction(self.runButton) - self.toolBar.addSeparator() - self.toolBar.addAction(self.showEditorButton) - self.toolBar.addSeparator() - self.toolBar.addAction(self.optionsButton) - self.toolBar.addAction(self.helpButton) - - self.toolBarEditor = QToolBar() - # self.toolBarEditor.setStyleSheet('QToolBar{background-color: rgb(%s, %s, %s' % tuple(bkgrcolor) + ');\ - # border-right: 1px solid rgb(%s, %s, %s' % tuple(bordercl) + ');}') - self.toolBarEditor.setEnabled(False) - self.toolBarEditor.setFocusPolicy(Qt.NoFocus) - self.toolBarEditor.setContextMenuPolicy(Qt.DefaultContextMenu) - self.toolBarEditor.setLayoutDirection(Qt.LeftToRight) - self.toolBarEditor.setIconSize(QSize(18, 18)) - self.toolBarEditor.setOrientation(Qt.Vertical) - self.toolBarEditor.setMovable(True) - self.toolBarEditor.setFloatable(True) - self.toolBarEditor.addAction(self.openFileButton) - self.toolBarEditor.addSeparator() - self.toolBarEditor.addAction(self.saveFileButton) - self.toolBarEditor.addAction(self.saveAsFileButton) - self.toolBarEditor.addSeparator() - self.toolBarEditor.addAction(self.findTextButton) - self.toolBarEditor.addSeparator() - self.toolBarEditor.addAction(self.cutEditorButton) - self.toolBarEditor.addAction(self.copyEditorButton) - self.toolBarEditor.addAction(self.pasteEditorButton) - self.toolBarEditor.addSeparator() - self.toolBarEditor.addAction(self.commentEditorButton) - self.toolBarEditor.addAction(self.uncommentEditorButton) - self.toolBarEditor.addSeparator() - self.toolBarEditor.addAction(self.objectListButton) - self.toolBarEditor.addSeparator() - self.toolBarEditor.addAction(self.runScriptEditorButton) - - ## Menu Import Class - self.classMenu = QMenu() - self.classMenu.addAction(self.loadProcessingButton) - self.classMenu.addAction(self.loadQtCoreButton) - self.classMenu.addAction(self.loadQtGuiButton) - cM = self.toolBar.widgetForAction(self.actionClass) - cM.setMenu(self.classMenu) - cM.setPopupMode(QToolButton.InstantPopup) - - self.widgetButton = QWidget() - sizePolicy = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.widgetButton.sizePolicy().hasHeightForWidth()) - self.widgetButton.setSizePolicy(sizePolicy) - - self.widgetButtonEditor = QWidget(self.widgetEditor) - sizePolicy = QSizePolicy(QSizePolicy.Fixed, QSizePolicy.Preferred) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.widgetButtonEditor.sizePolicy().hasHeightForWidth()) - self.widgetButtonEditor.setSizePolicy(sizePolicy) - - sizePolicy = QSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.shellOut.sizePolicy().hasHeightForWidth()) - self.shellOut.setSizePolicy(sizePolicy) - - self.shellOut.setVerticalScrollBarPolicy(Qt.ScrollBarAsNeeded) - self.shell.setVerticalScrollBarPolicy(Qt.ScrollBarAsNeeded) - - ##------------ Layout ------------------------------- - - self.mainLayout = QGridLayout(self) - self.mainLayout.setMargin(0) - self.mainLayout.setSpacing(0) - self.mainLayout.addWidget(self.widgetButton, 0, 0, 1, 1) - self.mainLayout.addWidget(self.splitterEditor, 0, 1, 1, 1) - - self.layoutEditor = QGridLayout(self.widgetEditor) - self.layoutEditor.setMargin(0) - self.layoutEditor.setSpacing(0) - self.layoutEditor.addWidget(self.widgetButtonEditor, 0, 0, 2, 1) - self.layoutEditor.addWidget(self.tabEditorWidget, 0, 1, 1, 1) - self.layoutEditor.addWidget(self.widgetFind, 1, 1, 1, 1) - - self.toolBarLayout = QGridLayout(self.widgetButton) - self.toolBarLayout.setMargin(0) - self.toolBarLayout.setSpacing(0) - self.toolBarLayout.addWidget(self.toolBar) - self.toolBarEditorLayout = QGridLayout(self.widgetButtonEditor) - self.toolBarEditorLayout.setMargin(0) - self.toolBarEditorLayout.setSpacing(0) - self.toolBarEditorLayout.addWidget(self.toolBarEditor) - - ## Layout for the find widget - self.layoutFind = QGridLayout(self.widgetFind) - self.layoutFind.setContentsMargins(0, 0, 0, 0) - self.lineEditFind = QgsFilterLineEdit() - placeHolderTxt = QCoreApplication.translate("PythonConsole", "Enter text to find...") - - if QT_VERSION >= 0x40700: - self.lineEditFind.setPlaceholderText(placeHolderTxt) - else: - self.lineEditFind.setToolTip(placeHolderTxt) - self.findNextButton = QToolButton() - self.findNextButton.setEnabled(False) - toolTipfindNext = QCoreApplication.translate("PythonConsole", "Find Next") - self.findNextButton.setToolTip(toolTipfindNext) - self.findNextButton.setIcon(QgsApplication.getThemeIcon("console/iconSearchNextEditorConsole.png")) - self.findNextButton.setIconSize(QSize(24, 24)) - self.findNextButton.setAutoRaise(True) - self.findPrevButton = QToolButton() - self.findPrevButton.setEnabled(False) - toolTipfindPrev = QCoreApplication.translate("PythonConsole", "Find Previous") - self.findPrevButton.setToolTip(toolTipfindPrev) - self.findPrevButton.setIcon(QgsApplication.getThemeIcon("console/iconSearchPrevEditorConsole.png")) - self.findPrevButton.setIconSize(QSize(24, 24)) - self.findPrevButton.setAutoRaise(True) - self.caseSensitive = QCheckBox() - caseSensTr = QCoreApplication.translate("PythonConsole", "Case Sensitive") - self.caseSensitive.setText(caseSensTr) - self.wholeWord = QCheckBox() - wholeWordTr = QCoreApplication.translate("PythonConsole", "Whole Word") - self.wholeWord.setText(wholeWordTr) - self.wrapAround = QCheckBox() - self.wrapAround.setChecked(True) - wrapAroundTr = QCoreApplication.translate("PythonConsole", "Wrap Around") - self.wrapAround.setText(wrapAroundTr) - self.layoutFind.addWidget(self.lineEditFind, 0, 1, 1, 1) - self.layoutFind.addWidget(self.findPrevButton, 0, 2, 1, 1) - self.layoutFind.addWidget(self.findNextButton, 0, 3, 1, 1) - self.layoutFind.addWidget(self.caseSensitive, 0, 4, 1, 1) - self.layoutFind.addWidget(self.wholeWord, 0, 5, 1, 1) - self.layoutFind.addWidget(self.wrapAround, 0, 6, 1, 1) - - ##------------ Add first Tab in Editor ------------------------------- - - #self.tabEditorWidget.newTabEditor(tabName='first', filename=None) - - ##------------ Signal ------------------------------- - - self.findTextButton.toggled.connect(self.findTextEditor) - self.objectListButton.toggled.connect(self.toggleObjectListWidget) - self.commentEditorButton.triggered.connect(self.commentCode) - self.uncommentEditorButton.triggered.connect(self.uncommentCode) - self.runScriptEditorButton.triggered.connect(self.runScriptEditor) - self.cutEditorButton.triggered.connect(self.cutEditor) - self.copyEditorButton.triggered.connect(self.copyEditor) - self.pasteEditorButton.triggered.connect(self.pasteEditor) - self.showEditorButton.toggled.connect(self.toggleEditor) - self.clearButton.triggered.connect(self.shellOut.clearConsole) - self.optionsButton.triggered.connect(self.openSettings) - self.loadProcessingButton.triggered.connect(self.processing) - self.loadQtCoreButton.triggered.connect(self.qtCore) - self.loadQtGuiButton.triggered.connect(self.qtGui) - self.runButton.triggered.connect(self.shell.entered) - self.openFileButton.triggered.connect(self.openScriptFile) - self.saveFileButton.triggered.connect(self.saveScriptFile) - self.saveAsFileButton.triggered.connect(self.saveAsScriptFile) - self.helpButton.triggered.connect(self.openHelp) - self.connect(self.listClassMethod, SIGNAL('itemClicked(QTreeWidgetItem*, int)'), - self.onClickGoToLine) - self.lineEditFind.returnPressed.connect(self._findText) - self.findNextButton.clicked.connect(self._findNext) - self.findPrevButton.clicked.connect(self._findPrev) - self.lineEditFind.textChanged.connect(self._textFindChanged) - - def _findText(self): - self.tabEditorWidget.currentWidget().newEditor.findText(True) - - def _findNext(self): - self.tabEditorWidget.currentWidget().newEditor.findText(True) - - def _findPrev(self): - self.tabEditorWidget.currentWidget().newEditor.findText(False) - - def _textFindChanged(self): - if self.lineEditFind.text(): - self.findNextButton.setEnabled(True) - self.findPrevButton.setEnabled(True) - else: - self.lineEditFind.setStyleSheet('') - self.findNextButton.setEnabled(False) - self.findPrevButton.setEnabled(False) - - def onClickGoToLine(self, item, column): - tabEditor = self.tabEditorWidget.currentWidget().newEditor - if item.text(1) == 'syntaxError': - check = tabEditor.syntaxCheck(fromContextMenu=False) - if check and not tabEditor.isReadOnly(): - self.tabEditorWidget.currentWidget().save() - return - linenr = int(item.text(1)) - itemName = str(item.text(0)) - charPos = itemName.find(' ') - if charPos != -1: - objName = itemName[0:charPos] - else: - objName = itemName - tabEditor.goToLine(objName, linenr) - - def processing(self): - self.shell.commandConsole('processing') - - def qtCore(self): - self.shell.commandConsole('qtCore') - - def qtGui(self): - self.shell.commandConsole('qtGui') - - def toggleEditor(self, checked): - self.splitterObj.show() if checked else self.splitterObj.hide() - if not self.tabEditorWidget: - self.tabEditorWidget.enableToolBarEditor(checked) - self.tabEditorWidget.restoreTabsOrAddNew() - - def toggleObjectListWidget(self, checked): - self.listClassMethod.show() if checked else self.listClassMethod.hide() - - def findTextEditor(self, checked): - self.widgetFind.show() if checked else self.widgetFind.hide() - - def pasteEditor(self): - self.tabEditorWidget.currentWidget().newEditor.paste() - - def cutEditor(self): - self.tabEditorWidget.currentWidget().newEditor.cut() - - def copyEditor(self): - self.tabEditorWidget.currentWidget().newEditor.copy() - - def runScriptEditor(self): - self.tabEditorWidget.currentWidget().newEditor.runScriptCode() - - def commentCode(self): - self.tabEditorWidget.currentWidget().newEditor.commentEditorCode(True) - - def uncommentCode(self): - self.tabEditorWidget.currentWidget().newEditor.commentEditorCode(False) - - def openScriptFile(self): - lastDirPath = self.settings.value("pythonConsole/lastDirPath", "") - openFileTr = QCoreApplication.translate("PythonConsole", "Open File") - fileList = QFileDialog.getOpenFileNames( - self, openFileTr, lastDirPath, "Script file (*.py)") - if fileList: - for pyFile in fileList: - for i in range(self.tabEditorWidget.count()): - tabWidget = self.tabEditorWidget.widget(i) - if tabWidget.path == pyFile: - self.tabEditorWidget.setCurrentWidget(tabWidget) - break - else: - tabName = QFileInfo(pyFile).fileName() - self.tabEditorWidget.newTabEditor(tabName, pyFile) - - lastDirPath = QFileInfo(pyFile).path() - self.settings.setValue("pythonConsole/lastDirPath", pyFile) - self.updateTabListScript(pyFile, action='append') - - def saveScriptFile(self): - tabWidget = self.tabEditorWidget.currentWidget() - try: - tabWidget.save() - except (IOError, OSError), error: - msgText = QCoreApplication.translate('PythonConsole', - 'The file <b>{0}</b> could not be saved. Error: {1}').format(tabWidget.path, - error.strerror) - self.callWidgetMessageBarEditor(msgText, 2, False) - - def saveAsScriptFile(self, index=None): - tabWidget = self.tabEditorWidget.currentWidget() - if not index: - index = self.tabEditorWidget.currentIndex() - if not tabWidget.path: - pathFileName = self.tabEditorWidget.tabText(index) + '.py' - fileNone = True - else: - pathFileName = tabWidget.path - fileNone = False - saveAsFileTr = QCoreApplication.translate("PythonConsole", "Save File As") - filename = QFileDialog.getSaveFileName(self, - saveAsFileTr, - pathFileName, "Script file (*.py)") - if filename: - try: - tabWidget.save(filename) - except (IOError, OSError), error: - msgText = QCoreApplication.translate('PythonConsole', - 'The file <b>{0}</b> could not be saved. Error: {1}').format(tabWidget.path, - error.strerror) - self.callWidgetMessageBarEditor(msgText, 2, False) - if fileNone: - tabWidget.path = None - else: - tabWidget.path = pathFileName - return - - if not fileNone: - self.updateTabListScript(pathFileName, action='remove') - - def openHelp(self): - QgsContextHelp.run( "PythonConsole" ) - - def openSettings(self): - if optionsDialog(self).exec_(): - self.shell.refreshSettingsShell() - self.shellOut.refreshSettingsOutput() - self.tabEditorWidget.refreshSettingsEditor() - - def callWidgetMessageBar(self, text): - self.shellOut.widgetMessageBar(iface, text) - - def callWidgetMessageBarEditor(self, text, level, timed): - self.tabEditorWidget.widgetMessageBar(iface, text, level, timed) - - def updateTabListScript(self, script, action=None): - if action == 'remove': - self.tabListScript.remove(script) - elif action == 'append': - if not self.tabListScript: - self.tabListScript = [] - if script not in self.tabListScript: - self.tabListScript.append(script) - else: - self.tabListScript = [] - self.settings.setValue("pythonConsole/tabScripts", - self.tabListScript) - - def saveSettingsConsole(self): - self.settings.setValue("pythonConsole/splitterConsole", self.splitter.saveState()) - self.settings.setValue("pythonConsole/splitterObj", self.splitterObj.saveState()) - self.settings.setValue("pythonConsole/splitterEditor", self.splitterEditor.saveState()) - - self.shell.writeHistoryFile(True) - - def restoreSettingsConsole(self): - storedTabScripts = self.settings.value("pythonConsole/tabScripts", []) - self.tabListScript = storedTabScripts - self.splitter.restoreState(self.settings.value("pythonConsole/splitterConsole", QByteArray())) - self.splitterEditor.restoreState(self.settings.value("pythonConsole/splitterEditor", QByteArray())) - self.splitterObj.restoreState(self.settings.value("pythonConsole/splitterObj", QByteArray())) - -if __name__ == '__main__': - a = QApplication(sys.argv) - console = PythonConsoleWidget() - console.show() - a.exec_() diff --git a/pcr/qgis/console_pyqt4.diff b/pcr/qgis/console_pyqt4.diff new file mode 100644 index 000000000..0e2cedaea --- /dev/null +++ b/pcr/qgis/console_pyqt4.diff @@ -0,0 +1,27 @@ +diff --git a/a/python/console/console.py b/b/python/console/console.py +index c85c107..6406f12 100644 +--- a/python/console/console.py ++++ b/python/console/console.py +@@ -25,7 +25,6 @@ from PyQt4.QtGui import QDockWidget, QToolBar, QToolButton, QWidget,\ + QSplitter, QTreeWidget, QAction, QFileDialog, QCheckBox, QSizePolicy, QMenu, QGridLayout, QApplication, \ + QDesktopServices + from PyQt4.QtGui import QVBoxLayout +-from PyQt4 import pyqtconfig + from qgis.utils import iface + from console_sci import ShellScintilla + from console_output import ShellOutputScintilla +@@ -36,8 +35,13 @@ from qgis.gui import QgsFilterLineEdit + + import sys + +-_console = None ++try: ++ from PyQt4.QtCore import QT_VERSION # works if PyQt4 was built with configure-ng.py ++except ImportError: ++ from PyQt4 import pyqtconfig # works if built with configure.py ++ QT_VERSION = pyqtconfig.Configuration().qt_version + ++_console = None + + def show_console(): + """ called from QGIS to open the console """ diff --git a/pcr/qgis/libre.patch b/pcr/qgis/libre.patch new file mode 100644 index 000000000..bdf9e8e32 --- /dev/null +++ b/pcr/qgis/libre.patch @@ -0,0 +1,85 @@ +--- qgis-2.12.0.orig/resources/cpt-city-qgis-min/selections/blues.xml 2015-10-23 07:10:38.000000000 -0500 ++++ qgis-2.12.0/resources/cpt-city-qgis-min/selections/blues.xml 2015-11-24 01:28:50.854959361 -0500 +@@ -5,10 +5,6 @@ + bathymetric maps</synopsis> + <description>A selection of blues which may be useful for + bathymetric maps.</description> +- <seealsocollects> +- <collect dir="es/skywalker">skywalker</collect> +- <collect dir="es/sea_dreams">sea dreams</collect> +- </seealsocollects> + <gradients> + <gradient dir="cb/seq" file="Blues_09"/> + <gradient dir="cb/seq" file="GnBu_09"/> +--- qgis-2.12.0.orig/resources/cpt-city-qgis-min/selections/div.xml 2015-10-23 07:10:38.000000000 -0500 ++++ qgis-2.12.0/resources/cpt-city-qgis-min/selections/div.xml 2015-11-24 01:29:25.869958926 -0500 +@@ -17,8 +17,6 @@ + <gradient file="bhw2_39" dir="bhw/bhw2"/> + <gradient file="BrBG_11" dir="cb/div"/> + <gradient file="cw1-002" dir="cw/1"/> +- <gradient file="es_landscape_90" dir="es/landscape"/> +- <gradient file="es_landscape_76" dir="es/landscape"/> + <gradient file="fire_active_2" dir="esri/events"/> + <gradient file="seismic" dir="gery"/> + <gradient file="French_flag_smooth" dir="ggr"/> +--- qgis-2.12.0.orig/resources/cpt-city-qgis-min/selections/greens.xml 2015-10-23 07:10:38.000000000 -0500 ++++ qgis-2.12.0/resources/cpt-city-qgis-min/selections/greens.xml 2015-11-24 01:30:17.074187705 -0500 +@@ -4,10 +4,6 @@ + <synopsis>Predominantly green gradients</synopsis> + <description>As Kermit the frog says, it's not + easy being green.</description> +- <seealsocollects> +- <collect dir="es/emerald_dragon">ElvenSword's +- Emerald dragon series</collect> +- </seealsocollects> + <gradients> + <gradient dir="occ/1" file="occ040"/> + <gradient dir="rc" file="girlcat"/> +@@ -20,8 +16,6 @@ + <gradient dir="h5" file="summer"/> + <gradient dir="gps" file="GPS-Nature-Grass"/> + <gradient dir="go2/webtwo" file="green-g1-2"/> +- <gradient dir="es/emerald_dragon" file="es_emerald_dragon_12"/> +- <gradient dir="es/emerald_dragon" file="es_emerald_dragon_10"/> + <gradient dir="cw/2" file="cw2-033"/> + <gradient dir="colo/smorin2002" file="All_kinds_of_green"/> + <gradient dir="colo/angelafaye" file="organic_vegetation"/> +--- qgis-2.12.0.orig/resources/cpt-city-qgis-min/selections/greys.xml 2015-10-23 07:10:38.000000000 -0500 ++++ qgis-2.12.0/resources/cpt-city-qgis-min/selections/greys.xml 2015-11-24 01:30:44.632875607 -0500 +@@ -7,7 +7,6 @@ + <collect dir="tl">Thomas Lotze</collect> + <collect dir="erj">Eric R. Jeschke</collect> + <collect dir="ma/gray">Michele Albert</collect> +- <collect dir="es/platinum">ElvenSword</collect> + </seealsocollects> + <gradients> + <gradient file="Greys_09" dir="cb/seq"/> +@@ -24,7 +23,6 @@ + <gradient file="stripes-six" dir="ocal"/> + <gradient file="power-0.50" dir="tl"/> + <gradient file="grey-g2-3" dir="go2/webtwo"/> +- <gradient file="es_platinum_16" dir="es/platinum"/> + <gradient file="rock" dir="neota/env"/> + </gradients> + </selection> +--- qgis-2.12.0.orig/resources/cpt-city-qgis-min/selections/reds.xml 2015-10-23 07:10:38.000000000 -0500 ++++ qgis-2.12.0/resources/cpt-city-qgis-min/selections/reds.xml 2015-11-24 01:31:10.928290321 -0500 +@@ -5,7 +5,6 @@ + <description>A selection of red, pinks and oranges.</description> + <seealsocollects> + <collect dir="nd/red">Nevit Dilmen</collect> +- <collect dir="es/rosa">ElvenSword</collect> + </seealsocollects> + <gradients> + <gradient file="Reds_09" dir="cb/seq"/> +--- qgis-2.12.0.orig/resources/cpt-city-qgis-min/selections/transparency.xml 2015-10-23 07:10:38.000000000 -0500 ++++ qgis-2.12.0/resources/cpt-city-qgis-min/selections/transparency.xml 2015-11-24 01:31:37.497025355 -0500 +@@ -10,8 +10,6 @@ + <collect dir="ggr">GIMP</collect> + </seealsocollects> + <gradients> +- <gradient file="es_platinum_01" dir="es/platinum"/> +- <gradient file="es_seadreams_14" dir="es/sea_dreams"/> + <gradient file="Aneurism" dir="ggr"/> + <gradient file="Flare_Glow_Radial_1" dir="ggr"/> + <gradient file="Radial_Rainbow_Hoop" dir="ggr"/> |