system de favorit

This commit is contained in:
Tom LAVEILLE 2026-02-11 14:15:22 +01:00
parent 670c698b77
commit 1b54026a13
8 changed files with 487 additions and 227 deletions

View File

@ -25,6 +25,7 @@ from qgis.PyQt.QtWidgets import (
# QMenu, # QMenu,
# QToolButton, # QToolButton,
# QTableWidget, # QTableWidget,
QPushButton,
QTableWidgetItem, QTableWidgetItem,
QMessageBox, QMessageBox,
QVBoxLayout, QVBoxLayout,
@ -101,6 +102,7 @@ class Flux_Editor(QDialog, EDITOR_CLASS):
self.tableWidget.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger(0)) self.tableWidget.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger(0))
self.toolButton.setIcon(QtGui.QIcon(resources_path('ui', 'find.png'))) self.toolButton.setIcon(QtGui.QIcon(resources_path('ui', 'find.png')))
self.toolButton_2.setIcon(QtGui.QIcon(resources_path('ui', 'star.png')))
self.comboBox_2.addItem("SIG") self.comboBox_2.addItem("SIG")
self.comboBox_2.addItem('REF') self.comboBox_2.addItem('REF')
@ -113,6 +115,7 @@ class Flux_Editor(QDialog, EDITOR_CLASS):
self.checkBox.hide() self.checkBox.hide()
# self.checkBox.stateChanged.connect(self.modeCarte) # self.checkBox.stateChanged.connect(self.modeCarte)
self.toolButton.clicked.connect(self.getCanevas) self.toolButton.clicked.connect(self.getCanevas)
self.toolButton_2.clicked.connect(self.filtre_favorit)
layout = QVBoxLayout() layout = QVBoxLayout()
self.lineEdit.textChanged.connect(self.filtre_dynamique) self.lineEdit.textChanged.connect(self.filtre_dynamique)
# self.viewer.textChanged.connect(self.NewTitle) # self.viewer.textChanged.connect(self.NewTitle)
@ -230,8 +233,41 @@ class Flux_Editor(QDialog, EDITOR_CLASS):
def suppression_flux(self): def suppression_flux(self):
self.tableWidget_2.removeRow(self.tableWidget_2.currentRow()) self.tableWidget_2.removeRow(self.tableWidget_2.currentRow())
def AddOrDelToUserFav(self):
selected_items = self.tableWidget.selectedItems()
favorit_statut = selected_items[4].text()
selected_items[4].tableWidget().removeCellWidget(selected_items[4].row(), 4)
schema_name = selected_items[2].text()
table_name = selected_items[3].text()
if favorit_statut == "0":
FAV = "mStarIconDel.png"
selected_items[4].setText("1")
SQLAddFav = """INSERT INTO admin_sig.favtable (utilisateur, schema_name, table_name) VALUES ('""" + user + "','" + schema_name + "','" + table_name + """');"""
if dbtype == sigdb:
cur.execute(SQLAddFav)
con.commit()
else:
FAV = "mStarIconAdd.png"
selected_items[4].setText("0")
SQLDelFav = """DELETE FROM admin_sig.favtable WHERE utilisateur LIKE '""" + user + """' AND schema_name LIKE '""" + schema_name + """' AND table_name LIKE '""" + table_name + """';"""
if dbtype == sigdb:
cur.execute(SQLDelFav)
con.commit()
iconFav = QIcon()
iconFav.addPixmap(QtGui.QPixmap(resources_path('icons', FAV)), QIcon.Mode(0), QIcon.State(1))
self.FavButton = QPushButton(iconFav, "")
selected_items[4].tableWidget().setCellWidget(selected_items[4].row(), 4, self.FavButton)
self.FavButton.clicked.connect(self.AddOrDelToUserFav)
def initialisation_flux(self): def initialisation_flux(self):
self.tableWidget.clear()
if NoSignals == 0: if NoSignals == 0:
# self.tableWidget.clear()
# print('Initiaisation de la connection a la DB: ' + dbtype) # print('Initiaisation de la connection a la DB: ' + dbtype)
if dbtype == sigdb: if dbtype == sigdb:
# self.toolButton.setEnabled(1) # self.toolButton.setEnabled(1)
@ -288,8 +324,19 @@ class Flux_Editor(QDialog, EDITOR_CLASS):
GrandUser = [] GrandUser = []
for grandsFind in list_grands: for grandsFind in list_grands:
GrandUser.append(grandsFind[0]) GrandUser.append(grandsFind[0])
if dbtype == sigdb:
SQLFavTable = "SELECT concat(schema_name, '.', table_name) FROM admin_sig.favtable WHERE utilisateur LIKE '" + user + "';"
cur.execute(SQLFavTable)
list_fav = cur.fetchall()
FavList = []
for favFind in list_fav:
FavList.append(favFind[0])
else:
FavList = []
self.tableWidget.setRowCount(len(list_schema)) self.tableWidget.setRowCount(len(list_schema))
self.tableWidget.setColumnCount(4) self.tableWidget.setColumnCount(5)
i = 0 i = 0
for value in list_schema: for value in list_schema:
if dbtype == sigdb: if dbtype == sigdb:
@ -320,6 +367,20 @@ class Flux_Editor(QDialog, EDITOR_CLASS):
schema_name = str(value[0]) schema_name = str(value[0])
table_name = str(value[1]) table_name = str(value[1])
FavStatut = 0
if (schema_name + '.' + table_name) not in FavList:
FAV = "mStarIconAdd.png"
FavStatut = 0
else:
FAV = "mStarIconDel.png"
FavStatut = 1
iconFav = QIcon()
iconFav.addPixmap(QtGui.QPixmap(resources_path('icons', FAV)), QIcon.Mode(0), QIcon.State(1))
self.FavButton = QPushButton(iconFav, "")
self.FavButton.clicked.connect(self.AddOrDelToUserFav)
if dbtype == refdb:
self.FavButton.setEnabled(False)
if (str(value[0]) + '.' + str(value[1])) in RasterList: if (str(value[0]) + '.' + str(value[1])) in RasterList:
SVG = 'mIconRaster.svg' SVG = 'mIconRaster.svg'
else: else:
@ -337,6 +398,9 @@ class Flux_Editor(QDialog, EDITOR_CLASS):
self.tableWidget.setItem(i, 2, item) self.tableWidget.setItem(i, 2, item)
item = QTableWidgetItem(table_name) item = QTableWidgetItem(table_name)
self.tableWidget.setItem(i, 3, item) self.tableWidget.setItem(i, 3, item)
item = QTableWidgetItem(str(FavStatut))
self.tableWidget.setItem(i, 4, item)
self.tableWidget.setCellWidget(i, 4, self.FavButton)
# if dbtype == sigdb: # if dbtype == sigdb:
if (str(value[0]) + '.' + str(value[1])) in GrandUser: if (str(value[0]) + '.' + str(value[1])) in GrandUser:
@ -379,13 +443,17 @@ class Flux_Editor(QDialog, EDITOR_CLASS):
item = QTableWidgetItem(Project[0]) item = QTableWidgetItem(Project[0])
self.tableWidget.setItem(i, 3, item) self.tableWidget.setItem(i, 3, item)
item = QTableWidgetItem('FavIcon')
self.tableWidget.setItem(i, 4, item)
i = i + 1 i = i + 1
self.tableWidget.setColumnWidth(0, 20) self.tableWidget.setColumnWidth(0, 20)
self.tableWidget.setColumnWidth(1, 70) self.tableWidget.setColumnWidth(1, 70)
self.tableWidget.setColumnWidth(2, 300) self.tableWidget.setColumnWidth(2, 300)
self.tableWidget.setColumnWidth(3, 300) self.tableWidget.setColumnWidth(3, 300)
self.tableWidget.setHorizontalHeaderLabels(["Type", "Code", "Schema", "Table"]) self.tableWidget.setColumnWidth(4, 20)
self.tableWidget.setHorizontalHeaderLabels(["Type", "Code", "Schema", "Table", "Favorit"])
if self.lineEdit.text() != 'Recherche par mots-clés': if self.lineEdit.text() != 'Recherche par mots-clés':
self.filtre_dynamique(self.lineEdit.text()) self.filtre_dynamique(self.lineEdit.text())
@ -403,14 +471,15 @@ class Flux_Editor(QDialog, EDITOR_CLASS):
for column in range(self.tableWidget.columnCount()): for column in range(self.tableWidget.columnCount()):
cloned_item = selected_items[column].clone() cloned_item = selected_items[column].clone()
self.tableWidget_2.setHorizontalHeaderLabels(["Type", "Code", "Schema", "Table"]) self.tableWidget_2.setHorizontalHeaderLabels(["Type", "Code", "Schema", "Table", "Favorit"])
self.tableWidget_2.setColumnCount(4) self.tableWidget_2.setColumnCount(5)
self.tableWidget_2.setItem(selected_row, column, cloned_item) self.tableWidget_2.setItem(selected_row, column, cloned_item)
self.tableWidget_2.setColumnWidth(0, 20) self.tableWidget_2.setColumnWidth(0, 20)
self.tableWidget_2.setColumnWidth(1, 70) self.tableWidget_2.setColumnWidth(1, 70)
self.tableWidget_2.setColumnWidth(2, 300) self.tableWidget_2.setColumnWidth(2, 300)
self.tableWidget_2.setColumnWidth(3, 300) self.tableWidget_2.setColumnWidth(3, 300)
self.tableWidget_2.setColumnWidth(4, 20)
def item_already_exists(self, new_item_text): def item_already_exists(self, new_item_text):
# Assuming you want to compare items in the first column for uniqueness # Assuming you want to compare items in the first column for uniqueness
@ -588,6 +657,18 @@ class Flux_Editor(QDialog, EDITOR_CLASS):
self.comboBox.addItem(baxval[0]) self.comboBox.addItem(baxval[0])
NoSignals = 0 NoSignals = 0
def filtre_favorit(self, filter_fav):
if self.toolButton_2.text() == "0":
self.toolButton_2.setText("1")
for i in range(self.tableWidget.rowCount()):
item = self.tableWidget.item(i, 4)
match = self.toolButton_2.text() not in item.text().lower()
self.tableWidget.setRowHidden(i, match)
elif self.toolButton_2.text() == "1":
self.toolButton_2.setText("0")
for i in range(self.tableWidget.rowCount()):
self.tableWidget.setRowHidden(i, False)
def filtre_dynamique(self, filter_text): def filtre_dynamique(self, filter_text):
if filter_text.find(' ') >= 0: if filter_text.find(' ') >= 0:
filter_text = filter_text.replace(" ", "_") filter_text = filter_text.replace(" ", "_")
@ -595,6 +676,10 @@ class Flux_Editor(QDialog, EDITOR_CLASS):
for j in range(self.tableWidget.columnCount()): for j in range(self.tableWidget.columnCount()):
item = self.tableWidget.item(i, j) item = self.tableWidget.item(i, j)
match = filter_text.lower() not in item.text().lower() match = filter_text.lower() not in item.text().lower()
if match is False:
if self.toolButton_2.text() == "1":
item = self.tableWidget.item(i, 4)
match = self.toolButton_2.text() not in item.text().lower()
self.tableWidget.setRowHidden(i, match) self.tableWidget.setRowHidden(i, match)
if not match: if not match:
break break
@ -637,6 +722,7 @@ class Flux_Editor(QDialog, EDITOR_CLASS):
DepName = QTableWidgetItem('form') DepName = QTableWidgetItem('form')
SchemaName = QTableWidgetItem(e[0][6:]) SchemaName = QTableWidgetItem(e[0][6:])
TableName = QTableWidgetItem(e[1][len(e[0]) + 1:]) TableName = QTableWidgetItem(e[1][len(e[0]) + 1:])
FavoritStatut = QTableWidgetItem('FavIcon')
self.tableWidget.insertRow(row_count) self.tableWidget.insertRow(row_count)
itemIcon = QTableWidgetItem() itemIcon = QTableWidgetItem()
@ -648,6 +734,7 @@ class Flux_Editor(QDialog, EDITOR_CLASS):
self.tableWidget.setItem(row_count, 1, DepName) self.tableWidget.setItem(row_count, 1, DepName)
self.tableWidget.setItem(row_count, 2, SchemaName) self.tableWidget.setItem(row_count, 2, SchemaName)
self.tableWidget.setItem(row_count, 3, TableName) self.tableWidget.setItem(row_count, 3, TableName)
self.tableWidget.setItem(row_count, 3, FavoritStatut)
if TableSomme == 0: if TableSomme == 0:
for j in range(self.tableWidget.columnCount()): for j in range(self.tableWidget.columnCount()):
self.tableWidget.item(row_count, j).setBackground(QtGui.QColor(246, 185, 73, 50)) self.tableWidget.item(row_count, j).setBackground(QtGui.QColor(246, 185, 73, 50))

