| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171 | 
							- // use this to isolate the scope
 
- (function () {
 
-     if(!$axure.document.configuration.showConsole) { return; }
 
-     $(document).ready(function () {
 
-         $axure.player.createPluginHost({
 
-             id: 'debugHost',
 
-             context: 'inspect',
 
-             title: 'Console',
 
-             gid: 3
 
-         });
 
-         generateDebug();
 
-         $('#variablesClearLink').click(clearvars_click);
 
-         $('#traceClear').click(cleartrace_click);
 
-         $('#traceToggle').click(stoptrace_click);
 
-         $('#traceStart').click(starttrace_click);
 
-         $('#traceClear').hide();
 
-         $('#traceToggle').hide();
 
-         $('#closeConsole').click(close);
 
-         var currentStack= [];
 
-         var finishedStack = [];
 
-         $axure.messageCenter.addMessageListener(function (message, data) {
 
-             if(message == 'axCompositeEventMessage') {
 
-                 for(var i = 0; i < data.length; i++) {
 
-                     processMessages(data[i].message, data[i].data);
 
-                 }
 
-             } else processMessages(message, data);
 
-         });
 
-         var processMessages = function(message, data) {
 
-             if(message == 'globalVariableValues') {
 
-                 $('#variablesDiv').empty();
 
-                 for(var key in data) {
 
-                     var value = data[key] == '' ? '(blank)' : data[key];
 
-                     $('#variablesDiv').append('<div class="variableList"><div class="variableName">' + key + '</div><div class="variableValue">' + value + '</div></div>');
 
-                 }
 
-             } else if(message == 'axEvent') {
 
-                 var addToStack = "<div class='axEventBlock'>";
 
-                 addToStack += "<div class='axEventContainer'>";
 
-                 addToStack += "    <div class='axTime'>" + new Date().toLocaleTimeString() + "</div>";
 
-                 addToStack += "    <div class='axEvent'>" + data.event.description + ": </div>";
 
-                 addToStack += "    <div class='axLabel'>" + data.label + " (" + data.type + ")</div>";
 
-                 addToStack += "</div>";
 
-                 currentStack.push(addToStack);
 
-             } else if (message == 'axEventComplete') {
 
-                 currentStack[currentStack.length - 1] += "</div>";
 
-                 finishedStack.push(currentStack.pop());
 
-                 if(currentStack.length == 0) {
 
-                     $('#traceEmptyState').hide();
 
-                     $('#traceClear').show();
 
-                     $('#traceToggle').show();
 
-                     for(var i = finishedStack.length - 1; i >= 0; i--) {
 
-                         if($('#traceDiv').children().length > 99) $('#traceDiv').children().last().remove();
 
-                         $('#traceDiv').prepend(finishedStack[i]);
 
-                     }
 
-                     finishedStack = [];
 
-                 }
 
-             } else if (message == 'axCase') {
 
-                 //var addToStack = "<div class='axCaseContainer' style='background-color: #" + data.color + "'>";
 
-                 var addToStack = "<div class='axCaseContainer'>";
 
-                 addToStack += "    <div class='axCaseItem'>" + data.item + "</div>";
 
-                 if (data.description) { addToStack += "    <div class='axCaseDescription' title='" + data.description + "'>" + data.description + "</div>" };
 
-                 addToStack += "</div>";
 
-                 currentStack[currentStack.length - 1] += addToStack;
 
-             } else if (message == 'axAction') {
 
-                 var addToStack = "<div class='axActionContainer'>";
 
-                 addToStack += "    <div class='axActionItem'>" + data.name + "</div>";
 
-                 //addToStack += "    <div class='axActionItem'>" + data.item + "</div>";
 
-                 //if (data.description) { addToStack += "    <div class='axActionDescription' title='" + data.description + "'>" + data.description + "</div>" };
 
-                 addToStack += "</div>";
 
-                 currentStack[currentStack.length - 1] += addToStack;
 
-             } else if (message == 'axInfo') {
 
-                 var addToStack = "<div class='axInfoContainer'>";
 
-                 addToStack += "    <div class='axInfoItem'>" + data.item + "</div>";
 
-                 if (data.description) { addToStack += "    <div class='axInfoDescription' title='" + data.longDescription + "'>" + data.description + "</div>" };
 
-                 addToStack += "</div>";
 
-                 currentStack[currentStack.length - 1] += addToStack;
 
-             }
 
-         }
 
-         // bind to the page load
 
-         $axure.page.bind('load.debug', function () {
 
-             var traceStr = $axure.player.getHashStringVar(TRACE_VAR_NAME);
 
-             if (traceStr.length > 0) $axure.messageCenter.setState("isTracing", true);
 
-             else $axure.messageCenter.setState("isTracing", false);
 
-             $axure.messageCenter.postMessage('getGlobalVariables', '');
 
-             return false;
 
-         });
 
-         function clearvars_click(event) {
 
-             $axure.messageCenter.postMessage('resetGlobalVariables', '');
 
-         }
 
-         function close() {
 
-             $axure.player.pluginClose("debugHost");
 
-         }
 
-         function cleartrace_click(event) {
 
-             $('#traceDiv').html('');
 
-         }
 
-         function starttrace_click(event) {
 
-             $axure.messageCenter.setState("isTracing", true);
 
-             //$('#traceDiv').html('');
 
-             $('#traceEmptyState').hide();
 
-             $('#traceClear').show();
 
-             $('#traceToggle').text('Stop Trace');
 
-             $('#traceToggle').off("click");
 
-             $('#traceToggle').click(stoptrace_click);
 
-             $('#traceToggle').show();
 
-             console.log("starting trace");
 
-             $axure.player.setVarInCurrentUrlHash(TRACE_VAR_NAME, 1);
 
-         }
 
-         function stoptrace_click(event) {
 
-             $axure.messageCenter.setState("isTracing", false);
 
-             $('#traceDiv').prepend('<div class="tracePausedNotification">Trace Paused<div>');
 
-             $('#traceToggle').text('Restart Trace');
 
-             $('#traceToggle').off("click");
 
-             $('#traceToggle').click(starttrace_click);
 
-             console.log("stopping trace");
 
-             $axure.player.deleteVarFromCurrentUrlHash(TRACE_VAR_NAME);
 
-         }
 
-     });
 
-     function generateDebug() {
 
-         var pageNotesUi = "<div id='debugHeader'>";
 
-         pageNotesUi += "<div id='debugToolbar'>";
 
-         pageNotesUi += "<div id='consoleTitle' class='pluginNameHeader'>Console</div>";
 
-         pageNotesUi += "</div>";
 
-         pageNotesUi += "</div>";
 
-         pageNotesUi += "<div id='variablesContainer' style='max-height:300px; overflow-y:auto'>";
 
-         pageNotesUi += "<div id='variablesTitle' class='sectionTitle'>Variables</div>";
 
-         pageNotesUi += "<a id='variablesClearLink' class='traceOption'>Reset Variables</a>";
 
-         pageNotesUi += "<div id='variablesDiv'></div></div>";
 
-         pageNotesUi += "<div id='traceContainer'>";
 
-         pageNotesUi += "<div id='traceHeader'>";
 
-         pageNotesUi += "<span class='sectionTitle'>Trace</span><a id='traceClear' class='traceOption'>Clear Trace</a><a id='traceToggle' class='traceOption'>Stop Trace</a>";
 
-         pageNotesUi += "</div>";
 
-         pageNotesUi += "</div>";
 
-         pageNotesUi += "<div id='debugScrollContainer'>";
 
-         pageNotesUi += "<div id='debugContainer'>";
 
-         pageNotesUi += "<div id='traceEmptyState'>";
 
-         pageNotesUi += "<div class='startInstructions'>Click the button below to start recording interactions as you click through the prototype.</div>";
 
-         pageNotesUi += "<div id='traceStart' class='startButton'>Start Trace</div>";
 
-         pageNotesUi += "</div>";
 
-         pageNotesUi += "<div id='traceDiv'></div></div>";
 
-         pageNotesUi += "</div></div>";
 
-         $('#debugHost').html(pageNotesUi);
 
-         $('#traceEmptyState').show();
 
-     }
 
- })();   
 
 
  |