mirror of
https://github.com/qgis/QGIS.git
synced 2025-04-13 00:03:09 -04:00
[processing] added progress display in qgsMessageBar
This commit is contained in:
parent
3d775d6913
commit
d69667b838
@ -16,7 +16,6 @@
|
||||
* *
|
||||
***************************************************************************
|
||||
"""
|
||||
from processing import interface
|
||||
|
||||
__author__ = 'Victor Olaya'
|
||||
__date__ = 'August 2012'
|
||||
@ -28,6 +27,8 @@ import processing
|
||||
from PyQt4.QtCore import *
|
||||
from PyQt4.QtGui import *
|
||||
from qgis.core import *
|
||||
from processing import interface
|
||||
from processing.gui.MessageBarProgress import MessageBarProgress
|
||||
from processing.tools import dataobjects
|
||||
from processing.core.ProcessingConfig import ProcessingConfig
|
||||
from processing.core.GeoAlgorithm import GeoAlgorithm
|
||||
@ -341,11 +342,13 @@ class Processing:
|
||||
algEx.start()
|
||||
algEx.wait()
|
||||
else:
|
||||
progress = SilentProgress()
|
||||
#progress = SilentProgress()
|
||||
progress = MessageBarProgress()
|
||||
ret = UnthreadedAlgorithmExecutor.runalg(alg, progress)
|
||||
if onFinish is not None and ret:
|
||||
onFinish(alg, progress)
|
||||
QApplication.restoreOverrideCursor()
|
||||
progress.close()
|
||||
return alg
|
||||
|
||||
|
||||
|
62
python/plugins/processing/gui/MessageBarProgress.py
Normal file
62
python/plugins/processing/gui/MessageBarProgress.py
Normal file
@ -0,0 +1,62 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
***************************************************************************
|
||||
SilentProgress.py
|
||||
---------------------
|
||||
Date : April 2013
|
||||
Copyright : (C) 2013 by Victor Olaya
|
||||
Email : volayaf 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. *
|
||||
* *
|
||||
***************************************************************************
|
||||
"""
|
||||
|
||||
|
||||
__author__ = 'Victor Olaya'
|
||||
__date__ = 'April 2013'
|
||||
__copyright__ = '(C) 2013, Victor Olaya'
|
||||
# This will get replaced with a git SHA1 when you do a git archive
|
||||
__revision__ = '$Format:%H$'
|
||||
|
||||
from processing import interface
|
||||
from PyQt4.QtCore import *
|
||||
from PyQt4 import QtGui
|
||||
|
||||
class MessageBarProgress():
|
||||
|
||||
def __init__(self):
|
||||
self.progressMessageBar = interface.iface.messageBar().createMessage("Executing algorithm")
|
||||
self.progress = QtGui.QProgressBar()
|
||||
self.progress.setMaximum(100)
|
||||
self.progress.setAlignment(Qt.AlignLeft|Qt.AlignVCenter)
|
||||
self.progressMessageBar.layout().addWidget(self.progress)
|
||||
interface.iface.messageBar().pushWidget(self.progressMessageBar, interface.iface.messageBar().INFO)
|
||||
|
||||
def setText(self, text):
|
||||
pass
|
||||
|
||||
def setPercentage(self, i):
|
||||
self.progress.setValue(i)
|
||||
|
||||
def setInfo(self, _):
|
||||
pass
|
||||
|
||||
def setCommand(self, _):
|
||||
pass
|
||||
|
||||
def setDebugInfo(self, _):
|
||||
pass
|
||||
|
||||
def setConsoleInfo(self, _):
|
||||
pass
|
||||
|
||||
def close(self):
|
||||
interface.iface.messageBar().clearWidgets()
|
||||
|
||||
|
@ -196,7 +196,6 @@ def getObjectFromUri(uri, forceLoad = True):
|
||||
These methods are used by the GeoAlgorithm class and allow the developer to use transparently
|
||||
any layer that is loaded into QGIS, without having to worry about its origin'''
|
||||
|
||||
@staticmethod
|
||||
def exportVectorLayer(layer):
|
||||
'''Takes a QgsVectorLayer and returns the filename to refer to it, which allows external
|
||||
apps which support only file-based layers to use it. It performs the necessary export
|
||||
@ -245,8 +244,6 @@ def exportVectorLayer(layer):
|
||||
return unicode(layer.source())
|
||||
|
||||
|
||||
|
||||
@staticmethod
|
||||
def exportRasterLayer(layer):
|
||||
'''Takes a QgsRasterLayer and returns the filename to refer to it, which allows external
|
||||
apps which support only file-based layers to use it. It performs the necessary export
|
||||
@ -259,8 +256,6 @@ def exportRasterLayer(layer):
|
||||
#TODO:Do the conversion here
|
||||
return unicode(layer.source())
|
||||
|
||||
|
||||
@staticmethod
|
||||
def exportTable( table):
|
||||
'''Takes a QgsVectorLayer and returns the filename to refer to its attributes table,
|
||||
which allows external apps which support only file-based layers to use it.
|
||||
|
Loading…
x
Reference in New Issue
Block a user