View File

@ -7,7 +7,7 @@ name=CenRa_FLUX
qgisMinimumVersion=3.0 qgisMinimumVersion=3.0
supportsQt6=True supportsQt6=True
description=Permet d'ouvrire une table dans la base PostGis description=Permet d'ouvrire une table dans la base PostGis
version=3.14 version=3.15
author=Conservatoire d'Espaces Naturels de Rhône-Alpes author=Conservatoire d'Espaces Naturels de Rhône-Alpes
email=si_besoin@cen-rhonealpes.fr email=si_besoin@cen-rhonealpes.fr
@ -32,7 +32,7 @@ icon=icon.png
# experimental flag # experimental flag
experimental=False experimental=False
changelog=<h2>CenRa_FLUX:</h2></br><p><h3>08/12/2025 - Version 3.14: </h3> - message d'erreur pour les drois de couche sur la DB.</p></br><p><h3>08/12/2025 - Version 3.13: </h3> - Detection des droit utilisateur.</p></br><p><h3>25/09/2025 - Version 3.12: </h3> - version +1.</p></br><p><h3>25/09/2025 - Version 3.11: </h3> - Correctife sur les code 00.</p></br><p><h3>24/09/2025 - Version 3.10: </h3> - Erreur sur l ouverture des couche raster. </p></br><p><h3>24/09/2025 - Version 3.9: </h3> - bugfix lier aux extention pgsql.</p></br><p><h3>09/09/2025 - Version 3.8: </h3> - Bug REF fix.</p></br><p><h3>05/09/2025 - Version 3.7: </h3> - Ouverture de projet QGIS contenue dans la base de donnees.</p></br><p><h3>30/07/2025 - Version 3.6: </h3> - Correctife de bug.</p></br><p><h3>29/07/2025 - Version 3.5: </h3> - Bug fix sur les donnee raster.</p></br><p><h3>23/07/2025 - Version 3.4: </h3> - Ouverture raster dans la base SIG.</p></br><p><h3>23/07/2025 - Version 3.3: </h3> - Optimisation des chargement.</p></br><p><h3>22/07/2025 - Version 3.2: </h3> - Visualisation des format raster et vecteur dans REF.</p></br><p><h3>21/07/2025 - Version 3.1: </h3> - Bug fix pour l'ouverture de plus de 5 couches.</p></br><p><h3>19/05/2025 - Version 3.0: </h3> - Compatible PyQt5 et PyQt6.</p></br><p><h3>09/04/2025 - Version 2.9: </h3> - Correctif bug en TT.</p></br><p><h3>09/04/2025 - Version 2.8: </h3> - Optimisation pour le TT.</p></br><p><h3>07/04/2025 - Version 2.7: </h3> - mode debug.</p></br><p><h3>03/04/2025 - Version 2.6: </h3> - Mise a jour de securite.</p></br><p><h3>20/03/2025 - Version 2.5: </h3> - Visualisation distincte des couches ne se trouvant pas dans l'antenne.</p></br><p><h3>13/02/2025 - Version 2.4: </h3> - Ajoute redimensionnement et déplacement mollette.</p></br><p><h3>05/02/2025 - Version 2.3: </h3> - Bouton de visualisation des couches se trouvent uniquement dans le canva de la carte.</p></br><p><h3>07/01/2025 - Version 2.2: </h3> - ByPass du certif ssl ci erreur.</p></br><p><h3>22/10/2024 - Version 2.1:</h3> - Correctif de bug.</br> - Evolution de la limit de 3 à 5. </br></p></br><p><h3>22/10/2024 - Version 2.0:</h3> - Reformatage du code.</br></p></br><p><h3>03/10/2024 - Version 1.14:</h3> - Remonte la fênetre dans la pille.</br></p><p><h3>13/09/2024 - Version 1.13:</h3>- MAJ sur le lien du changelog</br>- Bug-fix: Ouvre MultiPolygone et Polygon séparément.</p></br><p><h3>10/09/2024 - Version 1.11:</h3>- Ouverture de table contenant plusieurs géométries.</p></br><p><h3>26/08/2024 - Version 1.10:</h3>- Ajoute d'un changelog et vérification de mise à jour.</p> changelog=<h2>CenRa_FLUX:</h2></br><p><h3>10/02/2026 - Version 3.15: </h3> - Sauvegarde la recherche.</p></br><p><h3>08/12/2025 - Version 3.14: </h3> - message d'erreur pour les drois de couche sur la DB.</p></br><p><h3>08/12/2025 - Version 3.13: </h3> - Detection des droit utilisateur.</p></br><p><h3>25/09/2025 - Version 3.12: </h3> - version +1.</p></br><p><h3>25/09/2025 - Version 3.11: </h3> - Correctife sur les code 00.</p></br><p><h3>24/09/2025 - Version 3.10: </h3> - Erreur sur l ouverture des couche raster. </p></br><p><h3>24/09/2025 - Version 3.9: </h3> - bugfix lier aux extention pgsql.</p></br><p><h3>09/09/2025 - Version 3.8: </h3> - Bug REF fix.</p></br><p><h3>05/09/2025 - Version 3.7: </h3> - Ouverture de projet QGIS contenue dans la base de donnees.</p></br><p><h3>30/07/2025 - Version 3.6: </h3> - Correctife de bug.</p></br><p><h3>29/07/2025 - Version 3.5: </h3> - Bug fix sur les donnee raster.</p></br><p><h3>23/07/2025 - Version 3.4: </h3> - Ouverture raster dans la base SIG.</p></br><p><h3>23/07/2025 - Version 3.3: </h3> - Optimisation des chargement.</p></br><p><h3>22/07/2025 - Version 3.2: </h3> - Visualisation des format raster et vecteur dans REF.</p></br><p><h3>21/07/2025 - Version 3.1: </h3> - Bug fix pour l'ouverture de plus de 5 couches.</p></br><p><h3>19/05/2025 - Version 3.0: </h3> - Compatible PyQt5 et PyQt6.</p></br><p><h3>09/04/2025 - Version 2.9: </h3> - Correctif bug en TT.</p></br><p><h3>09/04/2025 - Version 2.8: </h3> - Optimisation pour le TT.</p></br><p><h3>07/04/2025 - Version 2.7: </h3> - mode debug.</p></br><p><h3>03/04/2025 - Version 2.6: </h3> - Mise a jour de securite.</p></br><p><h3>20/03/2025 - Version 2.5: </h3> - Visualisation distincte des couches ne se trouvant pas dans l'antenne.</p></br><p><h3>13/02/2025 - Version 2.4: </h3> - Ajoute redimensionnement et déplacement mollette.</p></br><p><h3>05/02/2025 - Version 2.3: </h3> - Bouton de visualisation des couches se trouvent uniquement dans le canva de la carte.</p></br><p><h3>07/01/2025 - Version 2.2: </h3> - ByPass du certif ssl ci erreur.</p></br><p><h3>22/10/2024 - Version 2.1:</h3> - Correctif de bug.</br> - Evolution de la limit de 3 à 5. </br></p></br><p><h3>22/10/2024 - Version 2.0:</h3> - Reformatage du code.</br></p></br><p><h3>03/10/2024 - Version 1.14:</h3> - Remonte la fênetre dans la pille.</br></p><p><h3>13/09/2024 - Version 1.13:</h3>- MAJ sur le lien du changelog</br>- Bug-fix: Ouvre MultiPolygone et Polygon séparément.</p></br><p><h3>10/09/2024 - Version 1.11:</h3>- Ouverture de table contenant plusieurs géométries.</p></br><p><h3>26/08/2024 - Version 1.10:</h3>- Ajoute d'un changelog et vérification de mise à jour.</p>
# deprecated flag (applies to the whole plugin, not just a single version) # deprecated flag (applies to the whole plugin, not just a single version)
deprecated=False deprecated=False

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -9,243 +9,387 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>910</width> <width>890</width>
<height>800</height> <height>810</height>
</rect> </rect>
</property> </property>
<property name="minimumSize"> <property name="minimumSize">
<size> <size>
<width>910</width> <width>600</width>
<height>800</height> <height>400</height>
</size> </size>
</property> </property>
<property name="maximumSize"> <property name="maximumSize">
<size> <size>
<width>910</width> <width>890</width>
<height>800</height> <height>810</height>
</size> </size>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
<string>SIG CEN-RA</string> <string>SIG CEN-RA</string>
</property> </property>
<widget class="QComboBox" name="comboBox"> <property name="sizeGripEnabled">
<property name="geometry"> <bool>false</bool>
<rect> </property>
<x>260</x> <layout class="QGridLayout" name="gridLayout">
<y>130</y> <property name="sizeConstraint">
<width>171</width> <enum>QLayout::SetMaximumSize</enum>
<height>22</height>
</rect>
</property> </property>
<property name="editable"> <property name="leftMargin">
<bool>false</bool> <number>0</number>
</property> </property>
<property name="currentText"> <property name="topMargin">
<string notr="true"/> <number>0</number>
</property> </property>
</widget> <property name="rightMargin">
<widget class="QComboBox" name="comboBox_2"> <number>0</number>
<property name="geometry">
<rect>
<x>370</x>
<y>80</y>
<width>171</width>
<height>22</height>
</rect>
</property> </property>
<property name="editable"> <property name="bottomMargin">
<bool>false</bool> <number>0</number>
</property> </property>
<property name="currentText"> <property name="spacing">
<string notr="true"/> <number>0</number>
</property> </property>
</widget> <item row="0" column="0">
<widget class="QLabel" name="label_3"> <widget class="QScrollArea" name="scrollArea">
<property name="geometry"> <property name="maximumSize">
<rect> <size>
<x>345</x> <width>890</width>
<y>10</y> <height>810</height>
<width>221</width> </size>
<height>71</height> </property>
</rect> <property name="inputMethodHints">
</property> <set>Qt::ImhNoEditMenu|Qt::ImhNoTextHandles</set>
<property name="text"> </property>
<string/> <property name="frameShape">
</property> <enum>QFrame::NoFrame</enum>
<property name="pixmap"> </property>
<pixmap>:/plugins/CenRa_FLUX/logo.jpg</pixmap> <property name="frameShadow">
</property> <enum>QFrame::Sunken</enum>
<property name="scaledContents"> </property>
<bool>true</bool> <property name="lineWidth">
</property> <number>0</number>
</widget> </property>
<widget class="QPushButton" name="pushButton_2"> <property name="midLineWidth">
<property name="geometry"> <number>0</number>
<rect> </property>
<x>370</x> <property name="verticalScrollBarPolicy">
<y>750</y> <enum>Qt::ScrollBarAlwaysOff</enum>
<width>171</width> </property>
<height>23</height> <property name="horizontalScrollBarPolicy">
</rect> <enum>Qt::ScrollBarAlwaysOff</enum>
</property> </property>
<property name="text"> <widget class="QWidget" name="scrollAreaWidgetContents_2">
<string>Charger les couches</string> <property name="geometry">
</property> <rect>
</widget> <x>0</x>
<widget class="QTableWidget" name="tableWidget"> <y>0</y>
<property name="enabled"> <width>890</width>
<bool>true</bool> <height>810</height>
</property> </rect>
<property name="geometry"> </property>
<rect> <property name="maximumSize">
<x>30</x> <size>
<y>170</y> <width>890</width>
<width>850</width> <height>810</height>
<height>281</height> </size>
</rect> </property>
</property> <widget class="QCommandLinkButton" name="commandLinkButton_2">
<property name="selectionMode"> <property name="geometry">
<enum>QAbstractItemView::SingleSelection</enum> <rect>
</property> <x>450</x>
<property name="sortingEnabled"> <y>470</y>
<bool>true</bool> <width>61</width>
</property> <height>61</height>
</widget> </rect>
<widget class="QTableWidget" name="tableWidget_2"> </property>
<property name="geometry"> <property name="text">
<rect> <string/>
<x>30</x> </property>
<y>550</y> <property name="icon">
<width>850</width> <iconset>
<height>181</height> <normaloff>:/plugins/CenRa_FLUX/arrow-up.png</normaloff>:/plugins/CenRa_FLUX/arrow-up.png</iconset>
</rect> </property>
</property> <property name="iconSize">
<property name="selectionMode"> <size>
<enum>QAbstractItemView::SingleSelection</enum> <width>50</width>
</property> <height>40</height>
</widget> </size>
<widget class="QCommandLinkButton" name="commandLinkButton"> </property>
<property name="geometry"> </widget>
<rect> <widget class="QPushButton" name="pushButton_2">
<x>400</x> <property name="geometry">
<y>470</y> <rect>
<width>61</width> <x>360</x>
<height>61</height> <y>750</y>
</rect> <width>171</width>
</property> <height>23</height>
<property name="text"> </rect>
<string/> </property>
</property> <property name="text">
<property name="icon"> <string>Charger les couches</string>
<iconset> </property>
<normaloff>:/plugins/CenRa_FLUX/arrow-bottom.png</normaloff>:/plugins/CenRa_FLUX/arrow-bottom.png</iconset> </widget>
</property> <widget class="QLabel" name="label">
<property name="iconSize"> <property name="geometry">
<size> <rect>
<width>50</width> <x>30</x>
<height>40</height> <y>150</y>
</size> <width>161</width>
</property> <height>16</height>
</widget> </rect>
<widget class="QCommandLinkButton" name="commandLinkButton_2"> </property>
<property name="geometry"> <property name="font">
<rect> <font>
<x>460</x> <family>Calibri</family>
<y>470</y> <pointsize>10</pointsize>
<width>61</width> <italic>false</italic>
<height>61</height> </font>
</rect> </property>
</property> <property name="text">
<property name="text"> <string>Liste des flux disponibles :</string>
<string/> </property>
</property> </widget>
<property name="icon"> <widget class="QTableWidget" name="tableWidget_2">
<iconset> <property name="geometry">
<normaloff>:/plugins/CenRa_FLUX/arrow-up.png</normaloff>:/plugins/CenRa_FLUX/arrow-up.png</iconset> <rect>
</property> <x>20</x>
<property name="iconSize"> <y>550</y>
<size> <width>851</width>
<width>50</width> <height>181</height>
<height>40</height> </rect>
</size> </property>
</property> <property name="inputMethodHints">
</widget> <set>Qt::ImhNoEditMenu|Qt::ImhNoTextHandles</set>
<widget class="QLineEdit" name="lineEdit"> </property>
<property name="enabled"> <property name="selectionMode">
<bool>true</bool> <enum>QAbstractItemView::SingleSelection</enum>
</property> </property>
<property name="geometry"> <property name="selectionBehavior">
<rect> <enum>QAbstractItemView::SelectRows</enum>
<x>480</x> </property>
<y>130</y> </widget>
<width>171</width> <widget class="QComboBox" name="comboBox">
<height>21</height> <property name="geometry">
</rect> <rect>
</property> <x>250</x>
<property name="text"> <y>130</y>
<string>Recherche par mots-clés</string> <width>171</width>
</property> <height>22</height>
<property name="alignment"> </rect>
<set>Qt::AlignCenter</set> </property>
</property> <property name="editable">
<property name="readOnly"> <bool>false</bool>
<bool>false</bool> </property>
</property> <property name="currentText">
<property name="clearButtonEnabled"> <string notr="true"/>
<bool>true</bool> </property>
</property> </widget>
</widget> <widget class="QLineEdit" name="lineEdit">
<widget class="QLabel" name="label"> <property name="enabled">
<property name="geometry"> <bool>true</bool>
<rect> </property>
<x>40</x> <property name="geometry">
<y>150</y> <rect>
<width>161</width> <x>470</x>
<height>16</height> <y>130</y>
</rect> <width>171</width>
</property> <height>21</height>
<property name="font"> </rect>
<font> </property>
<family>Calibri</family> <property name="text">
<pointsize>10</pointsize> <string>Recherche par mots-clés</string>
<italic>false</italic> </property>
</font> <property name="alignment">
</property> <set>Qt::AlignCenter</set>
<property name="text"> </property>
<string>Liste des flux disponibles :</string> <property name="readOnly">
</property> <bool>false</bool>
</widget> </property>
<widget class="QLabel" name="label_2"> <property name="clearButtonEnabled">
<property name="geometry"> <bool>true</bool>
<rect> </property>
<x>30</x> </widget>
<y>530</y> <widget class="QToolButton" name="toolButton">
<width>171</width> <property name="geometry">
<height>16</height> <rect>
</rect> <x>660</x>
</property> <y>130</y>
<property name="font"> <width>21</width>
<font> <height>21</height>
<family>Calibri</family> </rect>
<pointsize>10</pointsize> </property>
<italic>false</italic> <property name="text">
</font> <string/>
</property> </property>
<property name="text"> </widget>
<string>Flux sélectionné(s) à charger :</string> <widget class="QTableWidget" name="tableWidget">
</property> <property name="enabled">
</widget> <bool>true</bool>
<zorder>label_3</zorder> </property>
<zorder>comboBox</zorder> <property name="geometry">
<zorder>comboBox_2</zorder> <rect>
<zorder>pushButton_2</zorder> <x>20</x>
<zorder>tableWidget</zorder> <y>170</y>
<zorder>tableWidget_2</zorder> <width>850</width>
<zorder>commandLinkButton</zorder> <height>281</height>
<zorder>commandLinkButton_2</zorder> </rect>
<zorder>lineEdit</zorder> </property>
<zorder>label</zorder> <property name="sizePolicy">
<zorder>label_2</zorder> <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="editTriggers">
<set>QAbstractItemView::AnyKeyPressed|QAbstractItemView::DoubleClicked</set>
</property>
<property name="selectionMode">
<enum>QAbstractItemView::SingleSelection</enum>
</property>
<property name="selectionBehavior">
<enum>QAbstractItemView::SelectRows</enum>
</property>
<property name="sortingEnabled">
<bool>true</bool>
</property>
</widget>
<widget class="QLabel" name="label_2">
<property name="geometry">
<rect>
<x>20</x>
<y>530</y>
<width>171</width>
<height>16</height>
</rect>
</property>
<property name="font">
<font>
<family>Calibri</family>
<pointsize>10</pointsize>
<italic>false</italic>
</font>
</property>
<property name="text">
<string>Flux sélectionné(s) à charger :</string>
</property>
</widget>
<widget class="QLabel" name="label_3">
<property name="geometry">
<rect>
<x>335</x>
<y>10</y>
<width>221</width>
<height>71</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>:/plugins/CenRa_FLUX/logo.jpg</pixmap>
</property>
<property name="scaledContents">
<bool>true</bool>
</property>
</widget>
<widget class="QComboBox" name="comboBox_2">
<property name="geometry">
<rect>
<x>360</x>
<y>80</y>
<width>171</width>
<height>22</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Ignored" vsizetype="Ignored">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="editable">
<bool>false</bool>
</property>
<property name="currentText">
<string notr="true"/>
</property>
</widget>
<widget class="QCommandLinkButton" name="commandLinkButton">
<property name="geometry">
<rect>
<x>390</x>
<y>470</y>
<width>61</width>
<height>61</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="icon">
<iconset>
<normaloff>:/plugins/CenRa_FLUX/arrow-bottom.png</normaloff>:/plugins/CenRa_FLUX/arrow-bottom.png</iconset>
</property>
<property name="iconSize">
<size>
<width>50</width>
<height>40</height>
</size>
</property>
</widget>
<widget class="QCheckBox" name="checkBox">
<property name="geometry">
<rect>
<x>830</x>
<y>20</y>
<width>70</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QComboBox" name="DeBUG">
<property name="geometry">
<rect>
<x>10</x>
<y>20</y>
<width>71</width>
<height>22</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Ignored" vsizetype="Ignored">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="editable">
<bool>false</bool>
</property>
<property name="currentText">
<string notr="true"/>
</property>
</widget>
<widget class="QTextBrowser" name="viewer">
<property name="geometry">
<rect>
<x>90</x>
<y>10</y>
<width>731</width>
<height>731</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 255, 255,0.50);</string>
</property>
</widget>
</widget>
</widget>
</item>
</layout>
</widget> </widget>
<resources/> <resources/>
<connections/> <connections/>

