[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnue] r8355 - in trunk/gnue-designer/src: base base/tools forms/PagePai
From: |
jcater |
Subject: |
[gnue] r8355 - in trunk/gnue-designer/src: base base/tools forms/PagePainter ui/wx/uihelpers/doccanvas |
Date: |
Tue, 4 Apr 2006 13:54:08 -0500 (CDT) |
Author: jcater
Date: 2006-04-04 13:54:07 -0500 (Tue, 04 Apr 2006)
New Revision: 8355
Modified:
trunk/gnue-designer/src/base/ToolBase.py
trunk/gnue-designer/src/base/tools/SchemaNavigator.py
trunk/gnue-designer/src/base/tools/TreeView.py
trunk/gnue-designer/src/forms/PagePainter/PagePainter.py
trunk/gnue-designer/src/ui/wx/uihelpers/doccanvas/canvas.py
trunk/gnue-designer/src/ui/wx/uihelpers/doccanvas/settings.py
trunk/gnue-designer/src/ui/wx/uihelpers/doccanvas/widget.py
Log:
misc ui cleanup (used smaller fonts/less panel padding on the dockable tools)
Modified: trunk/gnue-designer/src/base/ToolBase.py
===================================================================
--- trunk/gnue-designer/src/base/ToolBase.py 2006-04-04 09:39:16 UTC (rev
8354)
+++ trunk/gnue-designer/src/base/ToolBase.py 2006-04-04 18:54:07 UTC (rev
8355)
@@ -52,7 +52,7 @@
self.id = id
self.title = title
-# self.dockpane = parentWindow
+
self.document = document
self.rootObject = rootObject
self.document.globalAcceleratorListeners.append(self)
@@ -106,7 +106,8 @@
def addPage(self, page, text):
self.notebook.AddPage(page, text)
- self.notebook.SetPageTextFont(self.notebook.GetPageCount()-1,
wx.Font(9, wx.DEFAULT, wx.NORMAL, wx.NORMAL, False))
+ self.notebook.SetPageTextFont(self.notebook.GetPageCount()-1,
+ wx.SMALL_FONT)
return page
def deletePage(self, id):
Modified: trunk/gnue-designer/src/base/tools/SchemaNavigator.py
===================================================================
--- trunk/gnue-designer/src/base/tools/SchemaNavigator.py 2006-04-04
09:39:16 UTC (rev 8354)
+++ trunk/gnue-designer/src/base/tools/SchemaNavigator.py 2006-04-04
18:54:07 UTC (rev 8355)
@@ -86,7 +86,7 @@
## tree.Expand(root)
sizer = wx.BoxSizer(wx.VERTICAL)
- sizer.Add(tree, 1, wx.EXPAND|wx.ALL, 6)
+ sizer.Add(tree, 1, wx.EXPAND|wx.ALL, 0)
self.SetAutoLayout(True)
self.SetSizer(sizer)
Modified: trunk/gnue-designer/src/base/tools/TreeView.py
===================================================================
--- trunk/gnue-designer/src/base/tools/TreeView.py 2006-04-04 09:39:16 UTC
(rev 8354)
+++ trunk/gnue-designer/src/base/tools/TreeView.py 2006-04-04 18:54:07 UTC
(rev 8355)
@@ -56,30 +56,33 @@
'ObjectDeleted' : self.onDeleteObject,
})
- self.panel = wx.Panel(self,-1,style=wx.SIMPLE_BORDER,
pos=wx.Point(6,6))
- wx.EVT_SIZE(self, self.onSize)
- self.tree = wx.TreeCtrl(self.panel, wx.NewId(),
- style=wx.TR_HAS_BUTTONS|#wx.TR_EDIT_LABELS|
- wx.TR_FULL_ROW_HIGHLIGHT)#|wx.TR_HIDE_ROOT)
+ self.tree = tree = wx.TreeCtrl(self, wx.NewId(),
+
style=wx.TR_FULL_ROW_HIGHLIGHT|wx.TR_HAS_BUTTONS)#|#wx.TR_EDIT_LABELS|wx.TR_HIDE_ROOT|
+
self._handler = None
- self.tree.SetImageList(treeIconList)
- self.tree.SetFont(wx.SMALL_FONT)
+ sizer = wx.BoxSizer(wx.VERTICAL)
+ sizer.Add(tree, 1, wx.EXPAND|wx.ALL, 0)
+ self.SetAutoLayout(True)
+ self.SetSizer(sizer)
- wx.EVT_TREE_BEGIN_LABEL_EDIT(self, self.tree.GetId(),
self.OnTreeLabelEdit)
- wx.EVT_TREE_END_LABEL_EDIT(self, self.tree.GetId(),
self.OnTreeLabelEditEnd)
- wx.EVT_TREE_SEL_CHANGED(self, self.tree.GetId(),
self.OnTreeItemSelected)
+ tree.SetImageList(treeIconList)
+ tree.SetFont(wx.SMALL_FONT)
- root = self.rootObject._treeItem = self.tree.AddRoot(self.rootDescr)
- self.tree.SetPyData(self.rootObject._treeItem, self.rootObject)
+ wx.EVT_TREE_BEGIN_LABEL_EDIT(self, tree.GetId(), self.OnTreeLabelEdit)
+ wx.EVT_TREE_END_LABEL_EDIT(self, tree.GetId(), self.OnTreeLabelEditEnd)
+ wx.EVT_TREE_SEL_CHANGED(self, tree.GetId(), self.OnTreeItemSelected)
+ root = self.rootObject._treeItem = tree.AddRoot(self.rootDescr)
+ tree.SetPyData(self.rootObject._treeItem, self.rootObject)
+
wx.EVT_RIGHT_DOWN(self, self.OnRightDown)
wx.EVT_LEFT_DCLICK(self, self.OnEditProperties)
self.inittree()
self.rootObject.walk(self.inventoryObject)
- self.tree.Expand(root)
+ tree.Expand(root)
self.Fit()
# For use by subclasses
@@ -90,10 +93,6 @@
def inventoryObject(self):
pass
- def onSize(self, event):
- x,y = self.GetClientSizeTuple()
- self.panel.SetSize((x-12,y-12))
- self.tree.SetSize(self.panel.GetClientSizeTuple())
def AppendItem(self, parent, description):
rv = self.tree.AppendItem(parent, wxEncode(description))
Modified: trunk/gnue-designer/src/forms/PagePainter/PagePainter.py
===================================================================
--- trunk/gnue-designer/src/forms/PagePainter/PagePainter.py 2006-04-04
09:39:16 UTC (rev 8354)
+++ trunk/gnue-designer/src/forms/PagePainter/PagePainter.py 2006-04-04
18:54:07 UTC (rev 8355)
@@ -33,20 +33,23 @@
import string
#--------------------------------------------------------------------------
+# External Imports
+#--------------------------------------------------------------------------
+import wx
+
+#--------------------------------------------------------------------------
# GNUe Imports
#--------------------------------------------------------------------------
from gnue.designer.base.EditorBase import EditorBase
+from gnue.designer.ui.wx.uihelpers.doccanvas.canvas import DocumentCanvas
from skins import common
# TODO: This will eventually be settable
from skins.default import getWidgetSkinClass
-#--------------------------------------------------------------------------
-# External Imports
-#--------------------------------------------------------------------------
-import wx
+
# ===========================================================================
# The PagePainter class
# ===========================================================================
@@ -59,18 +62,29 @@
# Determine text extents
dc = wx.PaintDC(self)
- dc.SetFont(wx.SystemSettings_GetFont(wx.SYS_SYSTEM_FIXED_FONT))
+ base_font = wx.NORMAL_FONT
+ fixed_font = wx.Font(base_font.GetPointSize(),
+ wx.MODERN, wx.NORMAL, wx.NORMAL)
+
+ self.SetFont(fixed_font)
if not common.char_x_scale:
+ avg_w = 0
+ avg_h = 0
for char in string.digits + string.letters:
w, h = dc.GetTextExtent(char)
- common.char_x_scale = max(common.char_x_scale, w)
- common.char_y_scale = max(common.char_y_scale, h)
+ print char, w, h
+ avg_w += w
+ avg_h += h
+ common.char_x_scale = avg_w // len(string.digits + string.letters)
+ common.char_y_scale = avg_h // len(string.digits + string.letters)
# Make the scale slightly larger, so that input widgets
# are bigger than text labels.
common.char_y_scale += 4
+ print common.char_x_scale
+
canvas = self.canvas = PagePainterCanvas(self)
self.document.app.ui.autoSizer(self, canvas)
@@ -99,8 +113,8 @@
Inventory each object as it is identified or added
"""
- # Right now, we assume if an object has an x,y component, it is
drawable.
- # This won't be true when we support layout management.
+ # Right now, we assume if an object has an x,y component, it is
+ # drawable. This won't be true when we support layout management.
try:
x = object['Char:x']
y = object['Char:y']
@@ -132,18 +146,6 @@
# ==========================================================================
-# DocumentCanvas implementations
-# ==========================================================================
-#
-# These will be reorganized into a separate file once design is completed.
-#
-
-import cPickle
-
-from gnue.designer.ui.wx.uihelpers.doccanvas.canvas import DocumentCanvas
-
-
-# ==========================================================================
# Canvas implementation
# ==========================================================================
class PagePainterCanvas(DocumentCanvas):
Modified: trunk/gnue-designer/src/ui/wx/uihelpers/doccanvas/canvas.py
===================================================================
--- trunk/gnue-designer/src/ui/wx/uihelpers/doccanvas/canvas.py 2006-04-04
09:39:16 UTC (rev 8354)
+++ trunk/gnue-designer/src/ui/wx/uihelpers/doccanvas/canvas.py 2006-04-04
18:54:07 UTC (rev 8355)
@@ -20,15 +20,22 @@
# - Suite 330, Boston, MA 02111-1307, USA.
#
# $Id$
+
"""
+The main DocumentCanvas class that implements a scrollable
+wysiwyg editor.
"""
+# Python library imports
import time
+# External imports
import wx
+# GNUe imports
from settings import color_map, font_map, initialize
+# Globals
cursor_map = {'resize-top': wx.CURSOR_SIZENS,
'resize-bottom': wx.CURSOR_SIZENS,
'resize-left': wx.CURSOR_SIZEWE,
@@ -44,6 +51,8 @@
GRID_LINES = 1
GRID_DOTS = 2
+__all__ = ['DocumentCanvas','GRID_OFF','GRID_LINES','GRID_DOTS']
+
# ===================================================================
# The canvas to draw on
# ===================================================================
Modified: trunk/gnue-designer/src/ui/wx/uihelpers/doccanvas/settings.py
===================================================================
--- trunk/gnue-designer/src/ui/wx/uihelpers/doccanvas/settings.py
2006-04-04 09:39:16 UTC (rev 8354)
+++ trunk/gnue-designer/src/ui/wx/uihelpers/doccanvas/settings.py
2006-04-04 18:54:07 UTC (rev 8355)
@@ -54,12 +54,18 @@
if font_map:
return
- font_map['label'] = wx.SystemSettings_GetFont(wx.SYS_SYSTEM_FIXED_FONT)
- font_map['box'] = wx.NORMAL_FONT
- font_map['button'] = wx.NORMAL_FONT
+ base_font = wx.NORMAL_FONT
+ fixed_font = wx.Font(base_font.GetPointSize()-2,
+ wx.MODERN, wx.NORMAL, wx.NORMAL)
+ small_fixed_font = wx.Font(base_font.GetPointSize()-3,
+ wx.MODERN, wx.NORMAL, wx.NORMAL)
+ font_map['label'] = fixed_font
+ font_map['box'] = small_fixed_font
+ font_map['button'] = small_fixed_font
+
def initialize():
if color_map:
return
Modified: trunk/gnue-designer/src/ui/wx/uihelpers/doccanvas/widget.py
===================================================================
--- trunk/gnue-designer/src/ui/wx/uihelpers/doccanvas/widget.py 2006-04-04
09:39:16 UTC (rev 8354)
+++ trunk/gnue-designer/src/ui/wx/uihelpers/doccanvas/widget.py 2006-04-04
18:54:07 UTC (rev 8355)
@@ -25,14 +25,24 @@
DocumentWidget base classes
"""
+# Python library imports
import cPickle
+# External imports
import wx
+# GNUe imports
import dnd
from settings import color_map
from textedit import PopupTextEdit
+
+# NOTE: any methods using MixedCaseNaming are left over from
+# SimpleCanvas and probably aren't used yet. But, the code
+# is left as an example for when I get around to implementing
+# that feature.
+
+
# ===================================================================
# A Drawable canvas widget
# ===================================================================
@@ -78,74 +88,7 @@
self.force_canvas_refresh()
self.canvas.Update()
- def ConvertToCanvasDeviceCoordinates(self, x, y):
- return self.canvas.CalcScrolledPosition(self.refresh_area.GetLeft() +
x,
- self.refresh_area.GetTop() +
y)
- def DoDrag(self, x, y):
- """
- Implement all the drag and drop functionality:
- """
-
- """
- Create the dragImage and begin dragging over the full screen
- """
- offscreenBuffer = wx.EmptyBitmap(self.refresh_area.GetWidth(),
self.refresh_area.GetHeight())
- memoryDC = wx.MemoryDC()
- memoryDC.SelectObject(offscreenBuffer)
-
- memoryDC.BeginDrawing()
- memoryDC.Clear()
- self.draw(memoryDC)
-
- maskBitmap = wx.EmptyBitmap(self.refresh_area.GetWidth(),
self.refresh_area.GetHeight(), 1)
- memoryDC.SelectObject(maskBitmap)
-
- memoryDC.SetBackground(wx.BLACK_BRUSH)
- memoryDC.Clear()
-
- self.draw_mask(memoryDC)
- memoryDC.EndDrawing()
-
- memoryDC.SelectObject(wx.NullBitmap)
-
- if "__WXMAC__" in wx.PlatformInfo: # workaround for wxMac bug
- offscreenBuffer.SetMask(wx.Mask(maskBitmap, wx.BLACK))
- else:
- offscreenBuffer.SetMask(wx.Mask(maskBitmap))
-
- """
- Create the dragImage and begin dragging
- """
- if "__WXGTK__" in wx.PlatformInfo:
- # The "hole punching" trick dosen't work on wxGTK, move the
hostspot
- # to be just outside the image
- x, y = -1, -1
- self.dragImage = dnd.wxCanvasDragImage(offscreenBuffer)
-
- self.dragImage.BeginDrag(wx.Point(x,y), self.canvas, True)
- self.dragImage.Move(self.ConvertToCanvasDeviceCoordinates(x, y))
- self.dragImage.Show()
-
- """
- We need to keep a reference to the dataObject, rather than create
- it in the construction because wxCanvasDropSource doesn't own the
- data so the garbage collector will delete it.
- """
- dataObject = self.ConvertDrawableObjectToDataObject(x, y)
- dropSource = dnd.wxCanvasDropSource(self, dataObject)
-
- self.canvas.internalDnDItem = self
- result = dropSource.DoDragDrop(wx.Drag_AllowMove)
- self.canvas.internalDnDItem = None
- self.dragImage.Hide()
- self.dragImage.EndDrag()
- del self.dragImage
-
- def SizeDrag(self, dragRect, startDrag, endDrag):
- self.force_canvas_refresh()
- self.force_canvas_refresh()
-
def set_selected(self, selected=True):
"""
Sets the selected bit for this object. Does a canvas refresh on
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gnue] r8355 - in trunk/gnue-designer/src: base base/tools forms/PagePainter ui/wx/uihelpers/doccanvas,
jcater <=