198 lines
8.6 KiB
HTML
198 lines
8.6 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<!--
|
|
Link to included files. These are typically done by fetching from the web.
|
|
Because this needs to run without an internet conection, the files were saved
|
|
locally
|
|
-->
|
|
<script type="text/javascript" src="include/js/eventemitter2.min.js"></script>
|
|
|
|
|
|
<!-- Bootstrap is a beatuful and usefull library of GUIs. Docs can be found here: http://getbootstrap.com/
|
|
Tutorials can be found here: http://www.w3schools.com/bootstrap/default.asp
|
|
-->
|
|
<link rel="stylesheet" href="include/css/bootstrap.min.css">
|
|
<script src="include/js/jquery.min.js"></script>
|
|
<script src="include/js/bootstrap.min.js"></script>
|
|
|
|
|
|
<script src="include/js/roslib.js"></script>
|
|
<script type="text/javascript" src="include/js/roslib.js"></script>
|
|
|
|
<script type="text/javascript" src="backend/js/ros_scripts.js"></script>
|
|
<script type="text/javascript" src="backend/js/update_guis.js"></script>
|
|
|
|
<script type="text/javascript" src="backend/js/Topic.js"></script>
|
|
|
|
<audio id="audio" src="audio/beep-04.mp3" autostart="false" ></audio>
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
|
|
<script>
|
|
$(function(){
|
|
$("#includedContent").load("data_display/data_display.html");
|
|
});
|
|
</script>
|
|
|
|
<script type="text/javascript" src="data_display/js/ros_scripts.js"></script>
|
|
<script type="text/javascript" src="data_display/js/update_guis.js"></script>
|
|
|
|
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<div id="jumbotronTitle" class="jumbotron text-center">
|
|
<h1>Lab UI</h1>
|
|
</div>
|
|
|
|
<ul id="tabs" class="nav nav-pills" data-tabs="tabs" >
|
|
<li class="active"> <a href="#rosbridgeconnection" data-toggle="tab">
|
|
ROS Bridge Connection
|
|
<span id="rosbridgeconnection_badge" class="badge">
|
|
Not Connected
|
|
</span></a></li>
|
|
<li>
|
|
<a href="#DataDisplay" data-toggle="tab">
|
|
Data Display
|
|
</a>
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
<div id="my-tab-content" class="tab-content">
|
|
|
|
<div class="tab-pane" id="DataDisplay">
|
|
|
|
|
|
<!-- ##################################### ROBOT DISPLAY PANEL ######################################### -->
|
|
<div id="includedContent"></div>
|
|
<!-- ##################################### END DISPLAY PANEL ######################################### -->
|
|
|
|
|
|
<!-- ##################################### ROS BAG PANEL ######################################### -->
|
|
<!-- ROS Bag Panel -->
|
|
<div class="panel panel-default">
|
|
|
|
<div class="panel-heading">
|
|
ROS Bag
|
|
</div>
|
|
<div class="panel-body">
|
|
<div class="row">
|
|
<div class="col-md-3">
|
|
Bagfile name must not start with "/"
|
|
<div class="input-group">
|
|
<input type="text" id="recordText" class="form-control" placeholder="bag_filename">
|
|
<span class="input-group-btn">
|
|
<button class="btn btn-primary" id="recordButton" type="button" onclick="toggleRecording()">
|
|
<span id="recordButtonText">
|
|
Start
|
|
</span>
|
|
</button>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
<!-- ##################################### END ROS BAG PANEL ######################################### -->
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="tab-pane active" id="rosbridgeconnection">
|
|
<div class="panel panel-default">
|
|
<div class="panel-heading">
|
|
Predefined Masters Connections
|
|
</div>
|
|
<div class="panel-body">
|
|
<button id="localhostButton" type="button" onclick="ros.attemptConnection('ws://localhost:9090')" class="btn btn-primary">
|
|
localhost
|
|
<script type="text/javascript">
|
|
document.getElementById("ConnectionIPInput").value = ros.connectionName;
|
|
</script>
|
|
</button>
|
|
<button id="PhoebeButton" type="button" onclick="ros.attemptConnection('ws://phoebe.local:9090')" class="btn btn-primary">
|
|
Phoebe
|
|
<script type="text/javascript">
|
|
document.getElementById("ConnectionIPInput").value = ros.connectionName;
|
|
</script>
|
|
</button>
|
|
<button id="TitanButton" type="button" onclick="ros.attemptConnection('ws://titan.local:9090')" class="btn btn-primary">
|
|
Titan
|
|
<script type="text/javascript">
|
|
document.getElementById("ConnectionIPInput").value = ros.connectionName;
|
|
</script>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="panel panel-default">
|
|
<div class="panel-body">
|
|
|
|
<form class="form-inline" role="form" onsubmit="return validateForm()">
|
|
<div id="ConnectionIPForm" class="form-group has-warning" align="center">
|
|
<span>
|
|
<label id="ConnectionIPLabel" class="control-label" for="inputWarning">
|
|
Connection Warning
|
|
</label>
|
|
</span>
|
|
|
|
<span>
|
|
<div class="input-group">
|
|
<input type="text" id="ConnectionIPInput" class="form-control" placeholder="ROS Bridge Master IP" placeholder="No IP Address yet">
|
|
<span class="input-group-btn">
|
|
<button id="ConnectionButton" type="button" onclick="ros.attemptConnection()" class="btn btn-warning">
|
|
Connect
|
|
<script type="text/javascript">
|
|
document.getElementById("ConnectionIPInput").value = ros.connectionName;
|
|
</script>
|
|
</button>
|
|
</span>
|
|
|
|
|
|
</div>
|
|
</span>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="panel panel-default">
|
|
<div class="panel-heading">
|
|
ROS Topics.
|
|
</div>
|
|
<div class="panel-body">
|
|
|
|
<div class="col-sm-1" id="ROSTopics">
|
|
N/A
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="panel panel-default">
|
|
<div class="panel-heading">
|
|
ROS Nodes.
|
|
</div>
|
|
<div class="panel-body">
|
|
|
|
<div class="col-sm-1" id="ROSNodes">
|
|
N/A
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</body>
|
|
</html>
|