Example #1
0
    def change_new_map(self, name, map_source):
        """
        Change the current map with a new provider
        This map is not supported by osm-gps-map

        name       : the name of the provider
        map_source : the url to search for tiles
        """
        try:
            self.osm.layer_remove_all()
            self.osm.image_remove_all()
            self.vbox.remove(self.osm)
            self.osm.destroy()
        except:
            pass
        tiles_path = os.path.join(config.get('geography.path'), name)
        if not os.path.isdir(tiles_path):
            try:
                os.makedirs(tiles_path, 0o755) # create dir like mkdir -p
            except:
                ErrorDialog(_("Can't create "
                              "tiles cache directory for '%s'.") %
                              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)
            else:
                self.osm = osmgpsmap.Map(tile_cache=tiles_path,
                                         repo_uri=map_source)
        self.osm.props.tile_cache = osmgpsmap.MAP_CACHE_AUTO
        current_map = osmgpsmap.MapOsd(show_dpad=False, show_zoom=True)
        self.end_selection = None
        self.osm.layer_add(current_map)
        self.osm.layer_add(DummyLayer())
        self.selection_layer = self.add_selection_layer()
        self.kml_layer = self.add_kml_layer()
        self.lifeway_layer = self.add_lifeway_layer()
        self.marker_layer = self.add_marker_layer()
        self.date_layer = self.add_date_layer()
        self.message_layer = self.add_message_layer()
        self.cross_map = osmgpsmap.MapOsd(show_crosshair=False)
        self.set_crosshair(config.get("geography.show_cross"))
        self.osm.set_center_and_zoom(config.get("geography.center-lat"),
                                     config.get("geography.center-lon"),
                                     config.get("geography.zoom"))

        self.osm.connect('button_release_event', self.map_clicked)
        self.osm.connect('button_press_event', self.map_clicked)
        self.osm.connect("motion-notify-event", self.motion_event)
        self.osm.connect('changed', self.zoom_changed)
        self.update_shortcuts(True)
        self.osm.show()
        self.vbox.pack_start(self.osm, True, True, 0)
        self.goto_handle(handle=None)
Example #2
0
    def _get_sys_information(self):
        """
        Get relevant system information.
        """
        distribution = ""  # print nothing if there's nothing to print
        if hasattr(os, "uname"):
            distribution = "Distribution: %s\n" % os.uname()[2]

        sqlite = "sqlite version: %s (%s) \n" % (sqlite3_version_str,
                                                 sqlite3_py_version_str)

        return "Gramps version: %s \n"\
               "Python version: %s \n"\
               "BSDDB version: %s \n"\
               "%s"\
               "LANG: %s\n"\
               "OS: %s\n"\
               "%s\n"\
               "GTK version    : %s\n"\
               "gobject version: %s\n"\
               "cairo version  : %s"\
               % (str(VERSION),
                  str(sys.version).replace('\n',''),
                  BSDDB_STR,
                  sqlite,
                  get_env_var('LANG',''),
                  platform.system(),
                  distribution,
                  '%d.%d.%d' % (Gtk.get_major_version(),
                                Gtk.get_minor_version(),
                                Gtk.get_micro_version()),
                  '%d.%d.%d' % GObject.pygobject_version,
                  cairo.version_info)
Example #3
0
    def _get_sys_information(self):
        """
        Get relevant system information.
        """
        if hasattr(os, "uname"):
            operatingsystem = os.uname()[0]
            distribution = os.uname()[2]
        else:
            operatingsystem = sys.platform
            distribution = " "

        return "Python version: %s \n"\
               "BSDDB version: %s \n"\
               "sqlite version: %s (%s) \n"\
               "Gramps version: %s \n"\
               "LANG: %s\n"\
               "OS: %s\n"\
               "Distribution: %s\n\n"\
               "GTK version    : %s\n"\
               "gobject version: %s\n"\
               "cairo version  : %s"\
               % (str(sys.version).replace('\n',''),
                  BSDDB_STR,
                  sqlite3_version_str,
                  sqlite3_py_version_str,
                  str(VERSION),
                  get_env_var('LANG',''),
                  operatingsystem,
                  distribution,
                  '%d.%d.%d' % (Gtk.get_major_version(),
                            Gtk.get_minor_version(), Gtk.get_micro_version()),
                  '%d.%d.%d' % GObject.pygobject_version,
                  cairo.version_info)
