[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

gEDA-cvs: geda_manager.git: branch: master updated (cfb26232784a97898b9e8b1d6244fe8585942834)



The branch, master has been updated
       via  cfb26232784a97898b9e8b1d6244fe8585942834 (commit)
      from  0724a1f602ebebbdc4d28eb4a900043c50570070 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


=========
 Summary
=========

 images/bitmaps/bullet_wrench.png     |  Bin 0 -> 448 bytes
 images/bitmaps/text_align_center.png |  Bin 0 -> 234 bytes
 src/dependencyloop.py                |    4 +-
 src/gedamanager.py                   |  254 ++++++++++++++++++++++++++++------
 src/processdependencyevent.py        |   49 ++++---
 src/utils.py                         |   46 ++++---
 6 files changed, 272 insertions(+), 81 deletions(-)
 create mode 100644 images/bitmaps/bullet_wrench.png
 create mode 100644 images/bitmaps/text_align_center.png


=================
 Commit Messages
=================

commit cfb26232784a97898b9e8b1d6244fe8585942834
Author: Newell Jensen <jensen@xxxxxxxxxxxxxxxx>
Date:   Mon Dec 1 00:22:24 2008 -0800

    Added icon for .txt and .cmd files.  Sorted Source Tree View.  Minor
    changes.

:000000 100644 0000000... 67817e6... A	images/bitmaps/bullet_wrench.png
:000000 100644 0000000... 57beb38... A	images/bitmaps/text_align_center.png
:100644 100644 9d0187e... d41641b... M	src/dependencyloop.py
:100644 100644 dbf8cde... 3e28361... M	src/gedamanager.py
:100644 100644 b48806d... 8b2914a... M	src/processdependencyevent.py
:100644 100644 7a4dbab... f37c4ec... M	src/utils.py

=========
 Changes
=========

commit cfb26232784a97898b9e8b1d6244fe8585942834
Author: Newell Jensen <jensen@xxxxxxxxxxxxxxxx>
Date:   Mon Dec 1 00:22:24 2008 -0800

    Added icon for .txt and .cmd files.  Sorted Source Tree View.  Minor
    changes.

diff --git a/images/bitmaps/bullet_wrench.png b/images/bitmaps/bullet_wrench.png
new file mode 100644
index 0000000..67817e6
Binary files /dev/null and b/images/bitmaps/bullet_wrench.png differ
diff --git a/images/bitmaps/text_align_center.png b/images/bitmaps/text_align_center.png
new file mode 100644
index 0000000..57beb38
Binary files /dev/null and b/images/bitmaps/text_align_center.png differ
diff --git a/src/dependencyloop.py b/src/dependencyloop.py
index 9d0187e..d41641b 100644
--- a/src/dependencyloop.py
+++ b/src/dependencyloop.py
@@ -1,5 +1,3 @@
-#! /usr/bin/env python
-
 # gEDA Manager
 # Copyright (C) 2008 Newell Jensen
 # Copyright (C) 2008 gEDA Contributors (see ChangeLog for details)
@@ -52,7 +50,7 @@ class DependencyLoop:
         self.threaded_notifier.start()
         # start watching the project's directory recursively
         self.wdd = None
-        mask = IN_MODIFY | IN_CREATE | IN_DELETE | IN_MOVED_FROM
+        mask = IN_CREATE | IN_DELETE | IN_MOVED_FROM#IN_MODIFY | IN_CREATE | IN_DELETE | IN_MOVED_FROM
         if self.g.project.directory != None:
             self.wdd = self.watch_manager.add_watch(self.g.project.directory, mask, rec=True)
 
diff --git a/src/gedamanager.py b/src/gedamanager.py
index dbf8cde..3e28361 100644
--- a/src/gedamanager.py
+++ b/src/gedamanager.py
@@ -158,7 +158,6 @@ class gEDAManager:
         tooltips.set_tip(widget, action.get_property('tooltip'))
         
 
-
     def __init_gui_sections__(self):
         """ Method to create the main gui sections of the top-level window. """
         # Partitioning the window
@@ -470,6 +469,7 @@ class gEDAManager:
     def set_dependencies_tree_to_new_project(self):
         """ Method to set the tree to newly created project object. """
 
+        self.dependencyloop.switch_projects()
         self.dependencies.clear()
         # Parent Folder
         project_path = self.project.directory + '/' + self.project.name        
@@ -486,32 +486,34 @@ class gEDAManager:
         Method to the load the 'Sources' TreeView from the
         directory structure of the project.
         """
-        # Clear out the sources first
-        self.sources.clear()
-        # Start adding data to the Model
-        if os.path.exists(self.project.directory):
-            os.chdir(self.project.directory)
-            node = None
-            dictionary = {}
-            icon = gtk.IconTheme() # The icon used throughout the function
-            for root, dirs, files in os.walk(self.project.directory):
-                if root == self.project.directory:
-                    image = icon.load_icon(self.utils.icon_lut['project'], 22, 0)
-                else:
-                    image = icon.load_icon(self.utils.icon_lut['folder'], 22, 0)
-
-                folder = root.split('/')[-1]
-                try:
-                    node = self.sources.append(dictionary[root], [image, folder, root])
-                except KeyError:
-                    node = self.sources.append(None, [image, folder, root])
-                for f in files:
-                    image = icon.load_icon(self.utils.load_image(f), 22, 0)
-                    self.sources.append(node, [image, f, os.path.join(root, f)])
-                for d in dirs:
-                    dictionary[os.path.join(root, d)] = node
-
-            self.sources_tree.expand_all()
+        if self.sources != None:
+            # Clear out the sources first
+            self.sources.clear()
+            # Start adding data to the Model
+            if os.path.exists(self.project.directory):
+                os.chdir(self.project.directory)
+                node = None
+                dictionary = {}
+                icon = gtk.IconTheme() # The icon used throughout the function
+                for root, dirs, files in os.walk(self.project.directory):
+                    if root == self.project.directory:
+                        image = icon.load_icon(self.utils.icon_lut['project'], 22, 0)
+                    else:
+                        image = icon.load_icon(self.utils.icon_lut['folder'], 22, 0)
+
+                    folder = root.split('/')[-1]
+                    try:
+                        node = self.sources.append(dictionary[root], [image, folder, root])
+                    except KeyError:
+                        node = self.sources.append(None, [image, folder, root])
+                    for f in [name for dec,name in sorted((os.path.splitext(f)[1][1:],f) for f in files)]: # List expression sorts by file extension
+                        if not f.endswith('~'):
+                            image = icon.load_icon(self.utils.load_image(f), 22, 0)
+                            self.sources.append(node, [image, f, os.path.join(root, f)])
+                    for d in dirs:
+                        dictionary[os.path.join(root, d)] = node
+
+                self.sources_tree.expand_all()
 
         
 ##     def load_sources_tree(self, file_list, parent=None, parent_path=None):
@@ -672,7 +674,6 @@ class gEDAManager:
         f = file('output.log', 'a')
         f.writelines(output)
         f.close()
-        #self.output_textbuffer.delete(self.output_textbuffer.get_start_iter(), self.output_textbuffer.get_end_iter())        
 
         startiter, enditer = self.errors_textbuffer.get_bounds()
         errors = self.errors_textbuffer.get_text(startiter, enditer)
@@ -680,7 +681,6 @@ class gEDAManager:
         f = file('error.log', 'a')
         f.writelines(errors)
         f.close()
-        #self.errors_textbuffer.delete(self.errors_textbuffer.get_start_iter(), self.errors_textbuffer.get_end_iter())
 
 
     @exceptions
@@ -747,7 +747,7 @@ class gEDAManager:
         @param menuitem menuitem that threw the event
         @param data optional user data to pass in
         """
-        gnomevfs.url_show('http://www.gempillar.com/docs/')
+        gnomevfs.url_show('http://www.gempillar.com/docs/geda-manager')
 
 
     def cb_new_project(self, menuitem, data=None):
@@ -1100,7 +1100,51 @@ class gEDAManager:
         dialog.destroy()
 
 
-    def open_in_editor(self, action):
+    def cb_delete(self, menuitem, data=None):
+        """!
+        Event handler for 'Delete'.
+        @param menuitem that threw the event.
+        @param data optional to pass in.
+        """
+        # Have a popup come up that asks them if they really want to do this
+        # or not.
+        # Just delete the file from the directory structure
+        selection = self.sources_tree.get_selection()
+        model, selection_iter = selection.get_selected()
+        selected_node = self.sources.get_value(selection_iter, 2)
+
+        os.system('rm ' + selected_node)
+        self.sources.remove(selection_iter)
+        self.output_textbuffer.insert(self.output_textiter, self.utils.get_time() + ':\nDeleted ' + selected_node + '.\n')
+        node = self.utils.get_filename_from_filepath(selected_node)
+        if node in self.project.dependency_dict and list(self.utils.flatten(self.project.file_list)).count(node) == 1:
+            del self.project.dependency_dict[node]
+        
+
+    def cb_delete_folder(self, widget):
+        """!
+        Event occurs when the user chooses to delete a folder from the project.
+        @param widget that threw the event.
+        """
+        # Just delete the folder from the directory structure
+        # Have a popup come up that asks them if they really want to do
+        # this or not.
+        selection = self.sources_tree.get_selection()
+        model, selection_iter = selection.get_selected()
+        selected_node = self.sources.get_value(selection_iter, 2)
+
+        exists = os.path.exists(selected_node)
+        if exists: # delete directory recursively
+            for f in os.listdir(selected_node):
+                if f in self.project.dependency_dict and list(self.utils.flatten(self.project.file_list)).count(f) == 1:
+                    del self.project.dependency_dict[f]
+            os.system('rm -rf ' + selected_node)
+            self.sources.remove(selection_iter)
+            self.output_textbuffer.insert(self.output_textiter, self.utils.get_time() + ':\nDeleted ' + selected_node + '.\n')
+
+
+    @exceptions
+    def cb_open_in_editor(self, action):
         """!
         Event occurs when the user wants to open a source file in the editor.
         @param action gtk.Action object involved with this event
@@ -1112,19 +1156,146 @@ class gEDAManager:
         self.utils.run_command(self, selected_node, None, 'txt')
 
 
-    def cb_remove_file_from_project(self, action):
+    @exceptions
+    def cb_rename_folder(self, action):
         """!
-        Event occurs when the user chooses to remove a file from the project.
+        Event handler for renaming a folder.
         @param action gtk.Action object involved with this event
         """
-        self.utils.update_file_list(self, 4)
+        def response_to_dialog(entry, dialog, response):
+            dialog.response(response)
+
+        selection = self.sources_tree.get_selection()
+        model, selection_iter = selection.get_selected()
+        old_path = self.sources.get_value(selection_iter, 2)
+        path = self.sources.get_path(selection_iter)
+
+        dialog = gtk.MessageDialog(self.window,
+                                   (gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT),
+                                   gtk.MESSAGE_QUESTION,
+                                   gtk.BUTTONS_OK_CANCEL,
+                                   gtk.STOCK_DIRECTORY)
+        dialog.set_markup('<b>Please enter the new folder name:\n</b>')
+        entry = gtk.Entry()
+        entry.show()
+        entry.connect('activate', response_to_dialog, dialog, gtk.RESPONSE_OK)
+        hbox = gtk.HBox()
+        hbox.show()
+        hbox.pack_end(entry)
+        dialog.vbox.pack_end(hbox, True, True, 0)
+        dialog.show()
+        dialog.run()
+        new_text = entry.get_text()
+        dialog.destroy()
+        new_path = old_path.rpartition('/')[0] + '/' + new_text
+
+        if '.' not in new_text:
+            ## We are going to handle the project folder in cb_rename_folder
+            if old_path == self.project.directory:
+                # Project Folder
+                os.rename(old_path, new_path)
+                model[path][1] = new_text
+                model[path][2] = new_path
+                project_file = new_path + '/' + self.project.name + '.gm'
+                os.remove(project_file)
+                self.project.directory = new_path
+                self.project.name = new_text
+                self.project.file_list[0] = new_text
+                self.project.file_list[1][0] = new_text + '.gm'
+                self.project.save()
+
+                model[(0)][1] = new_text
+                model[(0)][2] = new_path + '/' + new_text
+                model[(0,0)][1] = new_text + '.gm'
+                model[(0,0)][2] = new_path + '/' + new_text + '.gm'
+                self.output_textbuffer.insert(self.output_textiter, 'Project changed from ' + old_path + ' to ' + new_path + '.\n')
+            else:
+                # Regular folder
+                if os.path.exists(new_path):
+                    self.output_textbuffer.insert(self.output_textiter, 'Folder already exists with this name.  Cannot rename.\n')
+                    return
+                os.rename(old_path, new_path)
+
 
-    def cb_remove_folder_from_project(self, action):
+    @exceptions
+    def cb_rename(self, action):
         """!
-        Event occurs when the user chooses to remove a folder from the project.
+        Event handler for renaming a file.
         @param action gtk.Action object involved with this event
         """
-        self.utils.update_file_list(self, 5)
+        def response_to_dialog(entry, dialog, response):
+            dialog.response(response)
+
+        selection = self.sources_tree.get_selection()
+        model, selection_iter = selection.get_selected()
+        old_path = self.sources.get_value(selection_iter, 2)
+        path = self.sources.get_path(selection_iter)
+
+        dialog = gtk.MessageDialog(self.window,
+                                   (gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT),
+                                   gtk.MESSAGE_QUESTION,
+                                   gtk.BUTTONS_OK_CANCEL,
+                                   gtk.STOCK_DIRECTORY)
+        dialog.set_markup('<b>Please enter the new name\n(including extension if changing):</b>')
+        entry = gtk.Entry()
+        entry.show()
+        entry.connect('activate', response_to_dialog, dialog, gtk.RESPONSE_OK)
+        hbox = gtk.HBox()
+        hbox.show()
+        hbox.pack_end(entry)
+        dialog.vbox.pack_end(hbox, True, True, 0)
+        dialog.show()
+        dialog.run()
+        new_text = entry.get_text()
+        dialog.destroy()
+        new_path = old_path.rpartition('/')[0] + '/' + new_text
+
+        ## We are going to handle the project folder in cb_rename_folder
+##         if old_path == self.project.directory and '.' not in new_text: 
+##             # Project Folder
+##             os.rename(old_path, new_path)
+##             model[path][1] = new_text
+##             model[path][2] = new_path
+##             project_file = new_path + '/' + self.project.name + '.gm'
+##             os.remove(project_file)
+##             self.project.directory = new_path
+##             self.project.name = new_text
+##             self.project.file_list[0] = new_text
+##             self.project.file_list[1][0] = new_text + '.gm'
+##             self.project.save()
+
+##             model[(0)][1] = new_text
+##             model[(0)][2] = new_path + '/' + new_text
+##             model[(0,0)][1] = new_text + '.gm'
+##             model[(0,0)][2] = new_path + '/' + new_text + '.gm'
+##             self.output_textbuffer.insert(self.output_textiter, 'Project changed from ' + old_path + ' to ' + new_path + '.\n')                        
+
+        if '.' in new_text and '.' in old_path:
+            # File
+            os.rename(old_path, new_path)
+            model[path][1] = new_text
+            model[path][2] = new_path
+            icon = gtk.IconTheme()
+            model[path][0] = icon.load_icon(self.utils.icon_lut[self.utils.get_node_ext(new_text)], 22, 0)
+            self.output_textbuffer.insert(self.output_textiter, old_path + ' changed to ' + new_path + '.\n')
+
+##         elif '.' in new_text and '.' not in old_path: # Folder being changed
+##             pass # don't allow it to change names
+
+##         elif '.' not in new_text and '.' in old_path: # File being changed
+##             pass # don't allow it to change names
+
+        else:
+            # Folder -- so image does not need to be changed
+            if os.path.exists(new_path):
+                self.output_textbuffer.insert(self.output_textiter, 'Folder already exists with this name.  Cannot rename.\n')
+                return
+            os.rename(old_path, new_path)
+            model[path][1] = new_text
+            model[path][2] = new_path
+            self.output_textbuffer.insert(self.output_textiter, old_path + ' changed to ' + new_path + '.\n')            
+
+        #self.utils.update_file_list(self) # update file list
 
 
     def cb_cursor_changed(self, widget):
@@ -1211,12 +1382,15 @@ class gEDAManager:
                 return
             popup_menu = gtk.Menu()
             actiongroup = gtk.ActionGroup('Popup')
-            actiongroup_list = [('Open in Editor', None, '_Open in Editor', None, None, self.open_in_editor),
-                                ('Remove File from Project', gtk.STOCK_REMOVE, 'R_emove File from Project', None, None, self.cb_remove_file_from_project),
+            actiongroup_list = [('Rename', None, '_Rename', None, None, self.cb_rename),
+                                ('Rename Folder', None, '_Rename Folder', None, None, self.cb_rename_folder),                                
+                                ('Open in Editor', None, '_Open in Editor', None, None, self.cb_open_in_editor),
                                 ('New Source...', gtk.STOCK_FILE, '_New Source...', None, None, self.cb_new_source),
                                 ('Copy Existing Source To Project...', gtk.STOCK_COPY, '_Copy Existing Source To Project...', None, None, self.cb_add_copy_source),
                                 ('New Folder', gtk.STOCK_DIRECTORY, 'New _Folder', None, None, self.cb_new_folder),
-                                ('Remove Folder from Project', gtk.STOCK_REMOVE, 'R_emove Folder from Project', None, None, self.cb_remove_folder_from_project),]
+                                ('Delete', gtk.STOCK_DELETE, '_Delete', '<Control>d', None, self.cb_delete),
+                                ('Delete Folder', gtk.STOCK_DELETE, '_Delete Folder', None, None, self.cb_delete_folder),]
+
 
             actiongroup.add_actions(actiongroup_list)
             self.popup_uimanager.insert_action_group(actiongroup, 0)
diff --git a/src/processdependencyevent.py b/src/processdependencyevent.py
index b48806d..8b2914a 100644
--- a/src/processdependencyevent.py
+++ b/src/processdependencyevent.py
@@ -1,5 +1,3 @@
-#! /usr/bin/env python
-
 # gEDA Manager
 # Copyright (C) 2008 Newell Jensen
 # Copyright (C) 2008 gEDA Contributors (see ChangeLog for details)
@@ -42,37 +40,52 @@ class ProcessDependencyEvent(ProcessEvent):
         self.g = gedamanager
 
 
-    def process_IN_MODIFY(self, event):
-        """!
-        Method to process the IN_MODIFY event from the pyinotify module
-        @param event current IN_MODIFY event that was caught for the
-        project's filesystem
-        """
-        print 'processing in modify'
-        filename = self.g.utils.get_filename_from_filepath(event.pathname)
-        self.g.load_sources_tree()
-        if filename != None and self.g.project.dependency_dict != None:
-            if filename in self.g.project.dependency_dict:
-                print 'filename in process catcher:',filename
-                self.g.utils.update_dependency_dict(self.g, filename, True)
-                self.g.utils.update_file_list(self.g)
+    ## def process_IN_MODIFY(self, event):
+    ##     """!
+    ##     Method to process the IN_MODIFY event from the pyinotify module
+    ##     @param event current IN_MODIFY event that was caught for the section of
+    ##     filesystem under watch
+    ##     """
+    ##     print 'processing in modify'
+    ##     filename = self.g.utils.get_filename_from_filepath(event.pathname)
+    ##     self.g.load_sources_tree()
+    ##     if filename != None and self.g.project.dependency_dict != None:
+    ##         if filename in self.g.project.dependency_dict:
+    ##             print 'filename in process catcher:',filename
+    ##             self.g.utils.update_dependency_dict(self.g, filename, True)
+    ##             self.g.utils.update_file_list(self.g)
 
 
     def process_IN_DELETE(self, event):
+        """!
+        Method to process the IN_DELETE event from the pyinotify module
+        @param event current IN_DELETE event that was caught for the section of
+        filesystem under watch
+        """
         print 'processing delete'
         filename = self.g.utils.get_filename_from_filepath(event.pathname)
         self.g.load_sources_tree()
-        self.g.dependencyloop.switch_projects()
+        #self.g.dependencyloop.switch_projects()
 
 
     def process_IN_CREATE(self, event):
+        """!
+        Method to process the IN_CREATE event from the pyinotify module
+        @param event current IN_CREATE event that was caught for the section of
+        filesystem under watch
+        """
         print 'processing create'
         filename = self.g.utils.get_filename_from_filepath(event.pathname)
         self.g.load_sources_tree()
-        self.g.dependencyloop.switch_projects()
+        #self.g.dependencyloop.switch_projects()
 
 
     def process_IN_MOVED_FROM(self, event):
+        """!
+        Method to process the IN_MOVED_FROM event from the pyinotify module
+        @param event current IN_MOVED_FROM event that was caught for the
+        section of filesystem under watch
+        """
         print 'processing move from'
         filename = self.g.utils.get_filename_from_filepath(event.pathname)
         self.g.load_sources_tree()
diff --git a/src/utils.py b/src/utils.py
index 7a4dbab..f37c4ec 100644
--- a/src/utils.py
+++ b/src/utils.py
@@ -1,5 +1,3 @@
-#! /usr/bin/env python
-
 # gEDA Manager
 # Copyright (C) 2008 Newell Jensen
 # Copyright (C) 2008 gEDA Contributors (see ChangeLog for details)
@@ -101,11 +99,17 @@ class Utils:
         gtk.icon_theme_add_builtin_icon('bom', 22, image)
         image = gtk.gdk.pixbuf_new_from_file('../images/bitmaps/page_gear.png')
         gtk.icon_theme_add_builtin_icon('config', 22, image)
+        image = gtk.gdk.pixbuf_new_from_file('../images/bitmaps/bullet_wrench.png')
+        gtk.icon_theme_add_builtin_icon('cmd', 22, image)
+        image = gtk.gdk.pixbuf_new_from_file('../images/bitmaps/text_align_center.png')
+        gtk.icon_theme_add_builtin_icon('txt', 22, image)
         
 
         self.configfiles = ['gschemrc','.gschemrc','gafrc','.gafrc','gnetlistrc','.gnetlistrc','gattribrc','.gattribrc','attribs','.attribs']
 
-        self.icon_lut = {'config': 'config',
+        self.icon_lut = {'txt': 'txt',
+                         'cmd': 'cmd',
+                         'config': 'config',
                          'bom': 'bom',
                          'bom1': 'bom',
                          'bom2': 'bom',
@@ -366,17 +370,17 @@ class Utils:
             if filename in g.project.dependency_dict:
                 del g.project.dependency_dict[filename]
             g.output_textbuffer.insert(g.output_textiter, self.get_time() + ':\nRemoved ' + selected_node + ' from project.\n')
-        elif index == 5:
-            # Logic here to remove a folder
-            for f in os.listdir(selected_node):
-                # Remove from dependency tree
-                if self.is_filename_in_dependencies(g, filename, True):
-                    g.output_textbuffer.insert(g.output_textiter, self.get_time() + ':\nRemoved ' + selected_node + ' from dependencies tree.\n')
-                # Remove from dependency_dict
-#                if f in g.project.dependency_dict and list(self.flatten(g.project.file_list)).count(f) == 1:
-                    del g.project.dependency_dict[f]
-            g.sources.remove(selection_iter)
-            g.output_textbuffer.insert(g.output_textiter, self.get_time() + ':\nRemoved ' + selected_node + ' from project.\n')
+##         elif index == 5:
+##             # Logic here to remove a folder
+##             for f in os.listdir(selected_node):
+##                 # Remove from dependency tree
+##                 if self.is_filename_in_dependencies(g, filename, True):
+##                     g.output_textbuffer.insert(g.output_textiter, self.get_time() + ':\nRemoved ' + selected_node + ' from dependencies tree.\n')
+##                 # Remove from dependency_dict
+## #                if f in g.project.dependency_dict and list(self.flatten(g.project.file_list)).count(f) == 1:
+##                     del g.project.dependency_dict[f]
+##             g.sources.remove(selection_iter)
+##             g.output_textbuffer.insert(g.output_textiter, self.get_time() + ':\nRemoved ' + selected_node + ' from project.\n')
 
         # Create Project's File List
 ##         g.project.file_list = [] 
@@ -445,10 +449,10 @@ class Utils:
             
         if ext == 'sch':
             # Parent folders
-            simulation = g.processes.append(None, ['Simulate Schematic(s)', None, None])
-            create_pcb = g.processes.append(None, ['Create PCB for Schematic(s)', None, None])
-            create_netlist = g.processes.append(None, ['Create Netlist for Schematic(s)', None, None])
-            modify_attributes = g.processes.append(None, ['Modify Attributes for Schematic(s)', None, None])
+            simulation = g.processes.append(None, ['Simulate', None, None])
+            create_pcb = g.processes.append(None, ['Create PCB', None, None])
+            create_netlist = g.processes.append(None, ['Create Netlist', None, None])
+            modify_attributes = g.processes.append(None, ['Modify Attributes', None, None])
 
             # Simulate
             image = icon.load_icon(self.icon_lut['spice'], 22, 0) 
@@ -581,7 +585,7 @@ class Utils:
         @param ext extension of the selected file
         """
         g = gedamanager
-        files = ['net','log','bom','bom1','bom2','v','vhd','gm','txt']
+        files = ['net','log','bom','bom1','bom2','v','vhd','gm','txt','cmd']
         # Sources
         if ext != None:
             os.chdir(filepath.rpartition('/')[0])
@@ -623,6 +627,9 @@ class Utils:
                     g.tools['editor'] = Popen([g.settings.editor, filepath])
                 elif g.tools['editor'].poll() == None: # Process is still running
                     print 'editor in use'
+                    # TODO -- Need to try and change this so they can have as many
+                    # instances of the editor open as they want.
+                    # Make a system() call instead of doing a subprocess
 
         else: # Processes
             os.chdir(highlighted_source.rpartition('/')[0])
@@ -664,7 +671,6 @@ class Utils:
                         if x.endswith('.sch'):
                             for y in g.project.dependency_dict[x]:
                                 if y == filename:
-                                    print 'Fuck yeah'
                                     # Add to list
                                     schematics_list.append(x)
                                     




_______________________________________________
geda-cvs mailing list
geda-cvs@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-cvs