/[thuban]/branches/WIP-pyshapelib-bramz/Thuban/UI/mainwindow.py
ViewVC logotype

Diff of /branches/WIP-pyshapelib-bramz/Thuban/UI/mainwindow.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 974 by jonathan, Wed May 21 17:39:43 2003 UTC revision 1035 by jan, Mon May 26 17:03:08 2003 UTC
# Line 21  import os Line 21  import os
21  from wxPython.wx import *  from wxPython.wx import *
22  from wxPython.wx import __version__ as wxPython_version  from wxPython.wx import __version__ as wxPython_version
23    
24    from wxPython.lib.dialogs import wxMultipleChoiceDialog
25    
26  import Thuban  import Thuban
27  import Thuban.version  import Thuban.version
28    
# Line 559  class MainWindow(DockFrame): Line 561  class MainWindow(DockFrame):
561              dialog = self.get_open_dialog(name)              dialog = self.get_open_dialog(name)
562              if dialog is None:              if dialog is None:
563                  dialog = tableview.LayerTableFrame(self, name,                  dialog = tableview.LayerTableFrame(self, name,
564                                                 _("Table: %s") % layer.Title(),                                           _("Layer Table: %s") % layer.Title(),
565                                                     layer, table)                                           layer, table)
566                  self.add_dialog(name, dialog)                  self.add_dialog(name, dialog)
567                  dialog.Show(true)                  dialog.Show(True)
568              else:              else:
569                  # FIXME: bring dialog to front here                  # FIXME: bring dialog to front here
570                  pass                  pass
# Line 617  class MainWindow(DockFrame): Line 619  class MainWindow(DockFrame):
619          dialog.Raise()          dialog.Raise()
620    
621      def LayerJoinTable(self):      def LayerJoinTable(self):
622          print "LayerJoinTable"          print "LayerJoinTable: Not implemented."
623    
624      def LayerUnjoinTable(self):      def LayerUnjoinTable(self):
625          print "LayerUnjoinTable"          print "LayerUnjoinTable: Not implemented."
626    
627      def ShowLegend(self):      def ShowLegend(self):
628          if not self.LegendShown():          if not self.LegendShown():
# Line 646  class MainWindow(DockFrame): Line 648  class MainWindow(DockFrame):
648          return dialog is not None and dialog.IsShown()          return dialog is not None and dialog.IsShown()
649    
650      def TableOpen(self):      def TableOpen(self):
651          print "TableOpen"          print "TableOpen: not implemented"
652          dlg = wxFileDialog(self, _("Open Table"), ".", "",          dlg = wxFileDialog(self, _("Open Table"), ".", "",
653                             "DBF Files (*.dbf)|*.dbf|" +                             "DBF Files (*.dbf)|*.dbf|" +
654                             "CSV Files (*.csv)|*.csv|" +                             "CSV Files (*.csv)|*.csv|" +
# Line 659  class MainWindow(DockFrame): Line 661  class MainWindow(DockFrame):
661          dlg.Destroy()          dlg.Destroy()
662    
663      def TableClose(self):      def TableClose(self):
664          print "TableClose"          print "TableClose: not implemented"
665    
666      def TableShow(self):      def TableShow(self):
667          print "TableShow"          """Offer a multi-selection dialog for tables to be displayed
668            
669            The windows for the selected tables are opened or brought to
670            the front.
671            """
672            tables = self.application.session.Tables()
673            table_list = []
674            for table in tables:
675                table_list.append(table.Title())
676    
677            dlg = wxMultipleChoiceDialog(self, _("Pick the table to show:"),
678                                         _("Show Table"), table_list,
679                                         size = (400,300), style = wxRESIZE_BORDER)
680            if (dlg.ShowModal() == wxID_OK):
681                for i in dlg.GetValue():
682                    # XXX: First check whether the dialog is already open
683                    # and if so, bring it to the front.
684                    # XXX: if the table belongs to a layer, open a
685                    # LayerTableFrame instead of QueryTableFrame
686                    print "tables[i]:", tables[i]
687                    dialog = tableview.QueryTableFrame(self, table_list[i],
688                                                  _("Table: %s") % table_list[i],
689                                                  tables[i])
690                    self.add_dialog(table_list[i], dialog)
691                    dialog.Show(True)
692    
693            # XXX: just some analyis code, remove it when the above XXX is
694            # resolved.
695            for d in self.dialogs.values():
696                if isinstance(d, tableview.LayerTableFrame):
697                    print "LayerTable:", d.GetTitle()
698                elif isinstance(d, tableview.QueryTableFrame):
699                    print "QueryTable:", d.GetTitle()
700                else:
701                    print "Other:", d.GetTitle()
702    
703      def TableHide(self):      def TableHide(self):
704          print "TableHide"          print "TableHide: not implemented"
705    
706      def TableJoin(self):      def TableJoin(self):
         print "TableJoin"  
707          dlg = JoinDialog(self, _("Join Tables"), self.application.session)          dlg = JoinDialog(self, _("Join Tables"), self.application.session)
708          if dlg.ShowModal() == wxID_OK:          dlg.ShowModal()
             print "OK"  
709    
710      def ZoomInTool(self):      def ZoomInTool(self):
711          self.canvas.ZoomInTool()          self.canvas.ZoomInTool()

Legend:
Removed from v.974  
changed lines
  Added in v.1035

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26