Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLucian Branescu Mihaila <lucian.branescu@gmail.com>2009-11-29 20:33:50 (GMT)
committer Lucian Branescu Mihaila <lucian.branescu@gmail.com>2009-11-29 20:33:50 (GMT)
commit08c89bc9aa683983141b56f20fb6ceb8b68f0ee8 (patch)
tree470de90431af64047a5fcac57692b9f95a25177d
parent6d68f64c489b3bd6ff12325c203c3034ae8b760c (diff)
Refactor usercode.pyHEADmaster
-rw-r--r--downloadmanager.py10
-rw-r--r--usercode.py57
2 files changed, 33 insertions, 34 deletions
diff --git a/downloadmanager.py b/downloadmanager.py
index ec0923f..4f80259 100644
--- a/downloadmanager.py
+++ b/downloadmanager.py
@@ -401,10 +401,18 @@ def save_document(activity, browser):
local_file.initWithPath(os.path.join(temp_dir, 'index.html'))
local_data.initWithPath(os.path.join(temp_dir, 'data'))
+ # persist settings
persist.persistFlags = interfaces.nsIWebBrowserPersist \
.PERSIST_FLAGS_REPLACE_EXISTING_FILES
+ persist.persistFlags |= interfaces.nsIWebBrowserPersist \
+ .PERSIST_FLAGS_AUTODETECT_APPLY_CONVERSION
+ persist.persistFlags |= interfaces.nsIWebBrowserPersist \
+ .ENCODE_FLAGS_ENCODE_BASIC_ENTITIES
+
persist.progressListener = _SaveDocumentProgressListener(activity,
temp_dir, browser.props.title)._wrapped
+
+ # finally kick off the saving
persist.saveDocument(browser.dom_window.document, local_file, local_data,
None, 0, 0)
@@ -423,6 +431,8 @@ class _SaveDocumentProgressListener(object):
interfaces.nsIWebProgressListener)
def onStateChange(self, web_progress, request, state_flags, status):
+ logging.debug('######### state_flags %s, status %s' \
+ %s (state_flags, status))
if state_flags & interfaces.nsIWebProgressListener.STATE_STOP:
if NS_FAILED(status):
alert = TimeoutAlert(9)
diff --git a/usercode.py b/usercode.py
index 2bc43cc..43fd8c2 100644
--- a/usercode.py
+++ b/usercode.py
@@ -56,8 +56,8 @@ class Dialog(gtk.Window):
self.show_all()
gtk.Window.show(self)
-class SourceDisplay(gtk.ScrolledWindow):
- __gtype_name__ = 'SugarSourceDisplay'
+class SourceEditor(gtk.ScrolledWindow):
+ __gtype_name__ = 'SugarSourceEditor'
def __init__(self):
gtk.ScrolledWindow.__init__(self)
@@ -69,7 +69,7 @@ class SourceDisplay(gtk.ScrolledWindow):
self._buffer.set_highlight_syntax(True)
self._source_view = gtksourceview2.View(self._buffer)
- self._source_view.set_editable(False)
+ self._source_view.set_editable(True)
self._source_view.set_cursor_visible(True)
self._source_view.set_show_line_numbers(True)
self._source_view.set_show_right_margin(True)
@@ -80,6 +80,19 @@ class SourceDisplay(gtk.ScrolledWindow):
self._source_view.show()
self._file_path = None
+
+ def get_text(self):
+ start = self._buffer.get_start_iter()
+ end = self._buffer.get_end_iter()
+ return self._buffer.get_text(start, end)
+
+ def set_text(self, text):
+ self._buffer.set_text(text)
+
+ text = property(get_text, set_text)
+
+ def write(self, path=None):
+ open(path or self.file_path, 'w').write(self.text)
def _set_file_path(self, file_path):
if file_path == self._file_path:
@@ -112,29 +125,9 @@ class SourceDisplay(gtk.ScrolledWindow):
return self._file_path
file_path = property(_get_file_path, _set_file_path)
-
-class SourceEditor(SourceDisplay):
- def __init__(self):
- SourceDisplay.__init__(self)
-
- self._source_view.set_editable(True)
-
- def get_text(self):
- start = self._buffer.get_start_iter()
- end = self._buffer.get_end_iter()
- return self._buffer.get_text(start, end)
-
- def set_text(self, text):
- self._buffer.set_text(text)
-
- text = property(get_text, set_text)
-
- def write(self, path=None):
- open(path or self.file_path, 'w').write(self.text)
- logging.debug('@@@@@ %s %s %s' % (self.text, path, self.file_path))
-class FileViewer(gtk.ScrolledWindow):
- __gtype_name__ = 'SugarFileViewer'
+class ScriptFileViewer(gtk.ScrolledWindow):
+ __gtype_name__ = 'SugarScriptFileViewer'
__gsignals__ = {
'file-selected': (gobject.SIGNAL_RUN_FIRST,
@@ -142,7 +135,7 @@ class FileViewer(gtk.ScrolledWindow):
([str])),
}
- def __init__(self, path, initial_filename):
+ def __init__(self, path):
gtk.ScrolledWindow.__init__(self)
self.props.hscrollbar_policy = gtk.POLICY_AUTOMATIC
@@ -150,7 +143,9 @@ class FileViewer(gtk.ScrolledWindow):
self.set_size_request(style.GRID_CELL_SIZE * 3, -1)
self._path = None
- self._initial_filename = initial_filename
+
+ ls = os.listdir(path)
+ self._initial_filename = ls[0] if len(ls) > 0 else None
self._tree_view = gtk.TreeView()
self.add(self._tree_view)
@@ -198,13 +193,7 @@ class FileViewer(gtk.ScrolledWindow):
else:
file_path = model.get_value(tree_iter, 1)
self.emit('file-selected', file_path)
-
-class ScriptFileViewer(FileViewer):
- def __init__(self, path):
- ls = os.listdir(path)
- initial_filename = ls[0] if len(ls) > 0 else None
- FileViewer.__init__(self, path, initial_filename)
-
+
def get_selected_file(self):
selection = self._tree_view.get_selection()
model, tree_iter = selection.get_selected()