[z3-checkins] r15536 - in z3/zopejam/trunk/src: zcmledit zopejam zopejam/icons/12x12 zopejam/icons/16x16 zopejam/icons/22x22 zopejam/icons/menu zopejam/icons/misc zopejam/icons/other zopejam/icons/palette zopejam/icons/toolbar

hathawsh at codespeak.net hathawsh at codespeak.net
Wed Aug 3 09:37:11 CEST 2005


Author: hathawsh
Date: Wed Aug  3 09:36:44 2005
New Revision: 15536

Added:
   z3/zopejam/trunk/src/zopejam/icons/12x12/
   z3/zopejam/trunk/src/zopejam/icons/12x12/sort_down.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/12x12/sort_up.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/
   z3/zopejam/trunk/src/zopejam/icons/16x16/bomb.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/cancel.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/clear_left.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/clear_right.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/configure.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/configure_toolbars.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/contents.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/editcopy.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/editcut.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/editdelete.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/editpaste.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/exit.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/fileclose.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/filenew.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/fileopen.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/filesave.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/filesaveas.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/find.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/help.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/include_glob.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/include_one.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/includeoverride_glob.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/includeoverride_one.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/launch.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/package.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/project_open.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/redo.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/save_all.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/tree.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/undo.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/zcmlfile.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/16x16/zopejam.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/
   z3/zopejam/trunk/src/zopejam/icons/22x22/back.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/editcopy.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/editcut.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/editpaste.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/fileclose.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/filenew.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/fileopen.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/filesave.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/filesaveas.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/forward.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/launch.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/project_open.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/redo.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/save_all.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/22x22/undo.png   (contents, props changed)
   z3/zopejam/trunk/src/zopejam/icons/misc/
   z3/zopejam/trunk/src/zopejam/icons/misc/zopejam.png   (contents, props changed)
Removed:
   z3/zopejam/trunk/src/zopejam/icons/menu/
   z3/zopejam/trunk/src/zopejam/icons/other/
   z3/zopejam/trunk/src/zopejam/icons/palette/
   z3/zopejam/trunk/src/zopejam/icons/toolbar/
Modified:
   z3/zopejam/trunk/src/zcmledit/project.py
   z3/zopejam/trunk/src/zopejam/main.py
   z3/zopejam/trunk/src/zopejam/preferences.py
   z3/zopejam/trunk/src/zopejam/propbook.py
   z3/zopejam/trunk/src/zopejam/resources.xrc
Log:
Removed menu items and consolidated the icon directories.

The application is beginning to feel like a database browser, where the 
whole configuration is a database.  Therefore, it doesn't make much 
sense to open just one configuration file in this application.  Instead, 
opening a configuration file will actually open the project that file is 
located in, then select one or more directives from the file.  The new 
menu structure reflects that.  The preferences dialog will let the user 
configure the location of projects.

Also added a progress bar to show something while a project is being 
opened.



Modified: z3/zopejam/trunk/src/zcmledit/project.py
==============================================================================
--- z3/zopejam/trunk/src/zcmledit/project.py	(original)
+++ z3/zopejam/trunk/src/zcmledit/project.py	Wed Aug  3 09:36:44 2005
@@ -139,13 +139,16 @@
             'provides',
             module + '.IProvidesDirectiveInfo')
 
-    def load(self):
+    def load(self, progress_callback=None):
         self.createBootstrapDefinitions()
         self.packages = {}  # {package name: [filename]}
         self.files = {}     # {filename: config_file}
         self.root_config = ConfigurationFile(self, self.root_filename)
         self.files[self.root_filename] = self.root_config
 
+        if progress_callback is not None:
+            progress_callback(0.1)
+
         todo = [self.root_config]
         while todo:
             cfg = todo.pop(0)
@@ -178,9 +181,12 @@
                         'metadirective conflict on %s' % repr(key))
                 self.definitions[key] = dfn
 
-        self.load_globals()
+        if progress_callback is not None:
+            progress_callback(0.4)
+
+        self.load_globals(progress_callback)
 
-    def load_globals(self):
+    def load_globals(self, progress_callback=None):
         """Fill self.interfaces and self.classes"""
         class_names = set()
         iface_names = set()
@@ -190,9 +196,15 @@
             class_names.update(dfn.getRequiredClassNames())
             iface_names.update(dfn.getRequiredInterfaceNames())
 
