~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to www/apps/tutorial/__init__.py

  • Committer: mattgiuca
  • Date: 2008-03-15 14:46:09 UTC
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:trunk:711
Tutorial: Tabs now correctly indent code in exercise boxes.
    Added an ID to the text boxes so they can be manipulated in the DOM,
    and added a key event handler function (copied from console).
    Wrote tab indenting code here (copied from console).
    Note: This is a fairly different algorithm, as it needs to be able to
    indent blocks of code spanning multiple lines, rather than just one.

Quite an awesome algorithm too, if I do say so myself :)

Show diffs side-by-side

added added

removed removed

Lines of Context:
444
444
        req.write("<div>%s</div>\n" % exercisedesc)
445
445
    filename = cgi.escape(cjson.encode(exercisesrc), quote=True)
446
446
    exercisepartial = cgi.escape(exercisepartial)
447
 
    req.write('<textarea class="exercisebox" '
448
 
        'onkeypress="set_saved_status(&quot;exercise%s&quot;, %s, '
449
 
            '&quot;Save&quot;)" '
450
 
        'onchange="set_saved_status(&quot;exercise%s&quot;, %s, '
 
447
    req.write('<textarea id="textarea_exercise%d" class="exercisebox" '
 
448
        'onkeypress="return catch_textbox_input(&quot;exercise%d&quot;, %s, '
 
449
            'event.keyCode)" '
 
450
        'onchange="set_saved_status(&quot;exercise%d&quot;, %s, '
451
451
            '&quot;Save&quot;)" '
452
452
        'cols="80" rows="%s">%s</textarea>'
453
 
        % (exerciseid, filename, exerciseid, filename, rows, exercisepartial))
 
453
        % (exerciseid, exerciseid, filename, exerciseid, filename,
 
454
            rows, exercisepartial))
454
455
    req.write("""\n<div class="exercisebuttons">
455
456
  <input type="button" value="Saved" disabled="disabled"
456
457
    id="savebutton_exercise%d"