Closed Bug 681894 Opened 13 years ago Closed 11 years ago

GCLI should not have the assignment.field hack

Categories

(DevTools Graveyard :: Graphic Commandline and Toolbar, defect, P4)

defect

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: jwalker, Unassigned)

Details

arg_fetch.html:

    <table foreach="assignment in ${requ.getAssignments()}">
      <tr>
        <td>${assignment.param.description}</td>
        <td>${getInputFor(assignment)}</td>
      </tr>
      <tr>
        <td colspan="2">${linkMessageElement(assignment, __element)}</td>
      </tr>
    </table>

Which calls getInputFor(assignment) and linkMessageElement(assignment,...).
The problem is that getInputFor creates a Field, which wants to know about the message element created by linkMessageElement.

Rather than assume the DOM structure created by arg_fetch.html, we have getInputFor() squirrel away the Field in the assignment:

    ArgFetcher.getInputFor = function(assignment) {
      var newField = getField(...);
      // setup events
      
      // HACK!
      assignment.field = newField;
      
      return newField.element;
    }

So it can be picked up by linkMessageElement:

    ArgFetcher.linkMessageElement = function(assignment, element) {
      // HACK!
      var field = assignment.field;
      delete assignment.field;
      
      field.setMessageElement(element);
      return '';
    }

Better fix suggestions welcome.
Assignee: jwalker → nobody
OS: Windows 7 → All
Hardware: x86_64 → All
Moving GCLI bugs to Developer Tools: Console. Filter on 'baked beans are off'.
Component: Developer Tools → Developer Tools: Console
Triage. Filter on PEGASUS.
Priority: -- → P4
Triage. Filter on PEGASUS.
No longer blocks: GCLI-FUTURE
New component triage. Filter on "Lobster Thermidor aux crevettes with a Mornay sauce"
Component: Developer Tools: Console → Developer Tools: Graphic Commandline and Toolbar
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → WONTFIX
Product: Firefox → DevTools
Product: DevTools → DevTools Graveyard
You need to log in before you can comment on or make changes to this bug.