+        if progress_callback is not None:
+            progress_callback(0.5)
+
         c, i = self.call_inspector(
             'inspect_globals', list(class_names), list(iface_names))
 
+        if progress_callback is not None:
+            progress_callback(0.8)
+
         self.classes = {}
         self.interfaces = {}
         for name, info in c.items():
@@ -205,6 +217,9 @@
         for info in self.classes.values():
             info.initBases(self.classes, self.interfaces)
 
+        if progress_callback is not None:
+            progress_callback(1.0)
+
     def call_inspector(self, funcname, *args, **kw):
         inspector_py = os.path.join(here, 'inspector.py')
         env = os.environ.copy()
@@ -223,22 +238,6 @@
         res = cPickle.loads(res_pickle)
         return res
 
-    def print_fields(self):
-        """Shows reuse of fields by different directive types."""
-        fields = {}  # {(field_name, field_type) -> [schema_name]}
-        for schema_name, info in self.interfaces.items():
-            for attr_name, obj in info.attributes.items():
-                if not IField.providedBy(obj):
-                    continue
-                key = (attr_name, type(obj))
-                lst = fields.get(key)
-                if lst is None:
-                    lst = []
-                    fields[key] = lst
-                lst.append(schema_name)
-        import pprint
-        pprint.pprint(fields)
-
     def shortenPath(self, p):
         if p.startswith(self.base):
             len_base = len(self.base)

Added: z3/zopejam/trunk/src/zopejam/icons/12x12/sort_down.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/12x12/sort_up.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/bomb.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/cancel.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/clear_left.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/clear_right.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/configure.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/configure_toolbars.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/contents.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/editcopy.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/editcut.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/editdelete.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/editpaste.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/exit.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/fileclose.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/filenew.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/fileopen.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/filesave.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/filesaveas.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/find.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/help.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/include_glob.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/include_one.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/includeoverride_glob.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/includeoverride_one.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/launch.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/package.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/project_open.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/redo.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/save_all.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/tree.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/undo.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/zcmlfile.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/16x16/zopejam.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/back.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/editcopy.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/editcut.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/editpaste.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/fileclose.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/filenew.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/fileopen.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/filesave.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/filesaveas.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/forward.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/launch.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/project_open.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/redo.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/save_all.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/22x22/undo.png
==============================================================================
Binary file. No diff available.

Added: z3/zopejam/trunk/src/zopejam/icons/misc/zopejam.png
==============================================================================
Binary file. No diff available.

Modified: z3/zopejam/trunk/src/zopejam/main.py
==============================================================================
--- z3/zopejam/trunk/src/zopejam/main.py	(original)
+++ z3/zopejam/trunk/src/zopejam/main.py	Wed Aug  3 09:36:44 2005
@@ -11,9 +11,11 @@
 import os
 import subprocess
 import sys
+import threading
 import wx
 from wx import xrc
 from wx.lib.mixins import listctrl
+import wx.lib.newevent
 
 from zcmledit.project import Project
 from zopejam import columns, propbook
@@ -27,13 +29,15 @@
 
 add_menu_ids = {}  # {id -> definition_key}
 
+(MainThreadEvent, EVT_MAIN_THREAD) = wx.lib.newevent.NewEvent()
 
-class PaletteImageList(wx.ImageList):
+
+class IconList(wx.ImageList):
 
     def __init__(self, w, h):
         wx.ImageList.__init__(self, w, h)
         self.indexes = {}
-        base = os.path.join(here, 'icons', 'palette', '%dx%d' % (w, h))
+        base = os.path.join(here, 'icons', '%dx%d' % (w, h))
         names = []
         for name in os.listdir(base):
             if name.lower().endswith('.png'):
@@ -56,21 +60,22 @@
 
     _menuitem_names = [
         # File menu
-        'newfile', 'open', 'openproject',
-        'save', 'saveas', 'saveacopy', 'saveall',
-        'rename', 'close', 'quit',
+        'newfile', 'open',
+        'saveall', 'close',
+        'quit',
         # Edit menu
-        'undo', 'redo', 'cut', 'copy', 'paste', 'delete',
-        'projectproperties',
+        'undo', 'redo',
+        'cut', 'copy', 'paste', 'delete',
+        'preferences',
         # Tools menu
-        'test', 'package_view', 'include_view', 'restart',
+        'test',
+        'package_view', 'include_view', 'restart',
         # Help menu
         'contents', 'about',
         ]
 
     _tool_names = [
-        'newfile', 'open', 'openproject',
-        'save', 'saveall', 'close',
+        'newfile', 'open', 'saveall',
         'undo', 'redo', 'cut', 'copy', 'paste',
         'test',
         ]
