Uploaded image for project: 'Appcelerator Studio'
  1. Appcelerator Studio
  2. TISTUD-2798

Index Alloy view XML files to record id and class declarations with type info

    Details

      Description

      We'll need to begin indexing alloy's XML files to record the list of classes and ids used. This will then be used for TSS code assist.

      The involves adding a new IndexBuildParticipant for XML files. In the participant we may filter when we activate to only projects with alloy nature and files under app/views/. The participant would parse the XMl file and traverse the AST to get the class/id attribute info.

      When we record a class or id reference, we will likely also want to record the fully qualified type name of the element it is on.

      <!-- index.xml -->
      <Alloy>
        <Window> <!-- implicit id of "index" -->
          <Label id="myLabel"/>
        </Window>
      </Alloy>
      

      In this case we'd record that index.xml has a Titanium.UI.Label with an id value of "myLabel". The type is required to determine the property list in TSS content assist, as well as content assist in controller JS. The type namespace mapping is the same as in TISTUD-2783.

      Please note that the top-level widget (the child under the <Alloy> tag) in a view has an implicit id of the file's basename, so the top-level Window of index.xml would have an id of "index").

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                cwilliams Christopher Williams
                Reporter:
                cwilliams Christopher Williams
              • Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: