Compare commits

...

39 Commits
main ... main

Author SHA1 Message Date
684b1fa869 Ajout logos RNGL 2025-03-06 17:26:39 +01:00
2a670b41e8 update version 2025-02-07 14:54:57 +01:00
d1a3192129 update version 2025-02-07 14:51:01 +01:00
124938ff6b adjust polices 2025-02-07 14:48:43 +01:00
36403781ac adjust params position 2025-02-07 14:47:57 +01:00
c8a7d6a209 add logos 2025-02-07 14:46:08 +01:00
0f94dbad98 Remove mdp from repot 2025-02-05 12:14:04 +01:00
6991e83ccc Remove mdp from repot 2025-02-05 12:13:13 +01:00
fb7addbe75 add PythonSQL.py 2025-02-05 12:12:40 +01:00
488dae338f add PythonSQL.py 2025-02-05 12:11:04 +01:00
a507309986 Remove mdp from repot 2025-02-05 12:09:55 +01:00
a3d9d0730c init gitignore 2025-02-05 12:07:31 +01:00
ace0310c2c Update logo CEN 2025-02-05 12:04:45 +01:00
27afebc093 add CEN38 icon 2025-02-04 18:41:56 +01:00
059ba80004 rename CEN-RA icon 2025-02-04 18:41:39 +01:00
2ecb90389a Update template title 2025-02-04 18:37:49 +01:00
3c5d8dc805 init file 2025-02-04 18:28:16 +01:00
ab6d2abb67 Update metadata 2025-02-04 18:27:49 +01:00
923ceeb52f init file 2025-02-04 18:27:03 +01:00
344f02f3de update dimensional parameters 2025-02-04 18:25:21 +01:00
ba39d889b3 transform to 2025-02-04 18:23:44 +01:00
e6e888639f transform to 2025-02-04 18:22:37 +01:00
bf4cb3de7f comment code writing in comments 2025-02-04 18:20:35 +01:00
7ad428ff5d init left_corner.py 2025-02-04 18:19:28 +01:00
c1ceb1eeaf comment code writing in comments 2025-02-04 18:18:25 +01:00
01c3cfcca6 filter & sort modele 2025-02-04 18:13:55 +01:00
0f514e9f51 deactivate function login_base 2025-02-04 18:08:46 +01:00
ca4999737e correction description 2025-02-04 18:07:28 +01:00
ae1db1bba4 deactivate login_base & update plugins.xml URL 2025-02-04 18:06:39 +01:00
69050f3a6f clean password 2025-02-04 18:04:46 +01:00
fd92bbefad Actualiser plugins.xml
Actualisation version plugin
2024-12-11 15:09:41 +01:00
90555a5999 Actualiser plugins.xml 2024-12-06 11:40:14 +01:00
8fc2dff981 Actualiser plugins.xml 2024-12-06 11:36:08 +01:00
a952c37b41 Actualisation xml 2024-11-29 10:05:41 +01:00
0b7912a512 Actualisation xml 2024-11-29 10:05:10 +01:00
6a66140db7 Custom CenIsere 2024-11-28 16:35:32 +01:00
66df248ab8 Renommage des fichiers CenRa en CenIsere 2024-11-28 16:33:11 +01:00
01015e6f46 Renommage en CenIsere_AUTOMAP 2024-11-28 16:28:45 +01:00
1380827465 Remove gitignore 2024-11-28 16:27:11 +01:00
75 changed files with 2597 additions and 505 deletions

21
.gitignore vendored
View File

@ -1,19 +1,2 @@
#Ignores gitignore *.zip
/.gitignore */*/PythonSQL.py
#Ignores all folders
/*
!plugins.xml
#Skip Ignores
!CenRa_AUTOMAP/
!CenRa_COPIE/
!CenRa_FLUX/
!CenRa_METABASE/
!CenRa_POSTGIS/
!CenRa_SICEN/
!CenRa_PAGERENDER/
#ReIgnore
**/__pycache__
**/test/

View File

@ -50,7 +50,7 @@ class PgAutoMap:
maj_verif(NAME) maj_verif(NAME)
# Display About window on first use # Display About window on first use
version = qgis.utils.pluginMetadata('CenRa_AUTOMAP','version') version = qgis.utils.pluginMetadata('CenIsere_AUTOMAP','version')
s = QSettings() s = QSettings()
versionUse = s.value("automap/version", 1, type=str) versionUse = s.value("automap/version", 1, type=str)
if str(versionUse) != str(version) : if str(versionUse) != str(version) :
@ -61,64 +61,65 @@ class PgAutoMap:
def initGui(self): def initGui(self):
""" Build the plugin GUI. """ """ Build the plugin GUI. """
self.toolBar = iface.addToolBar("CenRa_AutoMap") self.toolBar = iface.addToolBar("CenIsere_AutoMap")
self.toolBar.setObjectName("CenRa_AutoMap") self.toolBar.setObjectName("CenIsere_AutoMap")
icon = QIcon(resources_path('icons', 'icon.png')) icon = QIcon(resources_path('icons', 'icon.png'))
# Open the online help # Open the online help
self.help_action = QAction(icon, 'CenRa_AutoMap', iface.mainWindow()) self.help_action = QAction(icon, 'CenIsere_AutoMap', iface.mainWindow())
iface.pluginHelpMenu().addAction(self.help_action) iface.pluginHelpMenu().addAction(self.help_action)
self.help_action.triggered.connect(self.open_help) self.help_action.triggered.connect(self.open_help)
if not self.canvas_editor: if not self.canvas_editor:
self.canvas_editor = AutoMap_Editor() self.canvas_editor = AutoMap_Editor()
self.automap_action = QAction(icon, 'CenRa_AutoMap',None) self.automap_action = QAction(icon, 'CenIsere_AutoMap',None)
self.toolBar.addAction(self.automap_action) self.toolBar.addAction(self.automap_action)
self.automap_action.triggered.connect(self.open_editor) self.automap_action.triggered.connect(self.open_editor)
''' # '''
if not self.locator_filter: # if not self.locator_filter:
self.locator_filter = LocatorFilter(iface) # self.locator_filter = LocatorFilter(iface)
iface.registerLocatorFilter(self.locator_filter) # iface.registerLocatorFilter(self.locator_filter)
@staticmethod # @staticmethod
def check_invalid_connection_names(): # def check_invalid_connection_names():
""" Check for invalid connection names in the QgsSettings. """ # """ Check for invalid connection names in the QgsSettings. """
valid, invalid = validate_connections_names() # valid, invalid = validate_connections_names()
n_invalid = len(invalid) # n_invalid = len(invalid)
if n_invalid == 0: # if n_invalid == 0:
return # return
invalid_text = ', '.join(invalid) # invalid_text = ', '.join(invalid)
msg = QMessageBox() # msg = QMessageBox()
msg.setIcon(QMessageBox.Warning) # msg.setIcon(QMessageBox.Warning)
msg.setWindowTitle(tr('PgMetadata: Database connection(s) not available')) # msg.setWindowTitle(tr('PgMetadata: Database connection(s) not available'))
msg.setText(tr( # msg.setText(tr(
f'{n_invalid} connection(s) listed in PgMetadatas settings are invalid or ' # f'{n_invalid} connection(s) listed in PgMetadatas settings are invalid or '
f'no longer available: {invalid_text}')) # f'no longer available: {invalid_text}'))
msg.setInformativeText(tr( # msg.setInformativeText(tr(
'Do you want to remove these connection(s) from the PgMetadata settings? ' # 'Do you want to remove these connection(s) from the PgMetadata settings? '
'(You can also do this later with the “Set Connections” tool.)')) # '(You can also do this later with the “Set Connections” tool.)'))
msg.setStandardButtons(QMessageBox.Yes | QMessageBox.No) # msg.setStandardButtons(QMessageBox.Yes | QMessageBox.No)
clicked = msg.exec() # clicked = msg.exec()
if clicked == QMessageBox.Yes: # if clicked == QMessageBox.Yes:
iface.messageBar().pushSuccess('PgMetadata', tr(f'{n_invalid} invalid connection(s) removed.')) # iface.messageBar().pushSuccess('PgMetadata', tr(f'{n_invalid} invalid connection(s) removed.'))
store_connections(valid) # store_connections(valid)
if clicked == QMessageBox.No: # if clicked == QMessageBox.No:
iface.messageBar().pushInfo('PgMetadata', tr(f'Keeping {n_invalid} invalid connections.')) # iface.messageBar().pushInfo('PgMetadata', tr(f'Keeping {n_invalid} invalid connections.'))
''' # '''
def open_about_dialog(self): def open_about_dialog(self):
""" """
About dialog About dialog
""" """
dialog = AutoMapAboutDialog(iface) dialog = AutoMapAboutDialog(iface)
dialog.exec_() dialog.exec_()
def open_help(): def open_help():
""" Open the online help. """ """ Open the online help. """
QDesktopServices.openUrl(QUrl('https://plateformesig.cenra-outils.org/')) # QDesktopServices.openUrl(QUrl('https://plateformesig.CenIsere-outils.org/'))
def open_editor(self): def open_editor(self):
self.canvas_editor.show() self.canvas_editor.show()
@ -127,7 +128,7 @@ class PgAutoMap:
def unload(self): def unload(self):
""" Unload the plugin. """ """ Unload the plugin. """
if self.canvas_editor: if self.canvas_editor:
iface.removePluginMenu('CenRa_AutoMap',self.automap_action) iface.removePluginMenu('CenIsere_AutoMap',self.automap_action)
if self.provider: if self.provider:
QgsApplication.processingRegistry().removeProvider(self.provider) QgsApplication.processingRegistry().removeProvider(self.provider)

View File

@ -0,0 +1 @@
# CenIsere_AutoMap

View File

@ -0,0 +1,10 @@
__copyright__ = "Copyright 2021, 3Liz"
__license__ = "GPL version 3"
__email__ = "info@3liz.org"
# noinspection PyPep8Naming
def classFactory(iface): # pylint: disable=invalid-name
_ = iface
from CenIsere_AUTOMAP.CenIsere_AutoMap import PgAutoMap
return PgAutoMap()

View File

@ -12,7 +12,7 @@ ABOUT_FORM_CLASS, _ = uic.loadUiType(
os.path.join( os.path.join(
str(Path(__file__).resolve().parent), str(Path(__file__).resolve().parent),
'tools/ui', 'tools/ui',
'CenRa_AutoMap_about_form.ui' 'CenIsere_AutoMap_about_form.ui'
) )
) )
@ -26,7 +26,7 @@ class AutoMapAboutDialog(QDialog, ABOUT_FORM_CLASS):
self.iface = iface self.iface = iface
self.setupUi(self) self.setupUi(self)
self.viewer.setHtml(devlog('CenRa_AUTOMAP')) self.viewer.setHtml(devlog('CenIsere_AUTOMAP'))
self.rejected.connect(self.onReject) self.rejected.connect(self.onReject)
self.buttonBox.rejected.connect(self.onReject) self.buttonBox.rejected.connect(self.onReject)
@ -43,4 +43,4 @@ class AutoMapAboutDialog(QDialog, ABOUT_FORM_CLASS):
Run some actions when Run some actions when
the user closes the dialog the user closes the dialog
""" """
self.close() self.close()

View File

@ -8,7 +8,6 @@ from pathlib import Path
from xml.dom.minidom import parseString from xml.dom.minidom import parseString
from qgis.gui import * from qgis.gui import *
import qgis import qgis
from importlib import import_module
from qgis.core import ( from qgis.core import (
NULL, NULL,
QgsApplication, QgsApplication,
@ -57,56 +56,49 @@ from qgis.PyQt.QtWidgets import (
QTableWidgetItem, QTableWidgetItem,
QVBoxLayout, QVBoxLayout,
) )
from PyQt5 import QtGui
from qgis.PyQt.QtXml import QDomDocument from qgis.PyQt.QtXml import QDomDocument
from qgis.utils import iface from qgis.utils import iface
import glob import glob
from .tools.resources import ( from .tools.resources import (
load_ui, load_ui,
resources_path, resources_path,
login_base, # login_base,
send_issues, send_issues,
) )
from .issues import CenRa_Issues from .tools.mises_en_pages.canvas import (fletch_canvas)
from .issues import CenIsere_Issues
from .tools.mises_en_pages import carto_standard
from .tools.mises_en_pages import full_page
from .tools.mises_en_pages import demo
from datetime import date from datetime import date
EDITOR_CLASS = load_ui('CenRa_AutoMap_base.ui') EDITOR_CLASS = load_ui('CenIsere_AutoMap_base.ui')
LOGGER = logging.getLogger('CenRa_AutoMap') LOGGER = logging.getLogger('CenIsere_AutoMap')
url_osm = 'https://osm.datagrandest.fr/mapcache/?crs=EPSG:2154&featureCount=10&format=image/png&layers=pure&maxHeight=256&maxWidth=256&styles=&url=https://osm.datagrandest.fr/mapcache' url_osm = 'https://osm.datagrandest.fr/mapcache/?crs=EPSG:2154&featureCount=10&format=image/png&layers=pure&maxHeight=256&maxWidth=256&styles=&url=https://osm.datagrandest.fr/mapcache'
url_ortho = 'http://tiles.craig.fr/ortho/service/?crs=EPSG:2154&featureCount=10&format=image/jpeg&layers=ortho&maxHeight=256&maxWidth=256&styles=&url=http://tiles.craig.fr/ortho/service' url_ortho = 'http://tiles.craig.fr/ortho/service/?crs=EPSG:2154&featureCount=10&format=image/jpeg&layers=ortho&maxHeight=256&maxWidth=256&styles=&url=http://tiles.craig.fr/ortho/service'
url_mnt = 'http://tiles.craig.fr/mnt/crs=EPSG:2154&featureCount=10&format=image/png&layers=relief&maxHeight=256&maxWidth=256&styles=&url=http://tiles.craig.fr/mnt' url_mnt = 'http://tiles.craig.fr/mnt/crs=EPSG:2154&featureCount=10&format=image/png&layers=relief&maxHeight=256&maxWidth=256&styles=&url=http://tiles.craig.fr/mnt'
url_pente = 'http://tiles.craig.fr/mnt/crs=EPSG:2154&featureCount=10&format=image/png&layers=pente&maxHeight=256&maxWidth=256&styles=&url=http://tiles.craig.fr/mnt' url_pente = 'http://tiles.craig.fr/mnt/crs=EPSG:2154&featureCount=10&format=image/png&layers=pente&maxHeight=256&maxWidth=256&styles=&url=http://tiles.craig.fr/mnt'
data_source = [ data_source = [
'CENRA', 'CEN Isère',
'IGN', 'CEN-RA',
'CRAIG', 'IGN',
'OpenStreetMap', 'CRAIG',
'Sandre', 'OpenStreetMap',
'BRGM', 'Sandre',
'MUSÉUM NATIONAL DHISTOIRE NATURELLE', 'BRGM',
"Muséum national d'Histoire naturelle", 'MUSÉUM NATIONAL DHISTOIRE NATURELLE',
'ONF', "Muséum national d'Histoire naturelle",
'20xx LPO', 'ONF',
'ofb.gouv.fr', '20xx LPO',
'Stamen Design', 'ofb.gouv.fr',
'MTES', 'Stamen Design',
'MTES', 'MTES',
'FEDER', 'MTES',
'DREAL Auvergne-Rhône-Alpes', 'FEDER',
'INSEE', 'DREAL Auvergne-Rhône-Alpes',
'DGFiP', 'INSEE',
'Fédération des Conservatoires despaces naturels', 'DGFiP',
'Plan cadastral informatisé - Etalab - juillet 202X', 'Fédération des Conservatoires despaces naturels',
'Parcellaire Express - IGN - 202X', 'Plan cadastral informatisé - Etalab - juillet 202X',
'Parcellaire Express - IGN - 202X',
] ]
A4_size = {'Portrait':{'RIGHT':210,'LEFT':0,'TOP':0,'BOTTOM':297},'Landscape':{'RIGHT':297,'LEFT':0,'TOP':0,'BOTTOM':210}}
A3_size = {'Portrait':{'RIGHT':298,'LEFT':0,'TOP':0,'BOTTOM':420},'Landscape':{'RIGHT':420,'LEFT':0,'TOP':0,'BOTTOM':298}}
class AutoMap_Editor(QDialog, EDITOR_CLASS): class AutoMap_Editor(QDialog, EDITOR_CLASS):
def __init__(self, parent=None): def __init__(self, parent=None):
@ -115,7 +107,6 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
self.setupUi(self) self.setupUi(self)
self.settings = QgsSettings() self.settings = QgsSettings()
self.s = QSettings() self.s = QSettings()
self.setWindowIcon(QtGui.QIcon(resources_path('icons','icon.png')))
path = '' path = ''
ix = 0 ix = 0
@ -139,8 +130,11 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
## On ajoute le nom des templates à la liste déroulante de l'onglet "mises en page" : ## On ajoute le nom des templates à la liste déroulante de l'onglet "mises en page" :
mises_en_page = [] mises_en_page = []
for filename in glob.glob(resources_path("mises_en_pages","*.py")): for filename in glob.glob(resources_path("mises_en_pages","*.qpt")):
if filename.split("/")[-1] == "modele_carto.qpt":
continue
mises_en_page.append(filename) mises_en_page.append(filename)
mises_en_page.sort()
for i, filename in enumerate(mises_en_page): for i, filename in enumerate(mises_en_page):
@ -149,42 +143,32 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
self.comboBox.setCurrentIndex(1) self.comboBox.setCurrentIndex(1)
self.template_parameters = { self.template_parameters = {
'Carte_size': None, 'map_size': None,
'Carte_locals' : None, 'map_position' : None,
'Carte_rotate':None, 'position_map_size' : None,
'Carte_2_size' : None, 'position_map_position' : None,
'Carte_2_locals' : None, 'title_position': None,
'Carte_2_rotate':None, 'title_size': None,
'Legande_size': None, 'subtitle_position': None,
'Legande_locals': None, 'subtitle_size': None,
'Legande_rotate':None, 'logo_position': None,
'Arrow_size': None, 'logo_size': None,
'Arrow_locals': None, 'legend_position': None,
'Arrow_rotate':None, 'legend_size': None,
'Echelle_size': None, 'scalebarnumeric_position':None,
'Echelle_locals': None, 'scalebarnumeric_size':None,
'Echelle_rotate':None, 'scalebar_position': None,
'Logo_size': None, 'scalebar_size': None,
'Logo_locals': None, 'north_position': None,
'Logo_rotate':None, 'north_size': None,
'Titre_size':None, 'credit_text_position': None,
'Titre_locals':None, 'credit_text_size': None,
'Titre_rotate':None, 'credit_text2_position': None,
'Sous_titre_size':None, 'credit_text2_size': None,
'Sous_titre_locals':None, 'image_size':None,
'Sous_titre_rotate':None, 'image_position':None,
'Credit_size': None, 'image_size_2':None,
'Credit_locals': None, 'image_position_2':None,
'Credit_rotate':None,
'Source_size': None,
'Source_locals': None,
'Source_rotate':None,
'Logo_2_size': None,
'Logo_2_locals': None,
'Logo_2_rotate': None,
'Echelle_2_size': None,
'Echelle_2_locals': None,
'Echelle_2_rotate': None,
# Add more variables as needed # Add more variables as needed
} }
self.update_logo_library() self.update_logo_library()
@ -201,7 +185,9 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
for l,logo_x in enumerate(custome_bibliotech): for l,logo_x in enumerate(custome_bibliotech):
logo_library.append(' '+os.path.basename(logo_x)) logo_library.append(' '+os.path.basename(logo_x))
bibliotech = glob.glob(resources_path("logo_library","*.png")) bibliotech_png = glob.glob(resources_path("logo_library","*.png"))
bibliotech_jpeg = glob.glob(resources_path("logo_library","*.jpg"))
bibliotech = [*bibliotech_png, *bibliotech_jpeg]
for l,logo_x in enumerate(bibliotech): for l,logo_x in enumerate(bibliotech):
logo_library.append(os.path.basename(logo_x)) logo_library.append(os.path.basename(logo_x))
self.mComboBox_4.addItems(sorted(logo_library)) self.mComboBox_4.addItems(sorted(logo_library))
@ -439,15 +425,8 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
doc.setContent(template_content) doc.setContent(template_content)
self.layout.loadFromTemplate(doc, QgsReadWriteContext(), True) self.layout.loadFromTemplate(doc, QgsReadWriteContext(), True)
self.layout.setName(layout_name) self.layout.setName(layout_name)
if self.radioButton_6.isChecked() and self.radioButton_7.isChecked():
logo_div = A4_size['Portrait']['RIGHT']
if self.radioButton_6.isChecked() and self.radioButton_8.isChecked():
logo_div = A4_size['Portrait']['BOTTOM']
if self.radioButton_5.isChecked() and self.radioButton_7.isChecked():
logo_div = A3_size['Portrait']['RIGHT']
if self.radioButton_5.isChecked() and self.radioButton_8.isChecked():
logo_div = A3_size['Portrait']['BOTTOM']
if True:#os.path.basename(filename) == "1. Modèle carto standard (consolidé).qpt": if True:#os.path.basename(filename) == "1. Modèle carto standard (consolidé).qpt":
self.actualisation_mise_en_page() self.actualisation_mise_en_page()
@ -460,10 +439,10 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
self.map_modele_test.setExtent(iface.mapCanvas().extent()) self.map_modele_test.setExtent(iface.mapCanvas().extent())
# Position de la carte dans le composeur # Position de la carte dans le composeur
self.map_modele_test.setItemRotation(self.template_parameters['Carte_rotate']) self.map_modele_test.attemptMove(self.template_parameters['map_position'])
self.map_modele_test.attemptResize(self.template_parameters['Carte_size'])
self.map_modele_test.attemptMove(self.template_parameters['Carte_locals'])
# on dimensionne le rendu de la carte (pour référence la page totale est une page A4 donc 297*210) # on dimensionne le rendu de la carte (pour référence la page totale est une page A4 donc 297*210)
self.map_modele_test.attemptResize(self.template_parameters['map_size'])
self.map_modele_test.setKeepLayerSet(True) self.map_modele_test.setKeepLayerSet(True)
self.map_modele_test.setKeepLayerStyles(True) self.map_modele_test.setKeepLayerStyles(True)
if self.radioButton_11.isChecked() == 1: if self.radioButton_11.isChecked() == 1:
@ -477,9 +456,8 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
self.position_map.setExtent(QgsRectangle(641552,6647386, 995856,6331104)) self.position_map.setExtent(QgsRectangle(641552,6647386, 995856,6331104))
self.position_map.setFollowVisibilityPreset(True) self.position_map.setFollowVisibilityPreset(True)
self.position_map.setFollowVisibilityPresetName(self.comboBox_6.currentText()) self.position_map.setFollowVisibilityPresetName(self.comboBox_6.currentText())
self.position_map.setItemRotation(self.template_parameters['Carte_2_rotate']) self.position_map.attemptMove(self.template_parameters['position_map_position'])
self.position_map.attemptResize(self.template_parameters['Carte_2_size']) self.position_map.attemptResize(self.template_parameters['position_map_size'])
self.position_map.attemptMove(self.template_parameters['Carte_2_locals'])
overviewitem = QgsLayoutItemMapOverviewStack(self.position_map) overviewitem = QgsLayoutItemMapOverviewStack(self.position_map)
map_overview = self.position_map.overview() map_overview = self.position_map.overview()
map_overview.setLinkedMap(self.map_modele_test) map_overview.setLinkedMap(self.map_modele_test)
@ -487,28 +465,48 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
overviewitem.addOverview(map_overview) overviewitem.addOverview(map_overview)
self.position_map.refresh() self.position_map.refresh()
self.map_modele_test.setFrameEnabled(True) self.map_modele_test.setFrameEnabled(False)
self.layout.addLayoutItem(self.position_map) self.layout.addLayoutItem(self.position_map)
self.position_map.setId("Carte_locals") self.position_map.setId("carte_position")
self.map_modele_test.refresh() self.map_modele_test.refresh()
self.map_modele_test.setBackgroundColor(QColor(255, 255, 255, 255)) self.map_modele_test.setBackgroundColor(QColor(255, 255, 255, 255))
self.map_modele_test.setFrameEnabled(True)
self.map_modele_test.setFrameEnabled(False)
if self.radioButton_9.isChecked() == 1: if self.radioButton_9.isChecked() == 1:
self.map_modele_test.setAtlasDriven(True) self.map_modele_test.setAtlasDriven(True)
self.layout.addLayoutItem(self.map_modele_test) self.layout.addLayoutItem(self.map_modele_test)
self.map_modele_test.setId("carte_principale") self.map_modele_test.setId("carte_principale")
if self.comboBox.currentText() == "3. Modèle carto standard Cen Isere.qpt":
# Ajout de la vague haute
image1 = QgsLayoutItemPicture(self.layout)
image1.setPicturePath(resources_path("mises_en_pages","vague.png"))
image1.attemptMove(self.template_parameters['image_position'])
image1.attemptResize(self.template_parameters['image_size'])
self.layout.addLayoutItem(image1)
image1.setMode(QgsLayoutItemPicture.FormatRaster)
# Ajout de la vague basse
image2 = QgsLayoutItemPicture(self.layout)
image2.setPicturePath(resources_path("mises_en_pages","vague2.png"))
image2.attemptMove(self.template_parameters['image_position_2'])
image2.attemptResize(self.template_parameters['image_size_2'])
self.layout.addLayoutItem(image2)
image2.setMode(QgsLayoutItemPicture.FormatRaster)
## Ajout d'un titre à la mise en page ## Ajout d'un titre à la mise en page
title = QgsLayoutItemLabel(self.layout) title = QgsLayoutItemLabel(self.layout)
self.layout.addLayoutItem(title) self.layout.addLayoutItem(title)
titre = layout_name titre = layout_name
title.setText(titre) title.setText(titre)
title.setFont(QFont("Calibri", 15, QFont.Bold)) title.setFont(QFont("Museo 700", 15, QFont.Bold))
title.setItemRotation(self.template_parameters['Titre_rotate']) title.setFontColor(QColor(62, 62, 62, 24))
title.attemptResize(self.template_parameters['Titre_size']) title.attemptMove(self.template_parameters['title_position'])
title.attemptMove(self.template_parameters['Titre_locals']) title.attemptResize(self.template_parameters['title_size'])
title.setBackgroundEnabled(True) title.setBackgroundEnabled(True)
title.setBackgroundColor(QColor(255, 255, 255, 130)) title.setBackgroundColor(QColor(255, 255, 255, 130))
self.layout.addItem(title) self.layout.addItem(title)
@ -524,10 +522,10 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
if self.radioButton_9.isChecked() == 1: if self.radioButton_9.isChecked() == 1:
titre = titre + ' [%' + self.comboBox_4.currentText() + '%]' titre = titre + ' [%' + self.comboBox_4.currentText() + '%]'
subtitle.setText(titre) subtitle.setText(titre)
subtitle.setFont(QFont("MS Shell Dlg 2", 10)) subtitle.setFont(QFont("Calibri", 10))
subtitle.setItemRotation(self.template_parameters['Sous_titre_rotate']) subtitle.setFontColor(QColor(0, 69, 148, 58))
subtitle.attemptResize(self.template_parameters['Sous_titre_size']) subtitle.attemptMove(self.template_parameters['subtitle_position'])
subtitle.attemptMove(self.template_parameters['Sous_titre_locals']) subtitle.attemptResize(self.template_parameters['subtitle_size'])
subtitle.setId("SubTitle") subtitle.setId("SubTitle")
subtitle.setBackgroundEnabled(True) subtitle.setBackgroundEnabled(True)
subtitle.setBackgroundColor(QColor(255, 255, 255, 130)) subtitle.setBackgroundColor(QColor(255, 255, 255, 130))
@ -540,10 +538,9 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
logo = QgsLayoutItemPicture(self.layout) logo = QgsLayoutItemPicture(self.layout)
logo.setResizeMode(QgsLayoutItemPicture.Zoom) logo.setResizeMode(QgsLayoutItemPicture.Zoom)
logo.setMode(QgsLayoutItemPicture.FormatRaster) logo.setMode(QgsLayoutItemPicture.FormatRaster)
logo.setItemRotation(self.template_parameters['Logo_rotate']) logo.attemptMove(self.template_parameters['logo_position'])
logo.setFixedSize(self.template_parameters['Logo_size']) logo.setFixedSize(self.template_parameters['logo_size'])
logo.attemptMove(self.template_parameters['Logo_locals']) logo.setPicturePath(resources_path("icons","CEN38.jpg"))
logo.setPicturePath(resources_path("icons","CEN_RA.png"))
logo.setId('logo') logo.setId('logo')
self.layout.addLayoutItem(logo) self.layout.addLayoutItem(logo)
@ -607,9 +604,14 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
legend.setEqualColumnWidth(True) legend.setEqualColumnWidth(True)
legend.setSplitLayer(True) legend.setSplitLayer(True)
legend.setColumnSpace(5) legend.setColumnSpace(5)
legend.setTitle('Légende')
legend.rstyle(QgsLegendStyle.Title).setMargin(1.5) # 1 mm legend.rstyle(QgsLegendStyle.Title).setMargin(1.5) # 1 mm
legend.rstyle(QgsLegendStyle.Title).setFont(QFont("Calibri", 12,QFont.Bold))
legend.rstyle(QgsLegendStyle.Group).setMargin(QgsLegendStyle.Top, 3) legend.rstyle(QgsLegendStyle.Group).setMargin(QgsLegendStyle.Top, 3)
legend.rstyle(QgsLegendStyle.Group).setFont(QFont("Calibri", 10))
legend.rstyle(QgsLegendStyle.Subgroup).setMargin(QgsLegendStyle.Top, 3) legend.rstyle(QgsLegendStyle.Subgroup).setMargin(QgsLegendStyle.Top, 3)
legend.rstyle(QgsLegendStyle.Subgroup).setFont(QFont("Calibri", 10,QFont.Bold))
legend.rstyle(QgsLegendStyle.SymbolLabel).setFont(QFont("Calibri", 10))
legend.setColumnCount(self.spinBox.value()) legend.setColumnCount(self.spinBox.value())
legend.adjustBoxSize() legend.adjustBoxSize()
@ -618,7 +620,8 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
self.layout.refresh() self.layout.refresh()
legend.updateLegend() legend.updateLegend()
legend.attemptMove(self.template_parameters['Legande_locals']) legend.attemptMove(self.template_parameters['legend_position'])
## Ajout de l'échelle numeric à la mise en page ## Ajout de l'échelle numeric à la mise en page
self.scalebarnumeric_qpt = QgsLayoutItemScaleBar(self.layout) self.scalebarnumeric_qpt = QgsLayoutItemScaleBar(self.layout)
@ -630,10 +633,10 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
self.scalebarnumeric_qpt.setNumberOfSegments(2) self.scalebarnumeric_qpt.setNumberOfSegments(2)
self.scalebarnumeric_qpt.setNumberOfSegmentsLeft(0) self.scalebarnumeric_qpt.setNumberOfSegmentsLeft(0)
self.scalebarnumeric_qpt.attemptMove(self.template_parameters['Echelle_locals']) self.scalebarnumeric_qpt.attemptMove(self.template_parameters['scalebarnumeric_position'])
self.scalebarnumeric_qpt.attemptResize(self.template_parameters['Echelle_size']) self.scalebarnumeric_qpt.attemptResize(self.template_parameters['scalebarnumeric_size'])
self.scalebarnumeric_qpt.setItemRotation(self.template_parameters['Echelle_rotate'])
self.scalebarnumeric_qpt.setAlignment(QgsScaleBarSettings.Alignment(1)) self.scalebarnumeric_qpt.setAlignment(QgsScaleBarSettings.Alignment(1))
self.scalebarnumeric_qpt.setFont(QFont("Calibri", 10))
self.scalebarnumeric_qpt.setBackgroundEnabled(True) self.scalebarnumeric_qpt.setBackgroundEnabled(True)
self.scalebarnumeric_qpt.setBackgroundColor(QColor(255, 255, 255, 130)) self.scalebarnumeric_qpt.setBackgroundColor(QColor(255, 255, 255, 130))
@ -649,10 +652,10 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
self.scalebar_qpt.setNumberOfSegments(2) self.scalebar_qpt.setNumberOfSegments(2)
self.scalebar_qpt.setNumberOfSegmentsLeft(0) self.scalebar_qpt.setNumberOfSegmentsLeft(0)
self.scalebar_qpt.attemptMove(self.template_parameters['Echelle_2_locals']) self.scalebar_qpt.attemptMove(self.template_parameters['scalebar_position'])
self.scalebar_qpt.attemptResize(self.template_parameters['Echelle_2_size']) self.scalebar_qpt.attemptResize(self.template_parameters['scalebar_size'])
self.scalebar_qpt.setItemRotation(self.template_parameters['Echelle_2_rotate'])
self.scalebar_qpt.setAlignment(QgsScaleBarSettings.Alignment(1)) self.scalebar_qpt.setAlignment(QgsScaleBarSettings.Alignment(1))
self.scalebar_qpt.setFont(QFont("Calibri", 10))
self.scalebar_qpt.setBackgroundEnabled(True) self.scalebar_qpt.setBackgroundEnabled(True)
self.scalebar_qpt.setBackgroundColor(QColor(255, 255, 255, 130)) self.scalebar_qpt.setBackgroundColor(QColor(255, 255, 255, 130))
@ -663,47 +666,46 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
north = QgsLayoutItemPicture(self.layout) north = QgsLayoutItemPicture(self.layout)
north.setPicturePath(resources_path("mises_en_pages","NorthArrow_02.svg")) north.setPicturePath(resources_path("mises_en_pages","NorthArrow_02.svg"))
self.layout.addLayoutItem(north) self.layout.addLayoutItem(north)
north.attemptMove(self.template_parameters['Arrow_locals']) north.attemptMove(self.template_parameters['north_position'])
north.attemptResize(self.template_parameters['Arrow_size']) north.attemptResize(self.template_parameters['north_size'])
north.setItemRotation(self.template_parameters['Arrow_rotate'])
if self.radioButton_10.isChecked() == 1: if self.radioButton_10.isChecked() == 1:
info_text = ["Source : " + self.mComboBox_3.currentText()][0] info_text = ["Source : ©" + ', ©'.join(self.mComboBox_3.checkedItems())][0]
else: else:
info_text = ["Source : " + self.lineEdit_4.text()][0] info_text = ["Source : ©" + self.lineEdit_4.text()][0]
# ajout note info: # ajout note info:
info = ["Réalisation : " + "CEN Rhône-Alpes (" + date.today().strftime( info = ["Réalisation : " + "CEN Isère (" + date.today().strftime(
"%d/%m/%Y") + ")"] "%d/%m/%Y") + ")"]
credit_text = QgsLayoutItemLabel(self.layout) credit_text = QgsLayoutItemLabel(self.layout)
credit_text.setText(info[0]) credit_text.setText(info[0])
credit_text.setFont(QFont("Calibri", 9)) credit_text.setFont(QFont("Calibri", 9))
credit_text.setHAlign(Qt.AlignRight) credit_text.setHAlign(Qt.AlignRight)
credit_text.setVAlign(Qt.AlignVCenter) credit_text.setVAlign(Qt.AlignVCenter)
credit_text.setItemRotation(-90)
credit_text.setBackgroundEnabled(True)
credit_text.setBackgroundColor(QColor(255, 255, 255, 30))
credit_text2 = QgsLayoutItemLabel(self.layout) credit_text2 = QgsLayoutItemLabel(self.layout)
credit_text2.setText(info_text) credit_text2.setText(info_text)
credit_text2.setFont(QFont("Calibri", 9)) credit_text2.setFont(QFont("Calibri", 9))
credit_text2.setHAlign(Qt.AlignRight) credit_text2.setHAlign(Qt.AlignRight)
credit_text2.setVAlign(Qt.AlignVCenter) credit_text2.setVAlign(Qt.AlignVCenter)
credit_text.setItemRotation(self.template_parameters['Credit_rotate']) credit_text.attemptMove(self.template_parameters['credit_text_position'])
credit_text.attemptResize(self.template_parameters['Credit_size']) credit_text.attemptResize(self.template_parameters['credit_text_size'])
credit_text.attemptMove(self.template_parameters['Credit_locals']) credit_text2.attemptMove(self.template_parameters['credit_text2_position'])
credit_text2.setItemRotation(self.template_parameters['Source_rotate']) credit_text2.attemptResize(self.template_parameters['credit_text2_size'])
credit_text2.attemptResize(self.template_parameters['Source_size'])
credit_text2.attemptMove(self.template_parameters['Source_locals'])
self.layout.addLayoutItem(credit_text) self.layout.addLayoutItem(credit_text)
self.layout.addLayoutItem(credit_text2) self.layout.addLayoutItem(credit_text2)
## Ajout du logo credit en bas à droit de la page ## Ajout du logo credit en bas à droit de la page
len_item = (len(self.mComboBox_4.checkedItems()))
for logo_run in self.mComboBox_4.checkedItems(): for logo_run in self.mComboBox_4.checkedItems():
logo_credit = QgsLayoutItemPicture(self.layout) logo_credit = QgsLayoutItemPicture(self.layout)
logo_credit.setResizeMode(QgsLayoutItemPicture.Zoom) logo_credit.setResizeMode(QgsLayoutItemPicture.Zoom)
logo_credit.setMode(QgsLayoutItemPicture.FormatRaster) logo_credit.setMode(QgsLayoutItemPicture.FormatRaster)
cur_x = self.template_parameters['Logo_2_locals'].x() cur_x = self.template_parameters['logo_credit_position'].x()
logo_credit.attemptMove(self.template_parameters['Logo_2_locals']) logo_credit.attemptMove(self.template_parameters['logo_credit_position'])
logo_credit.setPictureAnchor(4) logo_credit.setPictureAnchor(4)
self.template_parameters['Logo_2_locals'].setX(cur_x+(logo_div/len_item)) self.template_parameters['logo_credit_position'].setX(cur_x+51)
logo_credit.setFixedSize(self.template_parameters['Logo_2_size']) logo_credit.setFixedSize(self.template_parameters['logo_credit_size'])
if logo_run[0] == ' ': if logo_run[0] == ' ':
logo_credit.setPicturePath(self.s.value("automap/logoteck", 1, type=str)+logo_run[1:]) logo_credit.setPicturePath(self.s.value("automap/logoteck", 1, type=str)+logo_run[1:])
else: else:
@ -739,6 +741,10 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
self.close() self.close()
def actualisation_mise_en_page(self): def actualisation_mise_en_page(self):
A4_size = {'Portrait':{'RIGHT':210,'LEFT':0,'TOP':0,'BOTTOM':297},'Landscape':{'RIGHT':297,'LEFT':0,'TOP':0,'BOTTOM':210}}
A3_size = {'Portrait':{'RIGHT':298,'LEFT':0,'TOP':0,'BOTTOM':420},'Landscape':{'RIGHT':420,'LEFT':0,'TOP':0,'BOTTOM':298}}
values_page = self.comboBox.currentText() values_page = self.comboBox.currentText()
if self.radioButton_6.isChecked() and self.radioButton_7.isChecked(): if self.radioButton_6.isChecked() and self.radioButton_7.isChecked():
@ -757,24 +763,18 @@ class AutoMap_Editor(QDialog, EDITOR_CLASS):
pc = self.layout.pageCollection() pc = self.layout.pageCollection()
pc.pages()[0].setPageSize('A3', QgsLayoutItemPage.Landscape) pc.pages()[0].setPageSize('A3', QgsLayoutItemPage.Landscape)
if values_page == "demo.py": self.template_parameters = fletch_canvas(self,values_page)
self.template_parameters = demo.fletch_canvas(self)
if values_page == "carto_standard.py":
self.template_parameters = carto_standard.fletch_canvas(self)
if values_page == "full_page.py":
self.template_parameters = full_page.fletch_canvas(self)
def bar_echelle_auto(self, echelle, bar_echelle): def bar_echelle_auto(self, echelle, bar_echelle):
if True: if True:
if echelle.scale() >= 40000: if echelle.scale() >= 20000:
bar_echelle.setUnits(QgsUnitTypes.DistanceKilometers) bar_echelle.setUnits(QgsUnitTypes.DistanceKilometers)
bar_echelle.setUnitLabel("km") bar_echelle.setUnitLabel("km")
bar_echelle.setUnitsPerSegment(round((echelle.scale()*0.04)/1000)) bar_echelle.setUnitsPerSegment(round((echelle.scale()*0.02)/1000))
else: else:
bar_echelle.setUnits(QgsUnitTypes.DistanceMeters) bar_echelle.setUnits(QgsUnitTypes.DistanceMeters)
bar_echelle.setUnitLabel("m") bar_echelle.setUnitLabel("m")
bar_echelle.setUnitsPerSegment(round(echelle.scale()*0.04)) bar_echelle.setUnitsPerSegment(round(echelle.scale()*0.02))
bar_echelle.update() bar_echelle.update()

View File

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

BIN
CenIsere_AUTOMAP/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

View File

@ -39,9 +39,9 @@ from .tools.resources import (
send_issues, send_issues,
) )
EDITOR_CLASS = load_ui('CenRa_IssuesSend.ui') EDITOR_CLASS = load_ui('CenIsere_IssuesSend.ui')
class CenRa_Issues(QDialog, EDITOR_CLASS): class CenIsere_Issues(QDialog, EDITOR_CLASS):
def __init__(self, parent=None): def __init__(self, parent=None):
_ = parent _ = parent