@@ -84,9 +89,11 @@
         self.commands.addFromFrame(
             self.frame, self._menuitem_names, self._tool_names)
         self.commands.addCallbacks(self)
+        self.frame.Bind(EVT_MAIN_THREAD, self.onMainThread)
 
-        self.small_palette_images = PaletteImageList(16, 16)
-        self.tiny_palette_images = PaletteImageList(12, 12)
+        self.medium_icons = IconList(22, 22)
+        self.small_icons = IconList(16, 16)
+        self.tiny_icons = IconList(12, 12)
 
         f = self.frame.GetFont()
         self.normal_font = wx.Font(
@@ -114,8 +121,10 @@
         self.italic_attr = wx.TextAttr(wx.BLACK)
         self.italic_attr.SetFont(self.italic_font)
 
-        self.fbook = FilesNotebook(
-            self, xrc.XRCCTRL(self.frame, 'files_notebook'))
+        container = xrc.XRCCTRL(self.frame, 'list_container')
+        p = self.resources.LoadPanel(container, 'list_panel')
+        container.GetSizer().Add(p, flag=wx.EXPAND)
+        self.all = AllDirectivesView(self, p)
 
         self.tip_frame = resources.LoadFrame(self.frame, 'tip_frame')
         self.tip_frame.Fit()
@@ -132,11 +141,7 @@
         self.frame.Fit()
 
         # No files are open
-        self.commands.save.disable()
-        self.commands.saveas.disable()
-        self.commands.saveacopy.disable()
         self.commands.saveall.disable()
-        self.commands.rename.disable()
         self.commands.close.disable()
 
         # No undo history exists
@@ -157,14 +162,32 @@
         if proj_fn:
             self.loadProject(proj_fn)
 
+    def callInMain(self, f, *args, **kw):
+        """Queues an object to be called in the main thread"""
+        event = MainThreadEvent(f=f, args=args, kw=kw)
+        wx.PostEvent(self.frame, event)
+
+    def onMainThread(self, event):
+        event.f(*event.args, **event.kw)
+
     def setStatus(self, text):
         self.status_label.SetLabel(text)
 
+    def setProgress(self, fraction):
+        gauge = xrc.XRCCTRL(self.frame, 'progress_gauge')
+        if fraction is None:
+            # hide the gauge
+            gauge.Hide()
+        else:
+            gauge.SetValue(int(fraction * 100))
+            if not gauge.IsShown():
+                gauge.Show()
+                self.frame.Layout()
+
     def update_commands_enabled(self):
         p = self.project is not None
         self.commands.newfile.enable(p)
         self.commands.open.enable(p)
-        self.commands.projectproperties.enable(p)
         self.commands.test.enable(p)
 
     def cmd_default(self, event, name):
@@ -209,8 +232,33 @@
             self.loadProject(fn)
 
     def loadProject(self, fn):
-        self.project = Project(fn)
-        self.project.load()
+
+        class LoadThread(threading.Thread):
+            def __init__(self, gui, project):
+                self.gui = gui
+                self.project = project
+                super(LoadThread, self).__init__()
+
+            def progress(self, fraction):
+                self.gui.callInMain(self.progressInMain, fraction)
+
+            def progressInMain(self, fraction):
+                self.gui.setProgress(fraction)
+
+            def run(self):
+                # TODO: handle errors by popping up a message box
+                self.project.load(self.progress)
+                self.gui.callInMain(self.gui.loadProjectFinished, self.project)
+
+        p = Project(fn)
+        self.setStatus("Loading %s..." % fn)
+        self.setProgress(0)
+        LoadThread(self, p).start()
+
+    def loadProjectFinished(self, p):
+        self.setProgress(None)
+        self.setStatus("Loaded %s." % p.root_filename)
+        self.project = p
         self.frame.SetTitle('Zope Jam - %s' % self.project.root_filename)
         self.populate()
         self.update_commands_enabled()
@@ -275,7 +323,7 @@
 
     def populate(self):
         self.populateAddMenu()
-        self.fbook.all.dir_list.populate()
+        self.all.dir_list.populate()
 
     def populateAddMenu(self):
         # clear
@@ -386,21 +434,11 @@
 
 
     def selectDirectives(self, directives):
-        self.fbook.all.dir_list.selectDirectives(directives)
+        self.all.dir_list.selectDirectives(directives)
 
     def ensureDirectiveVisible(self, directive):
-        self.fbook.all.dir_list.ensureDirectiveVisible(directive)
-
-
-class FilesNotebook:
+        self.all.dir_list.ensureDirectiveVisible(directive)
 
-    def __init__(self, gui, notebook):
-        self.gui = gui
-        self.notebook = notebook
-        panel = self.gui.resources.LoadPanel(self.notebook, 'list_panel')
-        self.notebook.AddPage(panel, 'Project')
-        self.all = AllDirectivesView(self.gui, panel)
-        
 
 class AllDirectivesView:
 
@@ -431,7 +469,7 @@
         self.state_mask = wx.LIST_STATE_SELECTED | wx.LIST_STATE_FOCUSED
 
         self.columns = columns.create_default_columns()
-        self.SetImageList(self.gui.tiny_palette_images, wx.IMAGE_LIST_SMALL)
+        self.SetImageList(self.gui.tiny_icons, wx.IMAGE_LIST_SMALL)
 
         listctrl.ListCtrlAutoWidthMixin.__init__(self)
         self.initColumnSorter(len(self.columns))
@@ -570,8 +608,8 @@
         return self
 
     def GetSortImages(self):
-        return (self.gui.tiny_palette_images['sort_up'],
-                self.gui.tiny_palette_images['sort_down'])
+        return (self.gui.tiny_icons['sort_up'],
+                self.gui.tiny_icons['sort_down'])
 
     def clearSelection(self):
         # clear state for all rows (undocumented API?)
@@ -673,14 +711,14 @@
     def __init__(self, gui, tree):
         self.gui = gui
         self.tree = tree
-        self.tree.SetImageList(self.gui.small_palette_images)
+        self.tree.SetImageList(self.gui.small_icons)
 
     def populate(self):
         self.tree.DeleteAllItems()
         if self.gui.project is None:
             return
 
-        images = self.gui.small_palette_images
+        images = self.gui.small_icons
         root = self.tree.AddRoot('')
         items = self.gui.project.packages.items()
         items.sort()
@@ -703,14 +741,14 @@
     def __init__(self, gui, tree):
         self.gui = gui
         self.tree = tree
-        self.tree.SetImageList(self.gui.small_palette_images)
+        self.tree.SetImageList(self.gui.small_icons)
 
     def populate(self):
         self.tree.DeleteAllItems()
         if self.gui.project is None:
             return
 
-        images = self.gui.small_palette_images
+        images = self.gui.small_icons
         root = self.tree.AddRoot('')
         todo = [(root, self.gui.project.root_config)]
         while todo:
@@ -821,7 +859,7 @@
 
     def applyFilter(self, event=None):
         self.expr_timer.Stop()
-        dir_list = self.gui.fbook.all.dir_list
+        dir_list = self.gui.all.dir_list
 
         sel = self.filter_by.GetSelection()
         if sel < 0:

Modified: z3/zopejam/trunk/src/zopejam/preferences.py
==============================================================================
--- z3/zopejam/trunk/src/zopejam/preferences.py	(original)
+++ z3/zopejam/trunk/src/zopejam/preferences.py	Wed Aug  3 09:36:44 2005
@@ -10,15 +10,13 @@
 class Preferences:
 
     def __init__(self):
-        self.fn = os.path.join(os.environ["HOME"], ".zopejamrc")
-        
+        self.dir = os.path.join(os.environ["HOME"], ".zopejam")
+        self.projects = {}
+        self.load()
 
+    def load(self):
+        """Load preferences from the preferences file"""
 
-class Project:
-
-    def __init__(self, root_zcml, pythonpath):
-        self.root_zcml = root_zcml  # '/path/to/site.zcml'
-        self.pythonpath = pythonpath
-        self.open_files = []
-
+    def getProjectForFile(self, fn):
+        pass
 

Modified: z3/zopejam/trunk/src/zopejam/propbook.py
==============================================================================
--- z3/zopejam/trunk/src/zopejam/propbook.py	(original)
+++ z3/zopejam/trunk/src/zopejam/propbook.py	Wed Aug  3 09:36:44 2005
@@ -13,8 +13,6 @@
 
 from zopejam import columns
 
-nzo_prefix = 'http://namespaces.zope.org/'
-
 
 class PropertiesNotebook:
 
@@ -137,7 +135,7 @@
         count = 0
         for d in chain:
             if d is self.directive:
-                labelRow("Directive:")
+                labelRow("Type:")
             elif count == 0:
                 labelRow("Context:")
             else:

Modified: z3/zopejam/trunk/src/zopejam/resources.xrc
==============================================================================
--- z3/zopejam/trunk/src/zopejam/resources.xrc	(original)
+++ z3/zopejam/trunk/src/zopejam/resources.xrc	Wed Aug  3 09:36:44 2005
@@ -5,49 +5,29 @@
       <label>&amp;File</label>
       <object class="wxMenuItem" name="newfile">
         <label>&amp;New...</label>
-        <bitmap>icons/menu/filenew.png</bitmap>
+        <bitmap>icons/16x16/filenew.png</bitmap>
         <accel>Ctrl+N</accel>
       </object>
       <object class="wxMenuItem" name="open">
         <label>&amp;Open...</label>
-        <bitmap>icons/menu/fileopen.png</bitmap>
+        <bitmap>icons/16x16/fileopen.png</bitmap>
         <accel>Ctrl+O</accel>
       </object>
       <object class="separator"/>
-      <object class="wxMenuItem" name="openproject">
-        <label>Open &amp;Project...</label>
-        <bitmap>icons/menu/project_open.png</bitmap>
-        </object>
-      <object class="separator"/>
-      <object class="wxMenuItem" name="save">
-        <label>&amp;Save</label>
-        <bitmap>icons/menu/filesave.png</bitmap>
-        <accel>Ctrl+S</accel>
-      </object>
-      <object class="wxMenuItem" name="saveas">
-        <label>Save &amp;as...</label>
-        <bitmap>icons/menu/filesaveas.png</bitmap>
-        <accel>Shift+Ctrl+S</accel>
-      </object>
-      <object class="wxMenuItem" name="saveacopy">
-        <label>Save a cop&amp;y...</label>
-      </object>
       <object class="wxMenuItem" name="saveall">
-        <label>Sa&amp;ve all</label>
-        <bitmap>icons/menu/save_all.png</bitmap>
-      </object>
-      <object class="separator"/>
-      <object class="wxMenuItem" name="rename">
-        <label>R&amp;ename...</label>
+        <label>&amp;Save all</label>
+        <bitmap>icons/16x16/save_all.png</bitmap>
+        <accel>Ctrl+S</accel>
       </object>
       <object class="wxMenuItem" name="close">
         <label>&amp;Close</label>
-        <bitmap>icons/menu/fileclose.png</bitmap>
+        <bitmap>icons/16x16/fileclose.png</bitmap>
+        <accel>Ctrl+W</accel>
       </object>
       <object class="separator"/>
       <object class="wxMenuItem" name="quit">
         <label>&amp;Quit</label>
-        <bitmap>icons/menu/exit.png</bitmap>
+        <bitmap>icons/16x16/exit.png</bitmap>
         <accel>Ctrl+Q</accel>
       </object>
     </object>
@@ -55,75 +35,78 @@
       <label>&amp;Edit</label>
       <object class="wxMenuItem" name="undo">
         <label>&amp;Undo</label>
-        <bitmap>icons/menu/undo.png</bitmap>
+        <bitmap>icons/16x16/undo.png</bitmap>
         <accel>Ctrl+Z</accel>
       </object>
       <object class="wxMenuItem" name="redo">
         <label>&amp;Redo</label>
-        <bitmap>icons/menu/redo.png</bitmap>
+        <bitmap>icons/16x16/redo.png</bitmap>
         <accel>Ctrl+Y</accel>
       </object>
       <object class="separator"/>
       <object class="wxMenuItem" name="cut">
         <label>Cut</label>
-        <bitmap>icons/menu/editcut.png</bitmap>
+        <bitmap>icons/16x16/editcut.png</bitmap>
         <accel>Ctrl+X</accel>
       </object>
       <object class="wxMenuItem" name="copy">
         <label>&amp;Copy</label>
-        <bitmap>icons/menu/editcopy.png</bitmap>
+        <bitmap>icons/16x16/editcopy.png</bitmap>
         <accel>Ctrl+C</accel>
       </object>
       <object class="wxMenuItem" name="paste">
         <label>&amp;Paste</label>
-        <bitmap>icons/menu/editpaste.png</bitmap>
+        <bitmap>icons/16x16/editpaste.png</bitmap>
         <accel>Ctrl+V</accel>
       </object>
       <object class="wxMenuItem" name="delete">
         <label>&amp;Delete</label>
-        <bitmap>icons/menu/editdelete.png</bitmap>
+        <bitmap>icons/16x16/editdelete.png</bitmap>
         <accel>Ctrl+D</accel>
       </object>
       <object class="separator"/>
-      <object class="wxMenuItem" name="projectproperties">
-        <label>&amp;Project properties...</label>
-        <bitmap>icons/menu/configure.png</bitmap>
+      <object class="wxMenuItem" name="preferences">
+        <label>&amp;Preferences</label>
+        <bitmap>icons/16x16/configure.png</bitmap>
       </object>
     </object>
     <object class="wxMenu" name="addmenu">
       <label>&amp;Add</label>
     </object>
+    <object class="wxMenu" name="bookmarks">
+      <label>&amp;Bookmarks</label>
+    </object>
     <object class="wxMenu" name="toolsmenu">
       <label>&amp;Tools</label>
       <object class="wxMenuItem" name="test">
-        <label>&amp;Test configuration</label>
-        <bitmap>icons/menu/launch.png</bitmap>
+        <label>&amp;Test Configuration</label>
+        <bitmap>icons/16x16/launch.png</bitmap>
       </object>
       <object class="separator"/>
       <object class="wxMenuItem" name="package_view">
-        <label>&amp;Packages and files</label>
-        <bitmap>icons/palette/16x16/package.png</bitmap>
+        <label>&amp;Packages and files...</label>
+        <bitmap>icons/16x16/package.png</bitmap>
       </object>
       <object class="wxMenuItem" name="include_view">
-        <label>&amp;Include tree</label>
-        <bitmap>icons/palette/16x16/include_one.png</bitmap>
+        <label>&amp;Include tree...</label>
+        <bitmap>icons/16x16/include_one.png</bitmap>
       </object>
       <object class="separator"/>
       <object class="wxMenuItem" name="restart">
         <label>&amp;Restart</label>
-        <bitmap>icons/menu/bomb.png</bitmap>
+        <bitmap>icons/16x16/bomb.png</bitmap>
       </object>
     </object>
     <object class="wxMenu" name="helpmenu">
       <label>&amp;Help</label>
       <object class="wxMenuItem" name="contents">
         <label>&amp;Contents...</label>
-        <bitmap>icons/menu/contents.png</bitmap>
+        <bitmap>icons/16x16/contents.png</bitmap>
         <accel>F1</accel>
       </object>
       <object class="wxMenuItem" name="about">
         <label>&amp;About...</label>
-        <bitmap>icons/menu/zopejam.png</bitmap>
+        <bitmap>icons/16x16/zopejam.png</bitmap>
       </object>
     </object>
   </object>
@@ -131,66 +114,49 @@
     <title>Zope Jam</title>
     <object class="wxToolBar">
       <object class="tool" name="newfile">
-        <bitmap>icons/toolbar/filenew.png</bitmap>
+        <bitmap>icons/22x22/filenew.png</bitmap>
         <tooltip>Create a new configuration file</tooltip>
         <label>New</label>
       </object>
       <object class="tool" name="open">
-        <bitmap>icons/toolbar/fileopen.png</bitmap>
+        <bitmap>icons/22x22/fileopen.png</bitmap>
         <tooltip>Open a configuration file</tooltip>
         <label>Open</label>
       </object>
-      <object class="separator"/>
-      <object class="tool" name="openproject">
-        <bitmap>icons/toolbar/project_open.png</bitmap>
-        <tooltip>Open a project</tooltip>
-        <label>Project</label>
-      </object>
-      <object class="separator"/>
-      <object class="tool" name="save">
-        <bitmap>icons/toolbar/filesave.png</bitmap>
-        <tooltip>Save this file</tooltip>
-        <label>Save</label>
-      </object>
       <object class="tool" name="saveall">
-        <bitmap>icons/toolbar/save_all.png</bitmap>
-        <tooltip>Save all files</tooltip>
+        <bitmap>icons/22x22/save_all.png</bitmap>
+        <tooltip>Save all changes</tooltip>
         <label>Save All</label>
       </object>
-      <object class="tool" name="close">
-        <bitmap>icons/toolbar/fileclose.png</bitmap>
-        <tooltip>Close this file</tooltip>
-        <label>Close</label>
-      </object>
       <object class="separator"/>
       <object class="tool" name="undo">
-        <bitmap>icons/toolbar/undo.png</bitmap>
+        <bitmap>icons/22x22/undo.png</bitmap>
         <tooltip>Undo</tooltip>
         <label>Undo</label>
       </object>
       <object class="tool" name="redo">
-        <bitmap>icons/toolbar/redo.png</bitmap>
+        <bitmap>icons/22x22/redo.png</bitmap>
         <tooltip>Redo</tooltip>
         <label>Redo</label>
       </object>
       <object class="tool" name="cut">
-        <bitmap>icons/toolbar/editcut.png</bitmap>
+        <bitmap>icons/22x22/editcut.png</bitmap>
         <tooltip>Cut</tooltip>
         <label>Cut</label>
       </object>
       <object class="tool" name="copy">
-        <bitmap>icons/toolbar/editcopy.png</bitmap>
+        <bitmap>icons/22x22/editcopy.png</bitmap>
         <tooltip>Copy</tooltip>
         <label>Copy</label>
       </object>
       <object class="tool" name="paste">
-        <bitmap>icons/toolbar/editpaste.png</bitmap>
+        <bitmap>icons/22x22/editpaste.png</bitmap>
         <tooltip>Paste</tooltip>
         <label>Paste</label>
       </object>
       <object class="separator"/>
       <object class="tool" name="test">
-        <bitmap>icons/toolbar/launch.png</bitmap>
+        <bitmap>icons/22x22/launch.png</bitmap>
         <tooltip>Test the configuration</tooltip>
         <label>Test</label>
       </object>
@@ -203,16 +169,22 @@
       <object class="sizeritem">
         <object class="wxSplitterWindow" name="main_split">
           <orientation>horizontal</orientation>
-          <object class="wxPanel">
+          <object class="wxPanel" name="">
             <object class="wxFlexGridSizer">
               <cols>1</cols>
               <growablerows>0</growablerows>
               <growablecols>0</growablecols>
               <object class="sizeritem">
-                <object class="wxNotebook" name="files_notebook"/>
+                <object class="wxPanel" name="list_container">
+                  <object class="wxFlexGridSizer">
+                    <cols>1</cols>
+                    <growablerows>0</growablerows>
+                    <growablecols>0</growablecols>
+                  </object>
+                </object>
                 <flag>wxBOTTOM|wxEXPAND</flag>
                 <border>1</border>
-                      </object>
+              </object>
             </object>
           </object>
           <object class="wxPanel">
@@ -245,13 +217,16 @@
             <flag>wxEXPAND|wxALIGN_BOTTOM</flag>
             <minsize>300, 16</minsize>
           </object>
+          <growablecols>0</growablecols>
+          <growablerows>0</growablerows>
           <object class="sizeritem">
-            <object class="wxPanel" name="project_name_panel"/>
+            <object class="wxGauge" name="progress_gauge">
+              <range>100</range>
+              <style></style>
+            </object>
             <flag>wxEXPAND</flag>
             <minsize>400, 16</minsize>
           </object>
-          <growablecols>0</growablecols>
-          <growablerows>0</growablerows>
         </object>
         <flag>wxALL|wxEXPAND</flag>
         <border>2</border>
@@ -318,7 +293,7 @@
                 </object>
                 <object class="sizeritem">
                   <object class="wxBitmapButton" name="filter_clear">
-                    <bitmap>icons/other/clear_left.png</bitmap>
+                    <bitmap>icons/16x16/clear_left.png</bitmap>
                     <style>wxNO_BORDER</style>
                     <enabled>0</enabled>
                   </object>
@@ -369,7 +344,7 @@
           <growablecols>0</growablecols>
           <object class="sizeritem">
             <object class="wxStaticBitmap">
-              <bitmap>icons/other/zopejam.png</bitmap>
+              <bitmap>icons/misc/zopejam.png</bitmap>
                       </object>
             <flag>wxALIGN_CENTRE</flag>
                     </object>
@@ -576,7 +551,7 @@
         </object>
       </object>
     </object>
-    <bitmap>icons/other/zopejam.png</bitmap>
+    <bitmap>icons/misc/zopejam.png</bitmap>
     <object class="wxWizardPageSimple">
       <object class="wxBoxSizer">
         <orient>wxVERTICAL</orient>
@@ -720,7 +695,8 @@
   </object>
   <object class="wxFrame" name="tip_frame">
     <title></title>
-    <style>wxFRAME_NO_TASKBAR|wxNO_BORDER</style>
+    <centered>0</centered>
+    <style>wxFRAME_NO_TASKBAR|wxFRAME_FLOAT_ON_PARENT|wxNO_BORDER</style>
     <object class="wxFlexGridSizer">
       <cols>1</cols>
       <growablerows>0</growablerows>
@@ -765,22 +741,22 @@
     <object class="separator"/>
     <object class="wxMenuItem" name="cut">
       <label>Cut</label>
-      <bitmap>icons/menu/editcut.png</bitmap>
+      <bitmap>icons/16x16/editcut.png</bitmap>
       <accel>Ctrl+X</accel>
     </object>
     <object class="wxMenuItem" name="copy">
       <label>&amp;Copy</label>
-      <bitmap>icons/menu/editcopy.png</bitmap>
+      <bitmap>icons/16x16/editcopy.png</bitmap>
       <accel>Ctrl+C</accel>
     </object>
     <object class="wxMenuItem" name="paste">
       <label>&amp;Paste</label>
-      <bitmap>icons/menu/editpaste.png</bitmap>
+      <bitmap>icons/16x16/editpaste.png</bitmap>
       <accel>Ctrl+V</accel>
     </object>
     <object class="wxMenuItem" name="clear">
       <label>C&amp;lear</label>
-      <bitmap>icons/menu/editdelete.png</bitmap>
+      <bitmap>icons/16x16/editdelete.png</bitmap>
       <accel>Ctrl+D</accel>
     </object>
   </object>
@@ -798,4 +774,77 @@
       <style>wxTR_HAS_BUTTONS|wxTR_HIDE_ROOT|wxSUNKEN_BORDER</style>
     </object>
   </object>
+  <object class="wxFrame" name="prefs_frame">
+    <title>Preferences</title>
+    <object class="wxFlexGridSizer">
+      <cols>2</cols>
+      <growablerows>0</growablerows>
+      <growablecols>1</growablecols>
+      <object class="sizeritem">
+        <object class="wxListCtrl">
+          <style>wxLC_ICON|wxSUNKEN_BORDER</style>
+        </object>
+        <flag>wxALL|wxEXPAND</flag>
+        <border>4</border>
+      </object>
+      <object class="sizeritem">
+        <object class="wxPanel">
+          <object class="wxFlexGridSizer">
+            <cols>1</cols>
+            <growablecols>0</growablecols>
+            <growablerows>1</growablerows>
+            <object class="sizeritem">
+              <object class="wxPanel">
+                <style>wxSIMPLE_BORDER</style>
+                <object class="wxBoxSizer">
+                  <orient>wxVERTICAL</orient>
+                  <object class="sizeritem">
+                    <object class="wxStaticText">
+                      <label>Projects</label>
+                      <font>
+                        <size>12</size>
+                        <family>default</family>
+                        <style>normal</style>
+                        <weight>bold</weight>
+                        <underlined>0</underlined>
+                      </font>
+                    </object>
+                    <flag>wxALL|wxALIGN_CENTRE_VERTICAL</flag>
+                    <border>4</border>
+                  </object>
+                </object>
+              </object>
+              <flag>wxEXPAND</flag>
+            </object>
+          </object>
+        </object>
+        <flag>wxALL|wxEXPAND</flag>
+        <border>4</border>
+        <minsize>450, 300</minsize>
+      </object>
+      <object class="spacer">
+        <size>0,0</size>
+      </object>
+      <object class="sizeritem">
+        <object class="wxBoxSizer">
+          <orient>wxHORIZONTAL</orient>
+          <object class="sizeritem">
+            <object class="wxButton">
+              <label>Cancel</label>
+            </object>
+            <flag>wxALL</flag>
+            <border>4</border>
+          </object>
+          <object class="sizeritem">
+            <object class="wxButton">
+              <label>Ok</label>
+            </object>
+            <flag>wxALL</flag>
+            <border>4</border>
+          </object>
+        </object>
+        <flag>wxALIGN_RIGHT</flag>
+      </object>
+    </object>
+  </object>
 </resource>


More information about the z3-checkins mailing list