36 |
|
|
37 |
from context import Context |
from context import Context |
38 |
from command import registry, Command, ToolCommand |
from command import registry, Command, ToolCommand |
39 |
from messages import LAYER_SELECTED, SHAPES_SELECTED, VIEW_POSITION, DOCKABLE_DOCKED, DOCKABLE_UNDOCKED, DOCKABLE_CLOSED |
from messages import LAYER_SELECTED, SHAPES_SELECTED, VIEW_POSITION |
40 |
|
|
41 |
from Thuban.UI.dock import DockableWindow, DockFrame, DockPanel |
from Thuban.UI.dock import DockFrame |
42 |
|
|
43 |
import resource |
import resource |
44 |
|
|
45 |
|
import projdialog |
46 |
|
|
|
# the directory where the toolbar icons are stored |
|
|
bitmapdir = os.path.join(Thuban.__path__[0], os.pardir, "Resources", "Bitmaps") |
|
|
bitmapext = ".xpm" |
|
|
|
|
|
ID_WINDOW_LEGEND = 4001 |
|
|
ID_WINDOW_CANVAS = 4002 |
|
47 |
|
|
48 |
|
|
49 |
class MainWindow(DockFrame): |
class MainWindow(DockFrame): |
444 |
if dlg.ShowModal() == wxID_OK: |
if dlg.ShowModal() == wxID_OK: |
445 |
filename = dlg.GetPath() |
filename = dlg.GetPath() |
446 |
title = os.path.splitext(os.path.basename(filename))[0] |
title = os.path.splitext(os.path.basename(filename))[0] |
447 |
layer = Layer(title, filename) |
store = self.application.Session().OpenShapefile(filename) |
448 |
|
layer = Layer(title, store) |
449 |
map = self.canvas.Map() |
map = self.canvas.Map() |
450 |
has_layers = map.HasLayers() |
has_layers = map.HasLayers() |
451 |
try: |
try: |
543 |
pass |
pass |
544 |
|
|
545 |
def Projection(self): |
def Projection(self): |
546 |
map = self.canvas.Map() |
|
547 |
proj = map.projection |
name = "projection" |
548 |
if proj is None: |
dialog = self.get_open_dialog(name) |
549 |
proj4Dlg = proj4dialog.Proj4Dialog(NULL, None, map.BoundingBox()) |
|
550 |
else: |
if dialog is None: |
551 |
proj4Dlg = proj4dialog.Proj4Dialog(NULL, map.projection.params, |
map = self.canvas.Map() |
552 |
map.BoundingBox()) |
dialog = projdialog.ProjFrame(self, name, map) |
553 |
if proj4Dlg.ShowModal() == wxID_OK: |
self.add_dialog(name, dialog) |
554 |
params = proj4Dlg.GetParams() |
dialog.Show() |
555 |
if params is not None: |
dialog.Raise() |
|
proj = Projection(params) |
|
|
else: |
|
|
proj = None |
|
|
map.SetProjection(proj) |
|
|
proj4Dlg.Destroy() |
|
556 |
|
|
557 |
def LayerEditProperties(self): |
def LayerEditProperties(self): |
558 |
|
|