View File

@ -0,0 +1,48 @@
# This file contains metadata for your plugin.
# This file should be included when you package your plugin.# Mandatory items:
[general]
name=CenIsere_AutoMap
qgisMinimumVersion=3.0
description=CenIsere_AutoMap
version=1.6
author=Conservatoire d'Espaces Naturels Isère
about=Outils de création de mise en page prédéfinis pour simplifier et organiser cette étape.
repository=https://gitea.cenra-outils.org/CEN38/Plugin_QGIS
#homepage=https://plateformesig.cenra-outils.org/
tracker=https://gitea.cenra-outils.org/api/v1/repos/CEN38/Plugin_QGIS/issues
# End of mandatory metadata
# Recommended items:
hasProcessingProvider=no
# Uncomment the following line and add your changelog:
changelog=<h2>CenIsere_AutoMap:</h2></br><p><h3>07/10/2024 - Version 1.6: </h3> - Option de bibliotheque de logo custome.</p></br><p><h3>03/10/2024 - Version 1.5: </h3> - Remonte la fênetre dans la pille.</br> - Gestion du nombre de colonne dans la légend.</br></p></br><p><h3>02/10/2024 - Version 1.4: </h3> - Mise en page plein écrant.</br></p></br><p><h3>01/10/2024 - Version 1.3: </h3> - Récupération du titre et sous-titre pour mise en page existente.</br> - Integration de bibliotheque de logo.</br> - Integration de gestionaire pour les source de donnée.</br> - Mise en place d'une bar d'echelle adaptative. </br></p></br><p><h3>30/09/2024 - Version 1.2: </h3> - Activation du thème. </br> - Ajouter une carte de suivie. </br><p></br><h3>27/09/2024 - Version 1.1: </h3> - Ajout d'une liste déroulante pour les sources de données. </br>- Bouton pour ajouter des fonts de carte customisés. </br>- Fonctionnalité de génération d'atlas. </p></br><p><h3>26/09/2024 - Version 1.0: </h3> - Lancement du plugin CenIsere_AutoMap avec une seul mise en page. </p></br>
# Tags are comma separated with spaces allowed
tags=python
category=Plugins
icon=icon.png
# experimental flag
experimental=False
# deprecated flag (applies to the whole plugin, not just a single version)
deprecated=False
# Since QGIS 3.8, a comma separated list of plugins to be installed
# (or upgraded) can be specified.
# Check the documentation for more information.
# plugin_dependencies=
Category of the plugin: Raster, Vector, Database or Web
# category=CenIsere,mise en page,atlas
# If the plugin can run on QGIS Server.
server=False

View File

@ -9,21 +9,21 @@ if IPAddr[0:11] == "100.100.100": #4269
dbname = "sig4269" dbname = "sig4269"
sigdb="sig4269" sigdb="sig4269"
refdb="ref_geo4269" refdb="ref_geo4269"
password = "McVities" password = "xxxxx"
if IPAddr[0:9] == "192.168.0": #01 if IPAddr[0:9] == "192.168.0": #01
host = "192.168.0.201" host = "192.168.0.201"
port = "5432" port = "5432"
dbname = "sig01" dbname = "sig01"
sigdb="sig01" sigdb="sig01"
refdb="ref_geo01" refdb="ref_geo01"
password = "McVities" password = "xxxxx"
if IPAddr[0:9] == "192.168.1": #0726 if IPAddr[0:9] == "192.168.1": #0726
host = "192.168.1.201" host = "192.168.1.201"
port = "5432" port = "5432"
dbname = "sig0726" dbname = "sig0726"
sigdb="sig0726" sigdb="sig0726"
refdb="ref_geo0726" refdb="ref_geo0726"
password = "McVities" password = "xxxxx"
if sys.platform == 'linux': if sys.platform == 'linux':
os_user = os.environ['USER'] os_user = os.environ['USER']
else: else:

View File

Before

Width:  |  Height:  |  Size: 750 KiB

After

Width:  |  Height:  |  Size: 750 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 163 KiB

View File

Before

Width:  |  Height:  |  Size: 8.7 KiB

After

Width:  |  Height:  |  Size: 8.7 KiB

View File

Before

Width:  |  Height:  |  Size: 286 KiB

After

Width:  |  Height:  |  Size: 286 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

View File

Before

Width:  |  Height:  |  Size: 87 KiB

After

Width:  |  Height:  |  Size: 87 KiB

View File

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 73 KiB

View File

Before

Width:  |  Height:  |  Size: 8.7 KiB

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View File

Before

Width:  |  Height:  |  Size: 165 KiB

After

Width:  |  Height:  |  Size: 165 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

View File

Before

Width:  |  Height:  |  Size: 170 KiB

After

Width:  |  Height:  |  Size: 170 KiB

View File

Before

Width:  |  Height:  |  Size: 86 KiB

After

Width:  |  Height:  |  Size: 86 KiB

View File

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 46 KiB

View File

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

View File

@ -0,0 +1,120 @@
<Layout worldFileMap="" name="test.qpt" printResolution="300" units="mm">
<Snapper snapToGrid="0" snapToItems="1" tolerance="5" snapToGuides="1"/>
<Grid resolution="10" offsetUnits="mm" offsetX="0" resUnits="mm" offsetY="0"/>
<PageCollection>
<symbol name="" clip_to_extent="1" type="fill" force_rhr="0" alpha="1">
<data_defined_properties>
<Option type="Map">
<Option name="name" value="" type="QString"/>
<Option name="properties"/>
<Option name="type" value="collection" type="QString"/>
</Option>
</data_defined_properties>
<layer class="SimpleFill" locked="0" enabled="1" pass="0">
<Option type="Map">
<Option name="border_width_map_unit_scale" value="3x:0,0,0,0,0,0" type="QString"/>
<Option name="color" value="255,255,255,255" type="QString"/>
<Option name="joinstyle" value="miter" type="QString"/>
<Option name="offset" value="0,0" type="QString"/>
<Option name="offset_map_unit_scale" value="3x:0,0,0,0,0,0" type="QString"/>
<Option name="offset_unit" value="MM" type="QString"/>
<Option name="outline_color" value="35,35,35,255" type="QString"/>
<Option name="outline_style" value="no" type="QString"/>
<Option name="outline_width" value="0.26" type="QString"/>
<Option name="outline_width_unit" value="MM" type="QString"/>
<Option name="style" value="solid" type="QString"/>
</Option>
<prop k="border_width_map_unit_scale" v="3x:0,0,0,0,0,0"/>
<prop k="color" v="255,255,255,255"/>
<prop k="joinstyle" v="miter"/>
<prop k="offset" v="0,0"/>
<prop k="offset_map_unit_scale" v="3x:0,0,0,0,0,0"/>
<prop k="offset_unit" v="MM"/>
<prop k="outline_color" v="35,35,35,255"/>
<prop k="outline_style" v="no"/>
<prop k="outline_width" v="0.26"/>
<prop k="outline_width_unit" v="MM"/>
<prop k="style" v="solid"/>
<data_defined_properties>
<Option type="Map">
<Option name="name" value="" type="QString"/>
<Option name="properties"/>
<Option name="type" value="collection" type="QString"/>
</Option>
</data_defined_properties>
</layer>
</symbol>
<LayoutItem zValue="0" id="" itemRotation="0" position="0,0,mm" frame="false" templateUuid="{5c80221d-7561-455b-94fd-69a27d877679}" referencePoint="0" opacity="1" frameJoinStyle="miter" uuid="{5c80221d-7561-455b-94fd-69a27d877679}" blendMode="0" size="297,210,mm" groupUuid="" outlineWidthM="0.3,mm" positionOnPage="0,0,mm" type="65638" excludeFromExports="0" positionLock="false" background="true" visibility="1">
<FrameColor green="0" blue="0" red="0" alpha="255"/>
<BackgroundColor green="255" blue="255" red="255" alpha="255"/>
<LayoutObject>
<dataDefinedProperties>
<Option type="Map">
<Option name="name" value="" type="QString"/>
<Option name="properties"/>
<Option name="type" value="collection" type="QString"/>
</Option>
</dataDefinedProperties>
<customproperties>
<Option/>
</customproperties>
</LayoutObject>
<symbol name="" clip_to_extent="1" type="fill" force_rhr="0" alpha="1">
<data_defined_properties>
<Option type="Map">
<Option name="name" value="" type="QString"/>
<Option name="properties"/>
<Option name="type" value="collection" type="QString"/>
</Option>
</data_defined_properties>
<layer class="SimpleFill" locked="0" enabled="1" pass="0">
<Option type="Map">
<Option name="border_width_map_unit_scale" value="3x:0,0,0,0,0,0" type="QString"/>
<Option name="color" value="255,255,255,255" type="QString"/>
<Option name="joinstyle" value="miter" type="QString"/>
<Option name="offset" value="0,0" type="QString"/>
<Option name="offset_map_unit_scale" value="3x:0,0,0,0,0,0" type="QString"/>
<Option name="offset_unit" value="MM" type="QString"/>
<Option name="outline_color" value="35,35,35,255" type="QString"/>
<Option name="outline_style" value="no" type="QString"/>
<Option name="outline_width" value="0.26" type="QString"/>
<Option name="outline_width_unit" value="MM" type="QString"/>
<Option name="style" value="solid" type="QString"/>
</Option>
<prop k="border_width_map_unit_scale" v="3x:0,0,0,0,0,0"/>
<prop k="color" v="255,255,255,255"/>
<prop k="joinstyle" v="miter"/>
<prop k="offset" v="0,0"/>
<prop k="offset_map_unit_scale" v="3x:0,0,0,0,0,0"/>
<prop k="offset_unit" v="MM"/>
<prop k="outline_color" v="35,35,35,255"/>
<prop k="outline_style" v="no"/>
<prop k="outline_width" v="0.26"/>
<prop k="outline_width_unit" v="MM"/>
<prop k="style" v="solid"/>
<data_defined_properties>
<Option type="Map">
<Option name="name" value="" type="QString"/>
<Option name="properties"/>
<Option name="type" value="collection" type="QString"/>
</Option>
</data_defined_properties>
</layer>
</symbol>
</LayoutItem>
<GuideCollection visible="1"/>
</PageCollection>
<customproperties>
<Option type="Map">
<Option name="atlasRasterFormat" value="png" type="QString"/>
<Option name="imageAntialias" value="true" type="bool"/>
<Option name="imageCropMarginBottom" value="0" type="int"/>
<Option name="imageCropMarginLeft" value="0" type="int"/>
<Option name="imageCropMarginRight" value="0" type="int"/>
<Option name="imageCropMarginTop" value="0" type="int"/>
<Option name="imageCropToContents" value="false" type="bool"/>
<Option name="singleFile" value="true" type="bool"/>
</Option>
</customproperties>
<Atlas coverageLayer="" pageNameExpression="" filterFeatures="0" filenamePattern="'output_'||@atlas_featurenumber" enabled="0" hideCoverage="0" sortFeatures="0"/>
</Layout>

View File

@ -0,0 +1,114 @@
<Layout units="mm" worldFileMap="" printResolution="300" name="3. Modèle_carto_standard_cenIsere">
<Snapper snapToGuides="1" tolerance="5" snapToItems="1" snapToGrid="0"/>
<Grid offsetUnits="mm" resUnits="mm" resolution="10" offsetX="0" offsetY="0"/>
<PageCollection>
<symbol clip_to_extent="1" force_rhr="0" type="fill" name="" alpha="1">
<data_defined_properties>
<Option type="Map">
<Option value="" type="QString" name="name"/>
<Option name="properties"/>
<Option value="collection" type="QString" name="type"/>
</Option>
</data_defined_properties>
<layer locked="0" pass="0" enabled="1" class="SimpleFill">
<Option type="Map">
<Option value="3x:0,0,0,0,0,0" type="QString" name="border_width_map_unit_scale"/>
<Option value="255,255,255,255" type="QString" name="color"/>
<Option value="miter" type="QString" name="joinstyle"/>
<Option value="0,0" type="QString" name="offset"/>
<Option value="3x:0,0,0,0,0,0" type="QString" name="offset_map_unit_scale"/>
<Option value="MM" type="QString" name="offset_unit"/>
<Option value="35,35,35,255" type="QString" name="outline_color"/>
<Option value="no" type="QString" name="outline_style"/>
<Option value="0.26" type="QString" name="outline_width"/>
<Option value="MM" type="QString" name="outline_width_unit"/>
<Option value="solid" type="QString" name="style"/>
</Option>
<prop v="3x:0,0,0,0,0,0" k="border_width_map_unit_scale"/>
<prop v="255,255,255,255" k="color"/>
<prop v="miter" k="joinstyle"/>
<prop v="0,0" k="offset"/>
<prop v="3x:0,0,0,0,0,0" k="offset_map_unit_scale"/>
<prop v="MM" k="offset_unit"/>
<prop v="35,35,35,255" k="outline_color"/>
<prop v="no" k="outline_style"/>
<prop v="0.26" k="outline_width"/>
<prop v="MM" k="outline_width_unit"/>
<prop v="solid" k="style"/>
<data_defined_properties>
<Option type="Map">
<Option value="" type="QString" name="name"/>
<Option name="properties"/>
<Option value="collection" type="QString" name="type"/>
</Option>
</data_defined_properties>
</layer>
</symbol>
<LayoutItem type="65638" zValue="0" blendMode="0" referencePoint="0" frameJoinStyle="miter" outlineWidthM="0.3,mm" frame="false" groupUuid="" itemRotation="0" excludeFromExports="0" background="true" opacity="1" visibility="1" size="297,210,mm" positionOnPage="0,0,mm" id="" templateUuid="{2b090846-ab96-44d2-b168-90e1bcb35427}" uuid="{2b090846-ab96-44d2-b168-90e1bcb35427}" position="0,0,mm" positionLock="false">
<FrameColor red="0" blue="0" green="0" alpha="255"/>
<BackgroundColor red="255" blue="255" green="255" alpha="255"/>
<LayoutObject>
<dataDefinedProperties>
<Option type="Map">
<Option value="" type="QString" name="name"/>
<Option name="properties"/>
<Option value="collection" type="QString" name="type"/>
</Option>
</dataDefinedProperties>
<customproperties>
<Option/>
</customproperties>
</LayoutObject>
<symbol clip_to_extent="1" force_rhr="0" type="fill" name="" alpha="1">
<data_defined_properties>
<Option type="Map">
<Option value="" type="QString" name="name"/>
<Option name="properties"/>
<Option value="collection" type="QString" name="type"/>
</Option>
</data_defined_properties>
<layer locked="0" pass="0" enabled="1" class="SimpleFill">
<Option type="Map">
<Option value="3x:0,0,0,0,0,0" type="QString" name="border_width_map_unit_scale"/>
<Option value="255,255,255,255" type="QString" name="color"/>
<Option value="miter" type="QString" name="joinstyle"/>
<Option value="0,0" type="QString" name="offset"/>
<Option value="3x:0,0,0,0,0,0" type="QString" name="offset_map_unit_scale"/>
<Option value="MM" type="QString" name="offset_unit"/>
<Option value="35,35,35,255" type="QString" name="outline_color"/>
<Option value="no" type="QString" name="outline_style"/>
<Option value="0.26" type="QString" name="outline_width"/>
<Option value="MM" type="QString" name="outline_width_unit"/>
<Option value="solid" type="QString" name="style"/>
</Option>
<prop v="3x:0,0,0,0,0,0" k="border_width_map_unit_scale"/>
<prop v="255,255,255,255" k="color"/>
<prop v="miter" k="joinstyle"/>
<prop v="0,0" k="offset"/>
<prop v="3x:0,0,0,0,0,0" k="offset_map_unit_scale"/>
<prop v="MM" k="offset_unit"/>
<prop v="35,35,35,255" k="outline_color"/>
<prop v="no" k="outline_style"/>
<prop v="0.26" k="outline_width"/>
<prop v="MM" k="outline_width_unit"/>
<prop v="solid" k="style"/>
<data_defined_properties>
<Option type="Map">
<Option value="" type="QString" name="name"/>
<Option name="properties"/>
<Option value="collection" type="QString" name="type"/>
</Option>
</data_defined_properties>
</layer>
</symbol>
</LayoutItem>
<GuideCollection visible="1"/>
</PageCollection>
<customproperties>
<Option type="Map">
<Option value="png" type="QString" name="atlasRasterFormat"/>
<Option value="true" type="bool" name="singleFile"/>
</Option>
</customproperties>
<Atlas filterFeatures="0" pageNameExpression="" filenamePattern="'output_'||@atlas_featurenumber" hideCoverage="0" enabled="0" sortFeatures="0" coverageLayer=""/>
</Layout>

View File

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 5.6 KiB

