commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

gnue/gnuef/src GFInstance.py UIwxpython.py


From: James Thompson
Subject: gnue/gnuef/src GFInstance.py UIwxpython.py
Date: Wed, 20 Jun 2001 17:00:03 -0700

CVSROOT:        /cvs
Module name:    gnue
Changes by:     James Thompson <address@hidden> 01/06/20 17:00:03

Modified files:
        gnuef/src      : GFInstance.py UIwxpython.py 

Log message:
        Remerger of tabbed form support.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/GFInstance.py.diff?cvsroot=OldCVS&tr1=1.11&tr2=1.12&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnuef/src/UIwxpython.py.diff?cvsroot=OldCVS&tr1=1.98&tr2=1.99&r1=text&r2=text

Patches:
Index: gnue/gnuef/src/GFInstance.py
diff -u gnue/gnuef/src/GFInstance.py:1.11 gnue/gnuef/src/GFInstance.py:1.12
--- gnue/gnuef/src/GFInstance.py:1.11   Wed Jun 20 14:43:16 2001
+++ gnue/gnuef/src/GFInstance.py        Wed Jun 20 17:00:03 2001
@@ -34,7 +34,7 @@
 #
 # Copyright (c) 2000 Free Software Foundation
 #
-# $Id: GFInstance.py,v 1.11 2001/06/20 21:43:16 jamest Exp $
+# $Id: GFInstance.py,v 1.12 2001/06/21 00:00:03 jamest Exp $
 #
 
 import pstats
@@ -184,6 +184,7 @@
   def gotoPage(self,event):
     self._form.gotoPage(event.data)
     self.dispatchEvent(GFEvent('gotoPAGE',self._form._currentPage));
+    
self.dispatchEvent(GFEvent('gotoENTRY',{'object':self._form._currentEntry}))
     self.updateStatus()
     
   #
Index: gnue/gnuef/src/UIwxpython.py
diff -u gnue/gnuef/src/UIwxpython.py:1.98 gnue/gnuef/src/UIwxpython.py:1.99
--- gnue/gnuef/src/UIwxpython.py:1.98   Wed Jun 20 16:34:50 2001
+++ gnue/gnuef/src/UIwxpython.py        Wed Jun 20 17:00:03 2001
@@ -39,6 +39,11 @@
 from gnue.common import GDebug, GLoginHandler
 from gnue.common import GConfig
 
+_NOTEBOOK = None
+_LOOPTRAP = 0
+
+
+
 #
 # Little global helper routine to set font according to options
 #
@@ -309,6 +314,16 @@
     # Only one page at a time can be visible
     self.visiblePage = self._pageList[0]
 
+    if _NOTEBOOK: # Adjust sizes
+      #self.mainWindow.SetSize(wxSize(width*int(self.widgetWidth)+10,
+      #                               
int(height+self.menu_sb_space)*int(self.widgetHeight)))
+      #self.mainWindow.panel.SetSize(wxSize(width*int(self.widgetWidth)+10,
+      #                                     
int(height+self.menu_sb_space)*int(self.widgetHeight)))
+      _NOTEBOOK.SetSize(wxSize(width*int(self.widgetWidth),
+                               
int(height+self.menu_sb_space)*int(self.widgetHeight)))
+      #print  self.mainWindow.GetSize()
+      #print  self.mainWindow.panel.GetSize()
+      #print _NOTEBOOK.GetSize()                                               
 
     
 
   #############################################################################
@@ -382,14 +397,22 @@
   #
   def gotoPage(self, event):
     index = self._formToUI[event.data][1]
-    self.visiblePage.Show(FALSE)
-    self._formToUI[event.data][0][index].Show(TRUE)
 
-    self.visiblePage = self._formToUI[event.data][0][index]
+    if not _NOTEBOOK:
+      self.visiblePage.Show(FALSE)
+      self.visiblePage = self._formToUI[event.data][0][index]
+      
self.visiblePage.SetSize(wxSize(int(self._form.getOption('width'))*int(self.widgetWidth),
+                                      
int(int(self._form.getOption('height'))+self.menu_sb_space)*int(self.widgetHeight)))
+    else:
+      self.visiblePage = self._formToUI[event.data][0][index]
+      for count in range(_NOTEBOOK.GetPageCount()):
+        if self.visiblePage.GetId() == _NOTEBOOK.GetPage(count).GetId():
+          _NOTEBOOK.SetSelection(count)
+          break
+        
     self.visiblePage.Show(TRUE)
-    
self.visiblePage.SetSize(wxSize(int(self._form.getOption('width'))*int(self.widgetWidth),
-                                
int(int(self._form.getOption('height'))+self.menu_sb_space)*int(self.widgetHeight)))
 
+                                                          
   #
   # formAlert
   #
@@ -551,7 +574,17 @@
         for count in range(len(self._formToUI[key][0])):
           if self._formToUI[key][0][count].GetId() == object.GetId():
             action = GFEvent('fireTRIGGER',key._trigger)
-      
+    #
+    # Notebook tab events
+    #
+    elif event.GetEventType() == wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING:
+      global _LOOPTRAP
+      if _LOOPTRAP == 0:
+        _LOOPTRAP = 1
+        action = GFEvent('requestPAGE',event.GetSelection())
+      else:
+        _LOOPTRAP = 0
+                                           
     #
     # Unhandled events
     #
@@ -834,9 +867,14 @@
 #
 class UIPage(UIWidget, UIHelper):
   def createWidget(self, object, container, textWidth, textHeight, 
widgetWidth, widgetHeight,interface,spacer,initialize=1):
-    newWidget = wxPanel(container, -1,wxDefaultPosition,container.GetSize())
-    newWidget.Show(FALSE)
-    
+    if _NOTEBOOK:
+      newWidget = wxPanel(_NOTEBOOK, -1,wxDefaultPosition,_NOTEBOOK.GetSize())
+      _NOTEBOOK.AddPage(newWidget,object.name)
+      newWidget.Show(TRUE)
+    else:
+      newWidget = wxPanel(container, -1,wxDefaultPosition,container.GetSize())
+      newWidget.Show(FALSE)
+                            
     if initialize: 
       EVT_CHAR(newWidget, interface.uiEventTrap)
     initFont(newWidget)
@@ -918,7 +956,27 @@
 #
 class UIForm(UIWidget, UIHelper):
   def createWidget(self, object, container, textWidth, textHeight, 
widgetWidth, widgetHeight,interface,spacer,initialize=1):
-    newWidget = wxPanel(interface.mainWindow.panel,-1, wxDefaultPosition)
+    global _NOTEBOOK
+
+    if object.tabbed:
+      print object.tabbed
+      if object.tabbed == 'left':
+        tabstyle = wxNB_LEFT
+      elif object.tabbed == 'right':
+        tabstyle = wxNB_RIGHT
+      elif object.tabbed == 'bottom':
+        tabstyle = wxNB_BOTTOM
+      else:
+        tabstyle = 0
+
+        _NOTEBOOK = 
wxNotebook(container,-1,wxPoint(10,10),size=container.GetSize(),style=tabstyle)
+        newWidget = _NOTEBOOK
+        _NOTEBOOK.Show(TRUE)
+        EVT_NOTEBOOK_PAGE_CHANGING(newWidget, newWidget.GetId(), 
interface.uiEventTrap)
+        
+    else:                      
+      newWidget = wxPanel(interface.mainWindow.panel,-1, wxDefaultPosition)
+      
     if initialize: 
       EVT_CLOSE(interface.mainWindow,interface.closeTrap)
     



reply via email to

[Prev in Thread] Current Thread [Next in Thread]