diff --git a/gramps/gen/config.py b/gramps/gen/config.py
index b92e153f7..09f03c0ae 100644
--- a/gramps/gen/config.py
+++ b/gramps/gen/config.py
@@ -178,7 +178,6 @@ register('export.proxy-order',
register('geography.center-lon', 0.0)
register('geography.lock', False)
register('geography.center-lat', 0.0)
-register('geography.map', "person")
register('geography.map_service', 1)
register('geography.zoom', 0)
register('geography.zoom_when_center', 12)
diff --git a/gramps/plugins/lib/maps/cairoprint.py b/gramps/plugins/lib/maps/cairoprint.py
index d4e7bb8e3..59d28944c 100644
--- a/gramps/plugins/lib/maps/cairoprint.py
+++ b/gramps/plugins/lib/maps/cairoprint.py
@@ -34,10 +34,6 @@ from gi.repository import Gtk
# the print settings to remember between print sessions
PRINT_SETTINGS = None
-# pylint: disable=no-member
-# pylint: disable=maybe-no-member
-# pylint: disable=unused-argument
-
#------------------------------------------------------------------------
#
# CairoPrintSave class
@@ -132,6 +128,9 @@ class CairoPrintSave:
def on_draw_page(self, operation, context, page_nr):
"""Draw a page on a Cairo context.
"""
+ dummy_op = operation
+ dummy_ct = context
+ dummy_pg = page_nr
ctx = context.get_cairo_context()
self.drawfunc(self.parent, ctx)
@@ -141,6 +140,9 @@ class CairoPrintSave:
default application is set with gir 3.3.2 (typically evince not
installed)!
"""
+ dummy_op = operation
+ dummy_ct = context
+ dummy_pr = preview
+ dummy_pa = parent
operation.run(Gtk.PrintOperationAction.PREVIEW, None)
return False
-
diff --git a/gramps/plugins/lib/maps/constants.py b/gramps/plugins/lib/maps/constants.py
index c87fd87b1..b868ea433 100644
--- a/gramps/plugins/lib/maps/constants.py
+++ b/gramps/plugins/lib/maps/constants.py
@@ -25,12 +25,13 @@
# standard python modules
#
#-------------------------------------------------------------------------
-from gramps.gen.lib import EventType
import os
-from gramps.gen.const import HOME_DIR
import gi
-gi.require_version('OsmGpsMap', '1.0')
from gi.repository import OsmGpsMap as osmgpsmap
+from gramps.gen.lib import EventType
+from gramps.gen.const import HOME_DIR
+
+gi.require_version('OsmGpsMap', '1.0')
#-------------------------------------------------------------------------
#
@@ -39,8 +40,6 @@ from gi.repository import OsmGpsMap as osmgpsmap
#-------------------------------------------------------------------------
GEOGRAPHY_PATH = os.path.join(HOME_DIR, "maps")
-# pylint: disable=bad-whitespace
-
ICONS = {
EventType.BIRTH : 'gramps-geo-birth',
EventType.DEATH : 'gramps-geo-death',
@@ -119,4 +118,3 @@ MAP_TYPE = {
VIRTUAL_EARTH_HYBRID : osmgpsmap.MapSource_t.VIRTUAL_EARTH_HYBRID,
PERSONAL : None,
}
-
diff --git a/gramps/plugins/lib/maps/datelayer.py b/gramps/plugins/lib/maps/datelayer.py
index 0f74ca007..f50641ae8 100644
--- a/gramps/plugins/lib/maps/datelayer.py
+++ b/gramps/plugins/lib/maps/datelayer.py
@@ -25,15 +25,8 @@
# Python modules
#
#-------------------------------------------------------------------------
-from gi.repository import GObject
-
-#------------------------------------------------------------------------
-#
-# Set up logging
-#
-#------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("maps.datelayer")
+import cairo
#-------------------------------------------------------------------------
#
@@ -41,7 +34,7 @@ _LOG = logging.getLogger("maps.datelayer")
#
#-------------------------------------------------------------------------
from gi.repository import Gdk
-import cairo
+from gi.repository import GObject
#-------------------------------------------------------------------------
#
@@ -58,12 +51,17 @@ from gramps.gen.config import config
try:
import gi
- gi.require_version('OsmGpsMap', '1.0')
from gi.repository import OsmGpsMap as osmgpsmap
+ gi.require_version('OsmGpsMap', '1.0')
except:
raise
-# pylint: disable=unused-argument
+#------------------------------------------------------------------------
+#
+# Set up logging
+#
+#------------------------------------------------------------------------
+_LOG = logging.getLogger("maps.datelayer")
class DateLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
@@ -117,6 +115,7 @@ class DateLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
Draw the two extreme dates
"""
+ dummy_map = gpsmap
ctx.select_font_face(self.font,
cairo.FONT_SLANT_NORMAL,
cairo.FONT_WEIGHT_NORMAL)
@@ -150,7 +149,8 @@ class DateLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
When we press a button.
"""
+ dummy_map = gpsmap
+ dummy_evt = gdkeventbutton
return False
GObject.type_register(DateLayer)
-
diff --git a/gramps/plugins/lib/maps/dummylayer.py b/gramps/plugins/lib/maps/dummylayer.py
index f0f1569bd..5b09d71ad 100644
--- a/gramps/plugins/lib/maps/dummylayer.py
+++ b/gramps/plugins/lib/maps/dummylayer.py
@@ -25,15 +25,7 @@
# Python modules
#
#-------------------------------------------------------------------------
-from gi.repository import GObject
-
-#------------------------------------------------------------------------
-#
-# Set up logging
-#
-#------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("maps.dummylayer")
#-------------------------------------------------------------------------
#
@@ -46,7 +38,7 @@ _LOG = logging.getLogger("maps.dummylayer")
# osmGpsMap
#
#-------------------------------------------------------------------------
-
+from gi.repository import GObject
try:
import gi
gi.require_version('OsmGpsMap', '1.0')
@@ -54,7 +46,12 @@ try:
except:
raise
-# pylint: disable=unused-argument
+#------------------------------------------------------------------------
+#
+# Set up logging
+#
+#------------------------------------------------------------------------
+_LOG = logging.getLogger("maps.dummylayer")
class DummyLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
@@ -88,7 +85,8 @@ class DummyLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
Someone press a button
"""
+ dummy_map = gpsmap
+ dummy_evt = gdkeventbutton
return False
GObject.type_register(DummyLayer)
-
diff --git a/gramps/plugins/lib/maps/dummynogps.py b/gramps/plugins/lib/maps/dummynogps.py
index aa53899f8..848148227 100644
--- a/gramps/plugins/lib/maps/dummynogps.py
+++ b/gramps/plugins/lib/maps/dummynogps.py
@@ -25,15 +25,7 @@
# Python modules
#
#-------------------------------------------------------------------------
-from gi.repository import GObject
-
-#------------------------------------------------------------------------
-#
-# Set up logging
-#
-#------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("maps.dummynogps")
#-------------------------------------------------------------------------
#
@@ -46,7 +38,7 @@ _LOG = logging.getLogger("maps.dummynogps")
# osmGpsMap
#
#-------------------------------------------------------------------------
-
+from gi.repository import GObject
try:
import gi
gi.require_version('OsmGpsMap', '1.0')
@@ -54,6 +46,13 @@ try:
except:
raise
+#------------------------------------------------------------------------
+#
+# Set up logging
+#
+#------------------------------------------------------------------------
+_LOG = logging.getLogger("maps.dummynogps")
+
class DummyMapNoGpsPoint(osmgpsmap.Map):
""" . """
def do_draw_gps_point(self, drawable):
@@ -61,4 +60,3 @@ class DummyMapNoGpsPoint(osmgpsmap.Map):
pass
GObject.type_register(DummyMapNoGpsPoint)
-
diff --git a/gramps/plugins/lib/maps/geography.py b/gramps/plugins/lib/maps/geography.py
index a2bc7ed0c..741aa5859 100644
--- a/gramps/plugins/lib/maps/geography.py
+++ b/gramps/plugins/lib/maps/geography.py
@@ -23,31 +23,31 @@
"""
This module is the base class for all geography view module
"""
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Python modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
import os
import re
import time
import logging
import gi
-from gi.repository import GLib
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# GTK/Gnome modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+from gi.repository import GLib
from gi.repository import Gtk
from gi.repository import OsmGpsMap as osmgpsmap
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Gramps Modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
from gramps.gen.lib import EventType, Place, PlaceRef, PlaceName
from gramps.gen.display.name import displayer as _nd
from gramps.gen.display.place import displayer as _pd
@@ -68,30 +68,31 @@ from .placeselection import PlaceSelection
from .cairoprint import CairoPrintSave
from .libkml import Kml
gi.require_version('OsmGpsMap', '1.0')
-_ = glocale.translation.sgettext
-#------------------------------------------------------------------------
+# ------------------------------------------------------------------------
#
# Set up logging
#
-#------------------------------------------------------------------------
+# ------------------------------------------------------------------------
_LOG = logging.getLogger("maps.geography")
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Constants
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+_ = glocale.translation.sgettext
GEOGRAPHY_PATH = os.path.join(HOME_DIR, "maps")
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Functions and variables
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
PLACE_REGEXP = re.compile('(.*)')
PLACE_STRING = '%s'
+
def _get_sign(value):
"""
return 1 if we have a negative number, 0 in other case
@@ -101,17 +102,18 @@ def _get_sign(value):
else:
return 0
-#-------------------------------------------------------------------------
+
+# -------------------------------------------------------------------------
#
# GeoGraphyView
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
class GeoGraphyView(OsmGps, NavigationView):
"""
View for pedigree tree.
Displays the ancestors of a selected individual.
"""
- #settings in the config file
+ # settings in the config file
CONFIGSETTINGS = (
('geography.path', GEOGRAPHY_PATH),
@@ -152,8 +154,8 @@ class GeoGraphyView(OsmGps, NavigationView):
else:
self.tile_path_ok = False
try:
- os.makedirs(tile_path, 0o755) # create dir like mkdir -p
- except:
+ os.makedirs(tile_path, 0o755) # create dir like mkdir -p
+ except Exception:
from gramps.gui.dialog import WarningDialog
WarningDialog(_("Tile path"),
_("The tile directory doesn't exist anymore:"
@@ -176,6 +178,8 @@ class GeoGraphyView(OsmGps, NavigationView):
self.without = 0
self.place_list = []
self.places_found = []
+ self.place_list_active = []
+ self.place_list_ref = []
self.select_fct = None
self.geo_mainmap = None
self.reloadtiles = None
@@ -208,18 +212,18 @@ class GeoGraphyView(OsmGps, NavigationView):
self.nbplaces = 0
self.nbmarkers = 0
self.place_without_coordinates = []
+ self.stop = False
def font_changed(self):
"""
The font or the death symbol changed.
"""
- self.build_tree()
+ self.goto_handle(None)
- def add_bookmark(self, menu):
+ def add_bookmark(self, *obj):
"""
Add the place to the bookmark
"""
- dummy_menu = menu
mlist = self.selected_handles()
if mlist:
self.bookmarks.add(mlist[0])
@@ -291,14 +295,28 @@ class GeoGraphyView(OsmGps, NavigationView):
def clear_view(self):
"""
+ We have no database.
Clear the map: places, markers, tracks, messages...
"""
if self.osm is not None:
- self.place_list = []
self.remove_all_markers()
self.remove_all_gps()
self.remove_all_tracks()
self.message_layer.clear_messages()
+ self.lifeway_layer.clear_ways()
+ self.date_layer.clear_dates()
+ self.message_layer.set_font_attributes(None, None, None)
+ self.kml_layer.clear()
+
+ self.place_list = []
+ self.place_list_active = []
+ self.place_list_ref = []
+ self.sort = []
+ self.places_found = []
+ self.place_without_coordinates = []
+
+ # In case we have some methods running while no database.
+ self.stop = True
def change_db(self, dbse):
"""
@@ -308,7 +326,9 @@ class GeoGraphyView(OsmGps, NavigationView):
is no need to store the database, since we will get the value
from self.state.db
"""
- dummy_dbse = dbse
+ if dbse.__class__.__name__ == "DummyDb":
+ return
+ self.stop = False
if self.active:
self.bookmarks.redraw()
if self.osm is not None:
@@ -362,11 +382,11 @@ class GeoGraphyView(OsmGps, NavigationView):
dummy_data = data
config.set("geography.zoom_when_center", int(entry))
- #-------------------------------------------------------------------------
+ # -------------------------------------------------------------------------
#
# Map Menu
#
- #-------------------------------------------------------------------------
+ # -------------------------------------------------------------------------
def build_nav_menu(self, osm, event, lat, lon):
"""
Builds the menu for actions on the map.
@@ -421,7 +441,7 @@ class GeoGraphyView(OsmGps, NavigationView):
menu.append(add_item)
map_name = constants.MAP_TITLE[config.get("geography.map_service")]
- title = _("Replace '%(map)s' by =>") % {'map' : map_name}
+ title = _("Replace '%(map)s' by =>") % {'map': map_name}
add_item = Gtk.MenuItem(label=title)
add_item.show()
menu.append(add_item)
@@ -438,7 +458,7 @@ class GeoGraphyView(OsmGps, NavigationView):
changemap.append(changemapitem)
reload_text = _("Reload all visible tiles for '%(map)s'.") % {
- 'map' : map_name}
+ 'map': map_name}
self.reloadtiles = Gtk.MenuItem(label=reload_text)
reloadtiles = self.reloadtiles
reloadtiles.connect("activate", self.reload_visible_tiles)
@@ -447,7 +467,7 @@ class GeoGraphyView(OsmGps, NavigationView):
menu.append(reloadtiles)
clear_text = _("Clear the '%(map)s' tiles cache.") % {
- 'map' : map_name}
+ 'map': map_name}
self.clearmap = Gtk.MenuItem(label=clear_text)
clearmap = self.clearmap
clearmap.connect("activate", self.clear_map,
@@ -495,11 +515,11 @@ class GeoGraphyView(OsmGps, NavigationView):
config.get("geography.zoom_when_center"))
self.save_center(lat, lon)
- #-------------------------------------------------------------------------
+ # ------------------------------------------------------------------------
#
# Markers management
#
- #-------------------------------------------------------------------------
+ # ------------------------------------------------------------------------
def is_there_a_marker_here(self, event, lat, lon):
"""
Is there a marker at this position ?
@@ -510,18 +530,18 @@ class GeoGraphyView(OsmGps, NavigationView):
for mark in self.sort:
# as we are not precise with our hand, reduce the precision
# depending on the zoom.
- precision = {1 : '%3.0f', 2 : '%3.1f', 3 : '%3.1f', 4 : '%3.1f',
- 5 : '%3.2f', 6 : '%3.2f', 7 : '%3.2f', 8 : '%3.3f',
- 9 : '%3.3f', 10 : '%3.3f', 11 : '%3.3f', 12 : '%3.3f',
- 13 : '%3.3f', 14 : '%3.4f', 15 : '%3.4f', 16 : '%3.4f',
- 17 : '%3.4f', 18 : '%3.4f'
+ precision = {1: '%3.0f', 2: '%3.1f', 3: '%3.1f', 4: '%3.1f',
+ 5: '%3.2f', 6: '%3.2f', 7: '%3.2f', 8: '%3.3f',
+ 9: '%3.3f', 10: '%3.3f', 11: '%3.3f', 12: '%3.3f',
+ 13: '%3.3f', 14: '%3.4f', 15: '%3.4f', 16: '%3.4f',
+ 17: '%3.4f', 18: '%3.4f'
}.get(config.get("geography.zoom"), '%3.1f')
- shift = {1 : 5.0, 2 : 5.0, 3 : 3.0,
- 4 : 1.0, 5 : 0.5, 6 : 0.3, 7 : 0.15,
- 8 : 0.06, 9 : 0.03, 10 : 0.015,
- 11 : 0.005, 12 : 0.003, 13 : 0.001,
- 14 : 0.0005, 15 : 0.0003, 16 : 0.0001,
- 17 : 0.0001, 18 : 0.0001
+ shift = {1: 5.0, 2: 5.0, 3: 3.0,
+ 4: 1.0, 5: 0.5, 6: 0.3, 7: 0.15,
+ 8: 0.06, 9: 0.03, 10: 0.015,
+ 11: 0.005, 12: 0.003, 13: 0.001,
+ 14: 0.0005, 15: 0.0003, 16: 0.0001,
+ 17: 0.0001, 18: 0.0001
}.get(config.get("geography.zoom"), 5.0)
latp = precision % lat
lonp = precision % lon
@@ -584,7 +604,7 @@ class GeoGraphyView(OsmGps, NavigationView):
if event_type is not None:
value = self.geo_othermap.get(int(event_type), default_image)
if differtype: # in case multiple evts
- value = default_image # we use default icon.
+ value = default_image # we use default icon.
self.marker_layer.add_marker((float(lat), float(lon)), value,
count, color=color)
@@ -619,8 +639,7 @@ class GeoGraphyView(OsmGps, NavigationView):
def _append_to_places_list(self, place, evttype, name, lat,
longit, descr, year, icontype,
gramps_id, place_id, event_id, family_id,
- color=None
- ):
+ color=None):
"""
Create a list of places with coordinates.
"""
@@ -635,8 +654,7 @@ class GeoGraphyView(OsmGps, NavigationView):
self.place_list.append([place, name, evttype, lat,
longit, descr, year, icontype,
gramps_id, place_id, event_id, family_id,
- color
- ])
+ color])
self.nbmarkers += 1
tfa = float(lat)
tfb = float(longit)
@@ -710,7 +728,7 @@ class GeoGraphyView(OsmGps, NavigationView):
lon = mark[4]
icon = mark[7]
colour = mark[12]
- else: # This marker already exists. add info.
+ else: # This marker already exists. add info.
count += 1
if icon != mark[7]:
differtype = True
@@ -799,7 +817,7 @@ class GeoGraphyView(OsmGps, NavigationView):
we start at zoom 1 until zoom y ( for this a preference )
If all markers are present, continue to zoom.
If some markers are missing : return to the zoom - 1
- The following is too complex. In some case, all markers are not present.
+ The following is too complex. In some case, all markers are not present
"""
# Select the center of the map and the zoom
current = osmgpsmap.MapPoint.new_degrees(self.minlat, self.minlon)
@@ -839,11 +857,11 @@ class GeoGraphyView(OsmGps, NavigationView):
mnam = _nd.display(mother) if mother else _("Unknown")
return (fnam, mnam)
- #-------------------------------------------------------------------------
+ # ------------------------------------------------------------------------
#
# KML functionalities
#
- #-------------------------------------------------------------------------
+ # ------------------------------------------------------------------------
def load_kml_files(self, obj):
"""
obj can be an event, a person or a place
@@ -852,7 +870,8 @@ class GeoGraphyView(OsmGps, NavigationView):
if media_list:
for media_ref in media_list:
object_handle = media_ref.get_reference_handle()
- media_obj = self.dbstate.db.get_media_from_handle(object_handle)
+ media_obj = self.dbstate.db.get_media_from_handle(
+ object_handle)
path = media_obj.get_path()
dummy_name, extension = os.path.splitext(path)
if extension == ".kml":
@@ -860,11 +879,11 @@ class GeoGraphyView(OsmGps, NavigationView):
if os.path.isfile(path):
self.kml_layer.add_kml(path)
- #-------------------------------------------------------------------------
+ # -------------------------------------------------------------------------
#
# Printing functionalities
#
- #-------------------------------------------------------------------------
+ # -------------------------------------------------------------------------
def printview(self, *obj):
"""
Print or save the view that is currently shown
@@ -884,11 +903,11 @@ class GeoGraphyView(OsmGps, NavigationView):
prt = CairoPrintSave(widthpx, heightpx, self.osm.do_draw, self.osm)
prt.run()
- #-------------------------------------------------------------------------
+ # -------------------------------------------------------------------------
#
# Specific functionalities
#
- #-------------------------------------------------------------------------
+ # -------------------------------------------------------------------------
def center_here(self, menu, event, lat, lon, mark):
"""
Center the map at the marker position
@@ -1062,8 +1081,8 @@ class GeoGraphyView(OsmGps, NavigationView):
def link_place(self, menu, event, lat, lon):
"""
- Link an existing place using longitude and latitude of location centered
- on the map
+ Link an existing place using longitude and latitude of location
+ centered on the map
If we have a place history, we must show all places to avoid an empty
place selection in the PlaceSelection.
"""
@@ -1101,8 +1120,8 @@ class GeoGraphyView(OsmGps, NavigationView):
"You should eiher rename the places or merge them.\n\n"
"%(bold_start)s"
"I can't proceed with your request"
- "%(bold_end)s.\n") % {'bold_start' : '',
- 'bold_end' : '',
+ "%(bold_end)s.\n") % {'bold_start': '',
+ 'bold_end': '',
'title': '' + ptitle + '',
'gid': gids},
parent=self.uistate.window)
@@ -1182,8 +1201,8 @@ class GeoGraphyView(OsmGps, NavigationView):
def __link_place(self, parent, plat, plon):
"""
- Link an existing place using longitude and latitude of location centered
- on the map
+ Link an existing place using longitude and latitude of location
+ centered on the map
"""
selector = SelectPlace(self.dbstate, self.uistate, [])
place = selector.run()
@@ -1201,11 +1220,11 @@ class GeoGraphyView(OsmGps, NavigationView):
except WindowActiveError:
pass
- #-------------------------------------------------------------------------
+ # ------------------------------------------------------------------------
#
# Geography preferences
#
- #-------------------------------------------------------------------------
+ # ------------------------------------------------------------------------
def _get_configure_page_funcs(self):
"""
The function which is used to create the configuration window.
@@ -1274,25 +1293,26 @@ class GeoGraphyView(OsmGps, NavigationView):
0, self.path_entry,
config.get('geography.path'),
self.set_tilepath, self.select_tilepath)
- configdialog.add_text(grid,
- _('If you have no more space in your file system.'
- ' You can remove all tiles placed in the above'
- ' path.\nBe careful! If you have no internet,'
- ' you\'ll get no map.'),
- 2, line_wrap=False)
+ configdialog.add_text(
+ grid,
+ _('If you have no more space in your file system.'
+ ' You can remove all tiles placed in the above'
+ ' path.\nBe careful! If you have no internet,'
+ ' you\'ll get no map.'),
+ 2, line_wrap=False)
configdialog.add_slider(grid, _('Zoom used when centering'),
- 3, 'geography.zoom_when_center',
- (2, 16))
- configdialog.add_slider(grid, _('The maximum number of places to show'),
- 4, 'geography.max_places',
- (1000, 10000))
- configdialog.add_checkbox(grid,
- _('Use keypad for shortcuts :\nEither we '
- 'choose the + and - from the keypad if we '
- 'select this,\nor we use the characters '
- 'from the keyboard.'),
- 5, 'geography.use-keypad',
- extra_callback=self.update_shortcuts)
+ 3, 'geography.zoom_when_center', (2, 16))
+ configdialog.add_slider(grid,
+ _('The maximum number of places to show'),
+ 4, 'geography.max_places', (1000, 10000))
+ configdialog.add_checkbox(
+ grid,
+ _('Use keypad for shortcuts :\nEither we '
+ 'choose the + and - from the keypad if we '
+ 'select this,\nor we use the characters '
+ 'from the keyboard.'),
+ 5, 'geography.use-keypad',
+ extra_callback=self.update_shortcuts)
label = configdialog.add_text(
grid,
_('If you want to use a specific map provider,'
@@ -1309,10 +1329,9 @@ class GeoGraphyView(OsmGps, NavigationView):
start = label.get_text().find("http")
end = label.get_text().find("http", start + 1)
label.select_region(start, end)
- url = configdialog.add_entry(grid, _("Personal map"),
- 7, 'geography.personal-map',
- self.choosen_map,
- )
+ url = configdialog.add_entry(
+ grid, _("Personal map"),
+ 7, 'geography.personal-map', self.choosen_map,)
if config.get('geography.personal-map') != "":
url.set_text(config.get('geography.personal-map'))
return _('The map'), grid
@@ -1323,18 +1342,14 @@ class GeoGraphyView(OsmGps, NavigationView):
"""
map_source = obj[0].get_text()
name = constants.TILES_PATH[constants.PERSONAL]
- print(self.current_map, constants.PERSONAL,
- map_source, config.get('geography.personal-map'))
config.set('geography.personal-map', map_source)
self.clear_map(None, name)
if map_source == "":
- print("reset osm")
config.set("geography.map_service", constants.OPENSTREETMAP)
self.change_map(self.osm, config.get("geography.map_service"))
self.reload_tiles()
return
if map_source != config.get('geography.personal-map'):
- print("set personal")
config.set("geography.map_service", constants.PERSONAL)
self.change_new_map(name, map_source)
self.reload_tiles()
diff --git a/gramps/plugins/lib/maps/kmllayer.py b/gramps/plugins/lib/maps/kmllayer.py
index b32fe9ece..8316521bc 100644
--- a/gramps/plugins/lib/maps/kmllayer.py
+++ b/gramps/plugins/lib/maps/kmllayer.py
@@ -25,22 +25,16 @@
# Python modules
#
#-------------------------------------------------------------------------
-from gi.repository import GObject
-
-#------------------------------------------------------------------------
-#
-# Set up logging
-#
-#------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("maps.kmllayer")
+
#-------------------------------------------------------------------------
#
# GTK/Gnome modules
#
#-------------------------------------------------------------------------
-from gi.repository import Gdk
import cairo
+from gi.repository import Gdk
+from gi.repository import GObject
#-------------------------------------------------------------------------
#
@@ -57,14 +51,17 @@ from .libkml import Kml
try:
import gi
- gi.require_version('OsmGpsMap', '1.0')
from gi.repository import OsmGpsMap as osmgpsmap
+ gi.require_version('OsmGpsMap', '1.0')
except:
raise
-# pylint: disable=unused-variable
-# pylint: disable=unused-argument
-# pylint: disable=no-member
+#------------------------------------------------------------------------
+#
+# Set up logging
+#
+#------------------------------------------------------------------------
+_LOG = logging.getLogger("maps.kmllayer")
class KmlLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
@@ -118,7 +115,8 @@ class KmlLayer(GObject.GObject, osmgpsmap.MapLayer):
color2 = Gdk.color_parse('blue')
for polygons in self.polygons:
for polygon in polygons:
- (name, ptype, color, transparency, points) = polygon
+ (dummy_name, ptype, dummy_color,
+ dummy_transparency, points) = polygon
map_points = []
for point in points:
conv_pt = osmgpsmap.MapPoint.new_degrees(point[0], point[1])
@@ -155,7 +153,8 @@ class KmlLayer(GObject.GObject, osmgpsmap.MapLayer):
ctx.restore()
for paths in self.paths:
for path in paths:
- (name, ptype, color, transparency, points) = path
+ (dummy_name, ptype, dummy_color,
+ dummy_transparency, points) = path
map_points = []
for point in points:
conv_pt = osmgpsmap.MapPoint.new_degrees(point[0], point[1])
@@ -185,7 +184,7 @@ class KmlLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
render the layer
"""
- pass
+ dummy_map = gpsmap
def do_busy(self):
"""
@@ -197,6 +196,8 @@ class KmlLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
When we press a button.
"""
+ dummy_map = gpsmap
+ dummy_evt = gdkeventbutton
return False
GObject.type_register(KmlLayer)
diff --git a/gramps/plugins/lib/maps/libkml.py b/gramps/plugins/lib/maps/libkml.py
index 7fef41551..4767f71d6 100644
--- a/gramps/plugins/lib/maps/libkml.py
+++ b/gramps/plugins/lib/maps/libkml.py
@@ -26,19 +26,17 @@
#
#-------------------------------------------------------------------------
import os
-from gi.repository import GObject
+import logging
import xml.etree.ElementTree as ETree
+from gi.repository import GObject
#------------------------------------------------------------------------
#
# Set up logging
#
#------------------------------------------------------------------------
-import logging
_LOG = logging.getLogger("maps.libkml")
-# pylint: disable=unused-variable
-
class Kml(GObject.GObject):
"""
This is the library used to read kml files
@@ -72,8 +70,8 @@ class Kml(GObject.GObject):
root = self.tree.getroot()
self.tag = root.tag.replace('}kml', '}')
_LOG.debug("Tag version of kml file %s is %s", kml_file, self.tag)
- fname, extension = os.path.splitext(kml_file)
- fdir, self.kmlfile = os.path.split(fname)
+ fname, dummy_extension = os.path.splitext(kml_file)
+ dummy_fdir, self.kmlfile = os.path.split(fname)
def set_default(self):
"""
@@ -103,7 +101,7 @@ class Kml(GObject.GObject):
self.points = []
for point in attributes.text.split():
try:
- (longitude, latitude, altitude) = point.split(',')
+ (longitude, latitude, dummy_altitude) = point.split(',')
except:
(longitude, latitude) = point.split(',')
self.points.append((float(latitude), float(longitude)))
diff --git a/gramps/plugins/lib/maps/lifewaylayer.py b/gramps/plugins/lib/maps/lifewaylayer.py
index 84f9aa675..348e03347 100644
--- a/gramps/plugins/lib/maps/lifewaylayer.py
+++ b/gramps/plugins/lib/maps/lifewaylayer.py
@@ -25,16 +25,10 @@
# Python modules
#
#-------------------------------------------------------------------------
-from gi.repository import GObject
-from math import pi
-
-#------------------------------------------------------------------------
-#
-# Set up logging
-#
-#------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("maps.lifeway")
+from math import pi
+import cairo
+from gi.repository import GObject
#-------------------------------------------------------------------------
#
@@ -42,7 +36,6 @@ _LOG = logging.getLogger("maps.lifeway")
#
#-------------------------------------------------------------------------
from gi.repository import Gdk
-import cairo
#-------------------------------------------------------------------------
#
@@ -63,7 +56,12 @@ try:
except:
raise
-# pylint: disable=unused-argument
+#------------------------------------------------------------------------
+#
+# Set up logging
+#
+#------------------------------------------------------------------------
+_LOG = logging.getLogger("maps.lifeway")
class LifeWayLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
@@ -122,16 +120,16 @@ class LifeWayLayer(GObject.GObject, osmgpsmap.MapLayer):
for point in lifeway[0]:
conv_pt1 = osmgpsmap.MapPoint.new_degrees(point[0], point[1])
coord_x1, coord_y1 = gpsmap.convert_geographic_to_screen(
- conv_pt1)
+ conv_pt1)
conv_pt2 = osmgpsmap.MapPoint.new_degrees(point[0]+rds,
point[1])
coord_x2, coord_y2 = gpsmap.convert_geographic_to_screen(
- conv_pt2)
+ conv_pt2)
coy = abs(coord_y2-coord_y1)
conv_pt2 = osmgpsmap.MapPoint.new_degrees(point[0],
point[1]+rds)
coord_x2, coord_y2 = gpsmap.convert_geographic_to_screen(
- conv_pt2)
+ conv_pt2)
cox = abs(coord_x2-coord_x1)
cox = cox if cox > 1.2 else 1.2
coy = coy if coy > 1.2 else 1.2
@@ -192,7 +190,8 @@ class LifeWayLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
When we press a button.
"""
+ dummy_map = gpsmap
+ dummy_evt = gdkeventbutton
return False
GObject.type_register(LifeWayLayer)
-
diff --git a/gramps/plugins/lib/maps/markerlayer.py b/gramps/plugins/lib/maps/markerlayer.py
index a097ab94b..42c2e0370 100644
--- a/gramps/plugins/lib/maps/markerlayer.py
+++ b/gramps/plugins/lib/maps/markerlayer.py
@@ -25,10 +25,11 @@
# Python modules
#
#-------------------------------------------------------------------------
+import time
+import logging
+from math import pi as PI
from gi.repository import GObject
from gi.repository import Gdk
-import time
-from math import pi as PI
#------------------------------------------------------------------------
@@ -36,7 +37,6 @@ from math import pi as PI
# Set up logging
#
#------------------------------------------------------------------------
-import logging
_LOG = logging.getLogger("maps.markerlayer")
#-------------------------------------------------------------------------
@@ -64,8 +64,6 @@ try:
except:
raise
-# pylint: disable=unused-argument
-
class MarkerLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
This is the layer used to display the markers.
@@ -122,7 +120,7 @@ class MarkerLayer(GObject.GObject, osmgpsmap.MapLayer):
if min_interval <= 0: # This to avoid divide by zero
min_interval = 0.01
_LOG.debug("%s", time.strftime("start drawing : "
- "%a %d %b %Y %H:%M:%S", time.gmtime()))
+ "%a %d %b %Y %H:%M:%S", time.gmtime()))
for marker in self.markers:
# the icon size in 48, so the standard icon size is 0.6 * 48 = 28.8
size = 0.6
@@ -130,16 +128,16 @@ class MarkerLayer(GObject.GObject, osmgpsmap.MapLayer):
if mark > self.nb_ref_by_places or max_interval > 3:
# at maximum, we'll have an icon size = (0.6 + 0.2) * 48 = 38.4
size += (0.2 * ((mark - self.nb_ref_by_places)
- / max_interval))
+ / max_interval))
else:
# at minimum, we'll have an icon size = (0.6 - 0.2) * 48 = 19.2
size -= (0.2 * ((self.nb_ref_by_places - mark)
- / min_interval))
+ / min_interval))
conv_pt = osmgpsmap.MapPoint.new_degrees(float(marker[0][0]),
float(marker[0][1]))
coord_x, coord_y = gpsmap.convert_geographic_to_screen(conv_pt)
- if marker[3] == None:
+ if marker[3] is None:
# We use the standard icons.
ctx.save()
ctx.translate(coord_x, coord_y)
@@ -159,7 +157,7 @@ class MarkerLayer(GObject.GObject, osmgpsmap.MapLayer):
draw_marker(ctx, float(coord_x), float(coord_y),
size, marker[3][1])
_LOG.debug("%s", time.strftime("end drawing : "
- "%a %d %b %Y %H:%M:%S", time.gmtime()))
+ "%a %d %b %Y %H:%M:%S", time.gmtime()))
def do_render(self, gpsmap):
"""
@@ -177,11 +175,13 @@ class MarkerLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
When we press a button.
"""
+ dummy_map = gpsmap
+ dummy_evt = gdkeventbutton
return False
GObject.type_register(MarkerLayer)
-def draw_marker(ctx, x1, y1, size, color):
+def draw_marker(ctx, x01, y01, size, color):
width = 48.0 * size
height = width / 2
color = Gdk.color_parse(color)
@@ -189,39 +189,39 @@ def draw_marker(ctx, x1, y1, size, color):
float(color.green / 65535.0),
float(color.blue / 65535.0),
1.0) # transparency
- ctx.set_line_width (2.0);
- ctx.move_to(x1, y1)
- ctx.line_to((x1 + (height/3)), (y1 - height*2))
- ctx.line_to((x1 - (height/3)), (y1 - height*2))
+ ctx.set_line_width(2.0)
+ ctx.move_to(x01, y01)
+ ctx.line_to((x01 + (height/3)), (y01 - height*2))
+ ctx.line_to((x01 - (height/3)), (y01 - height*2))
ctx.fill()
ctx.set_source_rgba(1.0, 0.0, 0.0, 0.5)
- ctx.move_to(x1, y1)
- ctx.line_to((x1 + (height/3)), (y1 - height*2))
- ctx.line_to((x1 - (height/3)), (y1 - height*2))
- ctx.line_to(x1, y1)
+ ctx.move_to(x01, y01)
+ ctx.line_to((x01 + (height/3)), (y01 - height*2))
+ ctx.line_to((x01 - (height/3)), (y01 - height*2))
+ ctx.line_to(x01, y01)
ctx.stroke()
ctx.save()
- ctx.translate(x1 + width/4 - (width/4) , y1 - height*2 - (width/4))
+ ctx.translate(x01 + width/4 - (width/4), y01 - height*2 - (width/4))
ctx.scale(width / 2., height / 2.)
ctx.arc(0., 0., 1., 0., 2 * PI)
ctx.fill_preserve()
ctx.set_source_rgba(1.0, 0.0, 0.0, 0.5)
- ctx.set_line_width (2.0);
+ ctx.set_line_width(2.0)
ctx.arc(0., 0., 1., 0., 2 * PI)
ctx.restore()
- ctx.stroke();
+ ctx.stroke()
ctx.save()
ctx.set_source_rgba(float(color.red / 65535.0),
float(color.green / 65535.0),
float(color.blue / 65535.0),
1.0) # transparency
- #ctx.translate(x1 + width/4 - 12.0 , y1 - height*2 - 12.0)
- ctx.translate(x1 + width/4 - (width/4) , y1 - height*2 - (width/4))
+ #ctx.translate(x01 + width/4 - 12.0 , y01 - height*2 - 12.0)
+ ctx.translate(x01 + width/4 - (width/4), y01 - height*2 - (width/4))
ctx.scale(width / 2., height / 2.)
ctx.arc(0., 0., 1., 0., 2 * PI)
ctx.fill_preserve()
ctx.set_source_rgba(1.0, 0.0, 0.0, 0.5)
- ctx.set_line_width (2.0);
+ ctx.set_line_width(2.0)
ctx.arc(0., 0., 1., 0., 2 * PI)
ctx.restore()
- ctx.stroke();
+ ctx.stroke()
diff --git a/gramps/plugins/lib/maps/messagelayer.py b/gramps/plugins/lib/maps/messagelayer.py
index 1ce6d1193..00813001a 100644
--- a/gramps/plugins/lib/maps/messagelayer.py
+++ b/gramps/plugins/lib/maps/messagelayer.py
@@ -25,15 +25,8 @@
# Python modules
#
#-------------------------------------------------------------------------
-from gi.repository import GObject
-
-#------------------------------------------------------------------------
-#
-# Set up logging
-#
-#------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("maps.messagelayer")
+from gi.repository import GObject
#-------------------------------------------------------------------------
#
@@ -64,9 +57,12 @@ try:
except:
raise
-# pylint: disable=unused-variable
-# pylint: disable=unused-argument
-# pylint: disable=no-member
+#------------------------------------------------------------------------
+#
+# Set up logging
+#
+#------------------------------------------------------------------------
+_LOG = logging.getLogger("maps.messagelayer")
class MessageLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
@@ -120,8 +116,8 @@ class MessageLayer(GObject.GObject, osmgpsmap.MapLayer):
Draw all the messages
"""
ctx.save()
- font_size = "%s %d" % (self.font, self.size)
- font = Pango.FontDescription(font_size)
+ #font_size = "%s %d" % (self.font, self.size)
+ #font = Pango.FontDescription(font_size)
descr = Pango.font_description_from_string(self.font)
descr.set_size(self.size * Pango.SCALE)
color = Gdk.color_parse(self.color)
@@ -152,7 +148,7 @@ class MessageLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
render the layer
"""
- pass
+ dummy_map = gpsmap
def do_busy(self):
"""
@@ -164,7 +160,8 @@ class MessageLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
When we press a button.
"""
+ dummy_map = gpsmap
+ dummy_evt = gdkeventbutton
return False
GObject.type_register(MessageLayer)
-
diff --git a/gramps/plugins/lib/maps/osmgps.py b/gramps/plugins/lib/maps/osmgps.py
index 4d64e6e91..f1942a528 100644
--- a/gramps/plugins/lib/maps/osmgps.py
+++ b/gramps/plugins/lib/maps/osmgps.py
@@ -20,37 +20,41 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Python modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
import os
from math import pi, sin, atanh, floor
-#------------------------------------------------------------------------
+# ------------------------------------------------------------------------
#
# Set up logging
#
-#------------------------------------------------------------------------
+# ------------------------------------------------------------------------
import time
import logging
-_LOG = logging.getLogger("maps.osmgps")
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# GTK/Gnome modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
from gi.repository import Gtk
from gi.repository import Gdk
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Gramps Modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
from gramps.plugins.lib.maps import constants
+from gramps.gen.const import GRAMPS_LOCALE as glocale
+from gramps.gen.const import VERSION_DIR
+from gramps.gen.config import config
+from gramps.gui.dialog import ErrorDialog
+from gramps.gen.constfunc import get_env_var
from .dummylayer import DummyLayer
from .dummynogps import DummyMapNoGpsPoint
from .selectionlayer import SelectionLayer
@@ -59,18 +63,15 @@ from .markerlayer import MarkerLayer
from .datelayer import DateLayer
from .messagelayer import MessageLayer
from .kmllayer import KmlLayer
-from gramps.gen.const import GRAMPS_LOCALE as glocale
-_ = glocale.translation.sgettext
-from gramps.gen.config import config
-from gramps.gui.dialog import ErrorDialog
-from gramps.gen.constfunc import get_env_var
-from gramps.gen.const import VERSION_DIR
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# OsmGps
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+
+_LOG = logging.getLogger("maps.osmgps")
+_ = glocale.translation.sgettext
try:
import gi
@@ -79,10 +80,6 @@ try:
except:
raise
-# pylint: disable=unused-argument
-# pylint: disable=no-member
-# pylint: disable=maybe-no-member
-
def lon2pixel(zoom, longitude, size):
"""
pixel_x = (2^zoom * size * longitude) / 2PI + (2^zoom * size) / 2
@@ -125,6 +122,7 @@ class OsmGps:
self.current_map = None
self.places_found = None
self.uistate = uistate
+ self.zoom = config.get("geography.zoom")
def build_widget(self):
"""
@@ -182,7 +180,7 @@ class OsmGps:
except:
ErrorDialog(_("Can't create "
"tiles cache directory for '%s'.") %
- constants.MAP_TITLE[map_type],
+ constants.MAP_TITLE[map_type],
parent=self.uistate.window)
config.set("geography.map_service", map_type)
self.current_map = map_type
@@ -190,12 +188,14 @@ class OsmGps:
if 0:
self.osm = DummyMapNoGpsPoint()
else:
- if http_proxy:
- self.osm = osmgpsmap.Map(proxy_uri=http_proxy)
+ if map_type == constants.PERSONAL:
+ self.osm = osmgpsmap.Map(repo_uri=map_source)
else:
- self.osm = osmgpsmap.Map()
+ self.osm = osmgpsmap.Map(
+ map_source=constants.MAP_TYPE[map_type])
+ if http_proxy:
+ self.osm.set_property("proxy_uri", http_proxy)
self.osm.set_property("tile_cache", tiles_path)
- self.osm.set_property("map_source", constants.MAP_TYPE[map_type])
self.osm.props.tile_cache = osmgpsmap.MAP_CACHE_AUTO
current_map = osmgpsmap.MapOsd(show_dpad=False, show_zoom=True)
self.end_selection = None
@@ -244,19 +244,21 @@ class OsmGps:
except:
ErrorDialog(_("Can't create "
"tiles cache directory for '%s'.") %
- constants.MAP_TITLE[self.current_map],
+ constants.MAP_TITLE[self.current_map],
parent=self.uistate.window)
http_proxy = get_env_var('http_proxy')
if 0:
self.osm = DummyMapNoGpsPoint()
else:
- if http_proxy:
- self.osm = osmgpsmap.Map(tile_cache=tiles_path,
- proxy_uri=http_proxy,
- repo_uri=map_source)
+ map_type = int(config.get("geography.map_service"))
+ if map_type == constants.PERSONAL:
+ self.osm = osmgpsmap.Map(repo_uri=map_source)
else:
- self.osm = osmgpsmap.Map(tile_cache=tiles_path,
- repo_uri=map_source)
+ self.osm = osmgpsmap.Map(
+ map_source=constants.MAP_TYPE[map_type])
+ if http_proxy:
+ self.osm.set_property("proxy_uri", http_proxy)
+ self.osm.set_property("tile_cache", tiles_path)
self.osm.props.tile_cache = osmgpsmap.MAP_CACHE_AUTO
current_map = osmgpsmap.MapOsd(show_dpad=False, show_zoom=True)
self.end_selection = None
@@ -327,8 +329,9 @@ class OsmGps:
arg is mandatory because this function is also called by
the checkbox button
"""
+ dummy_arg = arg
config.set('geography.use-keypad',
- self._config.get('geography.use-keypad'))
+ self._config.get('geography.use-keypad'))
if config.get('geography.use-keypad'):
self.osm.set_keyboard_shortcut(osmgpsmap.MapKey_t.ZOOMIN,
Gdk.keyval_from_name("KP_Add"))
@@ -446,6 +449,7 @@ class OsmGps:
"""
save the zoom and the position
"""
+ dummy_zoom = zoom
config.set("geography.zoom", self.osm.props.zoom)
self.save_center(self.osm.props.latitude, self.osm.props.longitude)
@@ -462,7 +466,7 @@ class OsmGps:
if layer:
self.osm.layer_remove(layer)
self.selection_layer = self.add_selection_layer()
- if self.end_selection == None:
+ if self.end_selection is None:
self.selection_layer.add_rectangle(self.begin_selection,
current)
else:
@@ -498,6 +502,8 @@ class OsmGps:
"""
Zoom when in zone selection
"""
+ dummy_osm = osm
+ dummy_evt = event
if self.end_selection is not None:
self._autozoom()
return True
@@ -542,28 +548,28 @@ class OsmGps:
return mark_selected
oldplace = ""
_LOG.debug("%s", time.strftime("start is_there_a_place_here : "
- "%a %d %b %Y %H:%M:%S", time.gmtime()))
+ "%a %d %b %Y %H:%M:%S", time.gmtime()))
for mark in self.places_found:
# as we are not precise with our hand, reduce the precision
# depending on the zoom.
if mark[0] != oldplace:
oldplace = mark[0]
precision = {
- 1 : '%3.0f', 2 : '%3.1f', 3 : '%3.1f',
- 4 : '%3.1f', 5 : '%3.2f', 6 : '%3.2f',
- 7 : '%3.2f', 8 : '%3.3f', 9 : '%3.3f',
- 10 : '%3.3f', 11 : '%3.3f', 12 : '%3.3f',
- 13 : '%3.3f', 14 : '%3.4f', 15 : '%3.4f',
- 16 : '%3.4f', 17 : '%3.4f', 18 : '%3.4f'
- }.get(config.get("geography.zoom"), '%3.1f')
+ 1 : '%3.0f', 2 : '%3.1f', 3 : '%3.1f',
+ 4 : '%3.1f', 5 : '%3.2f', 6 : '%3.2f',
+ 7 : '%3.2f', 8 : '%3.3f', 9 : '%3.3f',
+ 10 : '%3.3f', 11 : '%3.3f', 12 : '%3.3f',
+ 13 : '%3.3f', 14 : '%3.4f', 15 : '%3.4f',
+ 16 : '%3.4f', 17 : '%3.4f', 18 : '%3.4f'
+ }.get(config.get("geography.zoom"), '%3.1f')
shift = {
- 1 : 5.0, 2 : 5.0, 3 : 3.0,
- 4 : 1.0, 5 : 0.5, 6 : 0.3, 7 : 0.15,
- 8 : 0.06, 9 : 0.03, 10 : 0.015,
- 11 : 0.005, 12 : 0.003, 13 : 0.001,
- 14 : 0.0005, 15 : 0.0003, 16 : 0.0001,
- 17 : 0.0001, 18 : 0.0001
- }.get(config.get("geography.zoom"), 5.0)
+ 1 : 5.0, 2 : 5.0, 3 : 3.0,
+ 4 : 1.0, 5 : 0.5, 6 : 0.3, 7 : 0.15,
+ 8 : 0.06, 9 : 0.03, 10 : 0.015,
+ 11 : 0.005, 12 : 0.003, 13 : 0.001,
+ 14 : 0.0005, 15 : 0.0003, 16 : 0.0001,
+ 17 : 0.0001, 18 : 0.0001
+ }.get(config.get("geography.zoom"), 5.0)
latp = precision % lat
lonp = precision % lon
mlatp = precision % float(mark[1])
@@ -578,7 +584,7 @@ class OsmGps:
if latok and lonok:
mark_selected.append(mark)
_LOG.debug("%s", time.strftime(" end is_there_a_place_here : "
- "%a %d %b %Y %H:%M:%S", time.gmtime()))
+ "%a %d %b %Y %H:%M:%S", time.gmtime()))
return mark_selected
def build_nav_menu(self, osm, event, lat, lon):
diff --git a/gramps/plugins/lib/maps/placeselection.py b/gramps/plugins/lib/maps/placeselection.py
index e21f7d8d9..f70a77593 100644
--- a/gramps/plugins/lib/maps/placeselection.py
+++ b/gramps/plugins/lib/maps/placeselection.py
@@ -25,46 +25,38 @@
# Python modules
#
#-------------------------------------------------------------------------
-from gramps.gen.const import GRAMPS_LOCALE as glocale
-_ = glocale.translation.sgettext
import re
import math
-
-#------------------------------------------------------------------------
-#
-# Set up logging
-#
-#------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("maps.placeselection")
-
-#-------------------------------------------------------------------------
-#
-# GTK/Gnome modules
-#
-#-------------------------------------------------------------------------
import gi
from gi.repository import Gtk
-try:
- gi.require_version('GeocodeGlib', '1.0')
- from gi.repository import GeocodeGlib
- GEOCODEGLIB = True
-except:
- GEOCODEGLIB = False
#-------------------------------------------------------------------------
#
# Gramps Modules
#
#-------------------------------------------------------------------------
+from gramps.gen.const import GRAMPS_LOCALE as glocale
from gramps.gen.errors import WindowActiveError
from gramps.gui.managedwindow import ManagedWindow
from gramps.gui.dialog import WarningDialog
-from .osmgps import OsmGps
from gramps.gen.utils.location import get_main_location
from gramps.gen.lib import PlaceType
from gramps.gen.utils.place import conv_lat_lon
from gramps.gen.display.place import displayer as _pd
+from .osmgps import OsmGps
+
+#-------------------------------------------------------------------------
+#
+# GTK/Gnome modules
+#
+#-------------------------------------------------------------------------
+try:
+ gi.require_version('GeocodeGlib', '1.0')
+ from gi.repository import GeocodeGlib
+ GEOCODEGLIB = True
+except:
+ GEOCODEGLIB = False
#-------------------------------------------------------------------------
#
@@ -76,8 +68,13 @@ PLACE_STRING = '%s'
GEOCODE_REGEXP = re.compile('(.*)')
GEOCODE_STRING = '%s'
-# pylint: disable=unused-argument
-# pylint: disable=no-member
+#------------------------------------------------------------------------
+#
+# Set up logging
+#
+#------------------------------------------------------------------------
+_LOG = logging.getLogger("maps.placeselection")
+_ = glocale.translation.sgettext
#-------------------------------------------------------------------------
#
@@ -162,8 +159,8 @@ class PlaceSelection(ManagedWindow, OsmGps):
self.label2 = Gtk.Label()
self.label2.set_markup('%s' %
- _('The green values in the row correspond '
- 'to the current place values.'))
+ _('The green values in the row correspond '
+ 'to the current place values.'))
self.label2.set_valign(Gtk.Align.END)
self.window.vbox.pack_start(self.label2, False, True, 0)
self.window.set_default_size(400, 300)
@@ -249,7 +246,7 @@ class PlaceSelection(ManagedWindow, OsmGps):
place = self.dbstate.db.get_place_from_gramps_id(gramps_id)
place_name = place.name.get_value()
parent_list = place.get_placeref_list()
- while len(parent_list) > 0:
+ while parent_list:
place = self.dbstate.db.get_place_from_handle(parent_list[0].ref)
parent_list = place.get_placeref_list()
if int(place.get_type()) == PlaceType.COUNTY:
@@ -280,7 +277,7 @@ class PlaceSelection(ManagedWindow, OsmGps):
# place
for entry in self.place_list:
if (math.hypot(lat-float(entry[3]),
- lon-float(entry[4])) <= rds) == True:
+ lon-float(entry[4])) <= rds):
# Do we already have this place ? avoid duplicates
(country, state, county,
place, other) = self.get_location(entry[9])
@@ -291,7 +288,7 @@ class PlaceSelection(ManagedWindow, OsmGps):
latn = place.get_latitude()
lonn = place.get_longitude()
if latn and lonn:
- latn, ignore = conv_lat_lon(latn, "0", "D.D8")
+ latn, dummy_ignore = conv_lat_lon(latn, "0", "D.D8")
if not latn:
if not self.warning:
self.close()
@@ -301,7 +298,7 @@ class PlaceSelection(ManagedWindow, OsmGps):
WarningDialog(warn1, warn2, parent=self.uistate.window)
self.warning = True
continue
- ignore, lonn = conv_lat_lon("0", lonn, "D.D8")
+ dummy_ignore, lonn = conv_lat_lon("0", lonn, "D.D8")
if not lonn:
if not self.warning:
self.close()
@@ -312,7 +309,7 @@ class PlaceSelection(ManagedWindow, OsmGps):
self.warning = True
continue
if (math.hypot(lat-float(latn),
- lon-float(lonn)) <= rds) == True:
+ lon-float(lonn)) <= rds):
(country, state, county,
place, other) = self.get_location(place.get_gramps_id())
if not [country, state, county,
@@ -324,9 +321,13 @@ class PlaceSelection(ManagedWindow, OsmGps):
"""
get location values and call the real function : add_place, edit_place
"""
+ dummy_obj = obj
+ dummy_col = column
+ dummy_fct = function
+ #TODO : self.plist unsubscriptable
self.function(self.plist[index], self.lat, self.lon)
- def untag_text(text, tag):
+ def untag_text(self, text, tag):
"""
suppress the green or red color tag.
if tag = 0 : PLACE_REGEXP
diff --git a/gramps/plugins/lib/maps/selectionlayer.py b/gramps/plugins/lib/maps/selectionlayer.py
index f49268115..b582857ca 100644
--- a/gramps/plugins/lib/maps/selectionlayer.py
+++ b/gramps/plugins/lib/maps/selectionlayer.py
@@ -26,15 +26,7 @@
#
#-------------------------------------------------------------------------
from math import pi
-from gi.repository import GObject
-
-#------------------------------------------------------------------------
-#
-# Set up logging
-#
-#------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("maps.selectionlayer")
#-------------------------------------------------------------------------
#
@@ -47,7 +39,7 @@ _LOG = logging.getLogger("maps.selectionlayer")
# osmGpsMap
#
#-------------------------------------------------------------------------
-
+from gi.repository import GObject
try:
import gi
gi.require_version('OsmGpsMap', '1.0')
@@ -55,7 +47,12 @@ try:
except:
raise
-# pylint: disable=unused-argument
+#------------------------------------------------------------------------
+#
+# Set up logging
+#
+#------------------------------------------------------------------------
+_LOG = logging.getLogger("maps.selectionlayer")
class SelectionLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
@@ -87,9 +84,9 @@ class SelectionLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
for circle in self.circles:
top_left = osmgpsmap.MapPoint.new_degrees(circle[1] + circle[0],
- circle[2] - circle[0])
+ circle[2] - circle[0])
bottom_right = osmgpsmap.MapPoint.new_degrees(circle[1] - circle[0],
- circle[2] + circle[0])
+ circle[2] + circle[0])
center = osmgpsmap.MapPoint.new_degrees(circle[1], circle[2])
crd_x, crd_y = gpsmap.convert_geographic_to_screen(top_left)
crd_x2, crd_y2 = gpsmap.convert_geographic_to_screen(bottom_right)
@@ -141,7 +138,8 @@ class SelectionLayer(GObject.GObject, osmgpsmap.MapLayer):
"""
Someone press a button
"""
+ dummy_map = gpsmap
+ dummy_evt = gdkeventbutton
return False
GObject.type_register(SelectionLayer)
-
diff --git a/gramps/plugins/view/geoclose.py b/gramps/plugins/view/geoclose.py
index 99e96cc24..b22152928 100644
--- a/gramps/plugins/view/geoclose.py
+++ b/gramps/plugins/view/geoclose.py
@@ -23,31 +23,29 @@
"""
Geography for two persons
"""
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Python modules
#
-#-------------------------------------------------------------------------
-from gramps.gen.const import GRAMPS_LOCALE as glocale
-_ = glocale.translation.gettext
+# -------------------------------------------------------------------------
import operator
-from gi.repository import Gtk
from math import hypot
from html import escape
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# set up logging
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("GeoGraphy.geoclose")
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Gramps Modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+from gi.repository import Gtk
+from gramps.gen.const import GRAMPS_LOCALE as glocale
from gramps.gen.lib import EventRoleType, EventType
from gramps.gen.config import config
from gramps.gen.datehandler import displayer, get_date
@@ -59,13 +57,14 @@ from gramps.plugins.lib.maps import constants
from gramps.plugins.lib.maps.geography import GeoGraphyView
from gramps.gui.selectors import SelectorFactory
from gramps.gen.utils.db import (get_birth_or_fallback, get_death_or_fallback)
-from gramps.gui.uimanager import ActionGroup
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Constants
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+_LOG = logging.getLogger("GeoGraphy.geoclose")
+_ = glocale.translation.gettext
_UI_DEF = [
'''
@@ -185,11 +184,12 @@ _UI_DEF = [
# pylint: disable=no-member
# pylint: disable=unused-argument
-#-------------------------------------------------------------------------
+
+# -------------------------------------------------------------------------
#
# GeoView
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
class GeoClose(GeoGraphyView):
"""
The view used to render person map.
@@ -219,9 +219,9 @@ class GeoClose(GeoGraphyView):
def __init__(self, pdata, dbstate, uistate, nav_group=0):
GeoGraphyView.__init__(self, _("Have they been able to meet?"),
- pdata, dbstate, uistate,
- PersonBookmarks,
- nav_group)
+ pdata, dbstate, uistate,
+ PersonBookmarks,
+ nav_group)
self.dbstate = dbstate
self.uistate = uistate
self.place_list = []
@@ -316,16 +316,16 @@ class GeoClose(GeoGraphyView):
if self.refperson:
color = self._config.get('geography.color1')
self.message_layer.add_message(
- _("Reference : %(name)s ( %(birth)s - %(death)s )") % {
- 'name': _nd.display(self.refperson),
- 'birth': self.birth(self.refperson),
- 'death': self.death(self.refperson)})
+ _("Reference : %(name)s ( %(birth)s - %(death)s )") % {
+ 'name': _nd.display(self.refperson),
+ 'birth': self.birth(self.refperson),
+ 'death': self.death(self.refperson)})
if indiv1:
self.message_layer.add_message(
- _("The other : %(name)s ( %(birth)s - %(death)s )") % {
- 'name': _nd.display(indiv1),
- 'birth': self.birth(indiv1),
- 'death': self.death(indiv1)})
+ _("The other : %(name)s ( %(birth)s - %(death)s )") % {
+ 'name': _nd.display(indiv1),
+ 'birth': self.birth(indiv1),
+ 'death': self.death(indiv1)})
else:
self.message_layer.add_message(_("The other person is unknown"))
self._createmap(self.refperson, color, self.place_list_ref, True)
@@ -334,7 +334,7 @@ class GeoClose(GeoGraphyView):
self.add_bookmark_from_popup(None, self.refperson_bookmark)
else:
self.message_layer.add_message(
- _("You must choose one reference person."))
+ _("You must choose one reference person."))
self.message_layer.add_message(_("Go to the person view and select "
"the people you want to compare. "
"Return to this view and use the"
@@ -436,8 +436,9 @@ class GeoClose(GeoGraphyView):
points.append((startlat, startlon))
self.lifeway_layer.add_way(points, color)
if reference:
- self.lifeway_layer.add_way_ref(points, 'orange',
- float(self._config.get("geography.maximum_meeting_zone")) / 10)
+ self.lifeway_layer.add_way_ref(
+ points, 'orange',
+ float(self._config.get("geography.maximum_meeting_zone")) / 10)
return False
def possible_meeting(self, place_list_ref, place_list_active):
@@ -449,11 +450,13 @@ class GeoClose(GeoGraphyView):
for ref in place_list_ref:
for act in place_list_active:
if (hypot(float(act[3])-float(ref[3]),
- float(act[4])-float(ref[4])) <= radius) == True:
+ float(act[4])-float(ref[4])) <= radius):
# we are in the meeting zone
- self.add_marker(None, None, act[3], act[4], act[7], True, 1)
+ self.add_marker(None, None, act[3], act[4], act[7],
+ True, 1)
self.all_place_list.append(act)
- self.add_marker(None, None, ref[3], ref[4], ref[7], True, 1)
+ self.add_marker(None, None, ref[3], ref[4], ref[7],
+ True, 1)
self.all_place_list.append(ref)
def _createmap(self, person, color, place_list, reference):
@@ -479,11 +482,11 @@ class GeoClose(GeoGraphyView):
role = event_ref.get_role()
try:
date = event.get_date_object().to_calendar(self.cal)
- except:
+ except Exception:
continue
eyear = str("%04d" % date.get_year()) + \
- str("%02d" % date.get_month()) + \
- str("%02d" % date.get_day())
+ str("%02d" % date.get_month()) + \
+ str("%02d" % date.get_day())
place_handle = event.get_place_handle()
if place_handle:
place = dbstate.db.get_place_from_handle(place_handle)
@@ -495,8 +498,8 @@ class GeoClose(GeoGraphyView):
descr = _pd.display(dbstate.db, place)
evt = EventType(event.get_type())
descr1 = _("%(eventtype)s : %(name)s") % {
- 'eventtype': evt,
- 'name': _nd.display(person)}
+ 'eventtype': evt,
+ 'name': _nd.display(person)}
# place.get_longitude and place.get_latitude return
# one string. We have coordinates when the two values
# contains non null string.
@@ -509,11 +512,10 @@ class GeoClose(GeoGraphyView):
person.gramps_id,
place.gramps_id,
event.gramps_id,
- role
- )
+ role)
else:
self._append_to_places_without_coord(
- place.gramps_id, descr)
+ place.gramps_id, descr)
family_list = person.get_family_handle_list()
descr1 = " - "
for family_hdl in family_list:
@@ -535,35 +537,35 @@ class GeoClose(GeoGraphyView):
for event_ref in family.get_event_ref_list():
if event_ref:
event = dbstate.db.get_event_from_handle(
- event_ref.ref)
+ event_ref.ref)
role = event_ref.get_role()
if event.get_place_handle():
place_handle = event.get_place_handle()
if place_handle:
place = dbstate.db.get_place_from_handle(
- place_handle)
+ place_handle)
if place:
longitude = place.get_longitude()
latitude = place.get_latitude()
latitude, longitude = conv_lat_lon(
- latitude, longitude, "D.D8")
+ latitude, longitude, "D.D8")
descr = _pd.display(dbstate.db, place)
evt = EventType(event.get_type())
eyear = str(
- "%04d" % event.get_date_object().to_calendar(self.cal).get_year()) + \
+ "%04d" % event.get_date_object().to_calendar(self.cal).get_year()) + \
str("%02d" % event.get_date_object().to_calendar(self.cal).get_month()) + \
str("%02d" % event.get_date_object().to_calendar(self.cal).get_day())
if longitude and latitude:
- self._append_to_places_list(descr,
- evt, _nd.display(person),
- latitude, longitude,
- descr1, eyear,
- event.get_type(),
- person.gramps_id,
- place.gramps_id,
- event.gramps_id,
- role
- )
+ self._append_to_places_list(
+ descr,
+ evt, _nd.display(person),
+ latitude, longitude,
+ descr1, eyear,
+ event.get_type(),
+ person.gramps_id,
+ place.gramps_id,
+ event.gramps_id,
+ role)
else:
self._append_to_places_without_coord(place.gramps_id, descr)
@@ -650,7 +652,7 @@ class GeoClose(GeoGraphyView):
add_item.show()
menu.append(add_item)
add_item = Gtk.MenuItem(
- label=_("Choose and bookmark the new reference person"))
+ label=_("Choose and bookmark the new reference person"))
add_item.connect("activate", self.select_person)
add_item.show()
menu.append(add_item)
@@ -672,18 +674,17 @@ class GeoClose(GeoGraphyView):
grid.set_border_width(12)
grid.set_column_spacing(6)
grid.set_row_spacing(6)
- configdialog.add_text(grid,
- _('The meeting zone probability radius.\n'
- 'The colored zone is approximative.\n'
- 'The meeting zone is only shown for the reference person.\n'
- 'The value 9 means about 42 miles or 67 kms.\n'
- 'The value 1 means about 4.6 miles or 7.5 kms.\n'
- 'The value is in tenth of degree.'),
- 1, line_wrap=False)
- self.config_meeting_slider = configdialog.add_slider(grid,
- "",
- 2, 'geography.maximum_meeting_zone',
- (1, 9))
+ configdialog.add_text(
+ grid,
+ _('The meeting zone probability radius.\n'
+ 'The colored zone is approximative.\n'
+ 'The meeting zone is only shown for the reference person.\n'
+ 'The value 9 means about 42 miles or 67 kms.\n'
+ 'The value 1 means about 4.6 miles or 7.5 kms.\n'
+ 'The value is in tenth of degree.'),
+ 1, line_wrap=False)
+ self.config_meeting_slider = configdialog.add_slider(
+ grid, "", 2, 'geography.maximum_meeting_zone', (1, 9))
return _('The selection parameters'), grid
def config_connect(self):
@@ -691,11 +692,10 @@ class GeoClose(GeoGraphyView):
used to monitor changes in the ini file
"""
self._config.connect('geography.maximum_meeting_zone',
- self.cb_update_meeting_radius)
+ self.cb_update_meeting_radius)
def cb_update_meeting_radius(self, client, cnxn_id, entry, data):
"""
Called when the radius change
"""
self.goto_handle(handle=None)
-
diff --git a/gramps/plugins/view/geoevents.py b/gramps/plugins/view/geoevents.py
index f6f9ad066..479565c15 100644
--- a/gramps/plugins/view/geoevents.py
+++ b/gramps/plugins/view/geoevents.py
@@ -23,31 +23,28 @@
"""
Geography for events
"""
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Python modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
import operator
-from gi.repository import Gdk
-KEY_TAB = Gdk.KEY_Tab
-from gi.repository import Gtk
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# set up logging
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("GeoGraphy.geoevents")
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Gramps Modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+from gi.repository import Gdk
+from gi.repository import Gtk
from gramps.gen.const import GRAMPS_LOCALE as glocale
-_ = glocale.translation.gettext
from gramps.gen.lib import EventType
from gramps.gen.config import config
from gramps.gen.datehandler import displayer
@@ -58,11 +55,14 @@ from gramps.gui.views.bookmarks import EventBookmarks
from gramps.plugins.lib.maps.geography import GeoGraphyView
from gramps.gui.utils import ProgressMeter
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Constants
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+KEY_TAB = Gdk.KEY_Tab
+_LOG = logging.getLogger("GeoGraphy.geoevents")
+_ = glocale.translation.gettext
_UI_DEF = ['''
@@ -78,7 +78,7 @@ _UI_DEF = ['''
''',
- '''
+ '''
-
win.PrintView
@@ -86,7 +86,7 @@ _UI_DEF = ['''
''',
- '''
+ '''
-
win.AddBook
@@ -98,13 +98,14 @@ _UI_DEF = ['''
''' % _('Organize Bookmarks'), # Following are the Toolbar items
- '''
+ '''
@@ -116,7 +117,8 @@ _UI_DEF = ['''
@@ -126,13 +128,14 @@ _UI_DEF = ['''
''',
- '''
+ '''
@@ -147,11 +150,12 @@ _UI_DEF = ['''
# pylint: disable=no-member
# pylint: disable=maybe-no-member
-#-------------------------------------------------------------------------
+
+# -------------------------------------------------------------------------
#
# GeoView
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
class GeoEvents(GeoGraphyView):
"""
The view used to render events map.
@@ -160,9 +164,9 @@ class GeoEvents(GeoGraphyView):
def __init__(self, pdata, dbstate, uistate, nav_group=0):
self.window_name = _('Events places map')
GeoGraphyView.__init__(self, self.window_name,
- pdata, dbstate, uistate,
- EventBookmarks,
- nav_group)
+ pdata, dbstate, uistate,
+ EventBookmarks,
+ nav_group)
self.dbstate = dbstate
self.uistate = uistate
self.place_list = []
@@ -272,9 +276,8 @@ class GeoEvents(GeoGraphyView):
person_list = [
dbstate.db.get_person_from_handle(ref_handle)
for (ref_type, ref_handle) in
- dbstate.db.find_backlink_handles(event.handle)
- if ref_type == 'Person'
- ]
+ dbstate.db.find_backlink_handles(event.handle)
+ if ref_type == 'Person']
if person_list:
for person in person_list:
if descr2 == "":
@@ -287,24 +290,22 @@ class GeoEvents(GeoGraphyView):
family_list = [
dbstate.db.get_family_from_handle(ref_handle)
for (ref_type, ref_handle) in
- dbstate.db.find_backlink_handles(event.handle)
- if ref_type == 'Family'
- ]
+ dbstate.db.find_backlink_handles(event.handle)
+ if ref_type == 'Family']
if family_list:
for family in family_list:
father = mother = None
hdle = family.get_father_handle()
if hdle:
father = dbstate.db.get_person_from_handle(
- hdle)
+ hdle)
hdle = family.get_mother_handle()
if hdle:
mother = dbstate.db.get_person_from_handle(
- hdle)
+ hdle)
descr2 = ("%(father)s - %(mother)s") % {
'father': _nd.display(father) if father is not None else "?",
- 'mother': _nd.display(mother) if mother is not None else "?"
- }
+ 'mother': _nd.display(mother) if mother is not None else "?"}
else:
descr2 = _("incomplete or unreferenced event ?")
self._append_to_places_list(descr1, None,
@@ -313,11 +314,10 @@ class GeoEvents(GeoGraphyView):
descr2,
eventyear,
event.get_type(),
- None, # person.gramps_id
+ None, # person.gramps_id
place.gramps_id,
event.gramps_id,
- None
- )
+ None)
def _createmap(self, obj):
"""
@@ -354,7 +354,7 @@ class GeoEvents(GeoGraphyView):
progress.step()
progress.close()
elif self.generic_filter:
- user=self.uistate.viewmanager.user
+ user = self.uistate.viewmanager.user
events_list = self.generic_filter.apply(dbstate.db, user=user)
progress = ProgressMeter(self.window_name,
can_cancel=False,
@@ -371,14 +371,12 @@ class GeoEvents(GeoGraphyView):
event = dbstate.db.get_event_from_handle(obj)
self._createmap_for_one_event(event)
self.message_layer.add_message(
- _("Right click on the map and select 'show all events'"
- " to show all known events with coordinates. "
- "You can use the history to navigate on the map. "
- "You can use filtering."))
- self.sort = sorted(self.place_list,
- key=operator.itemgetter(3, 4, 6)
- )
- if self.nbmarkers > 500: # performance issue. Is it the good value ?
+ _("Right click on the map and select 'show all events'"
+ " to show all known events with coordinates. "
+ "You can use the history to navigate on the map. "
+ "You can use filtering."))
+ self.sort = sorted(self.place_list, key=operator.itemgetter(3, 4, 6))
+ if self.nbmarkers > 500: # performance issue. Is it the good value ?
self.no_show_places_in_status_bar = True
self._create_markers()
diff --git a/gramps/plugins/view/geofamclose.py b/gramps/plugins/view/geofamclose.py
index c03057717..739a3b517 100644
--- a/gramps/plugins/view/geofamclose.py
+++ b/gramps/plugins/view/geofamclose.py
@@ -23,47 +23,46 @@
"""
Geography for two families
"""
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Python modules
#
-#-------------------------------------------------------------------------
-from gramps.gen.const import GRAMPS_LOCALE as glocale
-_ = glocale.translation.gettext
+# -------------------------------------------------------------------------
import operator
-from gi.repository import Gtk
from math import hypot
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# set up logging
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("GeoGraphy.geofamilyclose")
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Gramps Modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+from gi.repository import Gtk
+from gramps.gen.const import GRAMPS_LOCALE as glocale
from gramps.gen.lib import EventRoleType, EventType
from gramps.gen.config import config
from gramps.gen.datehandler import displayer
from gramps.gen.display.name import displayer as _nd
from gramps.gen.display.place import displayer as _pd
from gramps.gen.utils.place import conv_lat_lon
-from gramps.gui.views.navigationview import NavigationView
from gramps.gui.views.bookmarks import FamilyBookmarks
from gramps.plugins.lib.maps import constants
from gramps.plugins.lib.maps.geography import GeoGraphyView
from gramps.gui.selectors import SelectorFactory
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Constants
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+_ = glocale.translation.gettext
+_LOG = logging.getLogger("GeoGraphy.geofamilyclose")
_UI_DEF = [
'''
@@ -184,11 +183,11 @@ _UI_DEF = [
# pylint: disable=unused-variable
# pylint: disable=unused-argument
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# GeoView
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
class GeoFamClose(GeoGraphyView):
"""
The view used to render family's map.
@@ -362,11 +361,11 @@ class GeoFamClose(GeoGraphyView):
self.add_bookmark_from_popup(None, self.reffamily_bookmark)
else:
self.message_layer.add_message(
- _("You must choose one reference family."))
+ _("You must choose one reference family."))
self.message_layer.add_message(
- _("Go to the family view and select "
- "the families you want to compare. "
- "Return to this view and use the history."))
+ _("Go to the family view and select "
+ "the families you want to compare. "
+ "Return to this view and use the history."))
if family is not None:
self._possible_family_meeting(self.reffamily, family)
self.uistate.modify_statusbar(self.dbstate)
@@ -429,9 +428,9 @@ class GeoFamClose(GeoGraphyView):
points.append((startlat, startlon))
self.lifeway_layer.add_way(points, color)
if reference:
- self.lifeway_layer.add_way_ref(points, 'orange',
- float(
- self._config.get("geography.maximum_meeting_zone")) / 10)
+ self.lifeway_layer.add_way_ref(
+ points, 'orange', float(
+ self._config.get("geography.maximum_meeting_zone")) / 10)
return False
def _place_list_for_person(self, person):
@@ -455,11 +454,13 @@ class GeoFamClose(GeoGraphyView):
for ref in self.place_list_ref:
for act in self.place_list_active:
if (hypot(float(act[3])-float(ref[3]),
- float(act[4])-float(ref[4])) <= radius) == True:
+ float(act[4])-float(ref[4])) <= radius):
# we are in the meeting zone
- self.add_marker(None, None, act[3], act[4], act[7], True, 1)
+ self.add_marker(None, None, act[3], act[4], act[7],
+ True, 1)
self.all_place_list.append(act)
- self.add_marker(None, None, ref[3], ref[4], ref[7], True, 1)
+ self.add_marker(None, None, ref[3], ref[4], ref[7],
+ True, 1)
self.all_place_list.append(ref)
def _expose_persone_to_family(self, ref_person, family):
@@ -470,16 +471,16 @@ class GeoFamClose(GeoGraphyView):
dbstate = self.dbstate
try:
person = dbstate.db.get_person_from_handle(
- family.get_father_handle())
- except:
+ family.get_father_handle())
+ except Exception:
return
- if person is None: # family without father ?
+ if person is None: # family without father ?
person = dbstate.db.get_person_from_handle(
- family.get_mother_handle())
+ family.get_mother_handle())
if person is not None:
family_list = person.get_family_handle_list()
if len(family_list) > 0:
- fhandle = family_list[0] # first is primary
+ fhandle = family_list[0] # first is primary
fam = dbstate.db.get_family_from_handle(fhandle)
father = mother = None
handle = fam.get_father_handle()
@@ -510,10 +511,10 @@ class GeoFamClose(GeoGraphyView):
person = None
try:
person = dbstate.db.get_person_from_handle(
- reference.get_father_handle())
- except:
+ reference.get_father_handle())
+ except Exception:
return
- if person is None: # family without father ?
+ if person is None: # family without father ?
handle = reference.get_mother_handle()
if handle:
person = dbstate.db.get_person_from_handle(handle)
@@ -540,13 +541,13 @@ class GeoFamClose(GeoGraphyView):
child_ref_list = fam.get_child_ref_list()
if child_ref_list:
for child_ref in child_ref_list:
- child = dbstate.db.get_person_from_handle(child_ref.ref)
+ child = dbstate.db.get_person_from_handle(
+ child_ref.ref)
if child:
self._expose_persone_to_family(child, family)
else:
self._expose_persone_to_family(person, family)
-
def _createmap_for_one_person(self, person, color, place_list, reference):
"""
Create all markers for each people's event in the database which has
@@ -563,7 +564,7 @@ class GeoFamClose(GeoGraphyView):
role = event_ref.get_role()
try:
date = event.get_date_object().to_calendar(self.cal)
- except:
+ except Exception:
continue
eyear = str("%04d" % date.get_year()) + \
str("%02d" % date.get_month()) + \
@@ -579,8 +580,8 @@ class GeoFamClose(GeoGraphyView):
descr = _pd.display(dbstate.db, place)
evt = EventType(event.get_type())
descr1 = _("%(eventtype)s : %(name)s") % {
- 'eventtype': evt,
- 'name': _nd.display(person)}
+ 'eventtype': evt,
+ 'name': _nd.display(person)}
# place.get_longitude and place.get_latitude return
# one string. We have coordinates when the two values
# contains non null string.
@@ -593,17 +594,16 @@ class GeoFamClose(GeoGraphyView):
person.gramps_id,
place.gramps_id,
event.gramps_id,
- role
- )
+ role)
else:
self._append_to_places_without_coord(
- place.gramps_id, descr)
+ place.gramps_id, descr)
family_list = person.get_family_handle_list()
descr1 = " - "
for family_hdl in family_list:
family = self.dbstate.db.get_family_from_handle(family_hdl)
if family is not None:
- fhandle = family_list[0] # first is primary
+ fhandle = family_list[0] # first is primary
father = mother = None
fam = dbstate.db.get_family_from_handle(fhandle)
handle = fam.get_father_handle()
@@ -619,36 +619,36 @@ class GeoFamClose(GeoGraphyView):
for event_ref in family.get_event_ref_list():
if event_ref:
event = dbstate.db.get_event_from_handle(
- event_ref.ref)
+ event_ref.ref)
role = event_ref.get_role()
if event.get_place_handle():
place_handle = event.get_place_handle()
if place_handle:
place = dbstate.db.get_place_from_handle(
- place_handle)
+ place_handle)
if place:
longitude = place.get_longitude()
latitude = place.get_latitude()
latitude, longitude = conv_lat_lon(
- latitude, longitude, "D.D8")
+ latitude, longitude, "D.D8")
descr = _pd.display(dbstate.db, place)
evt = EventType(
- event.get_type())
+ event.get_type())
eyear = str(
- "%04d" % event.get_date_object().to_calendar(self.cal).get_year()) + \
+ "%04d" % event.get_date_object().to_calendar(self.cal).get_year()) + \
str("%02d" % event.get_date_object().to_calendar(self.cal).get_month()) + \
str("%02d" % event.get_date_object().to_calendar(self.cal).get_day())
if longitude and latitude:
- self._append_to_places_list(descr,
- evt, _nd.display(person),
- latitude, longitude,
- descr1, eyear,
- event.get_type(),
- person.gramps_id,
- place.gramps_id,
- event.gramps_id,
- role
- )
+ self._append_to_places_list(
+ descr, evt,
+ _nd.display(person),
+ latitude, longitude,
+ descr1, eyear,
+ event.get_type(),
+ person.gramps_id,
+ place.gramps_id,
+ event.gramps_id,
+ role)
else:
self._append_to_places_without_coord(place.gramps_id, descr)
@@ -668,11 +668,10 @@ class GeoFamClose(GeoGraphyView):
person = None
try:
person = dbstate.db.get_person_from_handle(
- family.get_father_handle())
- except:
+ family.get_father_handle())
+ except Exception:
return
- family_id = family.gramps_id
- if person is None: # family without father ?
+ if person is None: # family without father ?
handle = family.get_mother_handle()
if handle:
person = dbstate.db.get_person_from_handle(handle)
@@ -691,8 +690,8 @@ class GeoFamClose(GeoGraphyView):
father = dbstate.db.get_person_from_handle(handle)
if father:
comment = _("Father : %(id)s : %(name)s") % {
- 'id': father.gramps_id,
- 'name': _nd.display(father)}
+ 'id': father.gramps_id,
+ 'name': _nd.display(father)}
self._createmap_for_one_person(father, color,
place_list, reference)
handle = fam.get_mother_handle()
@@ -700,8 +699,8 @@ class GeoFamClose(GeoGraphyView):
mother = dbstate.db.get_person_from_handle(handle)
if mother:
comment = _("Mother : %(id)s : %(name)s") % {
- 'id': mother.gramps_id,
- 'name': _nd.display(mother)}
+ 'id': mother.gramps_id,
+ 'name': _nd.display(mother)}
self._createmap_for_one_person(mother, color,
place_list, reference)
index = 0
@@ -715,16 +714,14 @@ class GeoFamClose(GeoGraphyView):
": %(name)s") % {
'id' : child.gramps_id,
'index' : index,
- 'name' : _nd.display(child)
- }
+ 'name' : _nd.display(child)}
self._createmap_for_one_person(child, color,
place_list,
reference)
else:
comment = _("Person : %(id)s %(name)s has no family.") % {
- 'id' : person.gramps_id,
- 'name' : _nd.display(person)
- }
+ 'id' : person.gramps_id,
+ 'name' : _nd.display(person)}
self._createmap_for_one_person(person, color,
place_list, reference)
@@ -838,7 +835,7 @@ class GeoFamClose(GeoGraphyView):
add_item.show()
menu.append(add_item)
add_item = Gtk.MenuItem(
- label=_("Choose and bookmark the new reference family"))
+ label=_("Choose and bookmark the new reference family"))
add_item.connect("activate", self.select_family)
add_item.show()
menu.append(add_item)
@@ -860,18 +857,18 @@ class GeoFamClose(GeoGraphyView):
grid.set_border_width(12)
grid.set_column_spacing(6)
grid.set_row_spacing(6)
- configdialog.add_text(grid,
- _('The meeting zone probability radius.\n'
- 'The colored zone is approximative.\n'
- 'The meeting zone is only shown for the reference family.\n'
- 'The value 9 means about 42 miles or 67 kms.\n'
- 'The value 1 means about 4.6 miles or 7.5 kms.\n'
- 'The value is in tenth of degree.'),
- 1, line_wrap=False)
- self.config_meeting_slider = configdialog.add_slider(grid,
- "",
- 2, 'geography.maximum_meeting_zone',
- (1, 9))
+ configdialog.add_text(
+ grid,
+ _('The meeting zone probability radius.\n'
+ 'The colored zone is approximative.\n'
+ 'The meeting zone is only shown for the reference family.\n'
+ 'The value 9 means about 42 miles or 67 kms.\n'
+ 'The value 1 means about 4.6 miles or 7.5 kms.\n'
+ 'The value is in tenth of degree.'),
+ 1, line_wrap=False)
+ self.config_meeting_slider = configdialog.add_slider(
+ grid, "",
+ 2, 'geography.maximum_meeting_zone', (1, 9))
return _('The selection parameters'), grid
def config_connect(self):
@@ -879,11 +876,10 @@ class GeoFamClose(GeoGraphyView):
used to monitor changes in the ini file
"""
self._config.connect('geography.maximum_meeting_zone',
- self.cb_update_meeting_radius)
+ self.cb_update_meeting_radius)
def cb_update_meeting_radius(self, client, cnxn_id, entry, data):
"""
Called when the radius change
"""
self.goto_handle(handle=None)
-
diff --git a/gramps/plugins/view/geofamily.py b/gramps/plugins/view/geofamily.py
index e629f3fc0..b9f1e0e9c 100644
--- a/gramps/plugins/view/geofamily.py
+++ b/gramps/plugins/view/geofamily.py
@@ -23,31 +23,28 @@
"""
Geography for one family
"""
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Python modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
import operator
-from gi.repository import Gdk
-KEY_TAB = Gdk.KEY_Tab
-from gi.repository import Gtk
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# set up logging
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("GeoGraphy.geofamily")
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Gramps Modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+from gi.repository import Gdk
+from gi.repository import Gtk
from gramps.gen.const import GRAMPS_LOCALE as glocale
-_ = glocale.translation.gettext
from gramps.gen.lib import EventRoleType, EventType
from gramps.gen.config import config
from gramps.gen.datehandler import displayer
@@ -57,11 +54,14 @@ from gramps.gen.utils.place import conv_lat_lon
from gramps.gui.views.bookmarks import FamilyBookmarks
from gramps.plugins.lib.maps.geography import GeoGraphyView
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Constants
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+_LOG = logging.getLogger("GeoGraphy.geofamily")
+KEY_TAB = Gdk.KEY_Tab
+_ = glocale.translation.gettext
_UI_DEF = [
'''
@@ -150,11 +150,11 @@ _UI_DEF = [
# pylint: disable=unused-variable
# pylint: disable=unused-argument
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# GeoView
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
class GeoFamily(GeoGraphyView):
"""
The view used to render family map.
@@ -162,9 +162,9 @@ class GeoFamily(GeoGraphyView):
def __init__(self, pdata, dbstate, uistate, nav_group=0):
GeoGraphyView.__init__(self, _('Family places map'),
- pdata, dbstate, uistate,
- FamilyBookmarks,
- nav_group)
+ pdata, dbstate, uistate,
+ FamilyBookmarks,
+ nav_group)
self.dbstate = dbstate
self.uistate = uistate
self.place_list = []
@@ -218,7 +218,10 @@ class GeoFamily(GeoGraphyView):
"""
if self.osm is None:
return
- self.build_tree()
+ if self.uistate.get_active('Family'):
+ self._createmap(self.uistate.get_active('Family'))
+ else:
+ self._createmap(self.uistate.get_active('Person'))
def build_tree(self):
"""
@@ -226,12 +229,7 @@ class GeoFamily(GeoGraphyView):
all handling of visibility is now in rebuild_trees, see that for more
information.
"""
- if not self.dbstate.is_open():
- return
- if self.uistate.get_active('Family'):
- self._createmap(self.uistate.get_active('Family'))
- else:
- self._createmap(self.uistate.get_active('Person'))
+ pass
def _createpersonmarkers(self, dbstate, person, comment, fam_id):
"""
@@ -258,15 +256,16 @@ class GeoFamily(GeoGraphyView):
descr = _pd.display(dbstate.db, place)
evt = EventType(event.get_type())
descr1 = _("%(eventtype)s : %(name)s") % {
- 'eventtype': evt,
- 'name': _nd.display(person)}
+ 'eventtype': evt,
+ 'name': _nd.display(person)}
# place.get_longitude and place.get_latitude return
# one string. We have coordinates when the two values
# contains non null string.
if longitude and latitude:
- if not self._present_in_places_list(2,
- str(descr1 + descr + str(evt))):
- self._append_to_places_list(descr,
+ if not self._present_in_places_list(
+ 2, str(descr1 + descr + str(evt))):
+ self._append_to_places_list(
+ descr,
str(descr1 + descr + str(evt)),
_nd.display(person),
latitude, longitude,
@@ -275,11 +274,10 @@ class GeoFamily(GeoGraphyView):
person.gramps_id,
place.gramps_id,
event.gramps_id,
- fam_id
- )
+ fam_id)
else:
self._append_to_places_without_coord(
- place.gramps_id, descr)
+ place.gramps_id, descr)
family_list = person.get_family_handle_list()
for family_hdl in family_list:
family = self.dbstate.db.get_family_from_handle(family_hdl)
@@ -287,13 +285,13 @@ class GeoFamily(GeoGraphyView):
for event_ref in family.get_event_ref_list():
if event_ref:
event = dbstate.db.get_event_from_handle(
- event_ref.ref)
+ event_ref.ref)
role = event_ref.get_role()
if event.get_place_handle():
place_handle = event.get_place_handle()
if place_handle:
place = dbstate.db.get_place_from_handle(
- place_handle)
+ place_handle)
if place:
longitude = place.get_longitude()
latitude = place.get_latitude()
@@ -311,19 +309,20 @@ class GeoFamily(GeoGraphyView):
eyear = event.get_date_object().to_calendar(self.cal).get_year()
if longitude and latitude:
if not self._present_in_places_list(
- 2, str(descr1 + descr + str(evt))):
+ 2, str(descr1 +
+ descr + str(evt))):
self._append_to_places_list(
- descr,
- str(descr1 + descr + str(evt)),
- _nd.display(person),
- latitude, longitude,
- role, eyear,
- event.get_type(),
- person.gramps_id,
- place.gramps_id,
- event.gramps_id,
- family.gramps_id
- )
+ descr,
+ str(descr1 + descr + str(
+ evt)),
+ _nd.display(person),
+ latitude, longitude,
+ role, eyear,
+ event.get_type(),
+ person.gramps_id,
+ place.gramps_id,
+ event.gramps_id,
+ family.gramps_id)
else:
self._append_to_places_without_coord(place.gramps_id, descr)
@@ -342,24 +341,24 @@ class GeoFamily(GeoGraphyView):
mother = self.dbstate.db.get_person_from_handle(hdl)
if father and mother:
label = _("%(gramps_id)s : %(father)s and %(mother)s") % {
- 'father' : _nd.display(father),
- 'mother' : _nd.display(mother),
- 'gramps_id' : family.gramps_id,
+ 'father': _nd.display(father),
+ 'mother': _nd.display(mother),
+ 'gramps_id': family.gramps_id,
}
elif father:
label = "%(gramps_id)s : %(father)s" % {
- 'father' : _nd.display(father),
- 'gramps_id' : family.gramps_id,
+ 'father': _nd.display(father),
+ 'gramps_id': family.gramps_id,
}
elif mother:
label = "%(gramps_id)s : %(mother)s" % {
- 'mother' : _nd.display(mother),
- 'gramps_id' : family.gramps_id,
+ 'mother': _nd.display(mother),
+ 'gramps_id': family.gramps_id,
}
else:
# No translation for bare gramps_id
label = "%(gramps_id)s :" % {
- 'gramps_id' : family.gramps_id,
+ 'gramps_id': family.gramps_id,
}
return label
@@ -369,7 +368,7 @@ class GeoFamily(GeoGraphyView):
"""
dbstate = self.dbstate
self.message_layer.add_message(
- _("Family places for %s") % self.family_label(family))
+ _("Family places for %s") % self.family_label(family))
person = None
if family:
handle = family.get_father_handle()
@@ -378,7 +377,7 @@ class GeoFamily(GeoGraphyView):
else:
return
family_id = family.gramps_id
- if person is None: # family without father ?
+ if person is None: # family without father ?
handle = family.get_mother_handle()
if handle:
person = dbstate.db.get_person_from_handle(handle)
@@ -389,7 +388,7 @@ class GeoFamily(GeoGraphyView):
if person is not None:
family_list = person.get_family_handle_list()
if len(family_list) > 0:
- fhandle = family_list[0] # first is primary
+ fhandle = family_list[0] # first is primary
fam = dbstate.db.get_family_from_handle(fhandle)
father = mother = None
handle = fam.get_father_handle()
@@ -397,8 +396,8 @@ class GeoFamily(GeoGraphyView):
father = dbstate.db.get_person_from_handle(handle)
if father:
comment = _("Father : %(id)s : %(name)s") % {
- 'id': father.gramps_id,
- 'name': _nd.display(father)}
+ 'id': father.gramps_id,
+ 'name': _nd.display(father)}
self._createpersonmarkers(dbstate, father,
comment, family_id)
handle = fam.get_mother_handle()
@@ -406,30 +405,29 @@ class GeoFamily(GeoGraphyView):
mother = dbstate.db.get_person_from_handle(handle)
if mother:
comment = _("Mother : %(id)s : %(name)s") % {
- 'id': mother.gramps_id,
- 'name': _nd.display(mother)}
+ 'id': mother.gramps_id,
+ 'name': _nd.display(mother)}
self._createpersonmarkers(dbstate, mother,
comment, family_id)
index = 0
child_ref_list = fam.get_child_ref_list()
if child_ref_list:
for child_ref in child_ref_list:
- child = dbstate.db.get_person_from_handle(child_ref.ref)
+ child = dbstate.db.get_person_from_handle(
+ child_ref.ref)
if child:
index += 1
comment = _("Child : %(id)s - %(index)d "
": %(name)s") % {
- 'id' : child.gramps_id,
- 'index' : index,
- 'name' : _nd.display(child)
- }
+ 'id': child.gramps_id,
+ 'index': index,
+ 'name': _nd.display(child)}
self._createpersonmarkers(dbstate, child,
comment, family_id)
else:
comment = _("Person : %(id)s %(name)s has no family.") % {
- 'id' : person.gramps_id,
- 'name' : _nd.display(person)
- }
+ 'id': person.gramps_id,
+ 'name': _nd.display(person)}
self._createpersonmarkers(dbstate, person, comment, family_id)
def _createmap(self, handle):
diff --git a/gramps/plugins/view/geomoves.py b/gramps/plugins/view/geomoves.py
index 0160b3523..cd25c9fa0 100644
--- a/gramps/plugins/view/geomoves.py
+++ b/gramps/plugins/view/geomoves.py
@@ -23,31 +23,30 @@
"""
Geography for one person and all his descendant
"""
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Python modules
#
-#-------------------------------------------------------------------------
-from gramps.gen.const import GRAMPS_LOCALE as glocale
-_ = glocale.translation.gettext
+# -------------------------------------------------------------------------
import operator
+
+# -------------------------------------------------------------------------
+#
+# set up logging
+#
+# -------------------------------------------------------------------------
+import logging
+
from gi.repository import Gtk
from gi.repository import Gdk
from gi.repository import GLib
-#-------------------------------------------------------------------------
-#
-# set up logging
-#
-#-------------------------------------------------------------------------
-import logging
-_LOG = logging.getLogger("GeoGraphy.geomoves")
-
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Gramps Modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+from gramps.gen.const import GRAMPS_LOCALE as glocale
from gramps.gen.lib import EventRoleType, EventType
from gramps.gen.config import config
from gramps.gen.datehandler import displayer
@@ -58,11 +57,14 @@ from gramps.gui.views.bookmarks import PersonBookmarks
from gramps.plugins.lib.maps import constants
from gramps.plugins.lib.maps.geography import GeoGraphyView
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Constants
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+
+_LOG = logging.getLogger("GeoGraphy.geomoves")
+_ = glocale.translation.gettext
_UI_DEF = [
'''
@@ -171,11 +173,11 @@ _UI_DEF = [
# pylint: disable=unused-argument
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# GeoView : GeoMoves
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
class GeoMoves(GeoGraphyView):
"""
The view used to render all places visited by one person and all
@@ -206,17 +208,16 @@ class GeoMoves(GeoGraphyView):
def __init__(self, pdata, dbstate, uistate, nav_group=0):
GeoGraphyView.__init__(self, _("Descendance of the active person."),
- pdata, dbstate, uistate,
- PersonBookmarks,
- nav_group)
+ pdata, dbstate, uistate, PersonBookmarks,
+ nav_group)
self.dbstate = dbstate
self.uistate = uistate
self.place_list = []
self.place_without_coordinates = []
self.minlat = self.maxlat = self.minlon = self.maxlon = 0.0
- self.started = False
self.minyear = 9999
self.maxyear = 0
+ self.started = False
self.nbplaces = 0
self.nbmarkers = 0
self.sort = []
@@ -249,7 +250,7 @@ class GeoMoves(GeoGraphyView):
def get_viewtype_stock(self):
"""Type of view in category
"""
- return 'geo-show-family'
+ return 'geo-show-family-down'
def additional_ui(self):
"""
@@ -280,6 +281,10 @@ class GeoMoves(GeoGraphyView):
self.remove_all_markers()
self.lifeway_layer.clear_ways()
self.date_layer.clear_dates()
+ self.message_layer.clear_messages()
+ self.message_layer.set_font_attributes(None, None, None)
+ self.places_found = []
+ self.place_without_coordinates = []
active = self.get_active()
if active:
person = self.dbstate.db.get_person_from_handle(active)
@@ -334,6 +339,8 @@ class GeoMoves(GeoGraphyView):
Create all markers for each people's event in the database which has
a lat/lon.
"""
+ if self.stop: # no more database. stop to work
+ return
self.place_list = []
dbstate = self.dbstate
if person is not None:
@@ -361,8 +368,8 @@ class GeoMoves(GeoGraphyView):
descr = _pd.display(dbstate.db, place)
evt = EventType(event.get_type())
descr1 = _("%(eventtype)s : %(name)s") % {
- 'eventtype': evt,
- 'name': _nd.display(person)}
+ 'eventtype': evt,
+ 'name': _nd.display(person)}
# place.get_longitude and place.get_latitude return
# one string. We have coordinates when the two values
# contains non null string.
@@ -375,11 +382,10 @@ class GeoMoves(GeoGraphyView):
person.gramps_id,
place.gramps_id,
event.gramps_id,
- role
- )
+ role)
else:
self._append_to_places_without_coord(
- place.gramps_id, descr)
+ place.gramps_id, descr)
family_list = person.get_family_handle_list()
descr1 = " - "
for family_hdl in family_list:
@@ -401,38 +407,36 @@ class GeoMoves(GeoGraphyView):
for event_ref in family.get_event_ref_list():
if event_ref:
event = dbstate.db.get_event_from_handle(
- event_ref.ref)
+ event_ref.ref)
role = event_ref.get_role()
if event.get_place_handle():
place_handle = event.get_place_handle()
if place_handle:
place = dbstate.db.get_place_from_handle(
- place_handle)
+ place_handle)
if place:
longitude = place.get_longitude()
latitude = place.get_latitude()
latitude, longitude = conv_lat_lon(
- latitude, longitude, "D.D8")
+ latitude, longitude, "D.D8")
descr = _pd.display(dbstate.db, place)
- evt = EventType(
- event.get_type())
+ evt = EventType(event.get_type())
eyear = str(
- "%04d" % event.get_date_object().to_calendar(self.cal).get_year()) + \
+ "%04d" % event.get_date_object().to_calendar(self.cal).get_year()) + \
str("%02d" % event.get_date_object().to_calendar(self.cal).get_month()) + \
str("%02d" % event.get_date_object().to_calendar(self.cal).get_day())
if longitude and latitude:
self._append_to_places_list(
- descr,
- evt,
- person.gramps_id,
- latitude, longitude,
- descr1, eyear,
- event.get_type(),
- person.gramps_id,
- place.gramps_id,
- event.gramps_id,
- role
- )
+ descr,
+ evt,
+ person.gramps_id,
+ latitude, longitude,
+ descr1, eyear,
+ event.get_type(),
+ person.gramps_id,
+ place.gramps_id,
+ event.gramps_id,
+ role)
else:
self._append_to_places_without_coord(place.gramps_id, descr)
@@ -460,11 +464,13 @@ class GeoMoves(GeoGraphyView):
"""
Create all markers for one family : all event's places with a lat/lon.
"""
+ if self.stop: # no more database. stop to work
+ return
dbstate = self.dbstate
person = None
try:
person = dbstate.db.get_person_from_handle(
- family.get_father_handle())
+ family.get_father_handle())
except:
return
family_id = family.gramps_id
@@ -509,6 +515,8 @@ class GeoMoves(GeoGraphyView):
"""
if maximum generation is not reached, show next level.
"""
+ if self.stop: # no more database. stop to work
+ return
if level < curlevel:
return
self._prepare_for_one_family(family, level, curlevel+1)
@@ -525,7 +533,11 @@ class GeoMoves(GeoGraphyView):
except:
self.markers_by_level[curlevel] = []
self.markers_by_level[curlevel].append(person)
+ if self.stop: # no more database. stop to work
+ return
for family in person.get_family_handle_list():
+ if self.stop: # no more database. stop to work
+ return
fam = self.dbstate.db.get_family_from_handle(family)
self._createmap_for_one_level(fam, level, curlevel)
if person not in self.markers_by_level[curlevel]:
@@ -558,7 +570,7 @@ class GeoMoves(GeoGraphyView):
if not person:
return
self.message_layer.add_message(
- _("All descendance for %s") % _nd.display(person))
+ _("All descendance for %s") % _nd.display(person))
color = Gdk.color_parse(self._config.get('geography.color_base'))
GLib.timeout_add(int(self._config.get("geography.generation_interval")),
self.animate_moves, 0, person, color)
@@ -567,6 +579,8 @@ class GeoMoves(GeoGraphyView):
"""
Animate all moves for one generation.
"""
+ if self.stop: # no more database. stop to work
+ return
self.markers_by_level = dict()
self._createmap_for_next_level(person, index, 0)
try:
@@ -619,19 +633,19 @@ class GeoMoves(GeoGraphyView):
if level == index:
pidx += 1
self._createmap_for_one_person(plxp, color)
- color.red = (float(color.red - (index)*3000)%65535)
+ color.red = (float(color.red - (index)*3000) % 65535)
if index % 2:
- color.green = float((color.green + (index)*3000)%65535)
+ color.green = float((color.green + (index)*3000) % 65535)
else:
- color.blue = float((color.blue + (index)*3000)%65535)
+ color.blue = float((color.blue + (index)*3000) % 65535)
self._createmap_for_one_person(person, color)
if index < int(self._config.get("geography.maximum_generations")):
time_to_wait = int(
- self._config.get("geography.generation_interval"))
+ self._config.get("geography.generation_interval"))
self._create_markers()
# process next generation in a few milliseconds
GLib.timeout_add(int(time_to_wait), self.animate_moves,
- index+1, person, color)
+ index+1, person, color)
else:
self.started = False
return False
@@ -649,7 +663,7 @@ class GeoMoves(GeoGraphyView):
# Be sure all markers are sorted by place then dates.
for mark in sorted(marks, key=operator.itemgetter(0, 6)):
if mark[10] in events:
- continue # avoid duplicate events
+ continue # avoid duplicate events
else:
events.append(mark[10])
if mark[0] != oldplace:
@@ -730,19 +744,20 @@ class GeoMoves(GeoGraphyView):
grid.set_column_spacing(6)
grid.set_row_spacing(6)
configdialog.add_text(grid,
- _('The maximum number of generations.\n'),
- 1, line_wrap=False)
+ _('The maximum number of generations.\n'),
+ 1, line_wrap=False)
configdialog.add_slider(grid,
- "",
- 2, 'geography.maximum_generations',
- (1, 20))
+ "",
+ 2, 'geography.maximum_generations',
+ (1, 20))
configdialog.add_text(grid,
- _('Time in milliseconds between drawing two generations.\n'),
- 3, line_wrap=False)
+ _('Time in milliseconds between drawing two'
+ ' generations.\n'),
+ 3, line_wrap=False)
configdialog.add_slider(grid,
- "",
- 4, 'geography.generation_interval',
- (500, 3000))
+ "",
+ 4, 'geography.generation_interval',
+ (500, 3000))
return _('The parameters for moves'), grid
def config_connect(self):
@@ -750,11 +765,10 @@ class GeoMoves(GeoGraphyView):
used to monitor changes in the ini file
"""
self._config.connect('geography.maximum_generations',
- self._maximum_generations)
+ self._maximum_generations)
def _maximum_generations(self, client, cnxn_id, entry, data):
"""
Called when the number of nomber of generations change
"""
self.goto_handle(handle=None)
-
diff --git a/gramps/plugins/view/geoperson.py b/gramps/plugins/view/geoperson.py
index ed4e2dc8d..ec42546bd 100644
--- a/gramps/plugins/view/geoperson.py
+++ b/gramps/plugins/view/geoperson.py
@@ -23,32 +23,29 @@
"""
Geography for one person
"""
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Python modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
import operator
-from gi.repository import Gdk
-KEY_TAB = Gdk.KEY_Tab
-from gi.repository import Gtk
-from gi.repository import GLib
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# set up logging
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("GeoGraphy.geoperson")
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Gramps Modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+from gi.repository import Gdk
+from gi.repository import Gtk
+from gi.repository import GLib
from gramps.gen.const import GRAMPS_LOCALE as glocale
-_ = glocale.translation.gettext
from gramps.gen.lib import EventRoleType, EventType
from gramps.gen.config import config
from gramps.gen.datehandler import displayer
@@ -59,11 +56,14 @@ from gramps.gui.views.bookmarks import PersonBookmarks
from gramps.plugins.lib.maps import constants
from gramps.plugins.lib.maps.geography import GeoGraphyView
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Constants
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+_LOG = logging.getLogger("GeoGraphy.geoperson")
+KEY_TAB = Gdk.KEY_Tab
+_ = glocale.translation.gettext
_UI_DEF = [
'''
@@ -172,11 +172,11 @@ _UI_DEF = [
# pylint: disable=unused-variable
# pylint: disable=unused-argument
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# GeoView
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
class GeoPerson(GeoGraphyView):
"""
The view used to render person map.
@@ -210,9 +210,9 @@ class GeoPerson(GeoGraphyView):
def __init__(self, pdata, dbstate, uistate, nav_group=0):
GeoGraphyView.__init__(self, _("Person places map"),
- pdata, dbstate, uistate,
- PersonBookmarks,
- nav_group)
+ pdata, dbstate, uistate,
+ PersonBookmarks,
+ nav_group)
self.dbstate = dbstate
self.uistate = uistate
self.place_list = []
@@ -278,17 +278,15 @@ class GeoPerson(GeoGraphyView):
all handling of visibility is now in rebuild_trees, see that for more
information.
"""
- if not self.dbstate.is_open():
- return
- active = self.get_active()
- self._createmap(None)
- self.uistate.modify_statusbar(self.dbstate)
+ pass
def animate(self, menu, marks, index, stepyear):
"""
Create all movements for the people's event.
Yes, you can see the person moving.
"""
+ if self.stop: # no more database. stop to work
+ return
if len(marks) == 0:
self.already_started = False
return False
@@ -309,7 +307,7 @@ class GeoPerson(GeoGraphyView):
max_lon_lat = float(self._config.get("geography.maximum_lon_lat")) / 10
if stepyear < 9000:
if ((abs(float(endlat) - float(startlat)) > max_lon_lat) or
- (abs(float(endlon) - float(startlon)) > max_lon_lat)):
+ (abs(float(endlon) - float(startlon)) > max_lon_lat)):
self.large_move = True
stepyear = 9000
else:
@@ -348,8 +346,8 @@ class GeoPerson(GeoGraphyView):
# in this case, stepyear is >= 9000
# large move means longitude or latitude differences greater than
# geography.maximum_lon_lat degrees.
- GLib.timeout_add(int(self._config.get("geography.speed")), self.animate,
- menu, marks, i, stepyear)
+ GLib.timeout_add(int(self._config.get("geography.speed")),
+ self.animate, menu, marks, i, stepyear)
return False
def _createmap(self, active):
@@ -383,7 +381,7 @@ class GeoPerson(GeoGraphyView):
# For each event, if we have a place, set a marker.
self.load_kml_files(person)
self.message_layer.add_message(
- _("Person places for %s") % _nd.display(person))
+ _("Person places for %s") % _nd.display(person))
for event_ref in person.get_event_ref_list():
if not event_ref:
continue
@@ -391,7 +389,7 @@ class GeoPerson(GeoGraphyView):
self.load_kml_files(event)
role = event_ref.get_role()
eyear = str(
- "%04d" % event.get_date_object().to_calendar(self.cal).get_year()) + \
+ "%04d" % event.get_date_object().to_calendar(self.cal).get_year()) + \
str("%02d" % event.get_date_object().to_calendar(self.cal).get_month()) + \
str("%02d" % event.get_date_object().to_calendar(self.cal).get_day())
place_handle = event.get_place_handle()
@@ -405,8 +403,8 @@ class GeoPerson(GeoGraphyView):
descr = _pd.display(dbstate.db, place)
evt = EventType(event.get_type())
descr1 = _("%(eventtype)s : %(name)s") % {
- 'eventtype': evt,
- 'name': _nd.display(person)}
+ 'eventtype': evt,
+ 'name': _nd.display(person)}
self.load_kml_files(place)
# place.get_longitude and place.get_latitude return
# one string. We have coordinates when the two values
@@ -420,16 +418,15 @@ class GeoPerson(GeoGraphyView):
person.gramps_id,
place.gramps_id,
event.gramps_id,
- role
- )
+ role)
else:
self._append_to_places_without_coord(
- place.gramps_id, descr)
+ place.gramps_id, descr)
family_list = person.get_family_handle_list()
for family_hdl in family_list:
family = self.dbstate.db.get_family_from_handle(family_hdl)
if family is not None:
- fhandle = family_list[0] # first is primary
+ fhandle = family_list[0] # first is primary
fam = dbstate.db.get_family_from_handle(fhandle)
father = mother = None
handle = fam.get_father_handle()
@@ -446,14 +443,14 @@ class GeoPerson(GeoGraphyView):
for event_ref in family.get_event_ref_list():
if event_ref:
event = dbstate.db.get_event_from_handle(
- event_ref.ref)
+ event_ref.ref)
self.load_kml_files(event)
role = event_ref.get_role()
if event.get_place_handle():
place_handle = event.get_place_handle()
if place_handle:
place = dbstate.db.get_place_from_handle(
- place_handle)
+ place_handle)
if place:
longitude = place.get_longitude()
latitude = place.get_latitude()
@@ -464,21 +461,21 @@ class GeoPerson(GeoGraphyView):
descr = _pd.display(dbstate.db, place)
evt = EventType(event.get_type())
eyear = str(
- "%04d" % event.get_date_object().to_calendar(self.cal).get_year()) + \
+ "%04d" % event.get_date_object().to_calendar(self.cal).get_year()) + \
str("%02d" % event.get_date_object().to_calendar(self.cal).get_month()) + \
str("%02d" % event.get_date_object().to_calendar(self.cal).get_day())
self.load_kml_files(place)
if longitude and latitude:
- self._append_to_places_list(descr,
- evt, _nd.display(person),
- latitude, longitude,
- descr1, eyear,
- event.get_type(),
- person.gramps_id,
- place.gramps_id,
- event.gramps_id,
- role
- )
+ self._append_to_places_list(
+ descr,
+ evt, _nd.display(person),
+ latitude, longitude,
+ descr1, eyear,
+ event.get_type(),
+ person.gramps_id,
+ place.gramps_id,
+ event.gramps_id,
+ role)
else:
self._append_to_places_without_coord(place.gramps_id, descr)
@@ -605,27 +602,21 @@ class GeoPerson(GeoGraphyView):
grid.set_border_width(12)
grid.set_column_spacing(6)
grid.set_row_spacing(6)
- configdialog.add_text(grid,
- _('Animation speed in milliseconds (big value means slower)'),
- 1, line_wrap=False)
- configdialog.add_slider(grid,
- "",
- 2, 'geography.speed',
- (100, 1000))
+ configdialog.add_text(
+ grid,
+ _('Animation speed in milliseconds (big value means slower)'),
+ 1, line_wrap=False)
+ configdialog.add_slider(grid, "", 2, 'geography.speed', (100, 1000))
configdialog.add_text(
grid,
_('How many steps between two markers when we are on large move ?'),
3, line_wrap=False)
- configdialog.add_slider(grid,
- "",
- 4, 'geography.steps',
- (10, 100))
- configdialog.add_text(grid,
- _('The minimum latitude/longitude to select large move.\n'
- 'The value is in tenth of degree.'),
- 5, line_wrap=False)
- configdialog.add_slider(grid,
- "",
- 6, 'geography.maximum_lon_lat',
- (5, 50))
+ configdialog.add_slider(grid, "", 4, 'geography.steps', (10, 100))
+ configdialog.add_text(
+ grid,
+ _('The minimum latitude/longitude to select large move.\n'
+ 'The value is in tenth of degree.'),
+ 5, line_wrap=False)
+ configdialog.add_slider(grid, "", 6, 'geography.maximum_lon_lat',
+ (5, 50))
return _('The animation parameters'), grid
diff --git a/gramps/plugins/view/geoplaces.py b/gramps/plugins/view/geoplaces.py
index 64b08567a..48d74da52 100644
--- a/gramps/plugins/view/geoplaces.py
+++ b/gramps/plugins/view/geoplaces.py
@@ -23,33 +23,30 @@
"""
Geography for places
"""
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Python modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
import time
import operator
-from gi.repository import Gdk
-KEY_TAB = Gdk.KEY_Tab
-from gi.repository import Gtk
from collections import defaultdict
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# set up logging
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
import logging
-_LOG = logging.getLogger("GeoGraphy.geoplaces")
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Gramps Modules
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+from gi.repository import Gdk
+from gi.repository import Gtk
from gramps.gen.const import GRAMPS_LOCALE as glocale
-_ = glocale.translation.gettext
from gramps.gen.lib import EventType
from gramps.gen.lib import PlaceType
from gramps.gen.config import config
@@ -60,11 +57,14 @@ from gramps.plugins.lib.maps.geography import GeoGraphyView
from gramps.plugins.lib.maps import constants
from gramps.gui.utils import ProgressMeter
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
#
# Constants
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
+KEY_TAB = Gdk.KEY_Tab
+_ = glocale.translation.gettext
+_LOG = logging.getLogger("GeoGraphy.geoplaces")
_UI_DEF = [
'''
@@ -154,11 +154,12 @@ _UI_DEF = [
# pylint: disable=unused-variable
# pylint: disable=unused-argument
-#-------------------------------------------------------------------------
+
+# -------------------------------------------------------------------------
#
# GeoView
#
-#-------------------------------------------------------------------------
+# -------------------------------------------------------------------------
class GeoPlaces(GeoGraphyView):
"""
The view used to render places map.
@@ -207,9 +208,9 @@ class GeoPlaces(GeoGraphyView):
def __init__(self, pdata, dbstate, uistate, nav_group=0):
self.window_name = _('Places map')
GeoGraphyView.__init__(self, self.window_name,
- pdata, dbstate, uistate,
- PlaceBookmarks,
- nav_group)
+ pdata, dbstate, uistate,
+ PlaceBookmarks,
+ nav_group)
self.dbstate = dbstate
self.uistate = uistate
self.place_list = []
@@ -270,7 +271,11 @@ class GeoPlaces(GeoGraphyView):
if self.osm is None:
return
self.places_found = []
- self.build_tree()
+ active = self.uistate.get_active('Place')
+ if active:
+ self._createmap(active)
+ else:
+ self._createmap(None)
def show_all_places(self, menu, event, lat, lon):
"""
@@ -286,13 +291,7 @@ class GeoPlaces(GeoGraphyView):
all handling of visibility is now in rebuild_trees, see that for more
information.
"""
- if not self.dbstate.is_open():
- return
- active = self.uistate.get_active('Place')
- if active:
- self._createmap(active)
- else:
- self._createmap(None)
+ pass
def _create_one_place(self, place):
"""
@@ -316,18 +315,17 @@ class GeoPlaces(GeoGraphyView):
try:
colour = (str(place.get_type()),
self.plc_custom_color[str(place.get_type())])
- except:
+ except Exception:
colour = self.plc_color[PlaceType.CUSTOM + 1]
self._append_to_places_list(descr, None, "",
latitude, longitude,
None, None,
EventType.UNKNOWN,
- None, # person.gramps_id
+ None, # person.gramps_id
place.gramps_id,
- None, # event.gramps_id
- None, # family.gramps_id
- color=colour
- )
+ None, # event.gramps_id
+ None, # family.gramps_id
+ color=colour)
def _createmap(self, place_x):
"""
@@ -386,7 +384,7 @@ class GeoPlaces(GeoGraphyView):
# base "villes de france" : 38101 places :
# createmap : 8'50"; create_markers : 0'07" with pixbuf optimization
# base "villes de france" : 38101 places :
- # gramps 3.4 python 2.7 (draw_markers are estimated when moving the map)
+ # gramps 3.4 python 2.7 (draw_markers is estimated when moving the map)
# 38101 places: createmap: 04'32";
# create_markers: 0'04"; draw markers: N/A :: 0'03"
# 65598 places: createmap: 10'03";
@@ -397,13 +395,13 @@ class GeoPlaces(GeoGraphyView):
# 65598 places: createmap: 08'48";
# create_markers: 0'01"; draw markers: 0'07"
_LOG.debug("%s", time.strftime("start createmap : "
- "%a %d %b %Y %H:%M:%S", time.gmtime()))
+ "%a %d %b %Y %H:%M:%S", time.gmtime()))
self.custom_places()
if self.show_all:
self.show_all = False
try:
places_handle = dbstate.db.get_place_handles()
- except:
+ except Exception:
return
progress = ProgressMeter(self.window_name,
can_cancel=False,
@@ -416,7 +414,7 @@ class GeoPlaces(GeoGraphyView):
progress.step()
progress.close()
elif self.generic_filter:
- user=self.uistate.viewmanager.user
+ user = self.uistate.viewmanager.user
place_list = self.generic_filter.apply(dbstate.db, user=user)
progress = ProgressMeter(self.window_name,
can_cancel=False,
@@ -430,55 +428,53 @@ class GeoPlaces(GeoGraphyView):
progress.close()
# reset completely the filter. It will be recreated next time.
self.generic_filter = None
- elif place_x != None:
+ elif place_x is not None:
place = dbstate.db.get_place_from_handle(place_x)
self._create_one_place(place)
self.message_layer.add_message(
- _("Right click on the map and select 'show all places'"
- " to show all known places with coordinates. "
- "You can change the markers color depending on place type. "
- "You can use filtering."))
+ _("Right click on the map and select 'show all places'"
+ " to show all known places with coordinates. "
+ "You can change the markers color depending on place type. "
+ "You can use filtering."))
if place.get_latitude() != "" and place.get_longitude() != "":
latitude, longitude = conv_lat_lon(place.get_latitude(),
place.get_longitude(),
"D.D8")
if latitude and longitude:
+ zwc = int(config.get("geography.zoom_when_center"))
self.osm.set_center_and_zoom(float(latitude),
float(longitude),
- int(config.get(
- "geography.zoom_when_center")))
+ zwc)
else:
self.message_layer.add_message(
- _("Right click on the map and select 'show all places'"
- " to show all known places with coordinates. "
- "You can use the history to navigate on the map. "
- "You can change the markers color depending on place type. "
- "You can use filtering."))
+ _("Right click on the map and select 'show all places'"
+ " to show all known places with coordinates. "
+ "You can use the history to navigate on the map. "
+ "You can change the markers color depending on place type. "
+ "You can use filtering."))
_LOG.debug(" stop createmap.")
_LOG.debug("%s", time.strftime("begin sort : "
- "%a %d %b %Y %H:%M:%S", time.gmtime()))
- self.sort = sorted(self.place_list,
- key=operator.itemgetter(0)
- )
+ "%a %d %b %Y %H:%M:%S", time.gmtime()))
+ self.sort = sorted(self.place_list, key=operator.itemgetter(0))
_LOG.debug("%s", time.strftime(" end sort : "
- "%a %d %b %Y %H:%M:%S", time.gmtime()))
- if self.nbmarkers > 500: # performance issue. Is it the good value ?
+ "%a %d %b %Y %H:%M:%S", time.gmtime()))
+ if self.nbmarkers > 500: # performance issue. Is it the good value ?
self.message_layer.add_message(
- _("The place name in the status bar is disabled."))
+ _("The place name in the status bar is disabled."))
self.no_show_places_in_status_bar = True
if self.nbplaces >= self._config.get("geography.max_places"):
self.message_layer.set_font_attributes(None, None, "red")
self.message_layer.add_message(
- _("The maximum number of places is reached (%d).") %
- self._config.get("geography.max_places"))
+ _("The maximum number of places is reached (%d).") %
+ self._config.get("geography.max_places"))
self.message_layer.add_message(
- _("Some information are missing."))
+ _("Some information are missing."))
self.message_layer.add_message(
- _("Please, use filtering to reduce this number."))
+ _("Please, use filtering to reduce this number."))
self.message_layer.add_message(
- _("You can modify this value in the geography option."))
+ _("You can modify this value in the geography option."))
self.message_layer.add_message(
- _("In this case, it may take time to show all markers."))
+ _("In this case, it may take time to show all markers."))
self._create_markers()
@@ -589,82 +585,59 @@ class GeoPlaces(GeoGraphyView):
grid.set_border_width(12)
grid.set_column_spacing(6)
grid.set_row_spacing(6)
- configdialog.add_color(grid,
- _("Unknown"),
- 1, 'geography.color.unknown', col=1)
- configdialog.add_color(grid,
- _("Custom"),
- 2, 'geography.color.custom', col=1)
- configdialog.add_color(grid,
- _("Locality"),
- 3, 'geography.color.locality', col=1)
- configdialog.add_color(grid,
- _("Street"),
- 4, 'geography.color.street', col=1)
- configdialog.add_color(grid,
- _("Neighborhood"),
- 5, 'geography.color.neighborhood', col=1)
- configdialog.add_color(grid,
- _("Borough"),
- 6, 'geography.color.borough', col=1)
- configdialog.add_color(grid,
- _("Village"),
- 7, 'geography.color.village', col=1)
- configdialog.add_color(grid,
- _("Hamlet"),
- 8, 'geography.color.hamlet', col=1)
- configdialog.add_color(grid,
- _("Farm"),
- 9, 'geography.color.farm', col=1)
- configdialog.add_color(grid,
- _("Building"),
- 10, 'geography.color.building', col=1)
- configdialog.add_color(grid,
- _("Number"),
- 11, 'geography.color.number', col=1)
- configdialog.add_color(grid,
- _("Country"),
- 1, 'geography.color.country', col=4)
- configdialog.add_color(grid,
- _("State"),
- 2, 'geography.color.state', col=4)
- configdialog.add_color(grid,
- _("County"),
- 3, 'geography.color.county', col=4)
- configdialog.add_color(grid,
- _("Province"),
- 4, 'geography.color.province', col=4)
- configdialog.add_color(grid,
- _("Region"),
- 5, 'geography.color.region', col=4)
- configdialog.add_color(grid,
- _("Department"),
- 6, 'geography.color.department', col=4)
- configdialog.add_color(grid,
- _("District"),
- 7, 'geography.color.district', col=4)
- configdialog.add_color(grid,
- _("Parish"),
- 8, 'geography.color.parish', col=4)
- configdialog.add_color(grid,
- _("City"),
- 9, 'geography.color.city', col=4)
- configdialog.add_color(grid,
- _("Town"),
- 10, 'geography.color.town', col=4)
- configdialog.add_color(grid,
- _("Municipality"),
- 11, 'geography.color.municipality', col=4)
+ configdialog.add_color(grid, _("Unknown"),
+ 1, 'geography.color.unknown', col=1)
+ configdialog.add_color(grid, _("Custom"),
+ 2, 'geography.color.custom', col=1)
+ configdialog.add_color(grid, _("Locality"),
+ 3, 'geography.color.locality', col=1)
+ configdialog.add_color(grid, _("Street"),
+ 4, 'geography.color.street', col=1)
+ configdialog.add_color(grid, _("Neighborhood"),
+ 5, 'geography.color.neighborhood', col=1)
+ configdialog.add_color(grid, _("Borough"),
+ 6, 'geography.color.borough', col=1)
+ configdialog.add_color(grid, _("Village"),
+ 7, 'geography.color.village', col=1)
+ configdialog.add_color(grid, _("Hamlet"),
+ 8, 'geography.color.hamlet', col=1)
+ configdialog.add_color(grid, _("Farm"),
+ 9, 'geography.color.farm', col=1)
+ configdialog.add_color(grid, _("Building"),
+ 10, 'geography.color.building', col=1)
+ configdialog.add_color(grid, _("Number"),
+ 11, 'geography.color.number', col=1)
+ configdialog.add_color(grid, _("Country"),
+ 1, 'geography.color.country', col=4)
+ configdialog.add_color(grid, _("State"),
+ 2, 'geography.color.state', col=4)
+ configdialog.add_color(grid, _("County"),
+ 3, 'geography.color.county', col=4)
+ configdialog.add_color(grid, _("Province"),
+ 4, 'geography.color.province', col=4)
+ configdialog.add_color(grid, _("Region"),
+ 5, 'geography.color.region', col=4)
+ configdialog.add_color(grid, _("Department"),
+ 6, 'geography.color.department', col=4)
+ configdialog.add_color(grid, _("District"),
+ 7, 'geography.color.district', col=4)
+ configdialog.add_color(grid, _("Parish"),
+ 8, 'geography.color.parish', col=4)
+ configdialog.add_color(grid, _("City"),
+ 9, 'geography.color.city', col=4)
+ configdialog.add_color(grid, _("Town"),
+ 10, 'geography.color.town', col=4)
+ configdialog.add_color(grid, _("Municipality"),
+ 11, 'geography.color.municipality', col=4)
self.custom_places()
if len(self.plc_custom_color) > 0:
configdialog.add_text(grid, _("Custom places name"), 12)
start = 13
for color in self.plc_custom_color.keys():
cust_col = 'geography.color.' + color.lower()
- row = start if start % 2 else start -1
- column = 1 if start %2 else 4
- configdialog.add_color(grid, color,
- row, cust_col, col=column)
+ row = start if start % 2 else start - 1
+ column = 1 if start % 2 else 4
+ configdialog.add_color(grid, color, row, cust_col, col=column)
start += 1
return _('The places marker color'), grid
@@ -679,7 +652,7 @@ class GeoPlaces(GeoGraphyView):
cust_col = 'geography.color.' + str(place.get_type()).lower()
try:
color = self._config.get(cust_col)
- except:
+ except Exception:
color = '#008b00'
self._config.register(cust_col, color)
if str(place.get_type()) not in self.plc_custom_color.keys():