Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/develop-activity/develop_app.py
diff options
context:
space:
mode:
authorGonzalo Odiard <godiard@gmail.com>2014-02-11 20:00:39 (GMT)
committer Gonzalo Odiard <godiard@gmail.com>2014-02-11 20:16:13 (GMT)
commit3add3f3733354dfb9897485cff8c8d672c28e6a6 (patch)
tree25dc5e87636a15c456f636c94e34157e4816ff1c /develop-activity/develop_app.py
parent7030f1fc6cfc65bab8eca9c4b1798a5cb6c12994 (diff)
Big logviewer refactoring. Fix update of opened files
Diffstat (limited to 'develop-activity/develop_app.py')
-rw-r--r--develop-activity/develop_app.py33
1 files changed, 31 insertions, 2 deletions
diff --git a/develop-activity/develop_app.py b/develop-activity/develop_app.py
index 1430930..a9a877d 100644
--- a/develop-activity/develop_app.py
+++ b/develop-activity/develop_app.py
@@ -46,7 +46,7 @@ import logviewer
import sourceview_editor
S_WHERE = sourceview_editor.S_WHERE
import new_activity
-
+from widgets import TabLabel
from symbols_tree import SymbolsTree
DEBUG_FILTER_LEVEL = 1
@@ -428,7 +428,11 @@ class DevelopActivity(activity.Activity):
"""
self.open_activity(activity_dir)
namefilter = ActivityBundle(activity_dir).get_bundle_id()
- self.logview = logviewer.LogMinder(self, namefilter)
+ self._log_files_viewer = logviewer.LogFilesViewer(namefilter)
+ self._log_files_viewer.connect('file-selected',
+ self.__log_file_selected_cb)
+ self.treenotebook.add_page(_("Log"), self._log_files_viewer)
+
self.set_dirty(False)
def refresh_files(self):
@@ -463,6 +467,31 @@ class DevelopActivity(activity.Activity):
self.load_file(path)
self.numb = False
+ def __log_file_selected_cb(self, log_file_viewer, path):
+ if not path:
+ return
+
+ if os.path.isdir(path):
+ #do not try to open folders
+ return
+
+ # Set buffer and scroll down
+ if self.editor.set_to_page_like(path):
+ return
+ newlogview = logviewer.LogView(path, log_file_viewer)
+ scrollwnd = Gtk.ScrolledWindow()
+ scrollwnd.set_policy(Gtk.PolicyType.AUTOMATIC,
+ Gtk.PolicyType.AUTOMATIC)
+ scrollwnd.add(newlogview)
+ scrollwnd.page = newlogview
+ tablabel = TabLabel(newlogview, os.path.basename(path))
+ tablabel.connect(
+ 'tab-close', lambda widget, child:
+ self.editor.remove_page(self.editor.page_num(child)))
+ self.editor.append_page(scrollwnd, tablabel)
+ self.editor.show_all()
+ self.editor.set_current_page(-1)
+
def save_bundle(self, btn):
#create bundle
builder = XOPackager(Builder(Config(self.activity_dir, '/tmp')))