Example #4
0
    def _get_sys_information(self):
        """
        Get relevant system information.
        """
        distribution = "" # print nothing if there's nothing to print
        if hasattr(os, "uname"):
            distribution = "Distribution: %s\n" % os.uname()[2]

        sqlite = "sqlite version: %s (%s) \n" % (sqlite3_version_str,
                                                 sqlite3_py_version_str)

        return "Gramps version: %s \n"\
               "Python version: %s \n"\
               "BSDDB version: %s \n"\
               "%s"\
               "LANG: %s\n"\
               "OS: %s\n"\
               "%s\n"\
               "GTK version    : %s\n"\
               "gobject version: %s\n"\
               "cairo version  : %s"\
               % (str(VERSION),
                  str(sys.version).replace('\n',''),
                  BSDDB_STR,
                  sqlite,
                  get_env_var('LANG',''),
                  platform.system(),
                  distribution,
                  '%d.%d.%d' % (Gtk.get_major_version(),
                                Gtk.get_minor_version(),
                                Gtk.get_micro_version()),
                  '%d.%d.%d' % GObject.pygobject_version,
                  cairo.version_info)
Example #5
0
    def _get_sys_information(self):
        """
        Get relevant system information.
        """
        if hasattr(os, "uname"):
            operatingsystem = os.uname()[0]
            distribution = os.uname()[2]
        else:
            operatingsystem = sys.platform
            distribution = " "

        return "Python version: %s \n"\
               "BSDDB version: %s \n"\
               "Gramps version: %s \n"\
               "LANG: %s\n"\
               "OS: %s\n"\
               "Distribution: %s\n\n"\
               "GTK version    : %s\n"\
               "gobject version: %s\n"\
               "cairo version  : %s"\
               % (str(sys.version).replace('\n',''),
                  BSDDB_STR,
                  str(VERSION),
                  get_env_var('LANG',''),
                  operatingsystem,
                  distribution,
                  '%d.%d.%d' % (Gtk.get_major_version(), 
                            Gtk.get_minor_version(), Gtk.get_micro_version()),
                  '%d.%d.%d' % GObject.pygobject_version,
                  cairo.version_info)
Example #6
0
    def get_versions(self):
        """
        Obtain version information of core dependencies
        """
        if hasattr(os, "uname"):
            operatingsystem = os.uname()[0]
            distribution = os.uname()[2]
        else:
            operatingsystem = sys.platform
            distribution = " "

        sqlite = ''
        if __debug__:
            sqlite = "sqlite: %s (%s)\n" % (sqlite3_version_str,
                                            sqlite3_py_version_str)

        return (("\n\n" +
                 "GRAMPS: %s \n" +
                 "Python: %s \n" +
                 "BSDDB: %s \n" +
                 sqlite +
                 "LANG: %s\n" +
                 "OS: %s\n" +
                 "Distribution: %s")
                % (ellipses(str(VERSION)),
                   ellipses(str(sys.version).replace('\n','')),
                   BSDDB_STR,
                   ellipses(get_env_var('LANG','')),
                   ellipses(operatingsystem),
                   ellipses(distribution)))
Example #7
0
    def change_new_map(self, name, map_source):
        """
        Change the current map with a new provider
        This map is not supported by osm-gps-map

        name       : the name of the provider
        map_source : the url to search for tiles
        """
        try:
            self.osm.layer_remove_all()
            self.osm.image_remove_all()
            self.vbox.remove(self.osm)
            self.osm.destroy()
        except:
            pass
        tiles_path = os.path.join(config.get('geography.path'), name)
        if not os.path.isdir(tiles_path):
            try:
                os.makedirs(tiles_path, 0o755) # create dir like mkdir -p
            except:
                ErrorDialog(_("Can't create "
                              "tiles cache directory for '%s'.") %
                              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)
            else:
                self.osm = osmgpsmap.Map(tile_cache=tiles_path,
                                         repo_uri=map_source)
        self.osm.props.tile_cache = osmgpsmap.MAP_CACHE_AUTO
        current_map = osmgpsmap.MapOsd(show_dpad=False, show_zoom=True)
        self.end_selection = None
        self.osm.layer_add(current_map)
        self.osm.layer_add(DummyLayer())
        self.selection_layer = self.add_selection_layer()
        self.kml_layer = self.add_kml_layer()
        self.lifeway_layer = self.add_lifeway_layer()
        self.marker_layer = self.add_marker_layer()
        self.date_layer = self.add_date_layer()
        self.message_layer = self.add_message_layer()
        self.cross_map = osmgpsmap.MapOsd(show_crosshair=False)
        self.set_crosshair(config.get("geography.show_cross"))
        self.osm.set_center_and_zoom(config.get("geography.center-lat"),
                                     config.get("geography.center-lon"),
                                     config.get("geography.zoom"))

        self.osm.connect('button_release_event', self.map_clicked)
        self.osm.connect('button_press_event', self.map_clicked)
        self.osm.connect("motion-notify-event", self.motion_event)
        self.osm.connect('changed', self.zoom_changed)
        self.update_shortcuts(True)
        self.osm.show()
        self.vbox.pack_start(self.osm, True, True, 0)
        self.goto_handle(handle=None)
