Widget / Image to Gcode
This widget converts a raster image to Gcode.
by chilipeppr
HTML
<link rel="stylesheet" href="http://netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css">
<script src="http://www.chilipeppr.com/js/require.js"></script>
<div id="com-chilipeppr-widget-img2gcode" class="panel panel-default">
<div class="panel-heading">
<div class="btn-toolbar pull-right" role="toolbar" >
<!-- <div class="btn-group">
</div> -->
<!-- <div class="btn-group">
<button type="button" class="btn btn-xs btn-default lasersolder-on" data-delay="500" data-animation="true" data-placement="auto" data-container="body" data-trigger="hover" data-title="Turn Laser On" data-content="laser-on"><span class="glyphicon glyphicon-fire"></span><span style="margin-left:-2px;opacity:0.5;" class="glyphicon glyphicon-ok"></span></button>
<button type="button" class="btn btn-xs btn-default lasersolder-off" data-delay="500" data-animation="true" data-placement="auto" data-container="body" data-trigger="hover" data-title="Turn Laser Off" data-content="laser-off"><span style="opacity:0.5" class="glyphicon glyphicon-fire"></span></button>
</div> -->
<div class="btn-group">
<button type="button" class="btn btn-xs btn-default hidebody"><span class="glyphicon glyphicon-chevron-up"></span></button>
</div>
<div class="btn-group">
<div class="dropdown">
<button type="button" class="btn btn-xs btn-default dropdown-toggle" data-toggle="dropdown"><span class="caret"></span></button>
<ul class="dropdown-menu dropdown-menu-right" role="menu">
</ul>
</div>
</div>
</div>
<span class="panel-title" data-toggle="popover">Image to Gcode</span> <span style="font-size:9px;" class="fb-build"></span>
</div>
<div class="panel-body">
<div id="com-chilipeppr-widget-img2gcode-dragdrop"></div>
<!-- Nav tabs...
CSS
#com-chilipeppr-widget-img2gcode .nav-tabs>li>a {
padding: 2px 6px;
}
#com-chilipeppr-widget-img2gcode .tab-pane {
padding:10px 16px 20px 16px;
overflow:auto;
max-height:170px;
}
#com-chilipeppr-widget-img2gcode .panel-body {
padding:3px;
}
#com-chilipeppr-widget-img2gcode .panel-footer {
padding:0;
}
#com-chilipeppr-widget-img2gcode .panel-footer textarea {
background-color:initial;
border: 0px;
}
JavaScript
// Test this element. This code is auto-removed by the chilipeppr.load()
cprequire_test(["inline:com-chilipeppr-widget-img2gcode"], function (ls) {
console.log("test running of " + ls.id);
ls.init();
} /*end_test*/ );
cpdefine("inline:com-chilipeppr-widget-img2gcode", ["chilipeppr_ready"], function () {
return {
id: "com-chilipeppr-widget-img2gcode",
url: "http://fiddle.jshell.net/chilipeppr/dcdssk8s/show/light/",
fiddleurl: "http://jsfiddle.net/chilipeppr/dcdssk8s/",
name: "Widget / Image to Gcode",
desc: "This widget converts an image to Gcode.",
publish: {
},
subscribe: {
},
foreignPublish: {
},
foreignSubscribe: {
},
isInitted: false, // keep track of our one-time init
init: function () {
this.setupUiFromLocalStorage();
this.btnSetup();
this.forkSetup();
this.lazyLoadTutorial();
this.isInitted = true;
console.log(this.name + " done loading.");
},
setupDragDrop: function() {
chilipeppr.load(
"#com-chilipeppr-widget-img2gcode-dragdrop",
"http://fiddle.jshell.net/chilipeppr/Z9F6G/show/light/",
function () {
cprequire(
["inline:com-chilipeppr-elem-dragdrop"],
function (dd) {
dd.init();
dd.bind("com-chilipeppr-widget-img2gcode", null);
var ddoverlay = $('#com-chilipeppr-ws-gcode-dragdropoverlay');
chilipeppr.subscribe("/com-chilipeppr-elem-dragdrop/ondragover", function () {
//console.log("got dragdrop hover");
ddoverlay.removeClass("hidden");
});
...