View File

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -0,0 +1,492 @@
from qgis.core import (
QgsLayoutSize,
QgsUnitTypes,
QgsLayoutPoint,
)
def fletch_canvas(self,values_page):
### Modèle carto standard ###
if values_page == '1. Modèle carto standard.qpt':
if self.radioButton_6.isChecked() and self.radioButton_7.isChecked():
self.template_parameters['position_map_size'] = QgsLayoutSize(50, 50, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['position_map_position'] = QgsLayoutPoint(2.5, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_size'] = QgsLayoutSize(199, 175+47, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_position'] = QgsLayoutPoint(5, 25, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_size'] = QgsLayoutSize(200, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_size'] = QgsLayoutSize(200, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_position'] = QgsLayoutPoint(5, 12, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_size'] = QgsLayoutSize(46, 16, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_size'] = QgsLayoutSize(50, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_position'] = QgsLayoutPoint(5, 275, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_size'] = QgsLayoutSize(405, 203, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_position'] = QgsLayoutPoint(5, 205+47, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_size'] = QgsLayoutSize(55, 5, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_position'] = QgsLayoutPoint(145, 228+47, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_size'] = QgsLayoutSize(55, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_position'] = QgsLayoutPoint(145, 215+47, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_size'] = QgsLayoutSize(12, 12, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_position'] = QgsLayoutPoint(193, 214+47, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_size'] = QgsLayoutSize(50, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_position'] = QgsLayoutPoint(200, 75, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_size'] = QgsLayoutSize(100, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_position'] = QgsLayoutPoint(104, 201+47, QgsUnitTypes.LayoutMillimeters)
if self.radioButton_6.isChecked() and self.radioButton_8.isChecked():
self.template_parameters['position_map_size'] = QgsLayoutSize(100, 100, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['position_map_position'] = QgsLayoutPoint(6, 23, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_size'] = QgsLayoutSize(285, 145, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_position'] = QgsLayoutPoint(6, 23, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_size'] = QgsLayoutSize(286, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_size'] = QgsLayoutSize(286, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_position'] = QgsLayoutPoint(5, 10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_size'] = QgsLayoutSize(46, 16, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_size'] = QgsLayoutSize(50, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_position'] = QgsLayoutPoint(5, 185, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_size'] = QgsLayoutSize(405, 203, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_position'] = QgsLayoutPoint(5, 168, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_size'] = QgsLayoutSize(55, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_position'] = QgsLayoutPoint(207, 193, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_size'] = QgsLayoutSize(55, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_position'] = QgsLayoutPoint(207, 180, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_size'] = QgsLayoutSize(8.4, 12.5, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_position'] = QgsLayoutPoint(273, 182, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_size'] = QgsLayoutSize(50, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_position'] = QgsLayoutPoint(287, 123, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_size'] = QgsLayoutSize(100, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_position'] = QgsLayoutPoint(189, 168.5, QgsUnitTypes.LayoutMillimeters)
if self.radioButton_5.isChecked() and self.radioButton_7.isChecked():
self.template_parameters['map_size'] = QgsLayoutSize(285, 260, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_position'] = QgsLayoutPoint(6, 23, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_size'] = QgsLayoutSize(286, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_size'] = QgsLayoutSize(286, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_position'] = QgsLayoutPoint(5, 10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_size'] = QgsLayoutSize(46, 16, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_size'] = QgsLayoutSize(50, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_position'] = QgsLayoutPoint(5, 395, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_size'] = QgsLayoutSize(405, 203, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_position'] = QgsLayoutPoint(5, 284, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_size'] = QgsLayoutSize(50, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_position'] = QgsLayoutPoint(207, 310, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_size'] = QgsLayoutSize(50, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_position'] = QgsLayoutPoint(207, 298, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_size'] = QgsLayoutSize(8.4, 12.5, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_position'] = QgsLayoutPoint(273, 297, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_size'] = QgsLayoutSize(50, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_position'] = QgsLayoutPoint(287, 123, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_size'] = QgsLayoutSize(100, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_position'] = QgsLayoutPoint(189, 284, QgsUnitTypes.LayoutMillimeters)
if self.radioButton_5.isChecked() and self.radioButton_8.isChecked():
self.template_parameters['map_size'] = QgsLayoutSize(408.5, 222, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_position'] = QgsLayoutPoint(5, 23.5, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_size'] = QgsLayoutSize(409, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_size'] = QgsLayoutSize(409, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_position'] = QgsLayoutPoint(5, 10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_size'] = QgsLayoutSize(46, 16, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_size'] = QgsLayoutSize(50, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_position'] = QgsLayoutPoint(5, 275, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_size'] = QgsLayoutSize(405, 203, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_position'] = QgsLayoutPoint(5, 249, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_size'] = QgsLayoutSize(55, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_position'] = QgsLayoutPoint(323, 282, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_size'] = QgsLayoutSize(55, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_position'] = QgsLayoutPoint(323, 270, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_size'] = QgsLayoutSize(8.4, 12.5, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_position'] = QgsLayoutPoint(402, 270, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_size'] = QgsLayoutSize(50, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_position'] = QgsLayoutPoint(415, 123, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_size'] = QgsLayoutSize(100, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_position'] = QgsLayoutPoint(313, 247, QgsUnitTypes.LayoutMillimeters)
### Modèle carto plein page ###
if values_page == '2. Modèle carto plein page.qpt':
if self.radioButton_6.isChecked() and self.radioButton_7.isChecked():
self.template_parameters['position_map_size'] = QgsLayoutSize(50, 50, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['position_map_position'] = QgsLayoutPoint(2.5, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_size'] = QgsLayoutSize(210, 297, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_position'] = QgsLayoutPoint(0, 0, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_size'] = QgsLayoutSize(200, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_size'] = QgsLayoutSize(200, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_position'] = QgsLayoutPoint(5, 10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_size'] = QgsLayoutSize(48, 17, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_size'] = QgsLayoutSize(50, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_position'] = QgsLayoutPoint(5, 275, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_size'] = QgsLayoutSize(405, 203, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_position'] = QgsLayoutPoint(133, 215, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_size'] = QgsLayoutSize(64, 7, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_position'] = QgsLayoutPoint(3, 288, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_size'] = QgsLayoutSize(65, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_position'] = QgsLayoutPoint(3, 273, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_size'] = QgsLayoutSize(12, 12, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_position'] = QgsLayoutPoint(196, 283, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_size'] = QgsLayoutSize(50, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_position'] = QgsLayoutPoint(200, 75, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_size'] = QgsLayoutSize(100, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_position'] = QgsLayoutPoint(55, 292, QgsUnitTypes.LayoutMillimeters)
if self.radioButton_6.isChecked() and self.radioButton_8.isChecked():
self.template_parameters['position_map_size'] = QgsLayoutSize(100, 100, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['position_map_position'] = QgsLayoutPoint(6, 23, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_size'] = QgsLayoutSize(297, 210, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_position'] = QgsLayoutPoint(0, 0, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_size'] = QgsLayoutSize(286, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_size'] = QgsLayoutSize(286, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_position'] = QgsLayoutPoint(5, 10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_size'] = QgsLayoutSize(48, 17, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_size'] = QgsLayoutSize(50, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_position'] = QgsLayoutPoint(5, 185, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_size'] = QgsLayoutSize(405, 203, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_position'] = QgsLayoutPoint(231, 135, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_size'] = QgsLayoutSize(64, 7, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_position'] = QgsLayoutPoint(3, 201, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_size'] = QgsLayoutSize(65, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_position'] = QgsLayoutPoint(3, 186, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_size'] = QgsLayoutSize(12, 12, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_position'] = QgsLayoutPoint(283, 196, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_size'] = QgsLayoutSize(50, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_position'] = QgsLayoutPoint(287, 123, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_size'] = QgsLayoutSize(100, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_position'] = QgsLayoutPoint(98, 205, QgsUnitTypes.LayoutMillimeters)
if self.radioButton_5.isChecked() and self.radioButton_7.isChecked():
self.template_parameters['position_map_size'] = QgsLayoutSize(50, 50, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['position_map_position'] = QgsLayoutPoint(2.5, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_size'] = QgsLayoutSize(297, 420, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_position'] = QgsLayoutPoint(0, 0, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_size'] = QgsLayoutSize(286, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_size'] = QgsLayoutSize(286, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_position'] = QgsLayoutPoint(5, 10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_size'] = QgsLayoutSize(48, 17, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_size'] = QgsLayoutSize(50, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_position'] = QgsLayoutPoint(5, 370, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_size'] = QgsLayoutSize(405, 203, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_position'] = QgsLayoutPoint(219, 324, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_size'] = QgsLayoutSize(64, 7, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_position'] = QgsLayoutPoint(3, 410, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_size'] = QgsLayoutSize(65, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_position'] = QgsLayoutPoint(3, 395, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_size'] = QgsLayoutSize(24, 24, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_position'] = QgsLayoutPoint(271, 394, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_size'] = QgsLayoutSize(50, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_position'] = QgsLayoutPoint(287125, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_size'] = QgsLayoutSize(100, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_position'] = QgsLayoutPoint(98, 414, QgsUnitTypes.LayoutMillimeters)
if self.radioButton_5.isChecked() and self.radioButton_8.isChecked():
self.template_parameters['position_map_size'] = QgsLayoutSize(100, 100, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['position_map_position'] = QgsLayoutPoint(6, 23, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_size'] = QgsLayoutSize(420, 297, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_position'] = QgsLayoutPoint(0, 0, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_size'] = QgsLayoutSize(411, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_size'] = QgsLayoutSize(411, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_position'] = QgsLayoutPoint(5, 10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_size'] = QgsLayoutSize(48, 17, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_size'] = QgsLayoutSize(50, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_position'] = QgsLayoutPoint(5, 247, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_size'] = QgsLayoutSize(405, 203, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_position'] = QgsLayoutPoint(341, 196, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_size'] = QgsLayoutSize(64, 7, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_position'] = QgsLayoutPoint(3, 287, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_size'] = QgsLayoutSize(65, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_position'] = QgsLayoutPoint(3, 272, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_size'] = QgsLayoutSize(24, 24, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_position'] = QgsLayoutPoint(394, 271, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_size'] = QgsLayoutSize(50, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_position'] = QgsLayoutPoint(414, 123, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_size'] = QgsLayoutSize(100, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_position'] = QgsLayoutPoint(185, 292, QgsUnitTypes.LayoutMillimeters)
### Modèle carto standard CEN ISERE###
if values_page == '3. Modèle carto standard Cen Isere.qpt':
if self.radioButton_6.isChecked() and self.radioButton_7.isChecked():
self.template_parameters['position_map_size'] = QgsLayoutSize(50, 50, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['position_map_position'] = QgsLayoutPoint(2.5, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_size'] = QgsLayoutSize(199, 175+47, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_position'] = QgsLayoutPoint(5, 25, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_size'] = QgsLayoutSize(200, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_size'] = QgsLayoutSize(200, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_position'] = QgsLayoutPoint(5, 12, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_size'] = QgsLayoutSize(46, 16, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_size'] = QgsLayoutSize(50, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_position'] = QgsLayoutPoint(5, 275, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_size'] = QgsLayoutSize(405, 203, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_position'] = QgsLayoutPoint(5, 205+47, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_size'] = QgsLayoutSize(55, 5, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_position'] = QgsLayoutPoint(145, 228+47, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_size'] = QgsLayoutSize(55, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_position'] = QgsLayoutPoint(145, 215+47, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_size'] = QgsLayoutSize(12, 12, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_position'] = QgsLayoutPoint(193, 214+47, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_size'] = QgsLayoutSize(50, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_position'] = QgsLayoutPoint(200, 79, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_size'] = QgsLayoutSize(100, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_position'] = QgsLayoutPoint(104, 201+47, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_size'] = QgsLayoutSize(199, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_position'] = QgsLayoutPoint(5, 18, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_size_2'] = QgsLayoutSize(200, 12, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_position_2'] = QgsLayoutPoint(4.5, 194.9+47, QgsUnitTypes.LayoutMillimeters)
if self.radioButton_6.isChecked() and self.radioButton_8.isChecked():
self.template_parameters['position_map_size'] = QgsLayoutSize(100, 100, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['position_map_position'] = QgsLayoutPoint(6, 23, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_size'] = QgsLayoutSize(285, 145, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_position'] = QgsLayoutPoint(6, 23, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_size'] = QgsLayoutSize(286, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_size'] = QgsLayoutSize(286, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_position'] = QgsLayoutPoint(5, 10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_size'] = QgsLayoutSize(46, 16, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_size'] = QgsLayoutSize(50, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_position'] = QgsLayoutPoint(5, 185, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_size'] = QgsLayoutSize(405, 203, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_position'] = QgsLayoutPoint(5, 168, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_size'] = QgsLayoutSize(55, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_position'] = QgsLayoutPoint(207, 193, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_size'] = QgsLayoutSize(55, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_position'] = QgsLayoutPoint(207, 180, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_size'] = QgsLayoutSize(8.4, 12.5, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_position'] = QgsLayoutPoint(273, 182, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_size'] = QgsLayoutSize(50, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_position'] = QgsLayoutPoint(287, 123, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_size'] = QgsLayoutSize(100, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_position'] = QgsLayoutPoint(189, 168.5, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_size'] = QgsLayoutSize(285, 23, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_position'] = QgsLayoutPoint(6, 13, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_size_2'] = QgsLayoutSize(286, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_position_2'] = QgsLayoutPoint(5.5, 162.2, QgsUnitTypes.LayoutMillimeters)
if self.radioButton_5.isChecked() and self.radioButton_7.isChecked():
self.template_parameters['map_size'] = QgsLayoutSize(285, 260, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_position'] = QgsLayoutPoint(6, 23, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_size'] = QgsLayoutSize(286, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_size'] = QgsLayoutSize(286, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_position'] = QgsLayoutPoint(5, 10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_size'] = QgsLayoutSize(46, 16, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_size'] = QgsLayoutSize(50, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_position'] = QgsLayoutPoint(5, 395, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_size'] = QgsLayoutSize(405, 203, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_position'] = QgsLayoutPoint(5, 284, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_size'] = QgsLayoutSize(50, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_position'] = QgsLayoutPoint(207, 310, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_size'] = QgsLayoutSize(50, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_position'] = QgsLayoutPoint(207, 298, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_size'] = QgsLayoutSize(8.4, 12.5, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_position'] = QgsLayoutPoint(273, 297, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_size'] = QgsLayoutSize(50, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_position'] = QgsLayoutPoint(287, 123, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_size'] = QgsLayoutSize(100, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_position'] = QgsLayoutPoint(189, 284, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_size'] = QgsLayoutSize(285, 30, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_position'] = QgsLayoutPoint(6, 13, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_size_2'] = QgsLayoutSize(286, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_position_2'] = QgsLayoutPoint(5.5, 278.2, QgsUnitTypes.LayoutMillimeters)
if self.radioButton_5.isChecked() and self.radioButton_8.isChecked():
self.template_parameters['map_size'] = QgsLayoutSize(408.5, 222, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['map_position'] = QgsLayoutPoint(5, 23.5, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_size'] = QgsLayoutSize(409, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['title_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_size'] = QgsLayoutSize(409, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['subtitle_position'] = QgsLayoutPoint(5, 10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_size'] = QgsLayoutSize(46, 16, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_position'] = QgsLayoutPoint(5, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_size'] = QgsLayoutSize(50, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['logo_credit_position'] = QgsLayoutPoint(5, 275, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_size'] = QgsLayoutSize(405, 203, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['legend_position'] = QgsLayoutPoint(5, 249, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_size'] = QgsLayoutSize(55, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebarnumeric_position'] = QgsLayoutPoint(323, 282, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_size'] = QgsLayoutSize(55, 15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['scalebar_position'] = QgsLayoutPoint(323, 270, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_size'] = QgsLayoutSize(8.4, 12.5, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['north_position'] = QgsLayoutPoint(402, 270, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_size'] = QgsLayoutSize(50, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text_position'] = QgsLayoutPoint(415, 123, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_size'] = QgsLayoutSize(100, 3.9, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['credit_text2_position'] = QgsLayoutPoint(313, 247, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_size'] = QgsLayoutSize(408.5, 38, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_position'] = QgsLayoutPoint(5, 8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_size_2'] = QgsLayoutSize(409.3, 22, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['image_position_2'] = QgsLayoutPoint(4.6, 237.15, QgsUnitTypes.LayoutMillimeters)
# Retour des info #
return self.template_parameters

View File

@ -0,0 +1,167 @@
from qgis.core import (
QgsLayoutSize,
QgsUnitTypes,
QgsLayoutPoint,
)
def fletch_canvas(self):
if self.radioButton_6.isChecked():
values_page = 'A4'
else:
values_page = 'A3'
if self.radioButton_7.isChecked():
page_rotate = 'Portrait'
else:
page_rotate = 'Landscape'
if page_rotate == 'Portrait':
if values_page == 'A4':
self.template_parameters['Carte_size'] = QgsLayoutSize(168.0,262, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_locals'] = QgsLayoutPoint(41, 1, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_rotate'] = 0
self.template_parameters['Carte_2_size'] = QgsLayoutSize(78.85714285714286,70, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_2_locals'] = QgsLayoutPoint(130, 1, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_2_rotate'] = 0
self.template_parameters['Legande_size'] = QgsLayoutSize(168.0,32, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Legande_locals'] = QgsLayoutPoint(41, 264, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Legande_rotate'] = 0
self.template_parameters['Arrow_size'] = QgsLayoutSize(14.285714285714286,14, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Arrow_locals'] = QgsLayoutPoint(13, 254, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Arrow_rotate'] = 0
self.template_parameters['Echelle_size'] = QgsLayoutSize(38.857142857142854,7, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_locals'] = QgsLayoutPoint(1, 289, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_rotate'] = 0
self.template_parameters['Logo_size'] = QgsLayoutSize(34.857142857142854,10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_locals'] = QgsLayoutPoint(3, 139, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_rotate'] = 0
self.template_parameters['Titre_size'] = QgsLayoutSize(38.857142857142854,11, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Titre_locals'] = QgsLayoutPoint(1, 3, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Titre_rotate'] = 0
self.template_parameters['Credit_size'] = QgsLayoutSize(74.85714285714286,6, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Credit_locals'] = QgsLayoutPoint(43, 3, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Credit_rotate'] = 0
self.template_parameters['Source_size'] = QgsLayoutSize(104.0,6, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Source_locals'] = QgsLayoutPoint(104, 256, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Source_rotate'] = 0
self.template_parameters['Sous_titre_size'] = QgsLayoutSize(38.857142857142854,14, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Sous_titre_locals'] = QgsLayoutPoint(1, 14, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Sous_titre_rotate'] = 0
self.template_parameters['Echelle_2_size'] = QgsLayoutSize(38.857142857142854,13, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_2_locals'] = QgsLayoutPoint(1, 276, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_2_rotate'] = 0
self.template_parameters['Logo_2_size'] = QgsLayoutSize(30.0,30, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_2_locals'] = QgsLayoutPoint(41, 233, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_2_rotate'] = 0
if values_page == 'A3':
self.template_parameters['Carte_size'] = QgsLayoutSize(237,369, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_locals'] = QgsLayoutPoint(58, 2, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_rotate'] = 0
self.template_parameters['Carte_2_size'] = QgsLayoutSize(111,99, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_2_locals'] = QgsLayoutPoint(183, 2, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_2_rotate'] = 0
self.template_parameters['Legande_size'] = QgsLayoutSize(237,45, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Legande_locals'] = QgsLayoutPoint(58, 372, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Legande_rotate'] = 0
self.template_parameters['Arrow_size'] = QgsLayoutSize(20,20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Arrow_locals'] = QgsLayoutPoint(19, 358, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Arrow_rotate'] = 0
self.template_parameters['Echelle_size'] = QgsLayoutSize(55,10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_locals'] = QgsLayoutPoint(2, 408, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_rotate'] = 0
self.template_parameters['Logo_size'] = QgsLayoutSize(49,14, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_locals'] = QgsLayoutPoint(4, 196, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_rotate'] = 0
self.template_parameters['Titre_size'] = QgsLayoutSize(55,15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Titre_locals'] = QgsLayoutPoint(2, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Titre_rotate'] = 0
self.template_parameters['Credit_size'] = QgsLayoutSize(106,8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Credit_locals'] = QgsLayoutPoint(60, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Credit_rotate'] = 0
self.template_parameters['Source_size'] = QgsLayoutSize(147,8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Source_locals'] = QgsLayoutPoint(147, 361, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Source_rotate'] = 0
self.template_parameters['Sous_titre_size'] = QgsLayoutSize(55,20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Sous_titre_locals'] = QgsLayoutPoint(2, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Sous_titre_rotate'] = 0
self.template_parameters['Echelle_2_size'] = QgsLayoutSize(55,19, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_2_locals'] = QgsLayoutPoint(2, 389, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_2_rotate'] = 0
self.template_parameters['Logo_2_size'] = QgsLayoutSize(42,42, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_2_locals'] = QgsLayoutPoint(58, 329, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_2_rotate'] = 0
if page_rotate == 'Landscape':
if values_page == 'A4':
self.template_parameters['Carte_size'] = QgsLayoutSize(254.85714285714286,175, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_locals'] = QgsLayoutPoint(41, 1, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_rotate'] = 0
self.template_parameters['Carte_2_size'] = QgsLayoutSize(78.85714285714286,70, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_2_locals'] = QgsLayoutPoint(217, 1, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_2_rotate'] = 0
self.template_parameters['Legande_size'] = QgsLayoutSize(254.85714285714286,32, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Legande_locals'] = QgsLayoutPoint(41, 177, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Legande_rotate'] = 0
self.template_parameters['Arrow_size'] = QgsLayoutSize(14.285714285714286,14, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Arrow_locals'] = QgsLayoutPoint(13, 168, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Arrow_rotate'] = 0
self.template_parameters['Echelle_size'] = QgsLayoutSize(38.857142857142854,7, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_locals'] = QgsLayoutPoint(1, 202, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_rotate'] = 0
self.template_parameters['Logo_size'] = QgsLayoutSize(34.857142857142854,10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_locals'] = QgsLayoutPoint(3, 94, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_rotate'] = 0
self.template_parameters['Titre_size'] = QgsLayoutSize(38.857142857142854,11, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Titre_locals'] = QgsLayoutPoint(1, 3, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Titre_rotate'] = 0
self.template_parameters['Credit_size'] = QgsLayoutSize(74.85714285714286,6, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Credit_locals'] = QgsLayoutPoint(43, 3, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Credit_rotate'] = 0
self.template_parameters['Source_size'] = QgsLayoutSize(104.0,6, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Source_locals'] = QgsLayoutPoint(190, 169, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Source_rotate'] = 0
self.template_parameters['Sous_titre_size'] = QgsLayoutSize(38.857142857142854,14, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Sous_titre_locals'] = QgsLayoutPoint(1, 14, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Sous_titre_rotate'] = 0
self.template_parameters['Echelle_2_size'] = QgsLayoutSize(38.857142857142854,13, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_2_locals'] = QgsLayoutPoint(1, 189, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_2_rotate'] = 0
self.template_parameters['Logo_2_size'] = QgsLayoutSize(30.0,30, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_2_locals'] = QgsLayoutPoint(41, 146, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_2_rotate'] = 0
if values_page == 'A3':
self.template_parameters['Carte_size'] = QgsLayoutSize(359,247, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_locals'] = QgsLayoutPoint(58, 2, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_rotate'] = 0
self.template_parameters['Carte_2_size'] = QgsLayoutSize(111,99, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_2_locals'] = QgsLayoutPoint(306, 2, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Carte_2_rotate'] = 0
self.template_parameters['Legande_size'] = QgsLayoutSize(359,45, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Legande_locals'] = QgsLayoutPoint(58, 250, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Legande_rotate'] = 0
self.template_parameters['Arrow_size'] = QgsLayoutSize(20,20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Arrow_locals'] = QgsLayoutPoint(19, 237, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Arrow_rotate'] = 0
self.template_parameters['Echelle_size'] = QgsLayoutSize(55,10, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_locals'] = QgsLayoutPoint(2, 285, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_rotate'] = 0
self.template_parameters['Logo_size'] = QgsLayoutSize(49,14, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_locals'] = QgsLayoutPoint(4, 133, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_rotate'] = 0
self.template_parameters['Titre_size'] = QgsLayoutSize(55,15, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Titre_locals'] = QgsLayoutPoint(2, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Titre_rotate'] = 0
self.template_parameters['Credit_size'] = QgsLayoutSize(106,8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Credit_locals'] = QgsLayoutPoint(60, 4, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Credit_rotate'] = 0
self.template_parameters['Source_size'] = QgsLayoutSize(147,8, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Source_locals'] = QgsLayoutPoint(268, 238, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Source_rotate'] = 0
self.template_parameters['Sous_titre_size'] = QgsLayoutSize(55,20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Sous_titre_locals'] = QgsLayoutPoint(2, 20, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Sous_titre_rotate'] = 0
self.template_parameters['Echelle_2_size'] = QgsLayoutSize(55,19, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_2_locals'] = QgsLayoutPoint(2, 267, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Echelle_2_rotate'] = 0
self.template_parameters['Logo_2_size'] = QgsLayoutSize(42,42, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_2_locals'] = QgsLayoutPoint(58, 206, QgsUnitTypes.LayoutMillimeters)
self.template_parameters['Logo_2_rotate'] = 0
return self.template_parameters

View File

@ -0,0 +1,120 @@
<Layout worldFileMap="" name="test.qpt" printResolution="300" units="mm">
<Snapper snapToGrid="0" snapToItems="1" tolerance="5" snapToGuides="1"/>
<Grid resolution="10" offsetUnits="mm" offsetX="0" resUnits="mm" offsetY="0"/>
<PageCollection>
<symbol name="" clip_to_extent="1" type="fill" force_rhr="0" alpha="1">
<data_defined_properties>
<Option type="Map">
<Option name="name" value="" type="QString"/>
<Option name="properties"/>
<Option name="type" value="collection" type="QString"/>
</Option>
</data_defined_properties>
<layer class="SimpleFill" locked="0" enabled="1" pass="0">
<Option type="Map">
<Option name="border_width_map_unit_scale" value="3x:0,0,0,0,0,0" type="QString"/>
<Option name="color" value="255,255,255,255" type="QString"/>
<Option name="joinstyle" value="miter" type="QString"/>
<Option name="offset" value="0,0" type="QString"/>
<Option name="offset_map_unit_scale" value="3x:0,0,0,0,0,0" type="QString"/>
<Option name="offset_unit" value="MM" type="QString"/>
<Option name="outline_color" value="35,35,35,255" type="QString"/>
<Option name="outline_style" value="no" type="QString"/>
<Option name="outline_width" value="0.26" type="QString"/>
<Option name="outline_width_unit" value="MM" type="QString"/>
<Option name="style" value="solid" type="QString"/>
</Option>
<prop k="border_width_map_unit_scale" v="3x:0,0,0,0,0,0"/>
<prop k="color" v="255,255,255,255"/>
<prop k="joinstyle" v="miter"/>
<prop k="offset" v="0,0"/>
<prop k="offset_map_unit_scale" v="3x:0,0,0,0,0,0"/>
<prop k="offset_unit" v="MM"/>
<prop k="outline_color" v="35,35,35,255"/>
<prop k="outline_style" v="no"/>
<prop k="outline_width" v="0.26"/>
<prop k="outline_width_unit" v="MM"/>
<prop k="style" v="solid"/>
<data_defined_properties>
<Option type="Map">
<Option name="name" value="" type="QString"/>
<Option name="properties"/>
<Option name="type" value="collection" type="QString"/>
</Option>
</data_defined_properties>
</layer>
</symbol>
<LayoutItem zValue="0" id="" itemRotation="0" position="0,0,mm" frame="false" templateUuid="{5c80221d-7561-455b-94fd-69a27d877679}" referencePoint="0" opacity="1" frameJoinStyle="miter" uuid="{5c80221d-7561-455b-94fd-69a27d877679}" blendMode="0" size="297,210,mm" groupUuid="" outlineWidthM="0.3,mm" positionOnPage="0,0,mm" type="65638" excludeFromExports="0" positionLock="false" background="true" visibility="1">
<FrameColor green="0" blue="0" red="0" alpha="255"/>
<BackgroundColor green="255" blue="255" red="255" alpha="255"/>
<LayoutObject>
<dataDefinedProperties>
<Option type="Map">
<Option name="name" value="" type="QString"/>
<Option name="properties"/>
<Option name="type" value="collection" type="QString"/>
</Option>
</dataDefinedProperties>
<customproperties>
<Option/>
</customproperties>
</LayoutObject>
<symbol name="" clip_to_extent="1" type="fill" force_rhr="0" alpha="1">
<data_defined_properties>
<Option type="Map">
<Option name="name" value="" type="QString"/>
<Option name="properties"/>
<Option name="type" value="collection" type="QString"/>
</Option>
</data_defined_properties>
<layer class="SimpleFill" locked="0" enabled="1" pass="0">
<Option type="Map">
<Option name="border_width_map_unit_scale" value="3x:0,0,0,0,0,0" type="QString"/>
<Option name="color" value="255,255,255,255" type="QString"/>
<Option name="joinstyle" value="miter" type="QString"/>
<Option name="offset" value="0,0" type="QString"/>
<Option name="offset_map_unit_scale" value="3x:0,0,0,0,0,0" type="QString"/>
<Option name="offset_unit" value="MM" type="QString"/>
<Option name="outline_color" value="35,35,35,255" type="QString"/>
<Option name="outline_style" value="no" type="QString"/>
<Option name="outline_width" value="0.26" type="QString"/>
<Option name="outline_width_unit" value="MM" type="QString"/>
<Option name="style" value="solid" type="QString"/>
</Option>
<prop k="border_width_map_unit_scale" v="3x:0,0,0,0,0,0"/>
<prop k="color" v="255,255,255,255"/>
<prop k="joinstyle" v="miter"/>
<prop k="offset" v="0,0"/>
<prop k="offset_map_unit_scale" v="3x:0,0,0,0,0,0"/>
<prop k="offset_unit" v="MM"/>
<prop k="outline_color" v="35,35,35,255"/>
<prop k="outline_style" v="no"/>
<prop k="outline_width" v="0.26"/>
<prop k="outline_width_unit" v="MM"/>
<prop k="style" v="solid"/>
<data_defined_properties>
<Option type="Map">
<Option name="name" value="" type="QString"/>
<Option name="properties"/>
<Option name="type" value="collection" type="QString"/>
</Option>
</data_defined_properties>
</layer>
</symbol>
</LayoutItem>
<GuideCollection visible="1"/>
</PageCollection>
<customproperties>
<Option type="Map">
<Option name="atlasRasterFormat" value="png" type="QString"/>
<Option name="imageAntialias" value="true" type="bool"/>
<Option name="imageCropMarginBottom" value="0" type="int"/>
<Option name="imageCropMarginLeft" value="0" type="int"/>
<Option name="imageCropMarginRight" value="0" type="int"/>
<Option name="imageCropMarginTop" value="0" type="int"/>
<Option name="imageCropToContents" value="false" type="bool"/>
<Option name="singleFile" value="true" type="bool"/>
</Option>
</customproperties>
<Atlas coverageLayer="" pageNameExpression="" filterFeatures="0" filenamePattern="'output_'||@atlas_featurenumber" enabled="0" hideCoverage="0" sortFeatures="0"/>
</Layout>

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@ -89,7 +89,7 @@ def resources_path(*args):
:return: Absolute path to the resources folder. :return: Absolute path to the resources folder.
:rtype: str :rtype: str
""" """
path = abspath(abspath(join(plugin_path(), "CenRa_AUTOMAP\\tools"))) path = abspath(abspath(join(plugin_path(), "CenIsere_AUTOMAP/tools")))
for item in args: for item in args:
path = abspath(join(path, item)) path = abspath(join(path, item))
return path return path
@ -107,25 +107,25 @@ def load_ui(*args):
return ui_class return ui_class
def login_base(take=None): # def login_base(take=None):
from CenRa_METABASE.tools.PythonSQL import host,port,dbname,password,os_user # from CenRa_METABASE.tools.PythonSQL import host,port,dbname,password,os_user
first_conn = psycopg2.connect("host=" + host + " port=" + port + " dbname="+dbname+" user=first_cnx password=" + password) # first_conn = psycopg2.connect("host=" + host + " port=" + port + " dbname="+dbname+" user=first_cnx password=" + password)
first_cur = first_conn.cursor(cursor_factory = psycopg2.extras.DictCursor) # first_cur = first_conn.cursor(cursor_factory = psycopg2.extras.DictCursor)
first_cur.execute("SELECT mdp_w, login_w FROM pg_catalog.pg_user t1, admin_sig.vm_users_sig t2 WHERE t2.oid = t1.usesysid AND (login_w = '" + os_user + "' OR login_w = '" + os_user + "')") # first_cur.execute("SELECT mdp_w, login_w FROM pg_catalog.pg_user t1, admin_sig.vm_users_sig t2 WHERE t2.oid = t1.usesysid AND (login_w = '" + os_user + "' OR login_w = '" + os_user + "')")
res_ident = first_cur.fetchone() # res_ident = first_cur.fetchone()
mdp = base64.b64decode(str(res_ident[0])).decode('utf-8') # mdp = base64.b64decode(str(res_ident[0])).decode('utf-8')
user = res_ident[1] # user = res_ident[1]
con = psycopg2.connect("host=" + host + " port=" + port + " dbname="+dbname+" user=" + user + " password=" + mdp) # con = psycopg2.connect("host=" + host + " port=" + port + " dbname="+dbname+" user=" + user + " password=" + mdp)
cur = con.cursor(cursor_factory = psycopg2.extras.DictCursor) # cur = con.cursor(cursor_factory = psycopg2.extras.DictCursor)
first_conn.close() # first_conn.close()
if take: # if take:
return cur,con # return cur,con
else: # else:
return cur # return cur
def send_issues(url,titre,body,labels): def send_issues(url,titre,body,labels):
import requests import requests
import json import json
@ -158,7 +158,7 @@ def maj_verif(NAME):
url = qgis.utils.pluginMetadata(NAME,'repository') url = qgis.utils.pluginMetadata(NAME,'repository')
#URL = url+'/raw/branch/main/plugins.xml' #URL = url+'/raw/branch/main/plugins.xml'
URL = 'https://gitea.cenra-outils.org/CEN-RA/Plugin_QGIS/releases/download/releases/plugins.xml' URL = 'https://gitea.cenra-outils.org/CEN38/Plugin_QGIS/releases/download/latest/plugins.xml'
# print(URL) # print(URL)
version = qgis.utils.pluginMetadata(NAME,'version') version = qgis.utils.pluginMetadata(NAME,'version')
len_version = len(version) len_version = len(version)
@ -184,4 +184,4 @@ def devlog(NAME):
import qgis import qgis
devmaj = '<head><style>* {margin:0; padding:0; }</style></head>' devmaj = '<head><style>* {margin:0; padding:0; }</style></head>'
devmaj = devmaj+qgis.utils.pluginMetadata(NAME,'changelog') devmaj = devmaj+qgis.utils.pluginMetadata(NAME,'changelog')
return devmaj return devmaj

View File

@ -130,7 +130,7 @@
<string notr="true">color: rgb(11, 11, 11);</string> <string notr="true">color: rgb(11, 11, 11);</string>
</property> </property>
<property name="text"> <property name="text">
<string>Sélectionner un template de mise en page :</string> <string>Modèles de mise en page :</string>
</property> </property>
</widget> </widget>
<widget class="QComboBox" name="comboBox"> <widget class="QComboBox" name="comboBox">
@ -163,9 +163,9 @@
</property> </property>
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>90</x> <x>40</x>
<y>200</y> <y>200</y>
<width>211</width> <width>311</width>
<height>21</height> <height>21</height>
</rect> </rect>
</property> </property>
@ -211,9 +211,9 @@
</property> </property>
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>90</x> <x>40</x>
<y>290</y> <y>290</y>
<width>211</width> <width>311</width>
<height>21</height> <height>21</height>
</rect> </rect>
</property> </property>
@ -257,7 +257,7 @@
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>30</x> <x>30</x>
<y>350</y> <y>330</y>
<width>311</width> <width>311</width>
<height>41</height> <height>41</height>
</rect> </rect>
@ -282,9 +282,9 @@
</property> </property>
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>90</x> <x>40</x>
<y>380</y> <y>360</y>
<width>211</width> <width>311</width>
<height>21</height> <height>21</height>
</rect> </rect>
</property> </property>
@ -305,14 +305,14 @@
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>40</x> <x>40</x>
<y>470</y> <y>450</y>
<width>290</width> <width>250</width>
<height>20</height> <height>20</height>
</rect> </rect>
</property> </property>
<property name="minimumSize"> <property name="minimumSize">
<size> <size>
<width>290</width> <width>260</width>
<height>20</height> <height>20</height>
</size> </size>
</property> </property>
@ -342,8 +342,8 @@
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>30</x> <x>30</x>
<y>440</y> <y>420</y>
<width>311</width> <width>290</width>
<height>41</height> <height>41</height>
</rect> </rect>
</property> </property>
@ -358,7 +358,7 @@
<string notr="true">color: rgb(11, 11, 11);</string> <string notr="true">color: rgb(11, 11, 11);</string>
</property> </property>
<property name="text"> <property name="text">
<string>Eléments à intégrer à la légende :</string> <string>Éléments à intégrer à la légende :</string>
</property> </property>
</widget> </widget>
<widget class="QWidget" name="horizontalLayoutWidget"> <widget class="QWidget" name="horizontalLayoutWidget">
@ -375,7 +375,7 @@
<widget class="QLabel" name="label_3"> <widget class="QLabel" name="label_3">
<property name="font"> <property name="font">
<font> <font>
<pointsize>7</pointsize> <pointsize>10</pointsize>
<weight>75</weight> <weight>75</weight>
<bold>true</bold> <bold>true</bold>
<underline>false</underline> <underline>false</underline>
@ -390,7 +390,7 @@
<widget class="QRadioButton" name="radioButton_6"> <widget class="QRadioButton" name="radioButton_6">
<property name="font"> <property name="font">
<font> <font>
<pointsize>7</pointsize> <pointsize>10</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -411,7 +411,7 @@
<widget class="QRadioButton" name="radioButton_5"> <widget class="QRadioButton" name="radioButton_5">
<property name="font"> <property name="font">
<font> <font>
<pointsize>7</pointsize> <pointsize>10</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -435,7 +435,7 @@
<widget class="QLabel" name="label_16"> <widget class="QLabel" name="label_16">
<property name="font"> <property name="font">
<font> <font>
<pointsize>7</pointsize> <pointsize>10</pointsize>
<weight>75</weight> <weight>75</weight>
<bold>true</bold> <bold>true</bold>
<underline>false</underline> <underline>false</underline>
@ -450,7 +450,7 @@
<widget class="QRadioButton" name="radioButton_7"> <widget class="QRadioButton" name="radioButton_7">
<property name="font"> <property name="font">
<font> <font>
<pointsize>7</pointsize> <pointsize>10</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -471,7 +471,7 @@
<widget class="QRadioButton" name="radioButton_8"> <widget class="QRadioButton" name="radioButton_8">
<property name="font"> <property name="font">
<font> <font>
<pointsize>7</pointsize> <pointsize>10</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -492,7 +492,7 @@
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>7</pointsize> <pointsize>10</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -502,15 +502,15 @@
<widget class="QRadioButton" name="radioButton_10"> <widget class="QRadioButton" name="radioButton_10">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>140</x> <x>75</x>
<y>410</y> <y>390</y>
<width>121</width> <width>200</width>
<height>16</height> <height>16</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>7</pointsize> <pointsize>10</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -521,7 +521,7 @@
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>40</x> <x>40</x>
<y>380</y> <y>360</y>
<width>310</width> <width>310</width>
<height>20</height> <height>20</height>
</rect> </rect>
@ -560,15 +560,15 @@
<widget class="QRadioButton" name="radioButton_11"> <widget class="QRadioButton" name="radioButton_11">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>110</x> <x>75</x>
<y>150</y> <y>150</y>
<width>181</width> <width>200</width>
<height>16</height> <height>16</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>7</pointsize> <pointsize>10</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -578,15 +578,15 @@
<widget class="QRadioButton" name="radioButton_13"> <widget class="QRadioButton" name="radioButton_13">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>130</x> <x>75</x>
<y>230</y> <y>230</y>
<width>121</width> <width>200</width>
<height>16</height> <height>16</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>7</pointsize> <pointsize>10</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -596,9 +596,9 @@
<widget class="QComboBox" name="comboBox_7"> <widget class="QComboBox" name="comboBox_7">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>90</x> <x>40</x>
<y>200</y> <y>200</y>
<width>211</width> <width>311</width>
<height>22</height> <height>22</height>
</rect> </rect>
</property> </property>
@ -677,11 +677,57 @@
<string>Bibliotheque de logo :</string> <string>Bibliotheque de logo :</string>
</property> </property>
</widget> </widget>
<widget class="QLabel" name="label_17">
<property name="geometry">
<rect>
<x>75</x>
<y>465</y>
<width>311</width>
<height>41</height>
</rect>
</property>
<property name="font">
<font>
<weight>50</weight>
<bold>false</bold>
<underline>false</underline>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(11, 11, 11);</string>
</property>
<property name="text">
<string>Sur</string>
</property>
</widget>
<widget class="QLabel" name="label_18">
<property name="geometry">
<rect>
<x>155</x>
<y>465</y>
<width>311</width>
<height>41</height>
</rect>
</property>
<property name="font">
<font>
<weight>50</weight>
<bold>false</bold>
<underline>false</underline>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(11, 11, 11);</string>
</property>
<property name="text">
<string>colonne(s)</string>
</property>
</widget>
<widget class="QSpinBox" name="spinBox"> <widget class="QSpinBox" name="spinBox">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>340</x> <x>110</x>
<y>470</y> <y>475</y>
<width>42</width> <width>42</width>
<height>22</height> <height>22</height>
</rect> </rect>
@ -698,7 +744,7 @@
<rect> <rect>
<x>30</x> <x>30</x>
<y>560</y> <y>560</y>
<width>111</width> <width>180</width>
<height>23</height> <height>23</height>
</rect> </rect>
</property> </property>
@ -726,6 +772,8 @@
<zorder>radioButton_13</zorder> <zorder>radioButton_13</zorder>
<zorder>mComboBox_4</zorder> <zorder>mComboBox_4</zorder>
<zorder>label_15</zorder> <zorder>label_15</zorder>
<zorder>label_17</zorder>
<zorder>label_18</zorder>
<zorder>spinBox</zorder> <zorder>spinBox</zorder>
<zorder>CustomeLogo</zorder> <zorder>CustomeLogo</zorder>
</widget> </widget>
@ -905,9 +953,9 @@
<widget class="QGroupBox" name="groupBox_2"> <widget class="QGroupBox" name="groupBox_2">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>970</x> <x>960</x>
<y>10</y> <y>10</y>
<width>161</width> <width>171</width>
<height>111</height> <height>111</height>
</rect> </rect>
</property> </property>
@ -922,7 +970,7 @@
<rect> <rect>
<x>10</x> <x>10</x>
<y>60</y> <y>60</y>
<width>141</width> <width>161</width>
<height>41</height> <height>41</height>
</rect> </rect>
</property> </property>
@ -1061,7 +1109,7 @@
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>7</pointsize> <pointsize>10</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">

View File

@ -0,0 +1,477 @@
# Form implementation generated from reading ui file '/home/colas/Git/Plugin_QGIS/CenIsere_AUTOMAP/tools/ui/CenIsere_AutoMap_base.ui'
#
# Created by: PyQt6 UI code generator 6.7.0
#
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
# run again. Do not edit this file unless you know what you are doing.
from PyQt6 import QtCore, QtGui, QtWidgets
class Ui_MapCENDialogBase(object):
def setupUi(self, MapCENDialogBase):
MapCENDialogBase.setObjectName("MapCENDialogBase")
MapCENDialogBase.resize(1150, 778)
self.tabWidget = QtWidgets.QTabWidget(parent=MapCENDialogBase)
self.tabWidget.setGeometry(QtCore.QRect(0, 0, 1150, 781))
self.tabWidget.setMinimumSize(QtCore.QSize(1150, 781))
self.tabWidget.setMaximumSize(QtCore.QSize(1150, 781))
self.tabWidget.setBaseSize(QtCore.QSize(1150, 781))
self.tabWidget.setStyleSheet("QWidget#tab{background-image: url(/Users/tlaveille/Pictures/Capturel.png);}\n"
" ")
self.tabWidget.setObjectName("tabWidget")
self.tab = QtWidgets.QWidget()
self.tab.setObjectName("tab")
self.groupBox_6 = QtWidgets.QGroupBox(parent=self.tab)
self.groupBox_6.setGeometry(QtCore.QRect(680, 350, 141, 41))
self.groupBox_6.setStyleSheet("QGroupBox#groupBox_6{background-color: rgb(255, 255, 255, 170);}")
self.groupBox_6.setTitle("")
self.groupBox_6.setObjectName("groupBox_6")
self.commandLinkButton = QtWidgets.QCommandLinkButton(parent=self.groupBox_6)
self.commandLinkButton.setGeometry(QtCore.QRect(0, 0, 141, 41))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(10)
self.commandLinkButton.setFont(font)
self.commandLinkButton.setStyleSheet("background-color: qconicalgradient(cx:0, cy:0, angle:135, stop:0 rgba(255, 255, 0, 69), stop:0.375 rgba(255, 255, 0, 69), stop:0.423533 rgba(251, 255, 0, 145), stop:0.45 rgba(247, 255, 0, 208), stop:0.477581 rgba(255, 244, 71, 130), stop:0.518717 rgba(255, 218, 71, 130), stop:0.55 rgba(255, 255, 0, 255), stop:0.57754 rgba(255, 203, 0, 130), stop:0.625 rgba(255, 255, 0, 69), stop:1 rgba(255, 255, 0, 69));")
self.commandLinkButton.setObjectName("commandLinkButton")
self.groupBox_7 = QtWidgets.QGroupBox(parent=self.tab)
self.groupBox_7.setGeometry(QtCore.QRect(20, 70, 391, 611))
font = QtGui.QFont()
font.setBold(True)
font.setWeight(75)
self.groupBox_7.setFont(font)
self.groupBox_7.setStyleSheet("QGroupBox#groupBox_7{background-color: rgb(255, 255, 255, 170);}")
self.groupBox_7.setTitle("")
self.groupBox_7.setObjectName("groupBox_7")
self.label_4 = QtWidgets.QLabel(parent=self.groupBox_7)
self.label_4.setGeometry(QtCore.QRect(30, 10, 311, 41))
font = QtGui.QFont()
font.setBold(True)
font.setUnderline(True)
font.setWeight(75)
self.label_4.setFont(font)
self.label_4.setStyleSheet("color: rgb(11, 11, 11);")
self.label_4.setObjectName("label_4")
self.comboBox = QtWidgets.QComboBox(parent=self.groupBox_7)
self.comboBox.setGeometry(QtCore.QRect(30, 40, 331, 22))
self.comboBox.setEditable(False)
self.comboBox.setCurrentText("")
self.comboBox.setInsertPolicy(QtWidgets.QComboBox.InsertPolicy.InsertAlphabetically)
self.comboBox.setObjectName("comboBox")
self.comboBox.addItem("")
self.comboBox.setItemText(0, "")
self.lineEdit_2 = QtWidgets.QLineEdit(parent=self.groupBox_7)
self.lineEdit_2.setEnabled(True)
self.lineEdit_2.setGeometry(QtCore.QRect(40, 200, 311, 21))
self.lineEdit_2.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
self.lineEdit_2.setReadOnly(False)
self.lineEdit_2.setClearButtonEnabled(True)
self.lineEdit_2.setObjectName("lineEdit_2")
self.label_6 = QtWidgets.QLabel(parent=self.groupBox_7)
self.label_6.setGeometry(QtCore.QRect(30, 170, 311, 41))
font = QtGui.QFont()
font.setBold(False)
font.setUnderline(True)
font.setWeight(50)
self.label_6.setFont(font)
self.label_6.setStyleSheet("color: rgb(11, 11, 11);")
self.label_6.setObjectName("label_6")
self.lineEdit_3 = QtWidgets.QLineEdit(parent=self.groupBox_7)
self.lineEdit_3.setEnabled(True)
self.lineEdit_3.setGeometry(QtCore.QRect(40, 290, 311, 21))
self.lineEdit_3.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
self.lineEdit_3.setReadOnly(False)
self.lineEdit_3.setClearButtonEnabled(True)
self.lineEdit_3.setObjectName("lineEdit_3")
self.label_7 = QtWidgets.QLabel(parent=self.groupBox_7)
self.label_7.setGeometry(QtCore.QRect(30, 260, 311, 41))
font = QtGui.QFont()
font.setBold(False)
font.setUnderline(True)
font.setWeight(50)
self.label_7.setFont(font)
self.label_7.setStyleSheet("color: rgb(11, 11, 11);")
self.label_7.setObjectName("label_7")
self.label_8 = QtWidgets.QLabel(parent=self.groupBox_7)
self.label_8.setGeometry(QtCore.QRect(30, 330, 311, 41))
font = QtGui.QFont()
font.setBold(False)
font.setUnderline(True)
font.setWeight(50)
self.label_8.setFont(font)
self.label_8.setStyleSheet("color: rgb(11, 11, 11);")
self.label_8.setObjectName("label_8")
self.lineEdit_4 = QtWidgets.QLineEdit(parent=self.groupBox_7)
self.lineEdit_4.setEnabled(True)
self.lineEdit_4.setGeometry(QtCore.QRect(40, 360, 311, 21))
self.lineEdit_4.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
self.lineEdit_4.setReadOnly(False)
self.lineEdit_4.setClearButtonEnabled(True)
self.lineEdit_4.setObjectName("lineEdit_4")
self.mComboBox_2 = QgsCheckableComboBox(parent=self.groupBox_7)
self.mComboBox_2.setGeometry(QtCore.QRect(40, 450, 250, 20))
self.mComboBox_2.setMinimumSize(QtCore.QSize(260, 20))
self.mComboBox_2.setMaximumSize(QtCore.QSize(310, 20))
self.mComboBox_2.setStyleSheet("")
self.mComboBox_2.setCurrentText("")
self.mComboBox_2.setMaxVisibleItems(15)
self.mComboBox_2.setSizeAdjustPolicy(QtWidgets.QComboBox.SizeAdjustPolicy.AdjustToContents)
self.mComboBox_2.setDefaultText("")
self.mComboBox_2.setObjectName("mComboBox_2")
self.label_14 = QtWidgets.QLabel(parent=self.groupBox_7)
self.label_14.setGeometry(QtCore.QRect(30, 420, 290, 41))
font = QtGui.QFont()
font.setBold(False)
font.setUnderline(True)
font.setWeight(50)
self.label_14.setFont(font)
self.label_14.setStyleSheet("color: rgb(11, 11, 11);")
self.label_14.setObjectName("label_14")
self.horizontalLayoutWidget = QtWidgets.QWidget(parent=self.groupBox_7)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(40, 80, 261, 31))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.label_3 = QtWidgets.QLabel(parent=self.horizontalLayoutWidget)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)
font.setUnderline(False)
font.setWeight(75)
self.label_3.setFont(font)
self.label_3.setObjectName("label_3")
self.horizontalLayout.addWidget(self.label_3)
self.radioButton_6 = QtWidgets.QRadioButton(parent=self.horizontalLayoutWidget)
font = QtGui.QFont()
font.setPointSize(10)
self.radioButton_6.setFont(font)
self.radioButton_6.setIconSize(QtCore.QSize(16, 16))
self.radioButton_6.setChecked(True)
self.radioButton_6.setObjectName("radioButton_6")
self.horizontalLayout.addWidget(self.radioButton_6)
self.radioButton_5 = QtWidgets.QRadioButton(parent=self.horizontalLayoutWidget)
font = QtGui.QFont()
font.setPointSize(10)
self.radioButton_5.setFont(font)
self.radioButton_5.setObjectName("radioButton_5")
self.horizontalLayout.addWidget(self.radioButton_5)
self.horizontalLayoutWidget_2 = QtWidgets.QWidget(parent=self.groupBox_7)
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(40, 110, 261, 31))
self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_2)
self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.label_16 = QtWidgets.QLabel(parent=self.horizontalLayoutWidget_2)
font = QtGui.QFont()
font.setPointSize(10)
font.setBold(True)
font.setUnderline(False)
font.setWeight(75)
self.label_16.setFont(font)
self.label_16.setObjectName("label_16")
self.horizontalLayout_2.addWidget(self.label_16)
self.radioButton_7 = QtWidgets.QRadioButton(parent=self.horizontalLayoutWidget_2)
font = QtGui.QFont()
font.setPointSize(10)
self.radioButton_7.setFont(font)
self.radioButton_7.setIconSize(QtCore.QSize(16, 16))
self.radioButton_7.setChecked(True)
self.radioButton_7.setObjectName("radioButton_7")
self.horizontalLayout_2.addWidget(self.radioButton_7)
self.radioButton_8 = QtWidgets.QRadioButton(parent=self.horizontalLayoutWidget_2)
font = QtGui.QFont()
font.setPointSize(10)
self.radioButton_8.setFont(font)
self.radioButton_8.setObjectName("radioButton_8")
self.horizontalLayout_2.addWidget(self.radioButton_8)
self.radioButton_9 = QtWidgets.QRadioButton(parent=self.groupBox_7)
self.radioButton_9.setGeometry(QtCore.QRect(270, 570, 82, 15))
font = QtGui.QFont()
font.setPointSize(10)
self.radioButton_9.setFont(font)
self.radioButton_9.setObjectName("radioButton_9")
self.radioButton_10 = QtWidgets.QRadioButton(parent=self.groupBox_7)
self.radioButton_10.setGeometry(QtCore.QRect(75, 390, 200, 16))
font = QtGui.QFont()
font.setPointSize(10)
self.radioButton_10.setFont(font)
self.radioButton_10.setObjectName("radioButton_10")
self.mComboBox_3 = QgsCheckableComboBox(parent=self.groupBox_7)
self.mComboBox_3.setGeometry(QtCore.QRect(40, 360, 310, 20))
self.mComboBox_3.setMinimumSize(QtCore.QSize(310, 20))
self.mComboBox_3.setMaximumSize(QtCore.QSize(310, 20))
self.mComboBox_3.setStyleSheet("")
self.mComboBox_3.setInputMethodHints(QtCore.Qt.InputMethodHint.ImhNone)
self.mComboBox_3.setCurrentText("")
self.mComboBox_3.setMaxVisibleItems(15)
self.mComboBox_3.setSizeAdjustPolicy(QtWidgets.QComboBox.SizeAdjustPolicy.AdjustToContents)
self.mComboBox_3.setDefaultText("")
self.mComboBox_3.setObjectName("mComboBox_3")
self.radioButton_11 = QtWidgets.QRadioButton(parent=self.groupBox_7)
self.radioButton_11.setGeometry(QtCore.QRect(75, 150, 200, 16))
font = QtGui.QFont()
font.setPointSize(10)
self.radioButton_11.setFont(font)
self.radioButton_11.setObjectName("radioButton_11")
self.radioButton_13 = QtWidgets.QRadioButton(parent=self.groupBox_7)
self.radioButton_13.setGeometry(QtCore.QRect(75, 230, 200, 16))
font = QtGui.QFont()
font.setPointSize(10)
self.radioButton_13.setFont(font)
self.radioButton_13.setObjectName("radioButton_13")
self.comboBox_7 = QtWidgets.QComboBox(parent=self.groupBox_7)
self.comboBox_7.setGeometry(QtCore.QRect(40, 200, 311, 22))
self.comboBox_7.setEditable(False)
self.comboBox_7.setCurrentText("")
self.comboBox_7.setInsertPolicy(QtWidgets.QComboBox.InsertPolicy.InsertAlphabetically)
self.comboBox_7.setObjectName("comboBox_7")
self.comboBox_7.addItem("")
self.comboBox_7.setItemText(0, "")
self.mComboBox_4 = QgsCheckableComboBox(parent=self.groupBox_7)
self.mComboBox_4.setGeometry(QtCore.QRect(40, 530, 310, 20))
self.mComboBox_4.setMinimumSize(QtCore.QSize(310, 20))
self.mComboBox_4.setMaximumSize(QtCore.QSize(310, 20))
self.mComboBox_4.setStyleSheet("")
self.mComboBox_4.setCurrentText("")
self.mComboBox_4.setMaxVisibleItems(15)
self.mComboBox_4.setSizeAdjustPolicy(QtWidgets.QComboBox.SizeAdjustPolicy.AdjustToContents)
self.mComboBox_4.setDefaultText("")
self.mComboBox_4.setObjectName("mComboBox_4")
self.label_15 = QtWidgets.QLabel(parent=self.groupBox_7)
self.label_15.setGeometry(QtCore.QRect(30, 500, 311, 41))
font = QtGui.QFont()
font.setBold(False)
font.setUnderline(True)
font.setWeight(50)
self.label_15.setFont(font)
self.label_15.setStyleSheet("color: rgb(11, 11, 11);")
self.label_15.setObjectName("label_15")
self.label_17 = QtWidgets.QLabel(parent=self.groupBox_7)
self.label_17.setGeometry(QtCore.QRect(75, 465, 311, 41))
font = QtGui.QFont()
font.setBold(False)
font.setUnderline(False)
font.setWeight(50)
self.label_17.setFont(font)
self.label_17.setStyleSheet("color: rgb(11, 11, 11);")
self.label_17.setObjectName("label_17")
self.label_18 = QtWidgets.QLabel(parent=self.groupBox_7)
self.label_18.setGeometry(QtCore.QRect(155, 465, 311, 41))
font = QtGui.QFont()
font.setBold(False)
font.setUnderline(False)
font.setWeight(50)
self.label_18.setFont(font)
self.label_18.setStyleSheet("color: rgb(11, 11, 11);")
self.label_18.setObjectName("label_18")
self.spinBox = QtWidgets.QSpinBox(parent=self.groupBox_7)
self.spinBox.setGeometry(QtCore.QRect(110, 475, 42, 22))
self.spinBox.setMinimum(1)
self.spinBox.setMaximum(10)
self.spinBox.setObjectName("spinBox")
self.CustomeLogo = QtWidgets.QPushButton(parent=self.groupBox_7)
self.CustomeLogo.setGeometry(QtCore.QRect(30, 560, 180, 23))
self.CustomeLogo.setObjectName("CustomeLogo")
self.comboBox_7.raise_()
self.mComboBox_3.raise_()
self.label_4.raise_()
self.comboBox.raise_()
self.lineEdit_2.raise_()
self.label_6.raise_()
self.lineEdit_3.raise_()
self.label_7.raise_()
self.label_8.raise_()
self.lineEdit_4.raise_()
self.mComboBox_2.raise_()
self.label_14.raise_()
self.horizontalLayoutWidget.raise_()
self.horizontalLayoutWidget_2.raise_()
self.radioButton_9.raise_()
self.radioButton_10.raise_()
self.radioButton_11.raise_()
self.radioButton_13.raise_()
self.mComboBox_4.raise_()
self.label_15.raise_()
self.label_17.raise_()
self.label_18.raise_()
self.spinBox.raise_()
self.CustomeLogo.raise_()
self.label_5 = QtWidgets.QLabel(parent=self.tab)
self.label_5.setGeometry(QtCore.QRect(920, 10, 211, 71))
self.label_5.setText("")
self.label_5.setScaledContents(True)
self.label_5.setObjectName("label_5")
self.groupBox = QtWidgets.QGroupBox(parent=self.tab)
self.groupBox.setGeometry(QtCore.QRect(430, 500, 411, 201))
self.groupBox.setStyleSheet("QGroupBox#groupBox{background-color: rgb(255, 255, 255, 170);}")
self.groupBox.setTitle("")
self.groupBox.setObjectName("groupBox")
self.comboBox_4 = QtWidgets.QComboBox(parent=self.groupBox)
self.comboBox_4.setGeometry(QtCore.QRect(40, 160, 331, 22))
self.comboBox_4.setEditable(False)
self.comboBox_4.setCurrentText("")
self.comboBox_4.setInsertPolicy(QtWidgets.QComboBox.InsertPolicy.InsertAlphabetically)
self.comboBox_4.setObjectName("comboBox_4")
self.comboBox_4.addItem("")
self.comboBox_4.setItemText(0, "")
self.label_9 = QtWidgets.QLabel(parent=self.groupBox)
self.label_9.setGeometry(QtCore.QRect(30, 130, 311, 41))
font = QtGui.QFont()
font.setBold(False)
font.setUnderline(True)
font.setWeight(50)
self.label_9.setFont(font)
self.label_9.setStyleSheet("color: rgb(11, 11, 11);")
self.label_9.setObjectName("label_9")
self.label_10 = QtWidgets.QLabel(parent=self.groupBox)
self.label_10.setGeometry(QtCore.QRect(30, 70, 311, 41))
font = QtGui.QFont()
font.setBold(False)
font.setUnderline(True)
font.setWeight(50)
self.label_10.setFont(font)
self.label_10.setStyleSheet("color: rgb(11, 11, 11);")
self.label_10.setObjectName("label_10")
self.comboBox_3 = QtWidgets.QComboBox(parent=self.groupBox)
self.comboBox_3.setGeometry(QtCore.QRect(40, 100, 331, 22))
self.comboBox_3.setEditable(False)
self.comboBox_3.setCurrentText("")
self.comboBox_3.setInsertPolicy(QtWidgets.QComboBox.InsertPolicy.InsertAlphabetically)
self.comboBox_3.setObjectName("comboBox_3")
self.comboBox_3.addItem("")
self.comboBox_3.setItemText(0, "")
self.comboBox_2 = QtWidgets.QComboBox(parent=self.groupBox)
self.comboBox_2.setGeometry(QtCore.QRect(40, 40, 331, 22))
self.comboBox_2.setEditable(False)
self.comboBox_2.setCurrentText("")
self.comboBox_2.setInsertPolicy(QtWidgets.QComboBox.InsertPolicy.InsertAlphabetically)
self.comboBox_2.setObjectName("comboBox_2")
self.comboBox_2.addItem("")
self.comboBox_2.setItemText(0, "")
self.label_11 = QtWidgets.QLabel(parent=self.groupBox)
self.label_11.setGeometry(QtCore.QRect(30, 10, 311, 41))
font = QtGui.QFont()
font.setBold(False)
font.setUnderline(True)
font.setWeight(50)
self.label_11.setFont(font)
self.label_11.setStyleSheet("color: rgb(11, 11, 11);")
self.label_11.setObjectName("label_11")
self.groupBox_2 = QtWidgets.QGroupBox(parent=self.tab)
self.groupBox_2.setGeometry(QtCore.QRect(960, 10, 171, 111))
self.groupBox_2.setStyleSheet("QGroupBox#groupBox_2{background-color: rgb(255, 255, 255, 170);}")
self.groupBox_2.setTitle("")
self.groupBox_2.setObjectName("groupBox_2")
self.commandLinkButton_3 = QtWidgets.QCommandLinkButton(parent=self.groupBox_2)
self.commandLinkButton_3.setGeometry(QtCore.QRect(10, 60, 161, 41))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(10)
self.commandLinkButton_3.setFont(font)
self.commandLinkButton_3.setStyleSheet("background-color: qconicalgradient(cx:0, cy:0, angle:135, stop:0 rgba(255, 255, 0, 69), stop:0.375 rgba(255, 255, 0, 69), stop:0.423533 rgba(251, 255, 0, 145), stop:0.45 rgba(247, 255, 0, 208), stop:0.477581 rgba(255, 244, 71, 130), stop:0.518717 rgba(255, 218, 71, 130), stop:0.55 rgba(255, 255, 0, 255), stop:0.57754 rgba(255, 203, 0, 130), stop:0.625 rgba(255, 255, 0, 69), stop:1 rgba(255, 255, 0, 69));")
self.commandLinkButton_3.setObjectName("commandLinkButton_3")
self.commandLinkButton_2 = QtWidgets.QCommandLinkButton(parent=self.groupBox_2)
self.commandLinkButton_2.setGeometry(QtCore.QRect(10, 10, 141, 41))
font = QtGui.QFont()
font.setFamily("Segoe UI")
font.setPointSize(10)
self.commandLinkButton_2.setFont(font)
self.commandLinkButton_2.setAutoFillBackground(False)
self.commandLinkButton_2.setStyleSheet("background-color: qconicalgradient(cx:0, cy:0, angle:135, stop:0 rgba(255, 255, 0, 69), stop:0.375 rgba(255, 255, 0, 69), stop:0.423533 rgba(251, 255, 0, 145), stop:0.45 rgba(247, 255, 0, 208), stop:0.477581 rgba(255, 244, 71, 130), stop:0.518717 rgba(255, 218, 71, 130), stop:0.55 rgba(255, 255, 0, 255), stop:0.57754 rgba(255, 203, 0, 130), stop:0.625 rgba(255, 255, 0, 69), stop:1 rgba(255, 255, 0, 69));")
self.commandLinkButton_2.setObjectName("commandLinkButton_2")
self.groupBox_3 = QtWidgets.QGroupBox(parent=self.tab)
self.groupBox_3.setGeometry(QtCore.QRect(430, 110, 251, 161))
self.groupBox_3.setStyleSheet("QGroupBox#groupBox_3{background-color: rgb(255, 255, 255, 170);}")
self.groupBox_3.setTitle("")
self.groupBox_3.setObjectName("groupBox_3")
self.comboBox_5 = QtWidgets.QComboBox(parent=self.groupBox_3)
self.comboBox_5.setGeometry(QtCore.QRect(20, 40, 211, 22))
self.comboBox_5.setEditable(False)
self.comboBox_5.setCurrentText("")
self.comboBox_5.setInsertPolicy(QtWidgets.QComboBox.InsertPolicy.InsertAlphabetically)
self.comboBox_5.setObjectName("comboBox_5")
self.comboBox_5.addItem("")
self.comboBox_5.setItemText(0, "")
self.label_12 = QtWidgets.QLabel(parent=self.groupBox_3)
self.label_12.setGeometry(QtCore.QRect(10, 10, 311, 41))
font = QtGui.QFont()
font.setBold(False)
font.setUnderline(True)
font.setWeight(50)
self.label_12.setFont(font)
self.label_12.setStyleSheet("color: rgb(11, 11, 11);")
self.label_12.setObjectName("label_12")
self.label_13 = QtWidgets.QLabel(parent=self.groupBox_3)
self.label_13.setGeometry(QtCore.QRect(10, 70, 311, 41))
font = QtGui.QFont()
font.setBold(False)
font.setUnderline(True)
font.setWeight(50)
self.label_13.setFont(font)
self.label_13.setStyleSheet("color: rgb(11, 11, 11);")
self.label_13.setObjectName("label_13")
self.radioButton_12 = QtWidgets.QRadioButton(parent=self.groupBox_3)
self.radioButton_12.setGeometry(QtCore.QRect(80, 130, 181, 16))
font = QtGui.QFont()
font.setPointSize(10)
self.radioButton_12.setFont(font)
self.radioButton_12.setObjectName("radioButton_12")
self.comboBox_6 = QtWidgets.QComboBox(parent=self.groupBox_3)
self.comboBox_6.setGeometry(QtCore.QRect(20, 100, 211, 22))
self.comboBox_6.setEditable(False)
self.comboBox_6.setCurrentText("")
self.comboBox_6.setInsertPolicy(QtWidgets.QComboBox.InsertPolicy.InsertAlphabetically)
self.comboBox_6.setObjectName("comboBox_6")
self.comboBox_6.addItem("")
self.comboBox_6.setItemText(0, "")
self.groupBox.raise_()
self.groupBox_6.raise_()
self.groupBox_7.raise_()
self.label_5.raise_()
self.groupBox_2.raise_()
self.groupBox_3.raise_()
self.tabWidget.addTab(self.tab, "")
self.retranslateUi(MapCENDialogBase)
self.tabWidget.setCurrentIndex(0)
QtCore.QMetaObject.connectSlotsByName(MapCENDialogBase)
def retranslateUi(self, MapCENDialogBase):
_translate = QtCore.QCoreApplication.translate
MapCENDialogBase.setWindowTitle(_translate("MapCENDialogBase", "AutoMap"))
self.commandLinkButton.setText(_translate("MapCENDialogBase", " Mise en page"))
self.label_4.setText(_translate("MapCENDialogBase", "Modèles de mise en page :"))
self.lineEdit_2.setText(_translate("MapCENDialogBase", "Titre à renseigner ici"))
self.label_6.setText(_translate("MapCENDialogBase", "Titre de la carte :"))
self.lineEdit_3.setText(_translate("MapCENDialogBase", "Sous-titre à renseigner ici"))
self.label_7.setText(_translate("MapCENDialogBase", "Sous-titre de la carte :"))
self.label_8.setText(_translate("MapCENDialogBase", "Source des données :"))
self.lineEdit_4.setText(_translate("MapCENDialogBase", "à renseigner ici"))
self.label_14.setText(_translate("MapCENDialogBase", "Éléments à intégrer à la légende :"))
self.label_3.setText(_translate("MapCENDialogBase", "Format :"))
self.radioButton_6.setText(_translate("MapCENDialogBase", "A4"))
self.radioButton_5.setText(_translate("MapCENDialogBase", "A3"))
self.label_16.setText(_translate("MapCENDialogBase", "Orientation :"))
self.radioButton_7.setText(_translate("MapCENDialogBase", "Portrait"))
self.radioButton_8.setText(_translate("MapCENDialogBase", "Paysage"))
self.radioButton_9.setText(_translate("MapCENDialogBase", "Atlas"))
self.radioButton_10.setText(_translate("MapCENDialogBase", "Utilisez le gestionnaire"))
self.radioButton_11.setText(_translate("MapCENDialogBase", "Theme et suivie de positionnement"))
self.radioButton_13.setText(_translate("MapCENDialogBase", "Mise en page existante"))
self.label_15.setText(_translate("MapCENDialogBase", "Bibliotheque de logo :"))
self.label_17.setText(_translate("MapCENDialogBase", "Sur"))
self.label_18.setText(_translate("MapCENDialogBase", "colonne(s)"))
self.CustomeLogo.setText(_translate("MapCENDialogBase", "Custom Bibliotheque"))
self.label_9.setText(_translate("MapCENDialogBase", "Colonne de sous-titre :"))
self.label_10.setText(_translate("MapCENDialogBase", "Colonne d\'identification :"))
self.label_11.setText(_translate("MapCENDialogBase", "Couche de suivie :"))
self.commandLinkButton_3.setText(_translate("MapCENDialogBase", "OpenStreetMap"))
self.commandLinkButton_2.setText(_translate("MapCENDialogBase", " Ortho"))
self.label_12.setText(_translate("MapCENDialogBase", "Théme principal :"))
self.label_13.setText(_translate("MapCENDialogBase", "Théme de suivie :"))
self.radioButton_12.setText(_translate("MapCENDialogBase", "Activé le suivie"))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("MapCENDialogBase", "Liste de templates existants"))
from qgscheckablecombobox import QgsCheckableComboBox

View File

@ -11,7 +11,7 @@
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
<string>CEN-RA Metabase</string> <string>CEN38 Metabase</string>
</property> </property>
<property name="windowIcon"> <property name="windowIcon">
<iconset> <iconset>

View File

@ -0,0 +1,126 @@
# Form implementation generated from reading ui file '/home/colas/Git/Plugin_QGIS/CenIsere_AUTOMAP/tools/ui/CenIsere_IssuesSend.ui'
#
# Created by: PyQt6 UI code generator 6.7.0
#
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
# run again. Do not edit this file unless you know what you are doing.
from PyQt6 import QtCore, QtGui, QtWidgets
class Ui_CenRa_IssuesSend(object):
def setupUi(self, CenRa_IssuesSend):
CenRa_IssuesSend.setObjectName("CenRa_IssuesSend")
CenRa_IssuesSend.resize(810, 587)
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap("/home/colas/Git/Plugin_QGIS/CenIsere_AUTOMAP/tools/ui/icon.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
CenRa_IssuesSend.setWindowIcon(icon)
self.gridLayoutWidget = QtWidgets.QWidget(parent=CenRa_IssuesSend)
self.gridLayoutWidget.setGeometry(QtCore.QRect(0, 550, 811, 31))
self.gridLayoutWidget.setObjectName("gridLayoutWidget")
self.gridLayout_2 = QtWidgets.QGridLayout(self.gridLayoutWidget)
self.gridLayout_2.setContentsMargins(0, 0, 0, 0)
self.gridLayout_2.setObjectName("gridLayout_2")
self.annuler_button = QtWidgets.QPushButton(parent=self.gridLayoutWidget)
self.annuler_button.setObjectName("annuler_button")
self.gridLayout_2.addWidget(self.annuler_button, 0, 2, 1, 1)
spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.gridLayout_2.addItem(spacerItem, 0, 3, 1, 1)
spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.gridLayout_2.addItem(spacerItem1, 0, 0, 1, 1)
self.ok_button = QtWidgets.QPushButton(parent=self.gridLayoutWidget)
self.ok_button.setObjectName("ok_button")
self.gridLayout_2.addWidget(self.ok_button, 0, 1, 1, 1)
self.groupBox = QtWidgets.QGroupBox(parent=CenRa_IssuesSend)
self.groupBox.setGeometry(QtCore.QRect(10, 10, 791, 531))
self.groupBox.setObjectName("groupBox")
self.titre_line = QtWidgets.QLineEdit(parent=self.groupBox)
self.titre_line.setGeometry(QtCore.QRect(240, 40, 321, 41))
self.titre_line.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
self.titre_line.setObjectName("titre_line")
self.messages_plain = QtWidgets.QPlainTextEdit(parent=self.groupBox)
self.messages_plain.setGeometry(QtCore.QRect(10, 101, 571, 421))
self.messages_plain.setObjectName("messages_plain")
self.frame = QtWidgets.QFrame(parent=self.groupBox)
self.frame.setGeometry(QtCore.QRect(589, 100, 191, 431))
self.frame.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
self.frame.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
self.frame.setObjectName("frame")
self.formLayoutWidget = QtWidgets.QWidget(parent=self.frame)
self.formLayoutWidget.setGeometry(QtCore.QRect(9, 9, 341, 411))
self.formLayoutWidget.setObjectName("formLayoutWidget")
self.formLayout = QtWidgets.QFormLayout(self.formLayoutWidget)
self.formLayout.setLabelAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
self.formLayout.setFormAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTop|QtCore.Qt.AlignmentFlag.AlignTrailing)
self.formLayout.setContentsMargins(0, 0, 0, 0)
self.formLayout.setObjectName("formLayout")
spacerItem2 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
self.formLayout.setItem(0, QtWidgets.QFormLayout.ItemRole.LabelRole, spacerItem2)
spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.formLayout.setItem(1, QtWidgets.QFormLayout.ItemRole.LabelRole, spacerItem3)
self.check_bug = QtWidgets.QCheckBox(parent=self.formLayoutWidget)
self.check_bug.setObjectName("check_bug")
self.formLayout.setWidget(1, QtWidgets.QFormLayout.ItemRole.FieldRole, self.check_bug)
spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.formLayout.setItem(2, QtWidgets.QFormLayout.ItemRole.LabelRole, spacerItem4)
self.check_aide = QtWidgets.QCheckBox(parent=self.formLayoutWidget)
self.check_aide.setObjectName("check_aide")
self.formLayout.setWidget(2, QtWidgets.QFormLayout.ItemRole.FieldRole, self.check_aide)
spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.formLayout.setItem(3, QtWidgets.QFormLayout.ItemRole.LabelRole, spacerItem5)
self.check_question = QtWidgets.QCheckBox(parent=self.formLayoutWidget)
self.check_question.setObjectName("check_question")
self.formLayout.setWidget(3, QtWidgets.QFormLayout.ItemRole.FieldRole, self.check_question)
spacerItem6 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.formLayout.setItem(4, QtWidgets.QFormLayout.ItemRole.LabelRole, spacerItem6)
self.check_amelioration = QtWidgets.QCheckBox(parent=self.formLayoutWidget)
self.check_amelioration.setObjectName("check_amelioration")
self.formLayout.setWidget(4, QtWidgets.QFormLayout.ItemRole.FieldRole, self.check_amelioration)
spacerItem7 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
self.formLayout.setItem(5, QtWidgets.QFormLayout.ItemRole.LabelRole, spacerItem7)
self.check_autre = QtWidgets.QCheckBox(parent=self.formLayoutWidget)
self.check_autre.setObjectName("check_autre")
self.formLayout.setWidget(5, QtWidgets.QFormLayout.ItemRole.FieldRole, self.check_autre)
spacerItem8 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
self.formLayout.setItem(6, QtWidgets.QFormLayout.ItemRole.LabelRole, spacerItem8)
self.label = QtWidgets.QLabel(parent=self.groupBox)
self.label.setGeometry(QtCore.QRect(250, 20, 51, 21))
font = QtGui.QFont()
font.setFamily("Arial")
font.setPointSize(14)
self.label.setFont(font)
self.label.setObjectName("label")
self.label_2 = QtWidgets.QLabel(parent=self.groupBox)
self.label_2.setGeometry(QtCore.QRect(20, 70, 91, 31))
font = QtGui.QFont()
font.setFamily("Arial")
font.setPointSize(12)
self.label_2.setFont(font)
self.label_2.setObjectName("label_2")
self.label_3 = QtWidgets.QLabel(parent=self.groupBox)
self.label_3.setGeometry(QtCore.QRect(600, 70, 91, 31))
font = QtGui.QFont()
font.setFamily("Arial")
font.setPointSize(12)
self.label_3.setFont(font)
self.label_3.setObjectName("label_3")
self.retranslateUi(CenRa_IssuesSend)
QtCore.QMetaObject.connectSlotsByName(CenRa_IssuesSend)
CenRa_IssuesSend.setTabOrder(self.ok_button, self.annuler_button)
def retranslateUi(self, CenRa_IssuesSend):
_translate = QtCore.QCoreApplication.translate
CenRa_IssuesSend.setWindowTitle(_translate("CenRa_IssuesSend", "CEN38 Metabase"))
self.annuler_button.setText(_translate("CenRa_IssuesSend", "Annuler"))
self.ok_button.setText(_translate("CenRa_IssuesSend", "Envoyer"))
self.groupBox.setTitle(_translate("CenRa_IssuesSend", "Issues"))
self.check_bug.setText(_translate("CenRa_IssuesSend", "Bug"))
self.check_aide.setText(_translate("CenRa_IssuesSend", "Aide"))
self.check_question.setText(_translate("CenRa_IssuesSend", "Question"))
self.check_amelioration.setText(_translate("CenRa_IssuesSend", "Amélioration"))
self.check_autre.setText(_translate("CenRa_IssuesSend", "Autre"))
self.label.setText(_translate("CenRa_IssuesSend", "Titre:"))
self.label_2.setText(_translate("CenRa_IssuesSend", "Messages:"))
self.label_3.setText(_translate("CenRa_IssuesSend", "Sujet:"))

View File

@ -1,4 +0,0 @@
# CenRa_AutoMap
---
Outil de création de mise en page,
Permet de préprogramé des mise en page pour les mêtre à disposition des collégue.

View File

@ -1,10 +0,0 @@
# -*- coding: utf-8 -*-
__copyright__ = "Copyright 2021, 3Liz"
__license__ = "GPL version 3"
__email__ = "info@3liz.org"
def classFactory(iface):
_ = iface
from CenRa_AUTOMAP.CenRa_AutoMap import PgAutoMap
return PgAutoMap()

View File

@ -1,48 +0,0 @@
# This file contains metadata for your plugin.
# This file should be included when you package your plugin.# Mandatory items:
[general]
name=CenRa_AutoMap
qgisMinimumVersion=3.0
description=CenRa_AutoMap
version=1.7
author=Conservatoire d'Espaces Naturels de Rhône-Alpes
email=si_besoin@cen-rhonealpes.fr
about=Outils de création de mise en page prédéfinis pour simplifier et organiser cette étape.
repository=https://gitea.cenra-outils.org/CEN-RA/Plugin_QGIS
homepage=https://plateformesig.cenra-outils.org/
tracker=https://gitea.cenra-outils.org/api/v1/repos/CEN-RA/Plugin_QGIS/issues
# End of mandatory metadata
# Recommended items:
hasProcessingProvider=no
# Uncomment the following line and add your changelog:
changelog=<h2>CenRa_AutoMap:</h2></br><p><h3>21/10/2024 - Version 1.7: </h3> - Epurations du code.</p></br><p><h3>07/10/2024 - Version 1.6: </h3> - Option de bibliotheque de logo custome.</p></br><p><h3>03/10/2024 - Version 1.5: </h3> - Remonte la fênetre dans la pille.</br> - Gestion du nombre de colonne dans la légend.</br></p></br><p><h3>02/10/2024 - Version 1.4: </h3> - Mise en page plein écrant.</br></p></br><p><h3>01/10/2024 - Version 1.3: </h3> - Récupération du titre et sous-titre pour mise en page existente.</br> - Integration de bibliotheque de logo.</br> - Integration de gestionaire pour les source de donnée.</br> - Mise en place d'une bar d'echelle adaptative. </br></p></br><p><h3>30/09/2024 - Version 1.2: </h3> - Activation du thème. </br> - Ajouter une carte de suivie. </br><p></br><h3>27/09/2024 - Version 1.1: </h3> - Ajout d'une liste déroulante pour les sources de données. </br>- Bouton pour ajouter des fonts de carte customisés. </br>- Fonctionnalité de génération d'atlas. </p></br><p><h3>26/09/2024 - Version 1.0: </h3> - Lancement du plugin CenRa_AutoMap avec une seul mise en page. </p></br>
# Tags are comma separated with spaces allowed
tags=python
category=Plugins
icon=icon.png
# experimental flag
experimental=False
# deprecated flag (applies to the whole plugin, not just a single version)
deprecated=False
# Since QGIS 3.8, a comma separated list of plugins to be installed
# (or upgraded) can be specified.
# Check the documentation for more information.
# plugin_dependencies=
Category of the plugin: Raster, Vector, Database or Web
# category=cenra,mise en page,atlas
# If the plugin can run on QGIS Server.
server=False

Binary file not shown.

Before

Width:  |  Height:  |  Size: 114 KiB

View File

@ -8,21 +8,21 @@ if IPAddr[0:11] == "100.100.100": #4269
dbname = "sig4269" dbname = "sig4269"
sigdb="sig4269" sigdb="sig4269"
refdb="ref_geo4269" refdb="ref_geo4269"
password = "McVities" password = "XXXXXX"
if IPAddr[0:9] == "192.168.0": #01 if IPAddr[0:9] == "192.168.0": #01
host = "192.168.0.201" host = "192.168.0.201"
port = "5432" port = "5432"
dbname = "sig01" dbname = "sig01"
sigdb="sig01" sigdb="sig01"
refdb="ref_geo01" refdb="ref_geo01"
password = "McVities" password = "XXXXXX"
if IPAddr[0:9] == "192.168.1": #0726 if IPAddr[0:9] == "192.168.1": #0726
host = "192.168.1.201" host = "192.168.1.201"
port = "5432" port = "5432"
dbname = "sig0726" dbname = "sig0726"
sigdb="sig0726" sigdb="sig0726"
refdb="ref_geo0726" refdb="ref_geo0726"
password = "McVities" password = "XXXXXX"
if sys.platform == 'linux': if sys.platform == 'linux':
os_user = os.environ['USER'] os_user = os.environ['USER']
else: else:

View File

@ -9,21 +9,21 @@ if IPAddr[0:11] == "100.100.100": #4269
dbname = "sig4269" dbname = "sig4269"
sigdb="sig4269" sigdb="sig4269"
refdb="ref_geo4269" refdb="ref_geo4269"
password = "McVities" password = "XXXXXX"
if IPAddr[0:9] == "192.168.0": #01 if IPAddr[0:9] == "192.168.0": #01
host = "192.168.0.201" host = "192.168.0.201"
port = "5432" port = "5432"
dbname = "sig01" dbname = "sig01"
sigdb="sig01" sigdb="sig01"
refdb="ref_geo01" refdb="ref_geo01"
password = "McVities" password = "XXXXXX"
if IPAddr[0:9] == "192.168.1": #0726 if IPAddr[0:9] == "192.168.1": #0726
host = "192.168.1.201" host = "192.168.1.201"
port = "5432" port = "5432"
dbname = "sig0726" dbname = "sig0726"
sigdb="sig0726" sigdb="sig0726"
refdb="ref_geo0726" refdb="ref_geo0726"
password = "McVities" password = "XXXXXX"
if sys.platform == 'linux': if sys.platform == 'linux':
os_user = os.environ['USER'] os_user = os.environ['USER']
else: else:

View File

@ -119,39 +119,39 @@ class PgMetadata:
# self.issues_action = QAction(icon, 'CenRa_Metabase',None) # self.issues_action = QAction(icon, 'CenRa_Metabase',None)
# self.toolBar.addAction(self.issues_action) # self.toolBar.addAction(self.issues_action)
# self.issues_action.triggered.connect(self.open_issues) # self.issues_action.triggered.connect(self.open_issues)
''' # '''
if not self.locator_filter: # if not self.locator_filter:
self.locator_filter = LocatorFilter(iface) # self.locator_filter = LocatorFilter(iface)
iface.registerLocatorFilter(self.locator_filter) # iface.registerLocatorFilter(self.locator_filter)
@staticmethod # @staticmethod
def check_invalid_connection_names(): # def check_invalid_connection_names():
""" Check for invalid connection names in the QgsSettings. """ # """ Check for invalid connection names in the QgsSettings. """
valid, invalid = validate_connections_names() # valid, invalid = validate_connections_names()
n_invalid = len(invalid) # n_invalid = len(invalid)
if n_invalid == 0: # if n_invalid == 0:
return # return
invalid_text = ', '.join(invalid) # invalid_text = ', '.join(invalid)
msg = QMessageBox() # msg = QMessageBox()
msg.setIcon(QMessageBox.Warning) # msg.setIcon(QMessageBox.Warning)
msg.setWindowTitle(tr('PgMetadata: Database connection(s) not available')) # msg.setWindowTitle(tr('PgMetadata: Database connection(s) not available'))
msg.setText(tr( # msg.setText(tr(
f'{n_invalid} connection(s) listed in PgMetadatas settings are invalid or ' # f'{n_invalid} connection(s) listed in PgMetadatas settings are invalid or '
f'no longer available: {invalid_text}')) # f'no longer available: {invalid_text}'))
msg.setInformativeText(tr( # msg.setInformativeText(tr(
'Do you want to remove these connection(s) from the PgMetadata settings? ' # 'Do you want to remove these connection(s) from the PgMetadata settings? '
'(You can also do this later with the “Set Connections” tool.)')) # '(You can also do this later with the “Set Connections” tool.)'))
msg.setStandardButtons(QMessageBox.Yes | QMessageBox.No) # msg.setStandardButtons(QMessageBox.Yes | QMessageBox.No)
clicked = msg.exec() # clicked = msg.exec()
if clicked == QMessageBox.Yes: # if clicked == QMessageBox.Yes:
iface.messageBar().pushSuccess('PgMetadata', tr(f'{n_invalid} invalid connection(s) removed.')) # iface.messageBar().pushSuccess('PgMetadata', tr(f'{n_invalid} invalid connection(s) removed.'))
store_connections(valid) # store_connections(valid)
if clicked == QMessageBox.No: # if clicked == QMessageBox.No:
iface.messageBar().pushInfo('PgMetadata', tr(f'Keeping {n_invalid} invalid connections.')) # iface.messageBar().pushInfo('PgMetadata', tr(f'Keeping {n_invalid} invalid connections.'))
''' # '''
def open_about_dialog(self): def open_about_dialog(self):
""" """
About dialog About dialog
@ -160,7 +160,7 @@ class PgMetadata:
dialog.exec_() dialog.exec_()
def open_help(): def open_help():
""" Open the online help. """ """ Open the online help. """
QDesktopServices.openUrl(QUrl('https://plateformesig.cenra-outils.org/')) # QDesktopServices.openUrl(QUrl('https://plateformesig.cenra-outils.org/'))
def open_dock(self): def open_dock(self):
""" Open the dock. """ """ Open the dock. """

View File

@ -9,21 +9,21 @@ if IPAddr[0:11] == "100.100.100": #4269
dbname = "sig4269" dbname = "sig4269"
sigdb="sig4269" sigdb="sig4269"
refdb="ref_geo4269" refdb="ref_geo4269"
password = "McVities" password = "XXXXXX"
if IPAddr[0:9] == "192.168.0": #01 if IPAddr[0:9] == "192.168.0": #01
host = "192.168.0.201" host = "192.168.0.201"
port = "5432" port = "5432"
dbname = "sig01" dbname = "sig01"
sigdb="sig01" sigdb="sig01"
refdb="ref_geo01" refdb="ref_geo01"
password = "McVities" password = "XXXXXX"
if IPAddr[0:9] == "192.168.1": #0726 if IPAddr[0:9] == "192.168.1": #0726
host = "192.168.1.201" host = "192.168.1.201"
port = "5432" port = "5432"
dbname = "sig0726" dbname = "sig0726"
sigdb="sig0726" sigdb="sig0726"
refdb="ref_geo0726" refdb="ref_geo0726"
password = "McVities" password = "XXXXXX"
if sys.platform == 'linux': if sys.platform == 'linux':
os_user = os.environ['USER'] os_user = os.environ['USER']
else: else:

View File

@ -9,21 +9,21 @@ if IPAddr[0:11] == "100.100.100": #4269
dbname = "sig4269" dbname = "sig4269"
sigdb="sig4269" sigdb="sig4269"
refdb="ref_geo4269" refdb="ref_geo4269"
password = "McVities" password = "XXXXXX"
if IPAddr[0:9] == "192.168.0": #01 if IPAddr[0:9] == "192.168.0": #01
host = "192.168.0.201" host = "192.168.0.201"
port = "5432" port = "5432"
dbname = "sig01" dbname = "sig01"
sigdb="sig01" sigdb="sig01"
refdb="ref_geo01" refdb="ref_geo01"
password = "McVities" password = "XXXXXX"
if IPAddr[0:9] == "192.168.1": #0726 if IPAddr[0:9] == "192.168.1": #0726
host = "192.168.1.201" host = "192.168.1.201"
port = "5432" port = "5432"
dbname = "sig0726" dbname = "sig0726"
sigdb="sig0726" sigdb="sig0726"
refdb="ref_geo0726" refdb="ref_geo0726"
password = "McVities" password = "XXXXXX"
if sys.platform == 'linux': if sys.platform == 'linux':
os_user = os.environ['USER'] os_user = os.environ['USER']
else: else:

View File

@ -8,21 +8,21 @@ if IPAddr[0:11] == "100.100.100": #4269
dbname = "sig4269" dbname = "sig4269"
sigdb="sig4269" sigdb="sig4269"
refdb="ref_geo4269" refdb="ref_geo4269"
password = "McVities" password = "XXXXXX"
if IPAddr[0:9] == "192.168.0": #01 if IPAddr[0:9] == "192.168.0": #01
host = "192.168.0.201" host = "192.168.0.201"
port = "5432" port = "5432"
dbname = "sig01" dbname = "sig01"
sigdb="sig01" sigdb="sig01"
refdb="ref_geo01" refdb="ref_geo01"
password = "McVities" password = "XXXXXX"
if IPAddr[0:9] == "192.168.1": #0726 if IPAddr[0:9] == "192.168.1": #0726
host = "192.168.1.201" host = "192.168.1.201"
port = "5432" port = "5432"
dbname = "sig0726" dbname = "sig0726"
sigdb="sig0726" sigdb="sig0726"
refdb="ref_geo0726" refdb="ref_geo0726"
password = "McVities" password = "XXXXXX"
if sys.platform == 'linux': if sys.platform == 'linux':
os_user = os.environ['USER'] os_user = os.environ['USER']
else: else:

View File

@ -0,0 +1,566 @@
# -*- coding: utf-8 -*-
# Resource object code
#
# Created by: The Resource Compiler for PyQt5 (Qt v5.15.2)
#
# WARNING! All changes made in this file will be lost!
from PyQt5 import QtCore
qt_resource_data = b"\
\x00\x00\x0d\x89\
\x89\
\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
\x00\x00\x24\x00\x00\x00\x29\x08\x06\x00\x00\x00\x5d\x9e\x8b\x46\
\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x0b\x13\x00\x00\x0b\x13\
\x01\x00\x9a\x9c\x18\x00\x00\x00\x20\x63\x48\x52\x4d\x00\x00\x7a\
\x25\x00\x00\x80\x83\x00\x00\xf9\xff\x00\x00\x80\xe9\x00\x00\x75\
\x30\x00\x00\xea\x60\x00\x00\x3a\x98\x00\x00\x17\x6f\x92\x5f\xc5\
\x46\x00\x00\x0d\x0f\x49\x44\x41\x54\x78\xda\xac\x98\x7b\x50\x54\
\x57\x9e\xc7\xbf\xf7\xd1\x0f\xe0\x76\x43\x0b\xdd\x76\x0b\x74\xf3\
\x68\x24\x38\xc0\x62\x8b\x04\x15\xc5\x58\x92\x07\x3b\x06\x0d\x1a\
\x34\xbb\x15\x2b\x6b\x25\xc6\x75\x35\x0f\x2b\x9b\xca\xce\x5a\x26\
\xd4\x26\xba\x6e\xca\x11\x33\xc6\x1d\x93\xd1\xe0\x90\x38\x4a\x92\
\xb1\x8c\x92\x04\xb5\x70\x65\xa0\x8a\x97\x44\x5b\x85\xf0\xec\x06\
\x3a\x74\x37\x2d\xdd\x4d\x3f\x6e\x3f\xee\x63\xff\x30\xa4\x9c\x44\
\x34\x26\xfe\xaa\x7e\xff\xdc\x7b\xbe\xbf\xf3\xb9\xe7\xfc\xce\x3d\
\xe7\xfc\x88\x23\x47\x8e\x60\xda\x38\x8e\x03\xc7\x71\x48\x4b\x4b\
\x43\x7e\x7e\x3e\x74\x3a\x1d\x78\x9e\x07\x45\x51\x20\x49\x12\x36\
\x9b\x0d\xbd\xbd\xbd\xb0\xdb\xed\xa0\x28\x0a\x06\x83\x01\xf3\xe6\
\xcd\x43\x7c\x7c\x3c\xfa\xfb\xfb\x89\x6d\xdb\xb6\x89\x3d\x3d\x3d\
\xa8\xa8\xa8\x40\x75\x75\x35\x02\x81\x00\x74\x3a\x1d\x46\x46\x46\
\x30\x34\x34\x84\x98\x98\x18\x74\x77\x77\x43\xab\xd5\x62\xc7\x8e\
\x1d\xb0\x58\x2c\x78\xee\xb9\xe7\x90\x9b\x9b\x8b\xb2\xb2\x32\xc4\
\xc5\xc5\x81\xc6\x6d\x46\xd3\x34\x68\x9a\x86\xd5\x6a\x85\xcd\x66\
\x43\x76\x76\x36\x72\x73\x73\xa1\x50\x28\xc0\x71\x1c\x92\x93\x93\
\xa1\xd5\x6a\x31\x38\x38\x88\xbe\xbe\x3e\x8c\x8f\x8f\xc3\xed\x76\
\x4b\x62\x63\x63\xe7\x29\x95\x4a\x51\x26\x93\xcd\x05\x70\x16\x00\
\x8b\x5f\x68\xf4\x9d\x1e\xca\x64\x32\x00\xc0\xf5\xeb\xd7\xd1\xd7\
\xd7\x87\xe2\xe2\x62\x18\x0c\x06\x08\x82\x00\x8a\xa2\x30\x77\xee\
\x5c\x64\x64\x64\xe0\xcc\x99\x33\x86\xd1\xd1\xd1\x15\xb5\xb5\xb5\
\x6b\x7b\x7b\x7b\x8b\x75\x3a\x9d\x9b\x20\x88\x6d\x72\xb9\x7c\x1b\
\x80\xab\x0f\x0c\xe8\x76\x30\x9b\xcd\x86\x89\x89\x09\x68\x34\x1a\
\xc8\x64\x32\x90\x24\x09\x92\x24\x41\xd3\x34\x2e\x5e\xbc\xf8\xd2\
\xd9\xb3\x67\x57\x0d\x0c\x0c\x18\x01\xc0\xed\x76\xcf\x92\x4a\xa5\
\x69\x83\x83\x83\xd5\x72\xb9\x7c\xb5\xdf\xef\xbf\x6f\x20\x92\x61\
\x18\x90\x24\xf9\x93\x17\x14\x45\xc1\xef\xf7\x23\x25\x25\x05\x85\
\x85\x85\x08\x06\x83\x08\x06\x83\x60\x18\x06\x14\x45\xa1\xb6\xb6\
\x76\xed\x81\x03\x07\xb6\x4c\xc3\x4c\x5b\x24\x12\xa1\x3e\xff\xfc\
\xf3\x8a\x96\x96\x96\x25\x34\x4d\xdf\x3f\x50\x53\x53\x13\x78\x9e\
\x47\x5c\x5c\xdc\xdf\xbd\x08\x87\xc3\x08\x04\x02\x58\xb4\x68\x11\
\x02\x81\xc0\x74\xe2\x62\xff\xfe\xfd\x70\x38\x1c\xb1\xfb\xf7\xef\
\x7f\x49\x14\x45\xe9\x4c\x81\x4f\x9f\x3e\xfd\xdb\xc4\xc4\x44\x90\
\x24\x09\x51\x14\x7f\xfe\x94\xd5\xd7\xd7\xe3\xfa\xf5\xeb\x58\xbc\
\x78\x31\xf2\xf3\xf3\x01\x00\x3c\xcf\x83\x20\x88\x59\x0b\x17\x2e\
\x9c\xcc\xce\xce\xc6\xf0\xf0\x30\xa4\x52\x29\x2c\x16\x0b\x1a\x1b\
\x1b\xc9\x9e\x9e\x9e\x7f\xec\xe9\xe9\x99\x0f\x80\x9c\x29\xb0\xdd\
\x6e\x9f\x23\x91\x48\xe0\xf3\xf9\x60\xb3\xd9\x40\x10\x04\x08\x82\
\x80\x44\x22\xb9\x3b\x90\xcb\xe5\x42\x57\x57\x17\x06\x07\x07\x61\
\x32\x99\xb0\x74\xe9\xd2\x74\x82\x20\x1e\x99\x98\x98\x30\xd4\xd5\
\xd5\x65\x86\xc3\xe1\x8f\xcb\xcb\xcb\xbf\x6c\x6e\x6e\x46\x52\x52\
\x12\x5e\x79\xe5\x15\xe2\xdc\xb9\x73\x46\x9a\xa6\xc9\x70\x38\x7c\
\xe7\xa0\x34\xcd\x25\x26\x26\x7a\x42\xa1\x90\xcc\x66\xb3\x85\x23\
\x91\x08\x12\x12\x12\x40\x51\x14\x5c\x2e\x57\x76\x56\x56\x16\x08\
\x82\x90\x02\x30\xff\x44\x4b\x10\x04\x02\x81\x00\x82\xc1\x20\x7c\
\x3e\x1f\x06\x06\x06\xfe\x83\xa6\xe9\xe5\x66\xb3\xd9\x08\x00\x17\
\x2e\x5c\xf8\xa7\x83\x07\x0f\xfe\x9b\x20\x08\xff\xdb\xdf\xdf\xcf\
\xd7\xd4\xd4\x08\x47\x8e\x1c\x29\x08\x04\x02\x31\x33\x7d\x25\xc7\
\x71\x74\x62\x62\xa2\x47\x2e\x97\x73\xe1\x70\x18\x0c\xc3\x80\x65\
\xd9\x9c\x77\xdf\x7d\x77\x87\xd3\xe9\xfc\x87\xc6\xc6\x46\x96\xe3\
\x38\x3d\x80\xd3\x04\x41\xfc\x27\x80\xa9\x1f\x80\x34\x1a\x0d\x26\
\x27\x27\x11\x8d\x46\x31\x35\x35\xf5\xcf\x2c\xcb\x6e\x8a\x46\xa3\
\xc4\xed\x1d\x54\x57\x57\xff\x6e\xfd\xfa\xf5\xe7\x14\x0a\x45\x9f\
\xd7\xeb\x65\xdc\x6e\x77\x1c\x41\x10\xa2\x28\x8a\xc4\x9d\x80\x54\
\x2a\xd5\xd4\x13\x4f\x3c\x71\xbe\xb3\xb3\x93\xd7\x6a\xb5\x38\x74\
\xe8\xd0\x4b\xc7\x8e\x1d\x7b\x75\x6c\x6c\x4c\x7f\x9b\x4e\x04\xb0\
\x0d\x00\xcd\xf3\xfc\x2b\x00\xc2\x00\x40\xce\x9f\x3f\x1f\x59\x59\
\x59\x88\x8f\x8f\x57\x48\xa5\xd2\x37\x7e\x0c\x03\x00\x0e\x87\x43\
\x37\x35\x35\xb5\x71\xeb\xd6\xad\x68\x6b\x6b\x0b\x18\x0c\x06\xeb\
\x4c\x30\x00\xf0\xe8\xa3\x8f\x5e\x72\x3a\x9d\x57\x4f\x9d\x3a\x95\
\xf0\xe9\xa7\x9f\xfe\xeb\xfb\xef\xbf\x5f\x6d\xb3\xd9\xf4\x00\x70\
\x9b\x8e\x00\x80\x86\x86\x86\xa7\x94\x4a\xa5\x41\x10\x84\x5b\xab\
\xec\x99\x67\x9e\x41\x59\x59\x19\xb1\x64\xc9\x92\x32\x85\x42\x91\
\x33\x53\x27\x56\xab\xb5\x38\x3e\x3e\x5e\x42\xd3\xb4\xa0\xd3\xe9\
\xae\xcc\xd4\x2e\x29\x29\xc9\x5d\x5a\x5a\xfa\x97\xaf\xbf\xfe\xda\
\x3b\x31\x31\x51\xf1\xd1\x47\x1f\x6d\xf1\x78\x3c\xca\x99\x56\x9a\
\xdd\x6e\x9f\x9d\x96\x96\x96\xa2\x52\xa9\x6e\x01\xe9\x74\x3a\xac\
\x5e\xbd\x9a\x2e\x2e\x2e\xce\x08\x06\x83\xa1\x99\x3a\xb2\xd9\x6c\
\xa9\x67\xcf\x9e\x4d\x22\x49\x12\x4a\xa5\xb2\xe1\xe1\x87\x1f\xee\
\xbf\xc3\x8f\x34\xfc\xe2\x8b\x2f\xfe\x91\xa2\xa8\xd3\x2c\xcb\xa6\
\x5b\xad\xd6\x7f\x31\x9b\xcd\xb9\x77\x5b\x55\x4a\xa5\xd2\x27\x97\
\xcb\x43\x31\x31\xb7\x52\x92\xfc\x3e\xfb\xa3\x7e\xbf\x5f\xc5\xb2\
\xec\x8c\x89\xca\xf3\x3c\x91\x99\x99\xc9\x05\x02\x01\x30\x0c\x63\
\xd3\xeb\xf5\xbf\x93\x4a\xa5\xac\x4c\x26\x8b\x02\x40\x41\x41\xc1\
\x95\x0d\x1b\x36\xfc\x79\xeb\xd6\xad\x7f\x90\x48\x24\x81\xb9\x73\
\xe7\x16\x9b\xcd\xe6\xb9\xd3\x53\x31\x93\xe5\xe6\xe6\x0e\x5b\x2c\
\x96\x90\xd9\x6c\x06\x45\x51\xa0\xf5\x7a\x3d\x78\x9e\x87\xcf\xe7\
\x23\xef\x26\xd4\x6a\xb5\xb6\x84\x84\x84\x40\x28\x14\xc2\xde\xbd\
\x7b\xc5\x82\x82\x82\x7a\xb3\xd9\x6c\xd9\xb3\x67\x4f\x95\xc9\x64\
\xfa\x56\x22\x91\x38\xca\xca\xca\xba\xb4\x5a\xad\x6d\xdd\xba\x75\
\x78\xfb\xed\xb7\x0b\x1d\x0e\x87\xe6\x6e\x31\x19\x86\x09\xa7\xa7\
\xa7\xb7\xb5\xb7\xb7\xf7\xf4\xf6\xf6\xc2\x6a\xb5\x82\x8e\x46\xa3\
\xa0\x28\x0a\x8f\x3c\xf2\x48\xe7\xa1\x43\x87\x66\x14\x17\x15\x15\
\x75\xa4\xa6\xa6\xb2\xb3\x66\xcd\xc2\xce\x9d\x3b\x61\x30\x18\x90\
\x95\x95\xd5\xf1\xf2\xcb\x2f\x77\x5c\xbb\x76\x2d\x26\x3f\x3f\x9f\
\xcd\xc8\xc8\x80\xcb\xe5\x42\x6c\x6c\xac\xbc\xb3\xb3\x33\x87\xe7\
\xf9\x19\x3f\x92\x24\x49\x31\x27\x27\x67\x44\x10\x84\x7a\xbb\xdd\
\xce\x7a\x3c\x1e\xf8\x7c\xbe\x5b\x7f\x5a\x89\x44\x82\xc5\x8b\x17\
\x37\x69\x34\x1a\xc7\x0c\xa3\xe3\xa8\xac\xac\xac\xf7\x7a\xbd\x22\
\x45\x51\x20\x08\x02\xa9\xa9\xa9\x68\x69\x69\xc1\x8d\x1b\x37\x90\
\x9e\x9e\xce\xa6\xa7\xa7\xa3\xa3\xa3\x03\x32\x99\x0c\xdf\x7c\xf3\
\x0d\x6f\x34\x1a\xfb\xef\x36\x3a\xe9\xe9\xe9\xd6\xa2\xa2\xa2\xa3\
\xa2\x28\x9e\x13\x45\x11\xc1\x60\x10\x4e\xa7\x13\xa4\x28\x8a\x88\
\x89\x89\xc1\x89\x13\x27\xdc\x55\x55\x55\x07\xee\x24\xde\xb2\x65\
\xcb\x1f\xe6\xcc\x99\x73\xfd\xdc\xb9\x73\xe8\xec\xec\x44\x73\x73\
\x33\xfa\xfa\xfa\x70\xe2\xc4\x09\xa8\xd5\x6a\x24\x27\x27\xe3\xe2\
\xc5\x8b\xe8\xea\xea\x42\x30\x18\xc4\xe0\xe0\x60\x74\xe5\xca\x95\
\x17\xa6\xf3\xeb\xc7\x96\x9a\x9a\x6a\x7d\xf5\xd5\x57\xff\xa7\xb0\
\xb0\xf0\x48\x6a\x6a\x2a\x12\x13\x13\x21\x8a\x22\xdc\x6e\x37\xa8\
\x5d\xbb\x76\xa1\xbf\xbf\x1f\x27\x4f\x9e\xc4\xc6\x8d\x1b\xdb\x94\
\x4a\xe5\x6c\xa7\xd3\x39\xcb\xe3\xf1\xa8\xf2\xf3\xf3\xaf\x56\x54\
\x54\x9c\xd9\xb5\x6b\xd7\x4e\x85\x42\x11\x3c\x7c\xf8\x30\x26\x26\
\x26\xb0\x60\xc1\x02\xe2\xda\xb5\x6b\xe0\x79\x1e\xe5\xe5\xe5\xf8\
\xf6\xdb\x6f\xe1\x72\xb9\x40\xd3\x34\x48\x92\xc4\xe4\xe4\x24\x2e\
\x5f\xbe\x3c\xa6\x56\xab\x67\x5b\x2c\x96\x05\x6a\xb5\x7a\xc2\xef\
\xf7\xc7\x65\x64\x64\x0c\x3c\xfe\xf8\xe3\xe7\x9f\x7d\xf6\xd9\xda\
\x17\x5e\x78\xe1\x38\x80\x49\x8d\x46\x83\xa1\xa1\x21\x8c\x8d\x8d\
\x41\x14\x45\xd0\x2c\xcb\xe2\xf8\xf1\xe3\x58\xb0\x60\x01\x02\x81\
\x40\x24\x36\x36\xf6\xed\x9d\x3b\x77\x36\x46\xa3\x51\x26\x27\x27\
\x67\x80\x65\xd9\x2b\xa2\x28\x4a\x2e\x5f\xbe\x9c\x35\x32\x32\x22\
\x09\x85\x42\x25\x8b\x16\x2d\xba\xd1\xd5\xd5\x65\x58\xb3\x66\x4d\
\x13\x4d\xd3\x36\x8f\xc7\x23\x46\x22\x91\xb0\x52\xa9\x44\x4c\x4c\
\x0c\x12\x13\x13\x71\xfe\xfc\xf9\xc0\xc1\x83\x07\x37\x3b\x1c\x8e\
\xaf\x4a\x4a\x4a\x7e\x63\xb3\xd9\xdc\x8f\x3d\xf6\xd8\x00\x80\x9e\
\xaa\xaa\xaa\x91\x4b\x97\x2e\xe1\xa1\x87\x1e\x92\x5c\xbd\x7a\x35\
\x3a\x3c\x3c\x0c\x96\x65\x51\x58\x58\x08\x5a\x2e\x97\xc3\x66\xb3\
\xe1\xe9\xa7\x9f\xc6\x57\x5f\x7d\x85\xa2\xa2\xa2\x91\xc4\xc4\xc4\
\x91\x65\xcb\x96\x61\x6c\x6c\x2c\xb6\xbe\xbe\x7e\xc9\xf1\xe3\xc7\
\x9f\xb6\x58\x2c\x86\xf6\xf6\xf6\xc5\xc9\xc9\xc9\x6c\x6d\x6d\x6d\
\x52\x5a\x5a\xda\x58\x5d\x5d\xdd\xef\xd7\xaf\x5f\x7f\x72\xe5\xca\
\x95\xa7\x35\x1a\xcd\xdf\x64\x32\xd9\xcd\xb4\xb4\x34\xb8\xdd\x6e\
\xac\x5d\xbb\x16\x0c\xc3\x20\x39\x39\xf9\xaf\x05\x05\x05\x7f\xdd\
\xb0\x61\x03\x82\xc1\x20\x04\x41\x90\x7e\xf0\xc1\x07\x99\xad\xad\
\xad\x8b\x9f\x7f\xfe\xf9\xe1\xf6\xf6\xf6\x78\x9f\xcf\xd7\x90\x90\
\x90\x20\x2e\x5f\xbe\x1c\x10\x45\x11\x4e\xa7\x13\x2e\x97\x0b\x83\
\x83\x83\x10\x45\x11\xc3\xc3\xc3\x74\x73\x73\xf3\x92\x15\x2b\x56\
\x9c\xcd\xce\xce\x1e\x8c\x89\x89\x09\x7e\xbf\xf7\xdc\xd1\x55\x2a\
\xd5\xcd\xed\xdb\xb7\x1f\x18\x1f\x1f\x57\xb8\x5c\x2e\xd4\xd4\xd4\
\xe0\x93\x4f\x3e\xc1\xd4\xd4\x14\x8e\x1e\x3d\x8a\x70\x38\x8c\xfe\
\xfe\x7e\xd5\x97\x5f\x7e\x59\xba\x7d\xfb\xf6\xfd\x09\x09\x09\xe3\
\x7a\xbd\xfe\x66\x52\x52\xd2\x44\x5e\x5e\x5e\xcf\xf2\xe5\xcb\x8f\
\xee\xde\xbd\x5b\x3d\x34\x34\x04\x04\x02\x01\x88\xa2\xf8\x83\x5b\
\xad\xd6\x94\xcd\x9b\x37\xef\xcb\xcc\xcc\xec\xa1\x28\x2a\x7a\x37\
\x90\x1f\x7b\x45\x45\xc5\xc9\xa6\xa6\xa6\xf8\xa7\x9e\x7a\x0a\x9b\
\x37\x6f\x86\xd7\xeb\x85\x28\x8a\xe0\x79\x9e\x7c\xe3\x8d\x37\x76\
\x99\x4c\xa6\xcb\x77\xd2\xc5\xc7\xc7\xfb\x0f\x1f\x3e\xbc\xcd\x62\
\xb1\x50\xe8\xee\xee\x86\xdd\x6e\x07\xc7\x71\xe4\xf9\xf3\xe7\x97\
\x56\x56\x56\xfe\x99\x61\x18\xef\xfd\x80\xdc\xe6\x42\x75\x75\xf5\
\x8b\x65\x65\x65\xb8\x76\xed\x1a\xba\xbb\xbb\xe1\x70\x38\x24\xef\
\xbc\xf3\xce\x8e\x7b\x69\x8b\x8b\x8b\x2f\x45\x22\x11\xe0\xe3\x8f\
\x3f\x46\x6b\x6b\x2b\x75\xe5\xca\x95\xac\x45\x8b\x16\x5d\x92\x4a\
\xa5\xec\x2f\x84\x11\x01\x88\x7a\xbd\xbe\xf7\xc3\x0f\x3f\x8c\xf7\
\x78\x3c\xb8\x7a\xf5\x2a\x1a\x1a\x1a\x56\xa8\xd5\xea\xf1\xbb\x69\
\x48\x92\x14\x57\xad\x5a\xd5\xd4\xd0\xd0\x20\xc1\x9e\x3d\x7b\x50\
\x57\x57\x67\xaa\xac\xac\xfc\xec\xd7\x80\x4c\xbb\x44\x22\x09\x5d\
\xb8\x70\xa1\x62\x70\x70\x10\x13\x13\x13\xd2\xb5\x6b\xd7\x1e\xbf\
\x97\x86\x24\x49\x51\xaf\xd7\x1f\x2b\x2e\x2e\x96\xe1\x8b\x2f\xbe\
\x90\xbf\xf6\xda\x6b\x7b\x62\x62\x62\xd8\x07\x01\x04\x40\xac\xaa\
\xaa\xaa\xf5\x7a\xbd\xb0\x5a\xad\xc9\x2a\x95\x6a\xfc\x5e\xed\x09\
\x82\xf0\x90\x24\x69\x92\xcb\xe5\x80\xcd\x66\x63\x4a\x4a\x4a\x9a\
\x1f\x14\xcc\xf7\xd3\xd6\x27\x8a\x22\xda\xda\xda\x8c\x04\x41\x44\
\xee\x02\x22\x30\x0c\x23\x32\x0c\xb3\xf7\x87\x3d\x6e\xf6\xec\xd9\
\x91\xc9\xc9\xc9\x38\x3c\x40\x23\x49\x92\x39\x73\xe6\x8c\x7a\x60\
\x60\xe0\xa6\xc9\x64\x32\xcf\xd4\x4e\xa1\x50\x04\x4a\x4b\x4b\x8f\
\xeb\xf5\xfa\xff\x4e\x4a\x4a\x82\x4c\x26\x03\xf5\xd6\x5b\x6f\xf1\
\x76\xbb\x3d\xbd\xbd\xbd\x7d\x11\xc7\x71\xe4\x83\x00\x12\x45\x51\
\x50\xa9\x54\x5f\xd3\x34\x3d\xb0\x62\xc5\x8a\xc0\xa9\x53\xa7\x56\
\x33\x0c\x13\x8d\x44\x22\x54\x5c\x5c\x9c\x10\x8d\x46\x89\xbc\xbc\
\xbc\x2b\x3b\x76\xec\xd8\xb7\x64\xc9\x92\x3f\x46\x22\x11\x9b\x5c\
\x2e\x07\xcf\xf3\xb7\xae\xd2\x1a\x8d\xe6\xa0\x46\xa3\xc9\x71\xb9\
\x5c\x4f\x8a\xa2\x18\x66\x59\x56\xf6\x6b\x80\x7c\x3e\x9f\xa2\xa8\
\xa8\x48\x91\x99\x99\x29\x14\x16\x16\xd6\xc9\xe5\x72\xcf\xbe\x7d\
\xfb\x9e\x59\xb6\x6c\x99\xbb\xb5\xb5\x55\xaf\xd3\xe9\x2e\x6c\xda\
\xb4\xe9\xff\x8c\x46\xe3\x90\x4c\x26\xf3\x6a\xb5\x5a\x74\x75\x75\
\xa1\xa3\xa3\xe3\x16\x50\x34\x1a\x1d\x15\x04\xa1\x42\x22\x91\x6c\
\x32\x99\x4c\xab\xe2\xe2\xe2\x62\x1b\x1b\x1b\x4b\x55\x2a\x55\xf0\
\xe6\xcd\x9b\x0c\xc7\x71\xf7\x75\x27\x26\x08\x42\xa0\x69\x9a\xca\
\xcd\xbd\x75\x7a\xf5\xfb\xfd\x67\x0c\x06\xc3\x99\x92\x92\x92\x39\
\xa1\x50\xe8\x3b\xa3\xd1\x48\x26\x25\x25\x09\x32\x99\x0c\x2c\xcb\
\xc2\x68\x34\x42\xaf\xd7\x23\x3b\x3b\xfb\xef\x8b\x0d\xa2\x28\xfe\
\x49\x10\x84\x4f\xd7\xac\x59\x93\xf1\xde\x7b\xef\x85\x76\xef\xde\
\x5d\x66\x34\x1a\xe9\xb6\xb6\xb6\xc5\x9f\x7d\xf6\xd9\x6a\x00\xd4\
\xcf\x05\x1a\x1d\x1d\x35\xc8\x64\x32\x70\x1c\x07\x97\xcb\x85\xf2\
\xf2\x72\x98\xcd\xe6\xef\x48\x92\x44\x72\x72\xb2\xa0\xd1\x68\x10\
\x0c\x06\x41\x10\x04\x58\x96\x05\x41\x10\x30\x99\x4c\x77\xbc\x0a\
\x7b\xbd\x5e\x6f\x77\x4a\x4a\x4a\xcf\xd2\xa5\x4b\x0f\xe4\xe7\xe7\
\xff\xe9\xe8\xd1\xa3\xeb\x2e\x5e\xbc\xb8\xbc\xb2\xb2\xf2\xe4\xcf\
\x01\xe2\x38\x4e\x2a\x91\x48\xa2\x04\x41\x40\x14\x45\x6c\xdf\xbe\
\x1d\xa3\xa3\xa3\x18\x1e\x1e\x46\x4a\x4a\x0a\x72\x72\x72\x10\x8d\
\x46\x41\x10\xc4\xed\x83\x81\x40\x20\x30\xf3\xdd\x3c\x14\x0a\x21\
\x18\x0c\x82\xa6\x69\xaf\xcf\xe7\x13\x4b\x4b\x4b\xff\x56\x5f\x5f\
\x5f\x55\x53\x53\xf3\xef\x0c\xc3\xdc\xb3\xce\x22\x93\xc9\x38\x9e\
\xe7\xc1\x71\x1c\x08\x82\x40\x79\x79\x39\x52\x53\x53\x31\x6f\xde\
\x3c\x28\x95\x4a\x70\x1c\x77\xe7\x15\x7a\xaf\xc0\x82\x20\x40\x14\
\x45\xf8\x7c\x3e\x8c\x8d\x8d\xc1\x64\x32\xfd\x7e\xcb\x96\x2d\x35\
\xf7\xd2\xcd\x99\x33\xc7\x3e\x5d\x95\x8b\x44\x22\x28\x28\x28\xc0\
\xeb\xaf\xbf\x8e\x82\x82\x82\xe9\x63\xc8\x2f\x03\xfa\xb1\x75\x74\
\x74\x70\x6b\xd6\xac\xd9\xbb\x6e\xdd\xba\x19\xa7\xcf\x64\x32\xf5\
\x4f\x4e\x4e\x8e\x34\x35\x35\xc1\x66\xb3\x41\x22\x91\x20\x1c\x0e\
\x83\xe7\xf9\x1f\x8e\xbc\x4a\xa5\x12\x82\x20\xfc\x04\xec\xbe\x2b\
\x4a\x52\xa9\x14\x0a\x85\x62\xea\xcd\x37\xdf\x7c\xc5\x6e\xb7\x67\
\xb5\xb4\xb4\xcc\xbf\x3d\xa8\x44\x22\x11\x93\x92\x92\xfa\x1a\x1a\
\x1a\x6e\xea\xf5\x7a\x0c\x0c\x0c\x20\x3f\x3f\x1f\x19\x19\x19\x50\
\xab\xd5\x88\x44\x22\x00\x00\xb5\x5a\x0d\x86\x61\xe0\x76\xbb\xc1\
\xb2\x2c\x48\x92\x04\x41\x10\xf7\x0f\x34\x5d\xad\xf5\xfb\xfd\xdf\
\xe9\x74\xba\x6d\x52\xa9\xf4\x50\x34\x1a\xcd\xa3\x69\x3a\x12\x0e\
\x87\xa5\x85\x85\x85\x37\x04\x41\x38\x66\xb7\xdb\xed\x5e\xaf\x17\
\xe3\xe3\xe3\xb0\xdb\xed\x30\x1a\x8d\xc8\xcb\xcb\x83\xc1\x60\x00\
\xc3\x30\x08\x87\xc3\x90\x4a\xa5\xd0\xe9\x74\xf0\xfb\xfd\xf0\x78\
\x3c\x88\x44\x22\xbf\x0c\xe8\xb6\xf2\x5d\x0b\x80\x85\x14\x45\xbd\
\xf6\xe4\x93\x4f\xe6\xb3\x2c\x3b\xb5\x71\xe3\xc6\xbf\x74\x74\x74\
\xb4\x9a\xcd\x66\x4c\x4d\x4d\x21\x12\x89\xc0\xe3\xf1\xc0\xe1\x70\
\x60\x6c\x6c\x0c\x39\x39\x39\xc8\xc9\xc9\x41\x6a\x6a\x2a\x48\x92\
\x44\x24\x12\x01\xc3\x30\x88\x8d\x8d\x85\xd7\xeb\xfd\x75\x40\xd3\
\xd5\x3f\x51\x14\xff\x4b\x22\x91\xcc\xde\xb4\x69\x93\x63\x72\x72\
\x52\xba\x70\xe1\xc2\x88\xc1\x60\x80\xd9\x6c\x46\x5f\x5f\x1f\xdc\
\x6e\x37\x42\xa1\x10\x9c\x4e\x27\x9c\x4e\x27\x2c\x16\x0b\xf2\xf2\
\xf2\x90\x95\x95\x05\xad\x56\x0b\x9e\xe7\x21\x08\x02\x66\xcd\x9a\
\x85\xff\x1f\x00\x22\x1e\x83\x11\xc8\x4f\x82\x09\x00\x00\x00\x00\
\x49\x45\x4e\x44\xae\x42\x60\x82\
\x00\x00\x11\x4b\
\x89\
\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
\x00\x00\x2c\x00\x00\x00\x32\x08\x06\x00\x00\x00\x27\x58\x39\xea\
\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x0b\x13\x00\x00\x0b\x13\
\x01\x00\x9a\x9c\x18\x00\x00\x00\x20\x63\x48\x52\x4d\x00\x00\x7a\
\x25\x00\x00\x80\x83\x00\x00\xf9\xff\x00\x00\x80\xe9\x00\x00\x75\
\x30\x00\x00\xea\x60\x00\x00\x3a\x98\x00\x00\x17\x6f\x92\x5f\xc5\
\x46\x00\x00\x10\xd1\x49\x44\x41\x54\x78\xda\xac\x98\x5b\x6c\x1c\
\xd7\x79\xc7\x7f\xe7\x32\x33\x7b\xe3\x2e\x6f\xa2\x68\xaa\x94\x1c\
\xc5\xa2\x75\xa1\x68\x45\x69\x62\xa9\x32\x6c\xa9\xb5\x61\x20\x70\
\x02\x03\x95\x03\x01\x79\x29\x90\xc6\x01\x02\x14\x01\x92\x97\xb4\
\x40\xde\xda\x87\x1a\x6e\x1d\x24\x2f\x8a\x6b\xc7\x80\x5b\x3b\x85\
\x82\x16\x88\x1f\x8c\x2a\x8e\xe3\x42\x6e\x24\x07\xb1\xab\xc8\x96\
\x2d\x33\x96\x68\x49\x94\x48\x8a\x12\x29\x2e\xf7\x3e\x97\x73\xfa\
\x30\x97\xdd\x15\x05\xa4\x40\x3b\x04\xc9\xd9\x73\x66\x76\xfe\xdf\
\x77\xfe\xdf\xff\xfb\x9f\x11\x42\x88\xc7\x73\xa3\x95\xbd\x4e\xd1\
\x1b\x00\xac\xb0\xd6\x02\x18\x2c\xc6\x1a\xa4\x94\x48\x21\x88\x4c\
\x44\x7a\x08\x91\x9d\x22\xa5\x44\xd0\x33\x20\xe2\x5f\xd1\xf3\x31\
\x3e\x6c\xef\x87\xbe\xcb\xe3\x2f\xe2\xae\x87\x00\xa4\x14\xc2\x44\
\x66\xad\x3a\x5f\x7d\x5b\x4b\x47\x8d\x4f\x1e\xde\x7b\x6c\x78\xcf\
\xb6\xfb\x2c\x46\x08\x63\x40\x80\x1f\xf9\x04\xc6\xc7\xd1\x0e\x9e\
\xe3\xd2\x0e\xda\x08\x22\xac\x00\x21\x41\x08\x8b\xc5\xe2\x28\x45\
\x4e\xbb\x28\xa5\x00\x8b\x90\x09\x60\x11\x03\x94\x80\x15\x02\x81\
\x45\xa6\x73\x98\x38\x68\x29\x10\xc2\x22\x2c\x08\xd5\x45\x28\xd2\
\x40\x64\xfc\x7d\xda\x53\xf8\xd5\xf6\xed\x5f\xff\xc3\xe9\x1b\x1a\
\x21\xa4\x5b\x74\x8b\xde\x90\x57\x31\x58\xda\xad\x06\x9e\x76\xf9\
\xe2\xbd\x0f\xb0\xeb\x9e\xed\x7c\xb4\x38\xcb\x27\x37\xaf\x70\x74\
\xe7\xe3\x0c\xe4\x8a\x58\x2c\x02\x8b\x56\x9a\x56\xd8\xe2\xc3\xa5\
\x8f\xb9\xb8\x72\x19\x84\xc5\xd1\x0e\x02\x9b\xac\x42\x2f\xc0\xf8\
\x1e\x21\xe3\x4c\x8a\x74\x95\x92\xc0\x05\xf4\x04\x0a\x24\x41\x90\
\x24\x47\xe7\x04\xca\x31\x42\x6a\xe9\x6a\xc0\x5a\x13\x85\xc2\xfa\
\x46\x12\xc9\x4e\x50\x43\xe0\x31\xbd\x79\x3b\x7f\xf1\xe0\x9f\xf3\
\x1f\x1f\xbd\xc5\xf5\xd5\x6b\x3c\x35\xf3\x38\x13\x83\xe3\x08\x6b\
\x01\x49\x64\x23\xea\x7e\x83\xdf\x0e\x6f\xe5\x5f\xde\x3d\xc1\xdc\
\xea\x65\x86\x4a\x95\x2e\x60\x0c\xd6\x82\x90\x02\xb0\xf1\xa8\x00\
\x61\x32\x82\x20\x0c\x58\x11\x07\x62\x4d\xb2\x6a\x49\x40\x46\x12\
\x3f\xcb\x82\x8d\x14\x36\x8c\x42\x81\x35\x1a\xc0\xca\x08\xd7\x81\
\x6d\xde\x26\x1a\x5e\x89\x85\x60\x8d\xb3\x8b\xe7\x18\x38\xe7\xf2\
\xe9\xca\x3c\x56\x44\xbc\x77\xed\x77\xcc\xad\x0e\x62\xac\x21\xb0\
\x11\x93\x83\xf7\xb0\x6b\x6c\x8a\xfb\xc7\xb6\x33\x3c\x50\xe6\x52\
\x35\x40\x29\x93\xf1\x5b\xa4\x5c\x96\xb6\xcb\x67\x95\xf2\xdf\x26\
\xfc\x4f\xb2\x29\xbb\xf7\xa4\xf7\x4b\x05\x22\xa9\x0e\x2d\x15\x51\
\x52\x2b\x3a\xfe\x22\x83\xd6\x82\xd1\x5c\x99\x01\x37\xc7\xed\x56\
\x9d\x85\xda\x22\xef\xcc\xbd\xc7\x7a\x50\xa3\x6d\x1a\xfc\xe4\xdd\
\x57\x90\x52\x61\x6c\x44\x23\xa8\x73\x78\xfb\x43\xfc\xd5\xa1\xa7\
\x63\x9e\x2a\x8b\x72\x2c\x52\x19\x84\x10\xd9\x52\xca\xac\x08\x6d\
\x17\x8c\xec\x9e\x67\x63\xa2\x4b\x93\xb4\x80\xa5\x4c\xcf\x05\x5a\
\x48\xb4\x8c\xa3\xd2\x42\x80\x56\x12\xb4\xe5\x8a\x5d\xa6\xda\x5c\
\x23\x24\xe2\x91\x6d\x07\x79\x6c\xc7\xc3\xbc\xbf\x74\x9e\x7f\xfd\
\xe0\xdf\x58\xf5\x1b\x31\x18\x0c\xb5\x4e\x95\x95\xd6\x32\xed\xb0\
\x93\xf0\xcf\xa0\xb4\x45\xea\x1e\x20\x69\x66\x93\x02\x8c\x0b\x35\
\xfe\x2c\x45\x17\x5c\x7c\xbd\xc8\x44\x24\x1d\x4b\xf5\x43\x00\x4a\
\x4a\x14\x32\xce\x36\x80\x52\x16\xa5\x0c\x2d\xdb\xa0\x16\xae\x93\
\xf3\x72\xdc\x3b\xb2\x85\xfd\x5b\x67\x88\xa4\x8f\xfe\x58\x30\xe2\
\x0d\xe0\x28\x0d\x58\x0a\xbe\x62\xb0\x38\x80\x96\x12\x3f\xb2\x48\
\x05\x4a\x83\xd2\x06\x21\x05\x22\x51\x05\x54\x22\x4b\x3d\x19\x44\
\x88\x58\x15\x04\x88\x04\x84\x48\x52\x2c\xd2\x9f\x04\x70\x3c\x67\
\x51\x42\xa2\x44\x46\x09\x8b\xd5\x06\x57\x0b\xf6\xc8\x7b\x59\x29\
\x96\xb9\xa6\x6e\xd2\xb0\x75\x8c\x35\x34\xc3\x16\x52\x46\xf1\xfa\
\x4a\xb0\xd6\x62\x45\x00\x32\xca\xaa\x5a\x29\x83\xd6\x71\x96\xd3\
\x4c\xa6\x00\x25\x5d\x2e\xa6\x64\x95\x42\x74\xaf\x41\xc4\x52\x89\
\xe8\xbf\x36\xcb\xb6\x44\x8b\x98\x16\xa4\x1c\x96\xc2\x22\xb4\xa1\
\x99\x6f\x51\xb7\x0d\xac\x09\x51\x42\x90\xb6\x10\x74\x14\xeb\xaa\
\x02\xac\x05\x1d\x62\x65\x88\xb5\x31\x1f\xa5\x06\xe9\x58\x94\x92\
\x09\x98\x3b\x1f\x1a\x9f\xc9\x6c\x5c\x64\x5a\x2b\xb2\xf3\x6e\xb5\
\x4a\x12\x9a\x24\x87\x12\x12\x19\x93\x3a\x06\xec\x2a\x89\xd0\x86\
\xcb\xc1\x35\x56\x83\x55\x8a\x6e\x1e\x57\x49\x94\x94\x4c\x0c\x4c\
\xf0\xc0\xf8\x0c\x81\xed\xe0\x48\x85\xc1\xd0\x31\x1d\x76\x8d\xde\
\x4f\xc9\x2b\xd2\x6c\xd6\x91\x52\xa2\xa5\xc2\x49\xbb\x9e\xe8\xe5\
\x63\x17\xba\x64\x63\x20\x19\x60\xd1\x1b\x0a\x3d\xc1\x91\x50\x22\
\x51\x8c\xf8\xaf\xc1\xd1\x92\xb1\xf6\x28\x25\xe1\x52\x77\x6b\x74\
\x44\x1b\x80\x1d\x23\x3b\xf8\xeb\x43\x7f\x93\x34\x8c\xae\xa6\xba\
\xd2\xc1\x51\x2e\xc6\xc4\x4d\xc1\x91\x12\x2d\xd4\x5d\x38\xd8\x03\
\x52\x80\x4c\x7b\xb0\x20\x0e\x20\xe1\x86\xec\xcd\xb3\xe8\xd2\x03\
\x04\x8e\xd4\x84\x22\x44\xa6\x19\x0e\xe9\x10\x8a\x16\x15\x2f\x8f\
\xeb\x5a\xd6\xec\x32\xbf\x5b\xfe\x2d\x6f\x5f\xfd\x0c\x93\x03\xdb\
\x30\x98\x4c\x3b\x41\x60\x85\xc5\x51\x2e\xad\xa0\xc5\x6f\x17\x7f\
\xcd\x52\x7d\x1e\x47\x6a\x22\x13\xf6\x78\x0d\xd1\x27\x55\xc2\x0a\
\x84\x04\x93\xb4\xba\x38\xf4\x24\x1c\x03\xa6\x87\x26\x08\x91\xa5\
\x07\x04\xd2\x58\x22\x1b\xc4\x6c\x4c\x5a\x09\x46\x77\xb8\xe6\x5c\
\x21\xf0\x43\x84\x6f\xb9\xba\x76\x89\x9f\x9c\x3f\x4e\x51\x97\xb2\
\xee\x45\x5a\xd9\x22\x16\xf3\xd0\x44\xd4\xfc\x2a\x7e\xd8\xc2\x93\
\x2e\xc6\x26\x80\x6d\xb7\x01\x58\x04\x12\x99\x2c\xb9\x88\x57\xca\
\xc4\xf3\x36\xad\x5a\xdb\x6f\x85\x44\x6f\x07\x41\x80\x15\x60\x63\
\xf3\xa5\xb5\xd4\x7c\xe1\x9e\x2f\xb2\x77\xcb\x34\xd7\x16\xe7\x91\
\xc2\x61\x72\x72\x0b\x48\x4b\xb5\x5d\xc5\x60\x92\xa5\x4b\x2a\x9c\
\xae\x6c\x09\x04\x9e\xce\x91\xd7\x05\x94\x90\x64\x06\x20\x91\x32\
\x9b\x70\x11\x12\x93\x23\x04\x58\x99\x65\xde\x26\xca\xd0\x0d\x4d\
\x74\x33\x2f\xba\x73\x6e\xde\xa5\x5a\xac\x72\xd2\x7b\x17\xad\xa5\
\xc3\xa1\xc9\xc3\xfc\xd9\xb6\x3f\xe5\xe3\xda\x2c\x9e\xca\x31\x75\
\xdf\x0e\xdc\xbc\x4b\x14\x46\x3d\x81\x66\xeb\xd8\x53\x20\x49\x02\
\xd8\xe8\x1c\x45\xcf\xb8\xed\xb5\xa4\x7d\x17\x27\x7a\x4d\xef\x64\
\x8f\xe9\xb4\xb1\x23\x54\x5a\x73\x33\xb7\xcc\xa0\xf7\x22\x5a\x20\
\x28\xc8\x22\x63\xc5\xcd\x94\x76\x57\x30\x61\x44\x31\x57\x8c\x0d\
\x89\x06\x8b\xc9\x9e\x26\x65\x5c\x60\xbd\x99\xa4\xef\x54\x60\xad\
\xec\x33\xb3\x22\x31\x40\xb1\x44\xf6\x02\xb2\x58\x0b\x32\x99\x8b\
\x8b\x3a\xc3\x99\x74\xcb\xae\xb1\x2e\xa8\x32\x4a\x3a\x71\xd1\x35\
\xfd\x26\x9d\xa8\x83\xc8\x43\x14\x84\xd4\xfc\x75\xea\xf5\x06\xf5\
\x7a\x3d\xb9\x51\x22\x05\x18\x2b\x89\xac\xca\xba\x12\x3d\x5d\x0a\
\x40\xcb\x08\x95\x70\xd0\xf6\x48\x55\xb2\x27\x48\x9c\x5b\xf7\x5e\
\x6b\x6d\xa2\xe5\xa2\xef\x3b\x8d\x31\x58\x6b\x29\x16\x8b\x0c\x0e\
\x0e\xe2\x38\x0e\x91\x0d\x31\xd6\x24\x3a\xec\x38\x84\x51\xc4\xfb\
\xe7\xce\x51\x2c\x16\xb9\xf7\x33\x9f\xa1\xd9\x6c\x72\xf3\xc6\x0d\
\xf2\x85\x02\x5a\x2b\xa4\x12\xac\x34\xf3\x5c\x6d\x55\x70\xb5\x44\
\x09\x8b\xb1\xa0\x24\xf8\xa1\xc4\x98\x90\x2d\xb9\x15\x36\x17\x5a\
\x44\x56\x66\x80\xad\xb5\xd4\xeb\x75\x94\x52\xe4\xf3\xf9\x6c\x2c\
\xfd\x5f\xab\xd5\x70\x1c\x87\x5c\x2e\xd7\x65\xb3\xb5\xb4\x5a\x2d\
\xca\xe5\x32\xe5\x72\xb9\x8f\x6a\x3a\xbd\x40\x0a\x41\xa5\x52\xc1\
\xf3\x3c\xb0\x16\x61\x2d\xf9\x7c\x9e\x81\x81\x12\x4a\x49\xb4\x12\
\xd4\x45\x09\xcd\x30\x9e\x2b\x50\x12\x22\x0b\x5a\x02\x11\x84\xbe\
\x8f\xe3\xb6\xc9\xe5\x2d\x91\xe9\x02\x36\xc6\xe0\xfb\x3e\x4a\x29\
\x72\xb9\x1c\x52\x4a\x8c\x31\x19\xe0\x4e\xa7\x83\xe3\x38\xe4\xf3\
\xf9\x0c\x6c\x3a\xa7\x94\xca\x56\xa7\x0f\x70\x18\x86\x28\xa5\x98\
\xda\xb9\x13\x13\x19\x3a\xed\x16\x61\xe8\x63\xc2\x80\xd0\xef\x80\
\x96\x08\x23\x31\x51\x80\x14\x06\x29\x54\x57\x05\x00\x25\x20\x14\
\x96\x8e\xdf\xa1\xd1\x68\x60\xac\xea\xa3\x84\xef\xfb\xd9\xb9\x94\
\xb2\x4b\x83\x64\xce\x18\xd3\x07\xca\x5a\x4b\xbb\xdd\xc6\x75\xdd\
\x0d\x7b\xbc\xc4\xad\x29\x8c\x31\xcc\x5f\xb9\x42\x4e\x0b\x2a\x23\
\x9b\xe8\x38\xa3\x5c\x6f\x0b\x9c\x20\xee\xe3\xa1\x31\xd4\x42\xc1\
\xc0\xb0\x65\xb8\x10\x7b\x0b\x6b\x41\x69\x45\x27\x80\x46\x50\xc7\
\x31\x4d\x1c\xd7\x05\x54\x2c\x59\x52\x12\x45\x11\x5a\xeb\x0d\x19\
\x4e\xff\x3b\x8e\x93\xcd\xdd\x99\x61\x29\xe5\xdd\x01\xa7\x37\x2f\
\x2e\x2c\x52\x29\x38\x94\x07\x37\x61\xbd\x51\xa2\xf2\x20\xda\xb1\
\xf8\x91\xa0\x1d\x5a\xda\x1d\xc9\x81\x2d\x92\xf1\x72\x4f\xfb\x15\
\xd0\x69\x77\xb8\x9d\x6b\xa2\xa8\x30\xb6\x79\x73\x9f\x71\x89\xa2\
\x88\xb5\xb5\x35\x1c\xc7\xa1\x54\x2a\xf5\x81\x88\xa2\x88\xd5\xd5\
\x55\x72\xb9\x1c\xa5\x52\xa9\xef\xbe\x5a\xad\x46\xab\xd5\xda\x90\
\x7d\x9d\xde\xa8\x94\x62\x66\xef\x34\x5a\x46\x18\x21\x68\x87\x02\
\x5f\x78\x00\x04\x06\xda\x06\x5a\x06\xc2\xa0\x85\x08\x03\x24\x12\
\x63\x05\x52\x2b\x08\x1a\x18\xbf\x89\x93\x2b\xc4\xdd\x2c\x55\x05\
\xd1\xad\xfa\x28\x8a\xb2\xb1\xde\xf9\x54\x11\x7a\x8f\x34\xa8\x54\
\x45\x36\x00\xee\x95\x1f\x63\x05\x52\x82\x8c\x9a\xd8\x96\xc0\x68\
\x85\x06\x72\x56\x60\x6c\xc8\xcd\x1b\x37\x51\xf5\x0e\x20\x88\xac\
\xc0\x75\x1d\xc2\x30\xe4\xda\xb5\x25\x6a\xb5\x75\x76\xef\xde\x4d\
\xa1\x50\xe8\x5b\xf6\xb5\xb5\xb5\x8c\x1e\x4a\x29\xc2\x30\xcc\x40\
\x55\xab\x55\x9a\xcd\x26\x41\x10\x64\x18\x94\x52\xac\xaf\xaf\xc7\
\xdd\xee\x0e\x5a\xf4\x71\xf8\xc2\x85\x8f\x29\x15\x0b\x6c\xdf\xbe\
\x9d\x21\xbd\xce\x66\xb1\x46\xc1\x2b\xe2\x68\x89\xd4\x8a\x46\xa3\
\xce\xa0\x27\x28\x14\x4a\x08\x29\x88\x8c\xc5\x71\x1c\x00\x72\xb9\
\x5b\x2c\x2f\xb7\x50\x4a\x51\x28\x14\x88\xa2\x28\x03\xe9\xba\x6e\
\xa6\x04\xe9\x58\x5a\x7c\x8e\xe3\xe0\x79\x1e\x9e\xe7\xf5\x15\x64\
\x2e\x97\xcb\x56\xe5\xae\x94\x00\x18\x1a\x1a\x24\x97\x2f\x60\x01\
\xc7\x34\xd8\xe4\x56\x19\xc8\x5b\xb4\x56\x68\x57\xb3\x1e\xd6\x18\
\x1e\xd9\xc2\xe8\xa6\x71\x84\x20\xcb\xa2\xb5\x96\x30\x0c\x19\x19\
\x19\x61\xcb\x96\x2d\x59\x10\x29\x1d\x82\x20\xc0\xf3\x3c\x86\x86\
\x86\x36\x00\x08\xc3\x90\x4a\xa5\xb2\x41\x11\x1c\xc7\xa1\x5a\xad\
\xde\x9d\x12\xc6\x18\xb4\xd6\x4c\xed\xd8\x81\x05\xda\x9d\x0e\x1d\
\xdf\xd0\xf4\x81\x66\x80\x72\x40\xf9\x96\x7a\xcb\xe2\x36\xdb\xb8\
\xeb\xd5\x3e\x05\x08\x82\x80\x20\x08\x18\x18\x18\xc0\xf7\x7d\x5a\
\xad\x56\xc6\xc5\x28\x8a\x68\xb5\x5a\x04\x41\x90\xa9\x45\x9a\x61\
\xa5\x14\xb5\x5a\x8d\x5b\xb7\x6e\x51\xa9\x54\x28\x97\xcb\x19\x0d\
\xd6\xd7\xd7\x33\x9a\x6c\x00\xac\xb5\xc6\x18\xc3\xe5\xf9\x79\x1c\
\xcf\x63\x64\x64\x04\xa9\x24\xad\x76\x1b\x93\x2c\x9b\x10\x82\x76\
\xbb\x4d\x6d\x7d\x3d\xdb\x06\xa5\x80\xc3\x30\xa4\x56\xab\x21\xa5\
\xa4\xd3\xe9\x74\xcd\x51\x72\x4d\xad\x56\xcb\x9a\x40\xaf\x64\xad\
\xaf\xaf\x73\xf2\xe4\x49\xde\x7c\xf3\x4d\xee\xb9\xe7\x1e\xbe\xf1\
\x8d\x6f\x30\x39\x39\x49\x18\x86\xd4\xeb\xf5\xec\xb9\x77\x2d\xba\
\x30\x0c\x99\xbf\x76\x8d\x72\xa5\xc2\xd0\xf0\x30\xae\xeb\x52\x2e\
\x97\x19\x18\x18\x40\x29\x85\xd6\x9a\x6a\xb5\xca\xe6\xcd\x9b\x19\
\x19\x19\xc9\x00\x48\x29\xf1\x7d\x9f\xd5\xd5\x55\x84\x10\x8c\x8e\
\x8e\xf6\x71\x31\x0c\x43\x5c\xd7\xc5\x75\x5d\x86\x86\x86\x92\x77\
\x70\xb1\x6c\x9d\x38\x71\x82\xef\x7f\xff\xfb\x34\x9b\x4d\x72\xb9\
\x1c\x47\x8e\x1c\x61\xff\xfe\xfd\xd9\xb3\x6a\xb5\xda\x06\x59\x93\
\x00\x41\x10\xe0\x38\x0e\x07\x0f\x1e\x64\x7a\x7a\x1a\x29\x44\x5f\
\x77\xea\x35\x30\xa9\xd4\x58\x6b\x33\x49\xea\xe5\x59\xef\x78\xaf\
\x44\x75\x3a\x1d\xc2\x30\xcc\xae\x9b\x9d\x9d\xe5\x87\x3f\xfc\x21\
\xcd\x66\x13\x80\x76\xbb\xcd\x99\x33\x67\xb8\x79\xf3\x66\xdf\x7d\
\x77\xd5\xe1\x34\xcb\xed\x76\x3b\xde\x50\x26\x14\xa9\x56\xab\xb4\
\xdb\x6d\xb4\xd6\x48\x29\x69\xb5\x5a\x99\x31\xe9\xa5\x44\x14\x45\
\x89\xb3\x8b\xbf\x23\x0d\xc2\x71\x1c\xa2\x28\xe2\xcd\x37\xdf\xe4\
\x57\xbf\xfa\x15\x5b\xb7\x6e\xe5\xe8\xd1\xa3\x6c\xdb\xb6\x8d\xf3\
\xe7\xcf\xb3\xbc\xbc\xbc\x81\xa3\x8d\x46\x83\x85\x85\x05\xce\x9e\
\x3d\xcb\xf9\xf3\xe7\x19\x19\x19\xe1\xc9\x27\x9f\x44\x6b\x8d\x10\
\xc9\x36\xdf\x71\x1c\x82\x20\xe0\xbf\xcf\x9e\xa5\x52\x2e\x33\x35\
\x35\x85\xe7\x79\xe4\xf3\x79\x4a\xa5\x12\x4a\x29\x94\x52\x48\x29\
\x19\x1a\x1a\x62\x78\x78\x38\x2b\xa8\xf4\xde\x74\x7e\x74\x74\xb4\
\xaf\x01\xbc\xf5\xd6\x5b\x3c\xff\xfc\xf3\xbc\xff\xfe\xfb\xe4\x72\
\x39\x3c\xcf\xe3\xbb\xdf\xfd\x2e\xe5\x72\xb9\x2f\xe3\x5a\x6b\x8e\
\x1c\x39\xc2\xd8\xd8\x18\x2f\xbc\xf0\x02\x2f\xbc\xf0\x02\x2b\x2b\
\x2b\x0c\x0d\x0d\xd1\x6a\xb5\x38\x7a\xf4\x68\xfc\xae\x1a\xc0\x1a\
\x83\x52\x8a\xcf\x7e\xf6\xb3\x6c\xf9\xa3\x3f\xca\x04\xdf\x75\xdd\
\x4c\x23\x3d\xcf\xc3\x75\x5d\xf2\xf9\x3c\xc5\x62\x91\x42\xa1\x40\
\xa9\x54\x22\x97\xcb\x51\x28\x14\xc8\xe5\x72\xe4\x72\x39\xf2\xf9\
\x7c\xf6\xeb\xba\x2e\xe7\xce\x9d\x63\x76\x76\x96\x56\xab\xc5\xed\
\xdb\xb7\x39\x7d\xfa\x34\xb5\x5a\x8d\x5d\xbb\x76\x51\x2a\x95\x32\
\xc0\x4f\x3d\xf5\x14\x0f\x3c\xf0\x00\x3f\xff\xf9\xcf\x79\xfe\xf9\
\xe7\xb9\x70\xe1\x02\xcb\xcb\xcb\xcc\xce\xce\x72\xfa\xf4\x69\x8c\
\x31\xc2\x75\x5d\x1d\xeb\x70\x22\x6b\x13\x13\x13\x88\x84\xd3\xa9\
\x1c\xa5\x4b\x2b\xa5\xa4\xd1\x68\x50\xad\x56\xfb\x5a\x6c\xaf\x4a\
\x64\x6f\xe4\x13\x69\xf2\x7d\x9f\xc5\xc5\xc5\x3e\x1e\x5e\xbf\x7e\
\x9d\x2b\x57\xae\x70\xdf\x7d\xf7\xf1\xb5\xaf\x7d\x8d\x33\x67\xce\
\x30\x35\x35\xc5\xb7\xbf\xfd\x6d\x56\x57\x57\x79\xf1\xc5\x17\x99\
\x9d\x9d\xcd\xae\xf7\x3c\x2f\xd5\x76\xa7\xdd\x6e\xd7\xb3\x4e\x17\
\x04\x01\x97\x2e\x5d\xa2\x50\x28\x30\x3e\x3e\x9e\x2d\x79\xda\x46\
\x8d\x31\x18\x63\x08\xc3\x30\x5b\xca\x94\xab\xbd\x63\xa9\x76\x4a\
\x19\xbb\xbc\xb1\xb1\x31\xb4\xce\x4a\x85\xed\xdb\xb7\x53\x2c\x16\
\x71\x5d\x97\x6f\x7d\xeb\x5b\x1c\x39\x72\x84\x2d\x5b\xb6\x30\x33\
\x33\xc3\x2f\x7e\xf1\x0b\xe6\xe6\xe6\xfa\x38\xfd\xf9\xcf\x7f\x9e\
\x23\x47\x8e\x70\xf2\xe4\xc9\xff\x9c\x9b\x9b\xfb\x50\xf7\x66\xab\
\xd1\x68\x64\x92\xa4\x94\xa2\x58\x2c\xf6\x71\x58\x29\xc5\xf0\xf0\
\x30\x83\x83\x83\xd9\x75\x69\x26\xd3\xcc\x0e\x0f\x0f\xc7\xbb\x6a\
\x21\x50\x4a\xf1\xd8\x63\x8f\x71\xf2\xe4\x49\xde\x7d\xf7\x5d\x66\
\x66\x66\x78\xfa\xe9\xa7\xd9\xbb\x77\x2f\xd6\x5a\x76\xec\xd8\x41\
\x3e\x9f\xa7\xd3\xf1\xb9\x7e\x7d\x81\x4e\xa7\xc3\xc0\xc0\x00\x00\
\xc5\x62\x91\x7d\xfb\xf6\xf1\xd5\xaf\x7e\x35\x58\x5c\x5c\xfc\xaf\
\x67\x9e\x79\xe6\xef\x96\x96\x96\x66\x33\x03\xef\xba\x2e\x9f\xfb\
\xdc\xe7\x40\x08\x4c\x92\xd9\x5e\x29\xeb\xcd\x68\x14\x45\xd9\x58\
\xaf\x13\xbb\x53\x86\x82\x20\x60\xef\xde\xbd\x1c\x3b\x76\x8c\xed\
\xdb\xb7\xf3\xa5\x2f\x7d\x89\x43\x87\x0e\x71\xf9\xf2\xe5\xcc\xf4\
\x2c\x2f\x2f\x27\xd4\x8a\x9b\xc4\xe1\xc3\x87\x19\x1f\x1f\xe7\xfe\
\xfb\xef\xe7\x2b\x5f\xf9\x4a\x64\x8c\xf9\xf0\xb9\xe7\x9e\xfb\xc7\
\xeb\xd7\xaf\x9f\x99\x98\x98\xe8\x36\x8e\x28\x8a\xe2\x4c\x29\x85\
\x4e\xcc\xd0\xfa\xfa\x3a\xed\x76\x3b\xeb\x38\x9d\x4e\x07\x6b\x2d\
\xcd\x66\x33\xb3\x86\xbd\x1c\x4e\x65\x2d\x05\x9e\xea\xf8\xc3\x0f\
\x3f\xcc\x83\x0f\x3e\x48\xad\x56\xe3\xc7\x3f\xfe\x31\xbf\xfc\xe5\
\x2f\xa9\xd5\x6a\x94\xcb\x65\xf6\xec\xd9\xc3\xee\xdd\xbb\xd9\xb6\
\x6d\x1b\xdb\xb6\xed\xe4\xc0\x81\x03\x99\xff\x38\x7f\xfe\x7c\xe3\
\xb5\xd7\x5e\xfb\x3d\xa0\x8f\x1d\x3b\x56\xa9\x54\x2a\xeb\x99\xac\
\xf9\xbe\xcf\x6f\x7e\xf3\x1b\xca\xe5\x32\xd3\xd3\xd3\xc9\x7e\x6e\
\x80\x62\xb1\x98\xe9\x70\xbd\x5e\x67\x74\x74\x94\xd1\xd1\xd1\x2c\
\x48\xd7\x75\x09\x82\x80\x95\x95\x15\x84\x10\x8c\x8d\x8d\x65\xcd\
\x23\xad\x8f\x8b\x17\x2f\xf2\xb3\x9f\xfd\x8c\x97\x5f\x7e\x99\x85\
\x85\x85\x3e\x8e\xbe\xfd\xf6\xdb\x3c\xfe\xf8\xe3\xfc\xe0\x07\x3f\
\x60\x72\x72\x92\x4e\xa7\xc3\xd2\xd2\x12\x3f\xfd\xe9\x4f\xed\xf1\
\xe3\xc7\xbd\x85\x85\x85\xa7\xc6\xc6\xc6\x1e\xdd\xb1\x63\xc7\x73\
\x8d\x46\xe3\x59\xe5\x79\xde\xbe\x27\x9e\x78\xe2\x4f\xf6\xee\xdd\
\xbb\x69\x64\x64\x44\x6c\xda\xb4\x29\x73\x4a\x9d\x4e\x87\x5c\x2e\
\x97\xf1\x37\x08\x82\xac\x5d\x6b\xad\xb3\x40\xd2\xcd\xa4\x52\xaa\
\x8f\xf3\x5a\x6b\x3e\xf9\xe4\x13\xbe\xf3\x9d\xef\xf0\xca\x2b\xaf\
\xb0\xbe\xbe\xbe\xa1\x51\x44\x51\xc4\xa7\x9f\x7e\x8a\x94\x92\x7d\
\xfb\xf6\x51\xab\xd5\x78\xf6\xd9\x67\x39\x7e\xfc\xb8\x58\x59\x59\
\xd1\x80\xb0\xd6\xba\x61\x18\xda\xd5\xd5\xd5\x7f\xd7\xbd\x37\x57\
\x2a\x15\x84\x10\x99\xfb\x6a\x36\x9b\x99\x74\x09\x21\x68\x36\x9b\
\x99\xac\xa5\xca\x91\xba\xb5\x6a\xb5\x9a\x15\x5b\xea\x23\xae\x5e\
\xbd\xca\xf7\xbe\xf7\x3d\x4e\x9d\x3a\x75\x57\xe7\x95\x1e\xbe\xef\
\xf3\xda\x6b\xaf\xf1\xf5\xaf\x7f\x9d\xcb\x97\x2f\x73\xea\xd4\xa9\
\xbe\xe0\x9a\xcd\x66\x70\xf1\xe2\xc5\x0f\x94\x52\x7e\xb6\xa7\x0b\
\x82\x80\x0b\x17\x2e\x50\x2c\x16\x99\x9c\x9c\xa4\x54\x2a\x61\xad\
\xcd\x2c\x9f\xb5\x96\xb5\xb5\xb5\x3e\x2f\x71\xe7\x4e\xb7\xb7\xcd\
\x03\x5c\xba\x74\x89\x73\xe7\xce\xe1\xfb\x3e\x7f\xe8\x58\x5a\x5a\
\xe2\xbd\xf7\xde\xbb\x79\xf9\xf2\xe5\x4f\x17\x17\x17\x77\x00\x43\
\x69\x07\x1c\x1f\x1f\x3f\xe3\xfb\xfe\x3f\x75\x3a\x9d\x76\x56\x74\
\x42\x88\x6c\x67\x90\x66\x6e\x7c\x7c\x9c\xc1\xc1\xc1\x8c\x93\x69\
\xa6\x2b\x95\x4a\xe6\xba\xd2\x15\xb9\x53\xd6\x00\x76\xee\xdc\xc9\
\xd6\xad\x5b\xb9\x75\xeb\xd6\x86\x00\xef\x96\xe5\xd7\x5f\x7f\xfd\
\x6d\xa5\xd4\x4b\x53\x53\x53\x4f\x5c\xbd\x7a\xf5\xc9\x52\xa9\xb4\
\xfa\xe8\xa3\x8f\xbe\xa5\x94\xfa\xe7\x57\x5f\x7d\xf5\x42\xe6\x25\
\xd2\xbd\xd6\xae\x5d\xbb\x32\x93\x93\x9a\xee\xde\x65\xae\xd7\xeb\
\x68\xad\xfb\xb6\x33\xe9\xea\xa4\x86\x28\x75\x5f\x00\x13\x13\x13\
\x7c\xf3\x9b\xdf\xe4\xcc\x99\x33\x2c\x2c\x2c\xb0\xb6\xb6\xc6\xc2\
\xc2\x02\xf3\xf3\xf3\x1b\x00\x4b\x29\xf9\xe8\xa3\x8f\xae\x6f\xde\
\xbc\xf9\xcc\xc1\x83\x07\x67\xa7\xa7\xa7\xdf\xa8\xd7\xeb\xeb\x33\
\x33\x33\x1f\xb6\x5a\xad\x85\xb4\x31\xf5\xc9\xda\xad\x5b\xb7\x50\
\x4a\x51\xa9\x54\x28\x14\x0a\x99\x1f\x4d\xad\x5e\xaa\xb7\xa9\x84\
\xa5\x59\x4f\xb5\x58\x08\x41\xbd\x5e\xcf\xec\xa5\x52\x8a\x2f\x7f\
\xf9\xcb\x1c\x38\x70\x80\xdb\xb7\x6f\xe3\xfb\x3e\x73\x73\x73\xbc\
\xf1\xc6\x1b\x9c\x3a\x75\xaa\xcf\xad\x09\x21\xd0\x5a\x17\x82\x20\
\xc8\x8d\x8c\x8c\x7c\x32\x31\x31\xf1\xc9\xc5\x8b\x17\xb3\x6d\x52\
\x66\x05\x00\x91\x6e\x42\xe7\xe6\xe6\xf0\x3c\x8f\x99\x99\x19\x36\
\x6d\xda\x44\x2e\x97\xeb\x7b\xa1\x31\x38\x38\x98\x01\xed\x7d\x90\
\x10\x22\xa3\x4e\x6f\xf3\x48\xed\xe7\xd0\xd0\x50\xe6\x2f\x1e\x7a\
\xe8\x21\x0e\x1d\x3a\xc4\xcb\x2f\xbf\xcc\x8f\x7e\xf4\xa3\x6c\x3b\
\x15\x04\x01\xe3\xe3\xe3\xb6\x58\x2c\x8a\x74\xe7\x12\x86\x61\xdf\
\x6b\x81\x34\xc3\x46\x29\xa5\x0b\x85\x82\x9c\x9e\x9e\x46\x08\x11\
\xbf\x5f\x83\x0d\x2f\xe2\xfe\x2f\x47\xda\x98\x1c\xc7\x61\x62\x62\
\x62\x6d\xcf\x9e\x3d\x1f\xec\xdf\xbf\x5f\xbd\xf3\xce\x3b\x5f\x88\
\xa2\xc8\xf1\x3c\x2f\x1c\x1c\x1c\x9c\x1d\x1a\x1a\xaa\x85\x61\x98\
\x51\x6c\xc3\x9e\xce\x5a\xbb\xb6\xb2\xb2\x72\x6b\x7e\x7e\x7e\x25\
\x7d\x5d\xb4\xb4\xb4\xf4\x07\x8b\xe4\x7f\x73\xf4\x3e\xd0\x98\x08\
\xad\x1d\xd1\x6e\xb7\xc3\x57\x5f\x7d\xf5\xf5\x13\x27\x4e\xfc\xfd\
\xe1\xc3\x87\xf3\x1f\x7c\xf0\xc1\xdf\x2a\xa5\xfe\x78\xf7\xee\xdd\
\x67\x8d\x31\x6f\xd4\x6a\xb5\xea\xca\xca\x0a\x5a\xeb\x3e\xfb\x99\
\x01\x6e\xb5\x5a\xbf\x7f\xe6\x99\x67\x9e\x7b\xe9\xa5\x97\x2a\x42\
\x08\x6b\x13\xa4\xff\x1f\x80\xef\x38\xac\xeb\xba\xba\xd9\x6c\xae\
\x5e\xb8\x70\xe1\x6c\x3e\x9f\xbf\x62\x8c\x91\x5a\xeb\xbf\x9c\x99\
\x99\x99\x79\xe4\x91\x47\x2e\xde\xb8\x71\xe3\x4a\xa3\xd1\xc8\x76\
\xd7\x77\x3b\xfe\x67\x00\x18\x7d\x83\xf6\xc5\x2b\x17\x8a\x00\x00\
\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
"
qt_resource_name = b"\
\x00\x07\
\x07\x3b\xe0\xb3\
\x00\x70\
\x00\x6c\x00\x75\x00\x67\x00\x69\x00\x6e\x00\x73\
\x00\x05\
\x00\x79\xf9\xbe\
\x00\x73\
\x00\x69\x00\x63\x00\x65\x00\x6e\
\x00\x09\
\x09\xc1\xa4\xa7\
\x00\x73\
\x00\x69\x00\x63\x00\x65\x00\x6e\x00\x2e\x00\x70\x00\x6e\x00\x67\
\x00\x10\
\x0e\x02\xb7\xc7\
\x00\x73\
\x00\x69\x00\x63\x00\x65\x00\x6e\x00\x5f\x00\x65\x00\x78\x00\x70\x00\x6f\x00\x72\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\
"
qt_resource_struct_v1 = b"\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\
\x00\x00\x00\x14\x00\x02\x00\x00\x00\x02\x00\x00\x00\x03\
\x00\x00\x00\x24\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x01\x00\x00\x0d\x8d\
"
qt_resource_struct_v2 = b"\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\
\x00\x00\x00\x00\x00\x00\x00\x00\
\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x02\
\x00\x00\x00\x00\x00\x00\x00\x00\
\x00\x00\x00\x14\x00\x02\x00\x00\x00\x02\x00\x00\x00\x03\
\x00\x00\x00\x00\x00\x00\x00\x00\
\x00\x00\x00\x24\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
\x00\x00\x01\x93\xd9\x34\x83\xf1\
\x00\x00\x00\x3c\x00\x00\x00\x00\x00\x01\x00\x00\x0d\x8d\
\x00\x00\x01\x93\xd9\x34\x83\xf5\
"
qt_version = [int(v) for v in QtCore.qVersion().split('.')]
if qt_version < [5, 8, 0]:
rcc_version = 1
qt_resource_struct = qt_resource_struct_v1
else:
rcc_version = 2
qt_resource_struct = qt_resource_struct_v2
def qInitResources():
QtCore.qRegisterResourceData(rcc_version, qt_resource_struct, qt_resource_name, qt_resource_data)
def qCleanupResources():
QtCore.qUnregisterResourceData(rcc_version, qt_resource_struct, qt_resource_name, qt_resource_data)
qInitResources()

View File

@ -8,21 +8,21 @@ if IPAddr[0:11] == "100.100.100": #4269
dbname = "sig4269" dbname = "sig4269"
sigdb="sig4269" sigdb="sig4269"
refdb="ref_geo4269" refdb="ref_geo4269"
password = "McVities" password = "XXXXXX"
if IPAddr[0:9] == "192.168.0": #01 if IPAddr[0:9] == "192.168.0": #01
host = "192.168.0.201" host = "192.168.0.201"
port = "5432" port = "5432"
dbname = "sig01" dbname = "sig01"
sigdb="sig01" sigdb="sig01"
refdb="ref_geo01" refdb="ref_geo01"
password = "McVities" password = "XXXXXX"
if IPAddr[0:9] == "192.168.1": #0726 if IPAddr[0:9] == "192.168.1": #0726
host = "192.168.1.201" host = "192.168.1.201"
port = "5432" port = "5432"
dbname = "sig0726" dbname = "sig0726"
sigdb="sig0726" sigdb="sig0726"
refdb="ref_geo0726" refdb="ref_geo0726"
password = "McVities" password = "XXXXXX"
if sys.platform == 'linux': if sys.platform == 'linux':
os_user = os.environ['USER'] os_user = os.environ['USER']
else: else:

View File

@ -1,138 +1,19 @@
<?xml version = '1.0' encoding = 'UTF-8'?> <?xml version = '1.0' encoding = 'UTF-8'?>
<plugins> <plugins>
<pyqgis_plugin name="CenRa_POSTGIS" version="2.0"> <pyqgis_plugin name="CenIsere_AUTOMAP" version="1.6">
<description><![CDATA[Dépôt pour les extensiont QGIS du CEN Rhone-Alpes, sur GitHub.]]></description> <description><![CDATA[Plugin QGIS d'automatisation de mise en page - CEN Isère]]></description>
<version>2.0</version> <version>1.6</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://gitea.cenra-outils.org/CEN38/Plugin_QGIS</homepage>
<file_name>CenRa_POSTGIS.zip</file_name> <file_name>CenIsere_AUTOMAP.zip</file_name>
<icon>CEN-Rhone-Alpes.png</icon> <icon>icon.png</icon>
<author_name>CEN-Rhone-Alpes</author_name> <author_name>CEN-Isère</author_name>
<download_url>https://gitea.cenra-outils.org/CEN-RA/Plugin_QGIS/releases/download/latest/CenRa_POSTGIS.zip</download_url> <download_url>https://gitea.cenra-outils.org/CEN38/Plugin_QGIS/releases/download/latest/CenIsere_AUTOMAP.zip</download_url>
<uploaded_by>CEN-Rhone-Alpes</uploaded_by> <uploaded_by>CEN-Isère</uploaded_by>
<create_date>2024-02-06</create_date> <create_date>2024-11-29</create_date>
<update_date>2024-10-22</update_date> <update_date>2024-11-29</update_date>
<experimental>False</experimental> <experimental>False</experimental>
<deprecated>False</deprecated> <deprecated>False</deprecated>
<tags>cenra,postgis</tags> <tags>cenisere,mise en page,atlas</tags>
</pyqgis_plugin> </pyqgis_plugin>
</plugins>
<pyqgis_plugin name="CenRa_COPIE" version="2.0">
<description><![CDATA[Dépôt pour les extensiont QGIS du CEN Rhone-Alpes, sur GitHub.]]></description>
<version>2.0</version>
<qgis_minimum_version>3.16</qgis_minimum_version>
<homepage>https://plateformesig.cenra-outils.org/</homepage>
<file_name>CenRa_COPIE.zip</file_name>
<icon>CEN-Rhone-Alpes.png</icon>
<author_name>CEN-Rhone-Alpes</author_name>
<download_url>https://gitea.cenra-outils.org/CEN-RA/Plugin_QGIS/releases/download/latest/CenRa_COPIE.zip</download_url>
<uploaded_by>CEN-Rhone-Alpes</uploaded_by>
<create_date>2024-02-06</create_date>
<update_date>2024-10-22</update_date>
<experimental>False</experimental>
<deprecated>False</deprecated>
<tags>cenra,copie</tags>
</pyqgis_plugin>
<pyqgis_plugin name="CenRa_SICEN" version="1.7">
<description><![CDATA[Dépôt pour les extensiont QGIS du CEN Rhone-Alpes, sur GitHub.]]></description>
<version>1.7</version>
<qgis_minimum_version>3.16</qgis_minimum_version>
<homepage>https://plateformesig.cenra-outils.org/</homepage>
<file_name>CenRa_SICEN.zip</file_name>
<icon>CEN-Rhone-Alpes.png</icon>
<author_name>CEN-Rhone-Alpes</author_name>
<download_url>https://gitea.cenra-outils.org/CEN-RA/Plugin_QGIS/releases/download/latest/CenRa_SICEN.zip</download_url>
<uploaded_by>CEN-Rhone-Alpes</uploaded_by>
<create_date>2024-02-06</create_date>
<update_date>2024-09-13</update_date>
<experimental>False</experimental>
<deprecated>False</deprecated>
<tags>cenra,sicen</tags>
</pyqgis_plugin>
<pyqgis_plugin name="CenRa_FLUX" version="2.1">
<description><![CDATA[Dépôt pour les extensiont QGIS du CEN Rhone-Alpes, sur GitHub.]]></description>
<version>2.1</version>
<qgis_minimum_version>3.16</qgis_minimum_version>
<homepage>https://plateformesig.cenra-outils.org/</homepage>
<file_name>CenRa_FLUX.zip</file_name>
<icon>CEN-Rhone-Alpes.png</icon>
<author_name>CEN-Rhone-Alpes</author_name>
<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>
<create_date>2024-02-06</create_date>
<update_date>2024-11-08</update_date>
<experimental>False</experimental>
<deprecated>False</deprecated>
<tags>cenra,flux</tags>
</pyqgis_plugin>
<pyqgis_plugin name="CenRa_METABASE" version="1.3">
<description><![CDATA[Dépôt pour les extensiont QGIS du CEN Rhone-Alpes, sur GitHub.]]></description>
<version>1.3</version>
<qgis_minimum_version>3.16</qgis_minimum_version>
<homepage>https://plateformesig.cenra-outils.org/</homepage>
<file_name>CenRa_METABASE.zip</file_name>
<icon>CEN-Rhone-Alpes.png</icon>
<author_name>CEN-Rhone-Alpes</author_name>
<download_url>https://gitea.cenra-outils.org/CEN-RA/Plugin_QGIS/releases/download/latest/CenRa_METABASE.zip</download_url>
<uploaded_by>CEN-Rhone-Alpes</uploaded_by>
<create_date>2024-09-12</create_date>
<update_date>2024-10-08</update_date>
<experimental>False</experimental>
<deprecated>False</deprecated>
<tags>cenra,metabase</tags>
</pyqgis_plugin>
<pyqgis_plugin name="CenRa_AUTOMAP" version="1.7">
<description><![CDATA[Dépôt pour les extensiont QGIS du CEN Rhone-Alpes, sur GitHub.]]></description>
<version>1.7</version>
<qgis_minimum_version>3.16</qgis_minimum_version>
<homepage>https://plateformesig.cenra-outils.org/</homepage>
<file_name>CenRa_AUTOMAP.zip</file_name>
<icon>CEN-Rhone-Alpes.png</icon>
<author_name>CEN-Rhone-Alpes</author_name>
<download_url>https://gitea.cenra-outils.org/CEN-RA/Plugin_QGIS/releases/download/latest/CenRa_AUTOMAP.zip</download_url>
<uploaded_by>CEN-Rhone-Alpes</uploaded_by>
<create_date>2024-09-25</create_date>
<update_date>2024-10-21</update_date>
<experimental>True</experimental>
<deprecated>False</deprecated>
<tags>cenra,mise en page,atlas</tags>
</pyqgis_plugin>
<pyqgis_plugin name="CenRa_PAGERENDER" version="1.3">
<description><![CDATA[Dépôt pour les extensiont QGIS du CEN Rhone-Alpes, sur GitHub.]]></description>
<version>1.3</version>
<qgis_minimum_version>3.16</qgis_minimum_version>
<homepage>https://plateformesig.cenra-outils.org/</homepage>
<file_name>CenRa_PAGERENDER.zip</file_name>
<icon>CEN-Rhone-Alpes.png</icon>
<author_name>CEN-Rhone-Alpes</author_name>
<download_url>https://gitea.cenra-outils.org/CEN-RA/Plugin_QGIS/releases/download/latest/CenRa_PAGERENDER.zip</download_url>
<uploaded_by>CEN-Rhone-Alpes</uploaded_by>
<create_date>2024-10-09</create_date>
<update_date>2024-11-08</update_date>
<experimental>True</experimental>
<deprecated>False</deprecated>
<tags>cenra,mise en page,atlas</tags>
</pyqgis_plugin>
<pyqgis_plugin name="CenRa_COMPANIONCUBE" version="1.0">
<description><![CDATA[Dépôt pour les extensiont QGIS du CEN Rhone-Alpes, sur GitHub.]]></description>
<version>1.0</version>
<qgis_minimum_version>3.16</qgis_minimum_version>
<homepage>https://plateformesig.cenra-outils.org/</homepage>
<file_name>CenRa_COMPANIONCUBE.zip</file_name>
<icon>CEN-Rhone-Alpes.png</icon>
<author_name>CEN-Rhone-Alpes</author_name>
<download_url>https://gitea.cenra-outils.org/CEN-RA/Plugin_QGIS/releases/download/latest/CenRa_COMPANIONCUBE.zip</download_url>
<uploaded_by>CEN-Rhone-Alpes</uploaded_by>
<create_date>2024-10-21</create_date>
<update_date>2024-10-22</update_date>
<experimental>True</experimental>
<deprecated>False</deprecated>
<tags>cenra,ia</tags>
</pyqgis_plugin>
</plugins>