Example #8
0
    def change_map(self, obj, map_type):
        """
        Change the current map
        """
        if obj is not None:
            self.osm.layer_remove_all()
            self.osm.image_remove_all()
            self.vbox.remove(self.osm)
            self.osm.destroy()
        tiles_path = os.path.join(config.get('geography.path'),
                                  constants.TILES_PATH[map_type])
        if not os.path.isdir(tiles_path):
            try:
                os.makedirs(tiles_path, 0o755)  # create dir like mkdir -p
            except:
                ErrorDialog(
                    _("Can't create "  # parent-OK
                      "tiles cache directory for '%s'.") %
                    constants.MAP_TITLE[map_type],
                    parent=self.uistate.window)
        config.set("geography.map_service", map_type)
        self.current_map = map_type
        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,
                    map_source=constants.MAP_TYPE[map_type])
            else:
                self.osm = osmgpsmap.Map(
                    tile_cache=tiles_path,
                    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
        self.osm.layer_add(current_map)
        self.osm.layer_add(DummyLayer())
        self.selection_layer = self.add_selection_layer()
        self.kml_layer = self.add_kml_layer()
        self.lifeway_layer = self.add_lifeway_layer()
        self.marker_layer = self.add_marker_layer()
        self.date_layer = self.add_date_layer()
        self.message_layer = self.add_message_layer()
        self.cross_map = osmgpsmap.MapOsd(show_crosshair=False)
        self.set_crosshair(config.get("geography.show_cross"))
        self.osm.set_center_and_zoom(config.get("geography.center-lat"),
                                     config.get("geography.center-lon"),
                                     config.get("geography.zoom"))

        self.osm.connect('button_release_event', self.map_clicked)
        self.osm.connect('button_press_event', self.map_clicked)
        self.osm.connect("motion-notify-event", self.motion_event)
        self.osm.connect('changed', self.zoom_changed)
        self.update_shortcuts(True)
        self.osm.show()
        self.vbox.pack_start(self.osm, True, True, 0)
        self.goto_handle(handle=None)
Example #9
0
    def change_map(self, obj, map_type):
        """
        Change the current map
        """
        if obj is not None:
            self.osm.layer_remove_all()
            self.osm.image_remove_all()
            self.vbox.remove(self.osm)
            self.osm.destroy()
        tiles_path = os.path.join(config.get('geography.path'),
                                  constants.TILES_PATH[map_type])
        if not os.path.isdir(tiles_path):
            try:
                os.makedirs(tiles_path, 0o755) # create dir like mkdir -p
            except:
                ErrorDialog(_("Can't create "
                              "tiles cache directory for '%s'.") %
                              constants.MAP_TITLE[map_type],
                            parent=self.uistate.window)
        config.set("geography.map_service", map_type)
        self.current_map = map_type
        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,
                                         map_source=constants.MAP_TYPE[
                                                                      map_type])
            else:
                self.osm = osmgpsmap.Map(tile_cache=tiles_path,
                                         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
        self.osm.layer_add(current_map)
        self.osm.layer_add(DummyLayer())
        self.selection_layer = self.add_selection_layer()
        self.kml_layer = self.add_kml_layer()
        self.lifeway_layer = self.add_lifeway_layer()
        self.marker_layer = self.add_marker_layer()
        self.date_layer = self.add_date_layer()
        self.message_layer = self.add_message_layer()
        self.cross_map = osmgpsmap.MapOsd(show_crosshair=False)
        self.set_crosshair(config.get("geography.show_cross"))
        self.osm.set_center_and_zoom(config.get("geography.center-lat"),
                                     config.get("geography.center-lon"),
                                     config.get("geography.zoom"))

        self.osm.connect('button_release_event', self.map_clicked)
        self.osm.connect('button_press_event', self.map_clicked)
        self.osm.connect("motion-notify-event", self.motion_event)
        self.osm.connect('changed', self.zoom_changed)
        self.update_shortcuts(True)
        self.osm.show()
        self.vbox.pack_start(self.osm, True, True, 0)
        self.goto_handle(handle=None)
Example #10
0
class Test3(U.TestCase):
    here = tu.absdir()
    bases = (here, tempfile.gettempdir())
    asubs = [os.path.join(b, "test_sub") for b in bases]
    home = get_env_var("HOME")
    if home:
        home_junk = os.path.join(home, "test_junk")

    def _rmsubs(self):
        import shutil
        for sub in self.asubs:
            if os.path.isdir(sub):
                shutil.rmtree(sub)

    def setUp(self):
        self._rmsubs()
        if self.home and not os.path.isdir(self.home_junk):
            os.mkdir(self.home_junk)

    def tearDown(self):
        self._rmsubs()
        if self.home and os.path.isdir(self.home_junk):
            os.rmdir(self.home_junk)

    def test3a_subdir(self):
        for sub in self.asubs:
            self.assertFalse(os.path.isdir(sub), "init: no dir %r" % sub)
            b, d = os.path.dirname(sub), os.path.basename(sub)
            md = tu.make_subdir(d, b)
            self.assertTrue(os.path.isdir(sub), "made dir %r" % sub)
            self.assertEqual(md, sub,
                             tu.msg(md, sub, "make_subdir returns path"))

            s2 = os.path.join(sub, "sub2")
            tu.make_subdir("sub2", sub)
            self.assertTrue(os.path.isdir(s2), "made dir %r" % s2)
            f = os.path.join(s2, "test_file")

            with open(f, "w") as fd:
                fd.write("testing..")
            self.assertTrue(os.path.isfile(f), "file %r exists" % f)
            tu.delete_tree(sub)
            self.assertFalse(os.path.isdir(sub),
                             "delete_tree removes subdir %r" % sub)

    def test3b_delete_tree_constraint(self):
        if self.home:
            err = None
            try:
                tu.delete_tree(self.home_junk)
            except tu.TestError as e:
                err = e.value
            self.assertFalse(
                err is None,
                "deltree on %r raises TestError" % (self.home_junk))
        else:
            self.fail("Skip deltree constraint test, no '$HOME' var")
Example #11
0
    def get_versions(self):
        """
        Obtain version information of core dependencies
        """
        if hasattr(os, "uname"):
            operatingsystem = os.uname()[0]
            distribution = os.uname()[2]
        else:
            operatingsystem = sys.platform
            distribution = " "

        return (("\n\n" + "GRAMPS: %s \n" + "Python: %s \n" + "BSDDB: %s \n" +
                 "LANG: %s\n" + "OS: %s\n" + "Distribution: %s") %
                (ellipses(str(VERSION)),
                 ellipses(str(sys.version).replace(
                     '\n', '')), BSDDB_STR, ellipses(get_env_var('LANG', '')),
                 ellipses(operatingsystem), ellipses(distribution)))
Example #12
0
    def get_versions(self):
        """
        Obtain version information of core dependencies
        """
        distro = ""  # print nothing if there's nothing to print
        if hasattr(os, "uname"):
            distro = "\n" + _("Distribution: %s") % ellipses(os.uname()[2])

        sqlite = "sqlite" + COLON + " %s (%s)\n" % (sqlite3_version_str,
                                                    sqlite3_py_version_str)

        return (
            ("\n\n" + "GRAMPS" + COLON + " %s \n" + "Python" + COLON +
             " %s \n" + "BSDDB" + COLON + " %s \n" + sqlite + "LANG" + COLON +
             " %s\n" + _("OS: %s") + distro) %
            (ellipses(str(VERSION)),
             ellipses(str(sys.version).replace('\n', '')), BSDDB_STR,
             ellipses(get_env_var('LANG', '')), ellipses(platform.system())))
Example #13
0
    def get_versions(self):
        """
        Obtain version information of core dependencies
        """
        distro = "" # print nothing if there's nothing to print
        if hasattr(os, "uname"):
            distro = "\n" + _("Distribution: %s") % ellipses(os.uname()[2])

        sqlite = "sqlite" + COLON + " %s (%s)\n" % (sqlite3_version_str,
                                                    sqlite3_py_version_str)

        return (("\n\n" +
                 "GRAMPS" + COLON + " %s \n" +
                 "Python" + COLON + " %s \n" +
                 "BSDDB" + COLON + " %s \n" +
                 sqlite +
                 "LANG" + COLON + " %s\n" +
                 _("OS: %s") +
                 distro)
                % (ellipses(str(VERSION)),
                   ellipses(str(sys.version).replace('\n','')),
                   BSDDB_STR,
                   ellipses(get_env_var('LANG','')),
                   ellipses(platform.system())))