<?xml version="1.0" encoding="UTF-8"?>
<otrunk id="fba5ef80-db43-11dc-95ff-0800200c9a66">
  <imports>
    <import class="org.concord.data.state.OTDataStore" />
    <import class="org.concord.data.state.OTDataChannelDescription" />
    <import class="org.concord.data.state.OTDataField" />
    <import class="org.concord.data.state.OTDataTable" />
    <import class="org.concord.data.state.OTPropertyDataProducer" />
    <import class="org.concord.datagraph.state.OTDataGraph" />
    <import class="org.concord.datagraph.state.OTDataAxis" />
    <import class="org.concord.datagraph.state.OTDataGraphable" />
    <import class="org.concord.datagraph.state.OTDataCollector" />
    <import class="org.concord.datagraph.state.OTMultiDataGraph" />
    <import class="org.concord.datagraph.state.OTPluginView" />
    <import class="org.concord.datagraph.state.OTDataBarGraphable" />
    <import class="org.concord.framework.otrunk.view.OTFrame" />
    <import class="org.concord.graph.util.state.OTDrawingTool" />
    <import class="org.concord.graph.util.state.OTDrawingStamp" />
    <import class="org.concord.graph.util.state.OTDrawingImageIcon" />
    <import class="org.concord.graph.util.state.OTDrawingShape" />
    <import class="org.concord.graph.util.state.OTDrawingTool2" />
    <import class="org.concord.graph.util.state.OTPointTextLabel" />
    <import class="org.concord.otrunk.OTInclude" />
    <import class="org.concord.otrunk.OTSystem" />
    <import class="org.concord.otrunk.browser.mozswing.OTMozSwing" />
    <import class="org.concord.otrunk.graph.OTDataCollectorViewConfig" />
    <import class="org.concord.otrunk.ui.OTButton" />
    <import class="org.concord.otrunk.ui.OTCardContainer" />
    <import class="org.concord.otrunk.ui.OTChoice" />
    <import class="org.concord.otrunk.ui.OTChoiceMultiple" />
    <import class="org.concord.otrunk.ui.OTImage" />
    <import class="org.concord.otrunk.ui.OTModeSwitcher" />
    <import class="org.concord.otrunk.ui.OTSlider" />
    <import class="org.concord.otrunk.ui.OTText" />
    <import class="org.concord.otrunk.ui.OTSoundPlayer" />
    <import class="org.concord.otrunk.ui.snapshot.OTSnapshot" />
    <import class="org.concord.otrunk.ui.snapshot.OTSnapshotButton" />
    <import class="org.concord.otrunk.ui.snapshot.OTSnapshotAlbum" />
    <import class="org.concord.otrunk.ui.snapshot.OTSnapshotChooser" />
    <import class="org.concord.otrunk.ui.swing.OTChoiceViewConfig" />
    <import class="org.concord.otrunk.util.OTSharingBundle" />
    <import class="org.concord.otrunk.view.OTViewChild" />
    <import class="org.concord.otrunk.view.OTViewEntry" />
    <import class="org.concord.otrunk.view.OTViewBundle" />
    <import class="org.concord.otrunk.view.OTViewMode" />
    <import class="org.concord.otrunk.view.document.OTCompoundDoc" />
    <import class="org.concord.otrunk.view.document.OTCssText" />
    <import class="org.concord.otrunk.view.document.OTDocumentViewConfig" />
    <import class="org.concord.otrunk.view.document.edit.OTDocumentEditViewConfig" />
    <import class="org.concord.otrunk.view.prototype.OTPrototypeViewEntry" />
    <import class="org.concord.otrunk.view.prototype.OTPrototypeEventController" />
    <import class="org.concord.otrunk.view.prototype.OTPrototypeMapEntry" />
    <import class="org.concord.otrunknl4.OTNLogoModel" />
    <import class="org.concord.sensor.state.OTDeviceConfig" />
    <import class="org.concord.sensor.state.OTExperimentRequest" />
    <import class="org.concord.sensor.state.OTInterfaceManager" />
    <import class="org.concord.sensor.state.OTSensorDataProxy" />
    <import class="org.concord.sensor.state.OTSensorRequest" />
    <import class="org.concord.sensor.state.OTZeroSensor" />
    <import class="org.concord.datagraph.state.OTDataPointLabel" />
    <import class="org.concord.otrunkmw.OTModelerPage" />
  </imports>
  <objects>
    <OTSystem local_id="system">
      <includes>
        <OTInclude href="../UDL/global-imports/predefined-sensor-graphs.otml" />
      </includes>
      <bundles>
        <OTViewBundle id="8d880970-c22a-11dc-95ff-0800200c9a66" showLeftPanel="false" currentMode="authoring">
          <modes>
            <OTViewMode name="authoring">
              <map>
                <entry key="${moz-swing-view}">
                  <OTViewEntry objectClass="org.concord.otrunk.browser.mozswing.OTMozSwing" viewClass="org.concord.otrunk.browser.mozswing.OTMozSwingEditView" />
                </entry>
                <entry key="${snapshot_button_view}">
                  <OTViewEntry objectClass="org.concord.otrunk.ui.snapshot.OTSnapshotButton" viewClass="org.concord.otrunk.ui.snapshot.OTSnapshotButtonEditView" />
                </entry>
                <entry key="${choice-radio-view}">
                  <OTChoiceViewConfig objectClass="org.concord.otrunk.ui.OTChoice" viewClass="org.concord.otrunk.ui.swing.OTChoiceComboBoxEditView" useViewsAsChoices="true" />
                </entry>
                <entry key="${choice-checkbox-view}">
                  <OTChoiceViewConfig objectClass="org.concord.otrunk.ui.OTChoiceMultiple" viewClass="org.concord.otrunk.ui.swing.OTChoiceComboBoxEditView" useViewsAsChoices="true" />
                </entry>
                <entry key="${data-table-view}">
                  <OTViewEntry objectClass="org.concord.data.state.OTDataTable" viewClass="org.concord.otrunk.ui.swing.OTDataTableEditView" />
                </entry>
                <entry key="${netlogo-view}">
                  <OTViewEntry viewClass="org.concord.otrunknl4.OTNLogoModelEditView" objectClass="org.concord.otrunknl4.OTNLogoModel" />
                </entry>
                <entry key="${compound-doc-view}">
                  <OTDocumentEditViewConfig objectClass="org.concord.otrunk.view.document.OTCompoundDoc" viewClass="org.concord.otrunk.view.document.edit.OTDocumentEditView">
                    <documentViewConfig>
                      <object refid="${compound-doc-view}" />
                    </documentViewConfig>
                    <objectsToInsert>
                      <OTText name="Text field" />
                      <OTDrawingTool2 name="Draw tool" />
                      <OTChoice name="Multiple-choice (single answer)" />
                      <OTChoiceMultiple name="Multiple-choice (check boxes)" />
                      <OTDataTable name="Data table" showLastRowForAddingNew="true">
                        <dataStore>
                          <OTDataStore numberChannels="2" />
                        </dataStore>
                      </OTDataTable>
                      <OTDataCollector name="Data graph" title="Data graph">
                        <source>
                          <OTDataGraphable name="Data Graph" connectPoints="true" controllable="true" yColumn="1" drawMarks="false" color="16711680" xColumn="0" lineWidth="2.0">
                            <dataStore>
                              <OTDataStore />
                            </dataStore>
                          </OTDataGraphable>
                        </source>
                        <xDataAxis>
                          <OTDataAxis max="60.0" units="s" min="0.0" label="Time" />
                        </xDataAxis>
                        <yDataAxis>
                          <OTDataAxis max="40.0" units="" min="-0.0" label="" />
                        </yDataAxis>
                      </OTDataCollector>
                      <OTSnapshotButton name="Snapshot button" />
                      <OTSnapshotAlbum name="Snapshot album" />
                      <OTSnapshotChooser name="Snapshot chooser" />
                      <OTMozSwing name="Web browser" />
                      <OTSoundPlayer name="Sound player" />
                      <OTModelerPage name="Molecular workbench" authoredDataURL="http://mw2.concord.org/public/student/classic/motion/undershotwaterwheel.cml" />
                      <OTNLogoModel name="NetLogo model" />
                      <OTSlider name="Slider">
                        <dataProducer>
                          <OTPropertyDataProducer property="value" timeScale="0.1" />
                        </dataProducer>
                      </OTSlider>
                    </objectsToInsert>
                  </OTDocumentEditViewConfig>
                </entry>
                <entry key="${data-collector-view}">
                  <OTDataCollectorViewConfig viewClass="org.concord.otrunk.graph.OTDataCollectorEditView" objectClass="org.concord.datagraph.state.OTDataCollector">
                    <predefinedGraphs>
                      <object refid="088786c2-8719-11dc-8314-0800200c9a66" />
                    </predefinedGraphs>
                  </OTDataCollectorViewConfig>
                </entry>
                <entry key="${drawing-view}">
                  <OTViewEntry viewClass="org.concord.datagraph.state.OTDataDrawingToolEditView" objectClass="org.concord.graph.util.state.OTDrawingTool" />
                </entry>
                <entry key="${text-edit}">
                  <OTViewEntry objectClass="org.concord.otrunk.ui.OTText" viewClass="org.concord.otrunk.ui.swing.OTTextEditEditView" />
                </entry>
                <entry key="${sound-player-view}">
                  <OTViewEntry objectClass="org.concord.otrunk.ui.OTSoundPlayer" viewClass="org.concord.otrunk.ui.swing.OTSoundPlayerEditView" />
                </entry>
                <entry key="${mw-view}">
                  <OTViewEntry objectClass="org.concord.otrunkmw.OTModelerPage" viewClass="org.concord.otrunkmw.OTModelerPageEditView" />
                </entry>
                <entry key="${slider-view}">
                  <OTViewEntry objectClass="org.concord.otrunk.ui.OTSlider" viewClass="org.concord.otrunk.ui.swing.OTSliderEditView" />
                </entry>
              </map>
            </OTViewMode>
            <OTViewMode name="student">
              <map />
            </OTViewMode>
          </modes>
          <frame>
            <OTFrame useScrollPane="false" width="850" height="600" />
          </frame>
          <views>
            <OTViewEntry objectClass="org.concord.data.state.OTPropertyDataProducer" viewClass="org.concord.otrunk.ui.swing.OTPropertyDataProducerEditView" />
            <OTViewEntry local_id="slider-view" objectClass="org.concord.otrunk.ui.OTSlider" viewClass="org.concord.otrunk.ui.swing.OTSliderView" />
            <OTViewEntry local_id="mw-view" objectClass="org.concord.otrunkmw.OTModelerPage" viewClass="org.concord.otrunkmw.OTModelerPageView" />
            <OTViewEntry objectClass="org.concord.otrunk.OTIncludeRootObject" viewClass="org.concord.otrunk.OTIncludeRootObjectView" />
            <OTViewEntry local_id="moz-swing-view" objectClass="org.concord.otrunk.browser.mozswing.OTMozSwing" viewClass="org.concord.otrunk.browser.mozswing.OTMozSwingView" />
            <OTViewEntry objectClass="org.concord.otrunk.ui.OTModeSwitcher" viewClass="org.concord.otrunk.ui.swing.OTModeSwitcherView" />
            <OTViewEntry objectClass="org.concord.otrunk.ui.OTImage" viewClass="org.concord.otrunk.ui.swing.OTImageView" />
            <OTViewEntry objectClass="org.concord.otrunk.ui.OTModeSwitcher" viewClass="org.concord.otrunk.ui.swing.OTModeSwitcherView" />
            <OTViewEntry local_id="snapshot_button_view" objectClass="org.concord.otrunk.ui.snapshot.OTSnapshotButton" viewClass="org.concord.otrunk.ui.snapshot.OTSnapshotButtonView" />
            <OTViewEntry local_id="snapshot-chooser-view" objectClass="org.concord.otrunk.ui.snapshot.OTSnapshotChooser" viewClass="org.concord.otrunk.ui.snapshot.OTSnapshotChooserView" />
            <OTViewEntry objectClass="org.concord.otrunk.ui.snapshot.OTSnapshotAlbum" viewClass="org.concord.otrunk.ui.snapshot.OTSnapshotAlbumView" />
            <OTViewEntry objectClass="org.concord.otrunk.ui.OTButton" viewClass="org.concord.otrunk.ui.swing.OTButtonView" />
            <OTChoiceViewConfig local_id="choice-checkbox-view" objectClass="org.concord.otrunk.ui.OTChoiceMultiple" viewClass="org.concord.otrunk.ui.swing.OTChoiceCheckBoxView" useViewsAsChoices="true" />
            <OTChoiceViewConfig local_id="choice-radio-view" objectClass="org.concord.otrunk.ui.OTChoice" viewClass="org.concord.otrunk.ui.swing.OTChoiceRadioButtonView" useViewsAsChoices="true" />
            <OTViewEntry id="453a61b0-e18b-11dc-95ff-0800200c9a66" objectClass="org.concord.otrunk.ui.OTChoice" viewClass="org.concord.otrunk.ui.swing.OTChoiceComboBoxView" />
            <OTViewEntry objectClass="org.concord.otrunk.ui.OTCardContainer" viewClass="org.concord.otrunk.ui.swing.OTCardContainerView" />
            <OTViewEntry objectClass="org.concord.otrunk.ui.OTBorderContainer" viewClass="org.concord.otrunk.ui.swing.OTBorderContainerView" />
            <OTViewEntry objectClass="org.concord.otrunk.ui.OTPlacementContainer" viewClass="org.concord.otrunk.ui.swing.OTPlacementContainerView" />
            <OTViewEntry local_id="text-edit" objectClass="org.concord.otrunk.ui.OTText" viewClass="org.concord.otrunk.ui.swing.OTTextEditView" />
            <OTViewEntry objectClass="org.concord.otrunk.ui.OTText" viewClass="org.concord.otrunk.ui.swing.OTTextView" />
            <OTViewEntry local_id="data-collector-view" viewClass="org.concord.datagraph.state.OTDataCollectorView" objectClass="org.concord.datagraph.state.OTDataCollector" />
            <OTViewEntry viewClass="org.concord.datagraph.state.OTDataGraphView" objectClass="org.concord.datagraph.state.OTDataGraph" />
            <OTViewEntry viewClass="org.concord.data.state.OTDataFieldView" objectClass="org.concord.data.state.OTDataField" />
            <OTViewEntry local_id="drawing-view" viewClass="org.concord.datagraph.state.OTDataDrawingToolView" objectClass="org.concord.graph.util.state.OTDrawingTool" />
            <OTViewEntry viewClass="org.concord.datagraph.state.OTMultiDataGraphView" objectClass="org.concord.datagraph.state.OTMultiDataGraph" />
            <OTViewEntry local_id="data-table-view" objectClass="org.concord.data.state.OTDataTable" viewClass="org.concord.data.state.OTDataTableView" />
            <OTViewEntry local_id="netlogo-view" viewClass="org.concord.otrunknl4.OTNLogoModelView" objectClass="org.concord.otrunknl4.OTNLogoModel" />
            <OTViewEntry local_id="sound-player-view" objectClass="org.concord.otrunk.ui.OTSoundPlayer" viewClass="org.concord.otrunk.ui.swing.OTSoundPlayerView" />
            <OTDocumentViewConfig local_id="compound-doc-view" objectClass="org.concord.otrunk.view.document.OTCompoundDoc" viewClass="org.concord.otrunk.view.document.OTDocumentView">
              <cssBlocks>
                <OTCssText cssText="                 body {        font-size: 18;        FONT-STYLE: normal;        FONT-FAMILY: Verdana, Arial;        FONT-VARIANT: normal;       TEXT-DECORATION: none     }" />
              </cssBlocks>
            </OTDocumentViewConfig>
            <OTViewEntry objectClass="org.concord.graph.util.state.OTDrawingTool2" viewClass="org.concord.datagraph.state.OTDataDrawingToolView" />
          </views>
        </OTViewBundle>
        <OTSharingBundle>
          <sharedObjects>
            <OTPropertyDataProducer id="a51a7b11-4f8a-11dd-9cf3-e9f1a8908b11" property="value" timeScale="0.1" name="slider" sampleTime="0.1">
              <target>
                <OTSlider id="a51a05e0-4f8a-11dd-9cf3-e9f1a8908b11" name="Slider" vertical="false" value="20" maximum="40">
                  <dataProducer>
                    <object refid="a51a7b11-4f8a-11dd-9cf3-e9f1a8908b11" />
                  </dataProducer>
                </OTSlider>
              </target>
            </OTPropertyDataProducer>
          </sharedObjects>
        </OTSharingBundle>
        <OTInterfaceManager>
          <deviceConfigs>
            <OTDeviceConfig configString="none" deviceId="10" />
          </deviceConfigs>
        </OTInterfaceManager>
      </bundles>
      <root>
        <OTModeSwitcher>
          <otObject>
            <OTCompoundDoc>
              <bodyText>
                <object refid="a51a05e0-4f8a-11dd-9cf3-e9f1a8908b11" />
                <br />
                <br />
                <object refid="a9aa6372-4f8a-11dd-9cf3-e9f1a8908b11" />
              </bodyText>
              <documentRefs>
                <object refid="a51a05e0-4f8a-11dd-9cf3-e9f1a8908b11" />
                <OTDataCollector id="a9aa6372-4f8a-11dd-9cf3-e9f1a8908b11" name="Data graph" title="Data graph">
                  <source>
                    <OTDataGraphable name="Data Graph" connectPoints="true" controllable="false" yColumn="1" drawMarks="false" color="16711680" xColumn="0" lineWidth="2.0">
                      <dataStore>
                        <OTDataStore dt="0.1" numberChannels="1">
                          <channelDescriptions>
                            <OTDataChannelDescription name="time" unit="s" precision="2" numericData="true" />
                            <OTDataChannelDescription name="distance" unit="m" numericData="true" />
                          </channelDescriptions>
                        </OTDataStore>
                      </dataStore>
                      <dataProducer>
                        <object refid="a51a7b11-4f8a-11dd-9cf3-e9f1a8908b11" />
                      </dataProducer>
                    </OTDataGraphable>
                  </source>
                  <xDataAxis>
                    <OTDataAxis max="60.0" units="s" min="0.0" label="Time" />
                  </xDataAxis>
                  <yDataAxis>
                    <OTDataAxis max="40.0" units="" min="-0.0" label="" />
                  </yDataAxis>
                </OTDataCollector>
              </documentRefs>
            </OTCompoundDoc>
          </otObject>
        </OTModeSwitcher>
      </root>
    </OTSystem>
  </objects>
</otrunk>

