Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--AUTHORS1
-rw-r--r--JokeMachine-7.xobin0 -> 109416 bytes
-rw-r--r--JokeMachine.wpr1081
-rw-r--r--JokeMachineActivity.py5
-rw-r--r--NEWS18
-rw-r--r--globals.py8
-rw-r--r--gui/canvaslistbox.py5
-rw-r--r--gui/frame.py5
-rw-r--r--gui/lessonplanwidget.py7
-rw-r--r--gui/page.py25
-rw-r--r--gui/theme.py20
-rw-r--r--i18n.py15
-rw-r--r--mesh/activitysession.py5
-rw-r--r--pages/choose.py6
-rw-r--r--pages/cover.py8
-rw-r--r--pages/edit.py5
-rw-r--r--pages/joke.py5
-rw-r--r--pages/preview.py7
-rw-r--r--pages/submit.py5
-rw-r--r--persistence/joke.py7
-rw-r--r--persistence/jokebook.py7
-rw-r--r--persistence/jokemachinestate.py7
-rw-r--r--resources/gtkrc2
-rwxr-xr-xunit/test_persistence.py5
-rwxr-xr-xunit/unit.py5
-rw-r--r--util/audioplayer.py5
-rw-r--r--util/decorators.py5
-rw-r--r--util/journalpickler.py7
-rw-r--r--util/persistence.py5
29 files changed, 1253 insertions, 33 deletions
diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 0000000..f3a7f45
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1 @@
+Antoine van Gelder <hummingbird@hivemind.net> \ No newline at end of file
diff --git a/JokeMachine-7.xo b/JokeMachine-7.xo
new file mode 100644
index 0000000..b9adca0
--- /dev/null
+++ b/JokeMachine-7.xo
Binary files differ
diff --git a/JokeMachine.wpr b/JokeMachine.wpr
new file mode 100644
index 0000000..e2e685e
--- /dev/null
+++ b/JokeMachine.wpr
@@ -0,0 +1,1081 @@
+#!wing
+#!version=3.0
+##################################################################
+# Wing IDE project file #
+##################################################################
+[project attributes]
+proj.directory-list = [{'dirloc': loc('persistence'),
+ 'excludes': (),
+ 'filter': '*',
+ 'include_hidden': 0,
+ 'recursive': 1,
+ 'watch_for_changes': 1},
+ {'dirloc': loc('.'),
+ 'excludes': (),
+ 'filter': '*',
+ 'include_hidden': 0,
+ 'recursive': 1,
+ 'watch_for_changes': 1}]
+proj.file-list = [loc('activity/activity-jokemachine.svg'),
+ loc('activity/activity.info'),
+ loc('globals.py'),
+ loc('i18n.py'),
+ loc('i18n_misc_strings.py'),
+ loc('images/GameLogoCharacter.png'),
+ loc('JokeMachineActivity.py'),
+ loc('lessons/Introduction/default.abw'),
+ loc('lessons/Lesson 1/default.abw'),
+ loc('lessons/Lesson 2/default.abw'),
+ loc('lessons/Lesson 3/default.abw'),
+ loc('lessons/Lesson 4/default.abw'),
+ loc('locale/af.po'),
+ loc('locale/de_DE/activity.linfo'),
+ loc('locale/org.worldwideworkshop.jokemachine.pot'),
+ loc('locale/org.worldwideworkshop.poll.pot'),
+ loc('locale/zh_CN/activity.linfo'),
+ loc('MANIFEST'),
+ loc('NEWS'),
+ loc('pages/choose.py'),
+ loc('pages/cover.py'),
+ loc('pages/frame.py'),
+ loc('pages/joke.py'),
+ loc('pages/page.py'),
+ loc('pages/submit.py'),
+ loc('pages/theme.py'),
+ loc('pages/__init__.py'),
+ loc('setup.py'),
+ loc('unit/persistence.py')]
+proj.file-type = 'normal'
+[user attributes]
+debug.err-values = {None: {}}
+debug.var-col-widths = [0.39499036608863197,
+ 0.60500963391136797]
+edit.show-tab-force-warning = 0
+guimgr.overall-gui-state = {'windowing-policy': 'combined-window',
+ 'windows': [{'name': 'oQxUmNpVfpJewBNvtbSPVPBdPA'\
+ 'TKgEGJ',
+ 'size-state': '',
+ 'type': 'dock',
+ 'view': {'area': 'tall',
+ 'current_pages': [0,
+ 1],
+ 'notebook_display': 'normal',
+ 'notebook_percent': 0.22585551330798481,
+ 'override_title': None,
+ 'pagelist': [('debug-stack',
+ 'tall',
+ 1,
+ None),
+ ('indent',
+ 'tall',
+ 2,
+ {}),
+ ('project',
+ 'tall',
+ 0,
+ {'tree-state': {'tree-states': {'deep': {'col'\
+ 'umn-widths': [1.0],
+ 'expanded-nodes': [(0,),
+ (4,)],
+ 'selected-nodes': [],
+ 'top-node': (0,)}},
+ 'tree-style': 'deep'}}),
+ ('source-assistant',
+ 'tall',
+ 2,
+ {'docstring-during-complete': 0,
+ 'wrap-lines': 1}),
+ ('browser',
+ 'tall',
+ 0,
+ {'all_tree_states': {u'By Module': {'column-w'\
+ 'idths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [[('generic attribute',
+ loc('globals.py'),
+ '')]],
+ 'top-node': [('generic attribute',
+ loc('globals.py'),
+ '')]},
+ loc('JokeMachineActivity.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('JokeMachineActivity.py'),
+ 'JokeMachineActivity')]},
+ loc('MANIFEST'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': None},
+ loc('TODO'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': None},
+ loc('globals.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('generic attribute',
+ loc('globals.py'),
+ 'Globals')]},
+ loc('gui/canvasimage.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': None},
+ loc('gui/canvaslistbox.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('gui/canvaslistbox.py'),
+ 'CanvasListBox')]},
+ loc('gui/frame.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [[('class def',
+ loc('gui/frame.py'),
+ 'Frame')]],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('gui/frame.py'),
+ 'Frame')]},
+ loc('gui/page.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [[('class def',
+ loc('gui/page.py'),
+ 'Page')]],
+ 'selected-nodes': [[('class def',
+ loc('gui/page.py'),
+ 'Page')]],
+ 'top-node': [('class def',
+ loc('gui/page.py'),
+ 'Page')]},
+ loc('gui/theme.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('generic attribute',
+ loc('gui/theme.py'),
+ 'BORDER_WIDTH')]},
+ loc('pages/choose.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('pages/choose.py'),
+ 'Choose')]},
+ loc('pages/cover.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('pages/cover.py'),
+ 'Cover')]},
+ loc('pages/edit.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [[('class def',
+ loc('pages/edit.py'),
+ 'Edit')],
+ [('class def',
+ loc('pages/edit.py'),
+ 'EditInfo')],
+ [('class def',
+ loc('pages/edit.py'),
+ 'EditJokes')],
+ [('class def',
+ loc('pages/edit.py'),
+ 'EditReview')],
+ [('class def',
+ loc('pages/edit.py'),
+ 'PageSelector')]],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('pages/edit.py'),
+ 'Edit')]},
+ loc('persistence/joke.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('persistence/joke.py'),
+ 'Joke')]},
+ u'All Classes': {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [None],
+ 'top-node': None},
+ loc('pages/joke.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('pages/joke.py'),
+ 'Joke')]},
+ loc('pages/preview.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('pages/preview.py'),
+ 'Preview')]},
+ loc('pages/submit.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('pages/submit.py'),
+ 'JokeEditor')]},
+ loc('persistence/jokebook.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('persistence/jokebook.py'),
+ 'Jokebook')]},
+ loc('persistence/jokemachinestate.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('persistence/jokemachinestate.py'),
+ 'JokeMachineState')]},
+ loc('setup.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': None},
+ loc('unit/test_persistence.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('function def',
+ loc('unit/test_persistence.py'),
+ 'dump')]},
+ loc('unit/unit.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('generic attribute',
+ loc('unit/unit.py'),
+ 'bar')]},
+ loc('util/decorators.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('generic attribute',
+ loc('util/decorators.py'),
+ 'DecoratorWithArgs')]},
+ loc('util/persistence.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('class def',
+ loc('util/persistence.py'),
+ 'Persistent')]},
+ loc('../poll-builder/poll.py'): {'column-widths': [1.0],
+ 'expanded-nodes': [],
+ 'selected-nodes': [],
+ 'top-node': [('generic attribute',
+ loc('../poll-builder/poll.py'),
+ 'COLOR_BG_BUTTONS')]}},
+ 'browse_mode': u'Current Module',
+ 'follow-selection': 0,
+ 'sort_mode': 'Alphabetically',
+ 'visibility_options': {u'Derived Classes': 0,
+ u'Imported': 0,
+ u'Inherited': 0,
+ u'Modules': 1}}),
+ ('templating#02EFWRQK9X23',
+ 'tall',
+ 0,
+ {'tree-states': {u'/home/antoine/.wingide3/templates': [],
+ u'/opt/wing/scripts/templates': []}})],
+ 'primary_view_state': {'area': 'wide',
+ 'current_pages': [2,
+ 3],
+ 'notebook_display': 'normal',
+ 'notebook_percent': 0.20411985018726597,
+ 'override_title': None,
+ 'pagelist': [('bookmarks',
+ 'wide',
+ 1,
+ None),
+ ('debug-breakpoints',
+ 'wide',
+ 0,
+ None),
+ ('debug-io',
+ 'wide',
+ 1,
+ {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0}),
+ ('debug-probe',
+ 'wide',
+ 2,
+ {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 4,
+ 'selection_start': 4}),
+ ('debug-exceptions',
+ 'wide',
+ 0,
+ None),
+ ('debug-modules',
+ 'wide',
+ 1,
+ {}),
+ ('python-shell',
+ 'wide',
+ 2,
+ {'attrib-starts': [],
+ 'first-line': 0,
+ 'history': {},
+ 'sel-line': 3,
+ 'sel-line-start': 153,
+ 'selection_end': 157,
+ 'selection_start': 157}),
+ ('interactive-search',
+ 'wide',
+ 0,
+ {'fScope': {'fFileSetName': u'All Source Files',
+ 'fLocation': None,
+ 'fRecursive': True,
+ 'fType': 'current-file'},
+ 'fSearchSpec': {'fEndPos': None,
+ 'fIncludeLinenos': True,
+ 'fInterpretBackslashes': False,
+ 'fMatchCase': False,
+ 'fOmitBinary': True,
+ 'fRegexFlags': 46,
+ 'fReplaceText': u'locale',
+ 'fReverse': False,
+ 'fSearchText': u'chooser.hide',
+ 'fStartPos': 0,
+ 'fStyle': 'text',
+ 'fWholeWords': False,
+ 'fWrap': True},
+ 'fUIOptions': {'fAutoBackground': True,
+ 'fFilePrefix': 'short-file',
+ 'fFindAfterReplace': True,
+ 'fInSelection': False,
+ 'fIncremental': True,
+ 'fReplaceOnDisk': False,
+ 'fShowFirstMatch': False,
+ 'fShowLineno': True,
+ 'fShowReplaceWidgets': False},
+ 'replace-entry-expanded': False,
+ 'search-entry-expanded': False}),
+ ('batch-search',
+ 'wide',
+ 0,
+ {'fScope': {'fFileSetName': u'All Source Files',
+ 'fLocation': None,
+ 'fRecursive': 1,
+ 'fType': 'project-files'},
+ 'fSearchSpec': {'fEndPos': None,
+ 'fIncludeLinenos': 1,
+ 'fInterpretBackslashes': 0,
+ 'fMatchCase': 0,
+ 'fOmitBinary': 1,
+ 'fRegexFlags': 46,
+ 'fReplaceText': u'',
+ 'fReverse': 0,
+ 'fSearchText': u'.png',
+ 'fStartPos': 0,
+ 'fStyle': 'text',
+ 'fWholeWords': 0,
+ 'fWrap': 1},
+ 'fUIOptions': {'fAutoBackground': 1,
+ 'fFilePrefix': 'short-file',
+ 'fFindAfterReplace': 1,
+ 'fInSelection': 0,
+ 'fIncremental': 1,
+ 'fReplaceOnDisk': 0,
+ 'fShowFirstMatch': 0,
+ 'fShowLineno': 1,
+ 'fShowReplaceWidgets': 0},
+ 'replace-entry-expanded': 0,
+ 'search-entry-expanded': 0}),
+ ('debug-data',
+ 'wide',
+ 0,
+ {}),
+ ('debug-watch',
+ 'wide',
+ 1,
+ {'node-states': [('eval',
+ ''),
+ ('eval',
+ ''),
+ ('eval',
+ '')],
+ 'tree-state': {'column-widths': [0.39468690702087289,
+ 0.60531309297912717],
+ 'expanded-nodes': [],
+ 'selected-nodes': [(2,)],
+ 'top-node': (0,)}})],
+ 'primary_view_state': {'editor_states': {'bookmarks': ([(loc('gui/page.py'),
+ {'attrib-starts': [],
+ 'first-line': 13,
+ 'sel-line': 26,
+ 'sel-line-start': 897,
+ 'selection_end': 951,
+ 'selection_start': 951},
+ 1198688500.5701251),
+ (loc('NEWS'),
+ {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 4,
+ 'sel-line-start': 80,
+ 'selection_end': 136,
+ 'selection_start': 136},
+ 1198688502.3278739),
+ (loc('JokeMachineActivity.py'),
+ {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ 1198688502.6195641),
+ (loc('pages/joke.py'),
+ {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 13,
+ 'sel-line-start': 701,
+ 'selection_end': 701,
+ 'selection_start': 701},
+ 1198688502.8020251),
+ (loc('JokeMachineActivity.py'),
+ {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ 1198688503.4200201),
+ (loc('NEWS'),
+ {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 4,
+ 'sel-line-start': 80,
+ 'selection_end': 136,
+ 'selection_start': 136},
+ 1198688503.6366811),
+ (loc('gui/page.py'),
+ {'attrib-starts': [('Page',
+ 47),
+ ('Page.make_imagebox',
+ 121)],
+ 'first-line': 114,
+ 'sel-line': 121,
+ 'sel-line-start': 4086,
+ 'selection_end': 4099,
+ 'selection_start': 4099},
+ 1198688503.812227),
+ (loc('gui/page.py'),
+ {'attrib-starts': [('Page',
+ 47),
+ ('Page.make_imagebox',
+ 121)],
+ 'first-line': 122,
+ 'sel-line': 126,
+ 'sel-line-start': 4356,
+ 'selection_end': 4406,
+ 'selection_start': 4406},
+ 1198688541.4588749),
+ (loc('gui/page.py'),
+ {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ 1198688566.7947819),
+ (loc('gui/page.py'),
+ {'attrib-starts': [('Page',
+ 47),
+ ('Page.__do_clicked_image',
+ 291)],
+ 'first-line': 265,
+ 'sel-line': 314,
+ 'sel-line-start': 12635,
+ 'selection_end': 12642,
+ 'selection_start': 12642},
+ 1198688645.8151071),
+ (loc('gui/page.py'),
+ {'attrib-starts': [('Page',
+ 47),
+ ('Page.__do_clicked_image',
+ 291)],
+ 'first-line': 265,
+ 'sel-line': 314,
+ 'sel-line-start': 12635,
+ 'selection_end': 12654,
+ 'selection_start': 12642},
+ 1198688648.5252161),
+ (loc('gui/page.py'),
+ {'attrib-starts': [('Page',
+ 47),
+ ('Page.__do_clicked_choose_sound',
+ 319)],
+ 'first-line': 290,
+ 'sel-line': 339,
+ 'sel-line-start': 13711,
+ 'selection_end': 13717,
+ 'selection_start': 13717},
+ 1198688648.9200661),
+ (loc('gui/page.py'),
+ {'attrib-starts': [('Page',
+ 47),
+ ('Page.__do_clicked_image',
+ 291)],
+ 'first-line': 290,
+ 'sel-line': 314,
+ 'sel-line-start': 12635,
+ 'selection_end': 12641,
+ 'selection_start': 12641},
+ 1198688650.4670839),
+ (loc('gui/page.py'),
+ {'attrib-starts': [('Page',
+ 47),
+ ('Page.__do_clicked_image',
+ 291)],
+ 'first-line': 290,
+ 'sel-line': 314,
+ 'sel-line-start': 12635,
+ 'selection_end': 12654,
+ 'selection_start': 12642},
+ 1198688652.742419),
+ (loc('gui/page.py'),
+ {'attrib-starts': [('Page',
+ 47),
+ ('Page.__do_clicked_choose_sound',
+ 319)],
+ 'first-line': 290,
+ 'sel-line': 339,
+ 'sel-line-start': 13711,
+ 'selection_end': 13718,
+ 'selection_start': 13718},
+ 1198688653.1349039),
+ (loc('gui/page.py'),
+ {'attrib-starts': [('Page',
+ 47),
+ ('Page.__do_clicked_choose_sound',
+ 319)],
+ 'first-line': 290,
+ 'sel-line': 339,
+ 'sel-line-start': 13711,
+ 'selection_end': 13730,
+ 'selection_start': 13718},
+ 1198688655.3104129),
+ (loc('gui/page.py'),
+ {'attrib-starts': [('Page',
+ 47),
+ ('Page.__do_clicked_image',
+ 291)],
+ 'first-line': 290,
+ 'sel-line': 295,
+ 'sel-line-start': 11748,
+ 'selection_end': 11782,
+ 'selection_start': 11782},
+ 1198688656.1485031),
+ (loc('NEWS'),
+ {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 2,
+ 'sel-line-start': 18,
+ 'selection_end': 78,
+ 'selection_start': 78},
+ 1198688926.1816111),
+ (loc('setup.py'),
+ {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 5,
+ 'sel-line-start': 127,
+ 'selection_end': 176,
+ 'selection_start': 176},
+ 1198749050.489059),
+ [loc('TODO'),
+ {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 14,
+ 'sel-line-start': 540,
+ 'selection_end': 604,
+ 'selection_start': 604},
+ 1198749059.003253]],
+ 19),
+ 'current-loc': loc('TODO'),
+ 'editor-states': {loc('JokeMachineActivity.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ loc('NEWS'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 2,
+ 'sel-line-start': 18,
+ 'selection_end': 78,
+ 'selection_start': 78},
+ loc('TODO'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 5,
+ 'sel-line-start': 75,
+ 'selection_end': 120,
+ 'selection_start': 120},
+ loc('gui/page.py'): {'attrib-starts': [('Page',
+ 47),
+ ('Page.__do_clicked_image',
+ 291)],
+ 'first-line': 290,
+ 'sel-line': 295,
+ 'sel-line-start': 11748,
+ 'selection_end': 11782,
+ 'selection_start': 11782},
+ loc('pages/joke.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 13,
+ 'sel-line-start': 701,
+ 'selection_end': 701,
+ 'selection_start': 701},
+ loc('setup.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 5,
+ 'sel-line-start': 127,
+ 'selection_end': 176,
+ 'selection_start': 176},
+ loc('../../../../../../opt/wing/resources/doc/en/TOC.idx'): {''\
+ 'displayed-index': 0,
+ 'viewer-state': {'history': [-1,
+ 0],
+ 'history-pos': 1,
+ 'index': 0,
+ 'top': (0,
+ 0)}}},
+ 'has-focus': True},
+ 'open_files': [u'JokeMachineActivity.py',
+ u'NEWS',
+ u'gui/page.py',
+ u'pages/joke.py',
+ u'setup.py',
+ u'../../../../../../opt/wing/resources/doc/en/TOC.idx',
+ u'TODO']},
+ 'split_percents': {0: 0.5},
+ 'splits': 2,
+ 'tab_location': 'top',
+ 'user_data': {}},
+ 'split_percents': {0: 0.70063694267515919},
+ 'splits': 2,
+ 'tab_location': 'left',
+ 'user_data': {}},
+ 'window-alloc': (0,
+ 0,
+ 1407,
+ 1120)}]}
+guimgr.recent-documents = [loc('TODO')]
+guimgr.visual-state = {loc('JokeMachineActivity.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ loc('MANIFEST'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 37,
+ 'sel-line-start': 844,
+ 'selection_end': 855,
+ 'selection_start': 855},
+ loc('NEWS'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 33,
+ 'sel-line-start': 1223,
+ 'selection_end': 1223,
+ 'selection_start': 1223},
+ loc('README'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ loc('TODO'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 14,
+ 'sel-line-start': 540,
+ 'selection_end': 604,
+ 'selection_start': 604},
+ loc('activity/activity.info'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 6,
+ 'sel-line-start': 218,
+ 'selection_end': 238,
+ 'selection_start': 238},
+ loc('activitysession.py'): {'attrib-starts': [('JokeM'\
+ 'achineSession',
+ 15)],
+ 'first-line': 0,
+ 'sel-line': 15,
+ 'sel-line-start': 704,
+ 'selection_end': 704,
+ 'selection_start': 704},
+ loc('globals.py'): {'attrib-starts': [('__globals',
+ 29),
+ ('__globals.temporary_filename',
+ 114)],
+ 'first-line': 84,
+ 'sel-line': 115,
+ 'sel-line-start': 3684,
+ 'selection_end': 3738,
+ 'selection_start': 3738},
+ loc('gui/canvasimage.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ loc('gui/canvaslistbox.py'): {'attrib-starts': [('Can'\
+ 'vasListBox',
+ 25),
+ ('CanvasListBox.__init__',
+ 26)],
+ 'first-line': 0,
+ 'sel-line': 47,
+ 'sel-line-start': 1638,
+ 'selection_end': 1657,
+ 'selection_start': 1657},
+ loc('gui/frame.py'): {'attrib-starts': [('Frame',
+ 34),
+ ('Frame.__make_header',
+ 82)],
+ 'first-line': 92,
+ 'sel-line': 102,
+ 'sel-line-start': 4057,
+ 'selection_end': 4061,
+ 'selection_start': 4061},
+ loc('gui/lessonplanwidget.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ loc('gui/page.py'): {'attrib-starts': [('Page',
+ 47),
+ ('Page.make_listrow',
+ 71)],
+ 'first-line': 63,
+ 'sel-line': 75,
+ 'sel-line-start': 2246,
+ 'selection_end': 2251,
+ 'selection_start': 2251},
+ loc('gui/theme.py'): {'attrib-starts': [],
+ 'first-line': 94,
+ 'sel-line': 103,
+ 'sel-line-start': 3392,
+ 'selection_end': 3440,
+ 'selection_start': 3440},
+ loc('i18n.py'): {'attrib-starts': [],
+ 'first-line': 23,
+ 'sel-line': 28,
+ 'sel-line-start': 920,
+ 'selection_end': 933,
+ 'selection_start': 927},
+ loc('locale/org.worldwideworkshop.jokemachine.pot'): {''\
+ 'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 9,
+ 'selection_start': 9},
+ loc('mesh/activitysession.py'): {'attrib-starts': [(''\
+ 'JokeMachineSession',
+ 33),
+ ('JokeMachineSession.PumpActivityState',
+ 87)],
+ 'first-line': 209,
+ 'sel-line': 94,
+ 'sel-line-start': 3516,
+ 'selection_end': 3556,
+ 'selection_start': 3556},
+ loc('ontology/joke.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ loc('ontology/jokebook.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ loc('pages/choose.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 21,
+ 'sel-line-start': 767,
+ 'selection_end': 799,
+ 'selection_start': 799},
+ loc('pages/cover.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 29,
+ 'sel-line-start': 897,
+ 'selection_end': 897,
+ 'selection_start': 897},
+ loc('pages/edit.py'): {'attrib-starts': [('EditJokes',
+ 166),
+ ('EditJokes.do_clicked_add_joke',
+ 211)],
+ 'first-line': 193,
+ 'sel-line': 211,
+ 'sel-line-start': 8088,
+ 'selection_end': 8113,
+ 'selection_start': 8094},
+ loc('pages/frame.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 702,
+ 'selection_start': 0},
+ loc('pages/joke.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 21,
+ 'sel-line-start': 785,
+ 'selection_end': 799,
+ 'selection_start': 799},
+ loc('pages/page.py'): {'attrib-starts': [('Page',
+ 10),
+ ('Page._make_textbox',
+ 22)],
+ 'first-line': 0,
+ 'sel-line': 33,
+ 'sel-line-start': 818,
+ 'selection_end': 865,
+ 'selection_start': 865},
+ loc('pages/preview.py'): {'attrib-starts': [('Preview',
+ 33),
+ ('Preview.__init__',
+ 35)],
+ 'first-line': 2,
+ 'sel-line': 50,
+ 'sel-line-start': 1786,
+ 'selection_end': 1790,
+ 'selection_start': 1790},
+ loc('pages/submit.py'): {'attrib-starts': [('JokeEdit'\
+ 'or',
+ 33),
+ ('JokeEditor.__init__',
+ 35)],
+ 'first-line': 22,
+ 'sel-line': 37,
+ 'sel-line-start': 1033,
+ 'selection_end': 1061,
+ 'selection_start': 1061},
+ loc('pages/theme.py'): {'attrib-starts': [],
+ 'first-line': 36,
+ 'sel-line': 64,
+ 'sel-line-start': 2219,
+ 'selection_end': 2255,
+ 'selection_start': 2255},
+ loc('persistence/joke'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ loc('persistence/joke.py'): {'attrib-starts': [('Joke',
+ 18),
+ ('Joke.test_data',
+ 70)],
+ 'first-line': 19,
+ 'sel-line': 71,
+ 'sel-line-start': 2175,
+ 'selection_end': 2218,
+ 'selection_start': 2214},
+ loc('persistence/jokebook.py'): {'attrib-starts': [(''\
+ 'Jokebook',
+ 18),
+ ('Jokebook.title',
+ 29)],
+ 'first-line': 0,
+ 'sel-line': 30,
+ 'sel-line-start': 1027,
+ 'selection_end': 1063,
+ 'selection_start': 1063},
+ loc('persistence/jokemachine.py'): {'attrib-starts': [(''\
+ 'JokeMachineState',
+ 18)],
+ 'first-line': 0,
+ 'sel-line': 18,
+ 'sel-line-start': 766,
+ 'selection_end': 788,
+ 'selection_start': 788},
+ loc('persistence/jokemachinestate.py'): {'attrib-star'\
+ 'ts': [('JokeMachineState',
+ 20),
+ ('JokeMachineState.test_data',
+ 57)],
+ 'first-line': 14,
+ 'sel-line': 67,
+ 'sel-line-start': 2140,
+ 'selection_end': 2184,
+ 'selection_start': 2178},
+ loc('persistence/unit.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ loc('po/JokeMachine.pot'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 16,
+ 'sel-line-start': 529,
+ 'selection_end': 562,
+ 'selection_start': 562},
+ loc('po/af/LC_MESSAGES/JokeMachine.po'): {'attrib-sta'\
+ 'rts': [],
+ 'first-line': 0,
+ 'sel-line': 286,
+ 'sel-line-start': 4855,
+ 'selection_end': 4875,
+ 'selection_start': 4875},
+ loc('resources/gtkrc'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 18,
+ 'sel-line-start': 344,
+ 'selection_end': 367,
+ 'selection_start': 367},
+ loc('setup.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 5,
+ 'sel-line-start': 127,
+ 'selection_end': 176,
+ 'selection_start': 176},
+ loc('unit/persistence.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ loc('unit/test_persistence.py'): {'attrib-starts': [(''\
+ 'dump',
+ 22)],
+ 'first-line': 0,
+ 'sel-line': 38,
+ 'sel-line-start': 1186,
+ 'selection_end': 1207,
+ 'selection_start': 1207},
+ loc('unit/unit.py'): {'attrib-starts': [],
+ 'first-line': 4,
+ 'sel-line': 38,
+ 'sel-line-start': 1136,
+ 'selection_end': 1137,
+ 'selection_start': 1137},
+ loc('util/audioplayer.py'): {'attrib-starts': [('Audi'\
+ 'oPlayer',
+ 24),
+ ('AudioPlayer.raw',
+ 44),
+ ('AudioPlayer.raw.set',
+ 53)],
+ 'first-line': 28,
+ 'sel-line': 54,
+ 'sel-line-start': 1560,
+ 'selection_end': 1566,
+ 'selection_start': 1566},
+ loc('util/decorators.py'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 19,
+ 'sel-line-start': 895,
+ 'selection_end': 895,
+ 'selection_start': 895},
+ loc('util/dummy.py'): {'attrib-starts': [('NotifyAler'\
+ 't',
+ 3),
+ ('NotifyAlert.__init__',
+ 5)],
+ 'first-line': 0,
+ 'sel-line': 6,
+ 'sel-line-start': 86,
+ 'selection_end': 94,
+ 'selection_start': 94},
+ loc('util/journalpickler.py'): {'attrib-starts': [('J'\
+ 'ournalPickler',
+ 18),
+ ('JournalPickler.dumps',
+ 33)],
+ 'first-line': 0,
+ 'sel-line': 36,
+ 'sel-line-start': 1316,
+ 'selection_end': 1334,
+ 'selection_start': 1334},
+ loc('util/persistence.py'): {'attrib-starts': [('_is_'\
+ 'persistent',
+ 73)],
+ 'first-line': 0,
+ 'sel-line': 78,
+ 'sel-line-start': 2866,
+ 'selection_end': 2898,
+ 'selection_start': 2898},
+ loc('../poll-builder/poll.py'): {'attrib-starts': [(''\
+ 'PollBuilder',
+ 141),
+ ('PollBuilder._select_canvas',
+ 294)],
+ 'first-line': 326,
+ 'sel-line': 359,
+ 'sel-line-start': 12121,
+ 'selection_end': 12389,
+ 'selection_start': 12121},
+ loc('../../../../../../opt/wing/resources/builtin-pi-files/2.5/__builtin__.pi'): {''\
+ 'attrib-starts': [],
+ 'first-line': 1049,
+ 'sel-line': 1076,
+ 'sel-line-start': 33540,
+ 'selection_end': 33548,
+ 'selection_start': 33540},
+ loc('unknown:<untitled> #1'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'history': {},
+ 'sel-line': 3,
+ 'sel-line-start': 153,
+ 'selection_end': 157,
+ 'selection_start': 157},
+ loc('unknown:<untitled> #2'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 4,
+ 'selection_start': 4},
+ loc('unknown:<untitled> #5'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0},
+ loc('unknown:<untitled> #4'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 4,
+ 'selection_start': 4},
+ loc('unknown:<untitled> #3'): {'attrib-starts': [],
+ 'first-line': 0,
+ 'sel-line': 0,
+ 'sel-line-start': 0,
+ 'selection_end': 0,
+ 'selection_start': 0}}
+search.replace-history = [u'locale',
+ u'self.__parent',
+ u'self.__is_initiator',
+ u'state_pickle',
+ u'__telepathy_connection',
+ u'./JokeMachine.activity/',
+ u'RoundBox',
+ u'self.__tab',
+ u'joke_box',
+ u'__do_clicked_tab',
+ u'jokebuilder']
+search.search-history = [u'chooser.hide',
+ u'.png',
+ u'laugh',
+ u'audio',
+ u'locale',
+ u'LangDetails',
+ u'code:',
+ u'default',
+ u'po',
+ u'gettext',
+ u'.alert',
+ u'parent',
+ u'do_tab_clicked',
+ u'shared_cb',
+ u'__do_acti',
+ u'audio.',
+ u'images',
+ u'TODO',
+ u'do_child',
+ u'__page_']
diff --git a/JokeMachineActivity.py b/JokeMachineActivity.py
index 654d3e7..ef5fe9e 100644
--- a/JokeMachineActivity.py
+++ b/JokeMachineActivity.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import os
import logging
diff --git a/NEWS b/NEWS
index 325f764..6e1f17b 100644
--- a/NEWS
+++ b/NEWS
@@ -1,8 +1,22 @@
-6
+
+
+ * Updated: Expanded copyright header on source files
+ * Updated: Reflect changes in sugar.graphics.objectchooser
+ * Fix: Widgets now render correctly on first expose event on XO hardware
+ * Fix: Background color of sound selector is now right color on XO hardware
+ * Fix: Lesson plans are no longer being opened as text by AbiWord on XO
+ hardware
+ * Fix: Cursor now changes to hand icon when over sound selector
+ * Added: AUTHORS file
+
+ -- Antoine van Gelder <hummingbird@hivemind.net> Fri, 11 Jan 2008
+
+
+JokeMachine-6.xo
* Feature: Added lesson plans.
- -- Antoine van Gelder <hummingbird@hivemind.net> Mon, 29 Oct 2007
+ -- Antoine van Gelder <hummingbird@hivemind.net> Tue, 13 Nov 2007
JokeMachine-5.xo
diff --git a/globals.py b/globals.py
index 0a6d2e6..5730c3d 100644
--- a/globals.py
+++ b/globals.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,7 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
-
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import os
import logging
@@ -127,4 +131,4 @@ class __globals(object):
Globals = __globals()
- \ No newline at end of file
+
diff --git a/gui/canvaslistbox.py b/gui/canvaslistbox.py
index feb21c0..126e4f0 100644
--- a/gui/canvaslistbox.py
+++ b/gui/canvaslistbox.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import gtk
import hippo
diff --git a/gui/frame.py b/gui/frame.py
index 7da5540..8a16fe8 100644
--- a/gui/frame.py
+++ b/gui/frame.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import gobject
import gtk
diff --git a/gui/lessonplanwidget.py b/gui/lessonplanwidget.py
index 5b6e021..3d4a100 100644
--- a/gui/lessonplanwidget.py
+++ b/gui/lessonplanwidget.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import os
import locale
@@ -56,7 +61,7 @@ class LessonPlanWidget(gtk.Notebook):
files = filter(lambda x: os.path.exists(x), files)
# On jhbuild, the first works, on XO image 432 the second works:
try:
- canvas.load_file('file://%s' % files[0], 'text/plain')
+ canvas.load_file('file://%s' % files[0], 'application/x-abiword')
except:
canvas.load_file('file://%s' % files[0])
canvas.view_online_layout()
diff --git a/gui/page.py b/gui/page.py
index 74ac506..0d83449 100644
--- a/gui/page.py
+++ b/gui/page.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import os
import gtk
@@ -109,8 +114,10 @@ class Page(hippo.CanvasBox):
sound_box.props.box_width = width
sound_box.props.border=theme.BORDER_WIDTH_CONTROL / 2
sound_box.props.border_color=theme.COLOR_DARK_GREEN.get_int()
+ sound_box.props.background_color = theme.COLOR_WHITE.get_int()
sound_box.props.orientation=hippo.ORIENTATION_HORIZONTAL
sound_box.props.xalign=hippo.ALIGNMENT_START
+ sound_box.set_clickable(True)
sound_box.append(preview_sound)
sound_box.append(choose_sound)
@@ -291,9 +298,9 @@ class Page(hippo.CanvasBox):
def __do_clicked_image(self, control, event, obj, property):
# Courtesy of Write.activity - toolbar.py
- chooser = ObjectChooser(_('Choose image'),
- Globals.JokeMachineActivity, #._parent,
- gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT)
+ chooser = ObjectChooser(title=_('Choose image'),
+ parent=Globals.JokeMachineActivity, #._parent,
+ flags=gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT)
try:
result = chooser.run()
if result == gtk.RESPONSE_ACCEPT:
@@ -312,16 +319,16 @@ class Page(hippo.CanvasBox):
surface = cairo.ImageSurface.create_from_png(image_file)
control.props.image = surface
finally:
- chooser.hide()
+ #chooser.hide()
chooser.destroy()
del chooser
def __do_clicked_choose_sound(self, control, event, obj, property):
logging.debug('choosing sound file')
- chooser = ObjectChooser(_('Choose Sound'),
- Globals.JokeMachineActivity, #._parent,
- gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT)
+ chooser = ObjectChooser(title=_('Choose Sound'),
+ parent=Globals.JokeMachineActivity, #._parent,
+ flags=gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT)
try:
result = chooser.run()
if result == gtk.RESPONSE_ACCEPT:
@@ -337,7 +344,7 @@ class Page(hippo.CanvasBox):
obj.sound_blob = raw
control.props.text = obj.sound
finally:
- chooser.hide()
+ #chooser.hide()
chooser.destroy()
del chooser
@@ -354,4 +361,4 @@ class Page(hippo.CanvasBox):
player.play()
- \ No newline at end of file
+
diff --git a/gui/theme.py b/gui/theme.py
index 9e3d393..22c6f30 100644
--- a/gui/theme.py
+++ b/gui/theme.py
@@ -1,3 +1,23 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
+
import gtk
from sugar.graphics import style
diff --git a/i18n.py b/i18n.py
index 546893e..ea6d687 100644
--- a/i18n.py
+++ b/i18n.py
@@ -1,6 +1,8 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -15,14 +17,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
-
-
-### SliderPuzzeUI
-### TODO: Describe
-### $Id: $
-###
-### author: Carlos Neves (cn (at) sueste.net)
-### (c) 2007 World Wide Workshop Foundation
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import os
import gettext
@@ -170,4 +167,4 @@ def gather_other_translations ():
f.close()
if __name__ == '__main__':
- gather_other_translations() \ No newline at end of file
+ gather_other_translations()
diff --git a/mesh/activitysession.py b/mesh/activitysession.py
index b7dfb89..c3d0188 100644
--- a/mesh/activitysession.py
+++ b/mesh/activitysession.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import logging
diff --git a/pages/choose.py b/pages/choose.py
index fee1e48..e5f9280 100644
--- a/pages/choose.py
+++ b/pages/choose.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,7 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
-
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import os
import gtk
diff --git a/pages/cover.py b/pages/cover.py
index 23a2da0..50d096a 100644
--- a/pages/cover.py
+++ b/pages/cover.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,7 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
-
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import os
import gtk
@@ -57,4 +61,4 @@ class Cover(Page):
Globals.JokeMachineActivity.set_page(pages.joke.Joke, jokebook)
- \ No newline at end of file
+
diff --git a/pages/edit.py b/pages/edit.py
index a2ad0c0..63aa2d8 100644
--- a/pages/edit.py
+++ b/pages/edit.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import os
diff --git a/pages/joke.py b/pages/joke.py
index ee92fb8..3063df9 100644
--- a/pages/joke.py
+++ b/pages/joke.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import os
diff --git a/pages/preview.py b/pages/preview.py
index 66e1811..c88fffe 100644
--- a/pages/preview.py
+++ b/pages/preview.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import os
@@ -68,4 +73,4 @@ class Preview(Page):
Globals.JokeMachineActivity.set_page(pages.edit.Edit, jokebook)
- \ No newline at end of file
+
diff --git a/pages/submit.py b/pages/submit.py
index 77f230d..99645a6 100644
--- a/pages/submit.py
+++ b/pages/submit.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import os
diff --git a/persistence/joke.py b/persistence/joke.py
index 0af66b8..7f96606 100644
--- a/persistence/joke.py
+++ b/persistence/joke.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
from util.persistence import Persistent, PersistentProperty
@@ -82,4 +87,4 @@ Alex who?'''
return self
- \ No newline at end of file
+
diff --git a/persistence/jokebook.py b/persistence/jokebook.py
index 48c7297..438ea0e 100644
--- a/persistence/jokebook.py
+++ b/persistence/jokebook.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
from util.persistence import Persistent, PersistentProperty
@@ -88,4 +93,4 @@ class Jokebook(object):
return 1
return max([joke.id for joke in self.jokes]) + 1
- \ No newline at end of file
+
diff --git a/persistence/jokemachinestate.py b/persistence/jokemachinestate.py
index ae5d303..23e4cb1 100644
--- a/persistence/jokemachinestate.py
+++ b/persistence/jokemachinestate.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
from util.persistence import Persistent, PersistentProperty
@@ -77,4 +82,4 @@ class JokeMachineState(object):
jokebook.submissions.append(joke)
self.jokebooks.append(jokebook)
return self
- \ No newline at end of file
+
diff --git a/resources/gtkrc b/resources/gtkrc
index 76e4bbc..7295b78 100644
--- a/resources/gtkrc
+++ b/resources/gtkrc
@@ -3,8 +3,6 @@ style "mamabutton"
color["focus_line"] = "#027F01"
bg[NORMAL] = "#027F01"
bg[ACTIVE] = "#026002"
- GtkButton::inner-border = { 10, 10, # left, right
- 6, 6 } # top, bottom
}
style "mamacombo"
diff --git a/unit/test_persistence.py b/unit/test_persistence.py
index 2062240..ff0b5a4 100755
--- a/unit/test_persistence.py
+++ b/unit/test_persistence.py
@@ -1,5 +1,7 @@
#!/usr/bin/python
#
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -14,6 +16,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import sys
sys.path.append('..')
diff --git a/unit/unit.py b/unit/unit.py
index e8eba7b..089c4df 100755
--- a/unit/unit.py
+++ b/unit/unit.py
@@ -1,5 +1,7 @@
#!/usr/bin/python
#
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -14,6 +16,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import sys
diff --git a/util/audioplayer.py b/util/audioplayer.py
index dacf51f..ce635cc 100644
--- a/util/audioplayer.py
+++ b/util/audioplayer.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import os
import gst
diff --git a/util/decorators.py b/util/decorators.py
index cd00afc..0e247f8 100644
--- a/util/decorators.py
+++ b/util/decorators.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import sys
diff --git a/util/journalpickler.py b/util/journalpickler.py
index 36f9311..64eb893 100644
--- a/util/journalpickler.py
+++ b/util/journalpickler.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,8 +14,11 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
-import pickle # TODO -> why does cPickle bitch about needing persistence.Jokebook etc ?
+import pickle
class JournalPickler:
diff --git a/util/persistence.py b/util/persistence.py
index e73879b..803bcdb 100644
--- a/util/persistence.py
+++ b/util/persistence.py
@@ -1,3 +1,5 @@
+# Copyright 2007 World Wide Workshop Foundation
+#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
@@ -12,6 +14,9 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+# If you find this activity useful or end up using parts of it in one of your
+# own creations we would love to hear from you at info@WorldWideWorkshop.org !
+#
import sys