View File

@ -386,6 +386,35 @@
<string notr="true">background-color: rgba(255, 255, 255,0.50);</string> <string notr="true">background-color: rgba(255, 255, 255,0.50);</string>
</property> </property>
</widget> </widget>
<widget class="QToolButton" name="toolButton_2">
<property name="geometry">
<rect>
<x>700</x>
<y>130</y>
<width>21</width>
<height>21</height>
</rect>
</property>
<property name="text">
<string>0</string>
</property>
</widget>
<zorder>commandLinkButton_2</zorder>
<zorder>pushButton_2</zorder>
<zorder>label</zorder>
<zorder>tableWidget_2</zorder>
<zorder>comboBox</zorder>
<zorder>lineEdit</zorder>
<zorder>toolButton</zorder>
<zorder>tableWidget</zorder>
<zorder>label_2</zorder>
<zorder>label_3</zorder>
<zorder>comboBox_2</zorder>
<zorder>commandLinkButton</zorder>
<zorder>checkBox</zorder>
<zorder>DeBUG</zorder>
<zorder>toolButton_2</zorder>
<zorder>viewer</zorder>
</widget> </widget>
</widget> </widget>
</item> </item>

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -50,9 +50,9 @@
<tags>cenra,sicen</tags> <tags>cenra,sicen</tags>
</pyqgis_plugin> </pyqgis_plugin>
<pyqgis_plugin name="CenRa_FLUX" version="3.14"> <pyqgis_plugin name="CenRa_FLUX" version="3.15">
<description>Depot pour les extensiont QGIS du CEN Rhone-Alpes, sur GitHub.</description> <description>Depot pour les extensiont QGIS du CEN Rhone-Alpes, sur GitHub.</description>
<version>3.14</version> <version>3.15</version>
<qgis_minimum_version>3.16</qgis_minimum_version> <qgis_minimum_version>3.16</qgis_minimum_version>
<homepage>https://plateformesig.cenra-outils.org/</homepage> <homepage>https://plateformesig.cenra-outils.org/</homepage>
<file_name>CenRa_FLUX.zip</file_name> <file_name>CenRa_FLUX.zip</file_name>
@ -61,7 +61,7 @@
<download_url>https://gitea.cenra-outils.org/CEN-RA/Plugin_QGIS/releases/download/latest/CenRa_FLUX.zip</download_url> <download_url>https://gitea.cenra-outils.org/CEN-RA/Plugin_QGIS/releases/download/latest/CenRa_FLUX.zip</download_url>
<uploaded_by>CEN-Rhone-Alpes</uploaded_by> <uploaded_by>CEN-Rhone-Alpes</uploaded_by>
<create_date>2024-02-06</create_date> <create_date>2024-02-06</create_date>
<update_date>2025-12-15</update_date> <update_date>2026-02-10</update_date>
<experimental>False</experimental> <experimental>False</experimental>
<deprecated>False</deprecated> <deprecated>False</deprecated>
<tags>cenra,flux</tags> <tags>cenra,flux</tags>