From 90b20d0be674ca4f9404fdd3c353e0c5dec6cdb8 Mon Sep 17 00:00:00 2001 From: Teja Date: Fri, 3 Jul 2015 12:20:38 +0200 Subject: [PATCH] wip --- .../plugins/lasercutterprofiles/__init__.py | 7 +- src/octoprint/plugins/svgtogcode/__init__.py | 11 +- .../plugins/virtual_printer/virtual.py | 24 +- src/octoprint/server/util/flask.py | 4 +- src/octoprint/server/views.py | 7 +- .../static/js/app/viewmodels/settings.js | 8 +- .../static/js/app/viewmodels/terminal.js | 10 +- .../templates/dialogs/settings.jinja2 | 11 +- .../dialogs/settings/serialconnection.jinja2 | 24 +- src/octoprint/templates/index.jinja2 | 1 - src/octoprint/templates/mrbeam_index.jinja2 | 651 ++++++++++++++++++ .../templates/navbar/settings.jinja2 | 8 +- src/octoprint/templates/stylesheets.jinja2 | 4 +- 13 files changed, 694 insertions(+), 76 deletions(-) create mode 100644 src/octoprint/templates/mrbeam_index.jinja2 diff --git a/src/octoprint/plugins/lasercutterprofiles/__init__.py b/src/octoprint/plugins/lasercutterprofiles/__init__.py index 376e38b5..25026f29 100644 --- a/src/octoprint/plugins/lasercutterprofiles/__init__.py +++ b/src/octoprint/plugins/lasercutterprofiles/__init__.py @@ -28,7 +28,8 @@ default_settings = { "current_profile_id": "_mrbeam_junior" } s = octoprint.plugin.plugin_settings("lasercutterprofiles", defaults=default_settings) -blueprint = flask.Blueprint("plugin.lasercutterprofiles", __name__) +static_folder = os.path.join(os.path.dirname(__file__), 'static') +blueprint = flask.Blueprint("plugin.lasercutterprofiles", __name__, static_folder=static_folder) laserCutterProfileManager = LaserCutterProfileManager(s) @blueprint.route("/profiles", methods=["GET"]) @@ -176,10 +177,6 @@ class LaserCutterProfilesPlugin(octoprint.plugin.SettingsPlugin, less=[], css=[] ) - - def get_asset_folder(self): - import os - return os.path.join(self._basefolder, "static") ##~~ SettingsPlugin API diff --git a/src/octoprint/plugins/svgtogcode/__init__.py b/src/octoprint/plugins/svgtogcode/__init__.py index e39ceaec..8712125c 100644 --- a/src/octoprint/plugins/svgtogcode/__init__.py +++ b/src/octoprint/plugins/svgtogcode/__init__.py @@ -130,7 +130,7 @@ class SvgToGcodePlugin(octoprint.plugin.SlicerPlugin, svgtogcode_logging_handler.setLevel(logging.DEBUG) self._svgtogcode_logger.addHandler(svgtogcode_logging_handler) - self._svgtogcode_logger.setLevel(logging.DEBUG if s.getBoolean(["debug_logging"]) else logging.CRITICAL) + self._svgtogcode_logger.setLevel(logging.DEBUG if s.get_boolean(["debug_logging"]) else logging.CRITICAL) self._svgtogcode_logger.propagate = False ##~~ BlueprintPlugin API @@ -229,7 +229,7 @@ class SvgToGcodePlugin(octoprint.plugin.SlicerPlugin, defaultIntensity=s.get(["defaultIntensity"]), defaultFeedrate=s.get(["defaultFeedrate"]), svgDPI=s.get(["svgDPI"]), - debug_logging=s.getBoolean(["debug_logging"]) + debug_logging=s.get_boolean(["debug_logging"]) ) def on_settings_save(self, data): @@ -242,7 +242,7 @@ class SvgToGcodePlugin(octoprint.plugin.SlicerPlugin, if "svgDPI" in data and data["svgDPI"]: s.set(["svgDPI"], data["svgDPI"]) if "debug_logging" in data: - old_debug_logging = s.getBoolean(["debug_logging"]) + old_debug_logging = s.get_boolean(["debug_logging"]) new_debug_logging = data["debug_logging"] in octoprint.settings.valid_boolean_trues if old_debug_logging != new_debug_logging: if new_debug_logging: @@ -262,7 +262,10 @@ class SvgToGcodePlugin(octoprint.plugin.SlicerPlugin, return os.path.join(self._basefolder, "templates") def get_template_configs(self): - return [dict(type = 'settings', name = "Svg Conversion", custom_bindings = False)] + return [ + dict(type = 'settings', name = "Svg Conversion", template='svgtogcode_settings.jinja2', custom_bindings = False), + dict(type = 'generic', name = "Svg Conversion", custom_bindings = False) + ] ##~~ SlicerPlugin API diff --git a/src/octoprint/plugins/virtual_printer/virtual.py b/src/octoprint/plugins/virtual_printer/virtual.py index 874f5024..9bdc6079 100644 --- a/src/octoprint/plugins/virtual_printer/virtual.py +++ b/src/octoprint/plugins/virtual_printer/virtual.py @@ -64,9 +64,9 @@ class VirtualPrinter(): self._newSdFilePos = None self._heatupThread = None - self._okBeforeCommandOutput = settings().getBoolean(["devel", "virtualPrinter", "okBeforeCommandOutput"]) + self._okBeforeCommandOutput = settings().get_boolean(["devel", "virtualPrinter", "okBeforeCommandOutput"]) - self._sendWait = settings().getBoolean(["devel", "virtualPrinter", "sendWait"]) + self._sendWait = settings().get_boolean(["devel", "virtualPrinter", "sendWait"]) self._waitInterval = settings().getFloat(["devel", "virtualPrinter", "waitInterval"]) self.currentLine = 0 @@ -132,7 +132,7 @@ class VirtualPrinter(): if "*" in data: data = data[:data.rfind("*")] self.currentLine += 1 - elif settings().getBoolean(["devel", "virtualPrinter", "forceChecksum"]): + elif settings().get_boolean(["devel", "virtualPrinter", "forceChecksum"]): self.outgoing.put("Error: Missing checksum") continue @@ -352,7 +352,7 @@ class VirtualPrinter(): def _listSd(self): self.outgoing.put("Begin file list") - if settings().getBoolean(["devel", "virtualPrinter", "extendedSdFileList"]): + if settings().get_boolean(["devel", "virtualPrinter", "extendedSdFileList"]): items = map( lambda x: "%s %d" % (x.upper(), os.stat(os.path.join(self._virtualSd, x)).st_size), os.listdir(self._virtualSd) @@ -398,7 +398,7 @@ class VirtualPrinter(): self.outgoing.put("Not SD printing") def _processTemperatureQuery(self): - includeTarget = not settings().getBoolean(["devel", "virtualPrinter", "repetierStyleTargetTemperature"]) + includeTarget = not settings().get_boolean(["devel", "virtualPrinter", "repetierStyleTargetTemperature"]) includeOk = not self._okBeforeCommandOutput # send simulated temperature data @@ -408,16 +408,16 @@ class VirtualPrinter(): allTemps.append((i, self.temp[i], self.targetTemp[i])) allTempsString = " ".join(map(lambda x: "T%d:%.2f /%.2f" % x if includeTarget else "T%d:%.2f" % (x[0], x[1]), allTemps)) - if settings().getBoolean(["devel", "virtualPrinter", "smoothieTemperatureReporting"]): + if settings().get_boolean(["devel", "virtualPrinter", "smoothieTemperatureReporting"]): allTempsString = allTempsString.replace("T0:", "T:") - if settings().getBoolean(["devel", "virtualPrinter", "hasBed"]): + if settings().get_boolean(["devel", "virtualPrinter", "hasBed"]): if includeTarget: allTempsString = "B:%.2f /%.2f %s" % (self.bedTemp, self.bedTargetTemp, allTempsString) else: allTempsString = "B:%.2f %s" % (self.bedTemp, allTempsString) - if settings().getBoolean(["devel", "virtualPrinter", "includeCurrentToolInTemps"]): + if settings().get_boolean(["devel", "virtualPrinter", "includeCurrentToolInTemps"]): if includeTarget: output = "T:%.2f /%.2f %s @:64\n" % (self.temp[self.currentExtruder], self.targetTemp[self.currentExtruder] + 1, allTempsString) else: @@ -453,7 +453,7 @@ class VirtualPrinter(): if "M109" in line: self._waitForHeatup("tool%d" % tool) - if settings().getBoolean(["devel", "virtualPrinter", "repetierStyleTargetTemperature"]): + if settings().get_boolean(["devel", "virtualPrinter", "repetierStyleTargetTemperature"]): self.outgoing.put("TargetExtr%d:%d" % (tool, self.targetTemp[tool])) def _parseBedCommand(self, line): @@ -464,7 +464,7 @@ class VirtualPrinter(): if "M190" in line: self._waitForHeatup("bed") - if settings().getBoolean(["devel", "virtualPrinter", "repetierStyleTargetTemperature"]): + if settings().get_boolean(["devel", "virtualPrinter", "repetierStyleTargetTemperature"]): self.outgoing.put("TargetBed:%d" % self.bedTargetTemp) def _performMove(self, line): @@ -516,7 +516,7 @@ class VirtualPrinter(): pass if duration: - if settings().getBoolean(["devel", "virtualPrinter", "waitOnLongMoves"]): + if settings().get_boolean(["devel", "virtualPrinter", "waitOnLongMoves"]): slept = 0 while duration - slept > self._read_timeout: time.sleep(self._read_timeout) @@ -685,7 +685,7 @@ class VirtualPrinter(): self.buffered = None def _sendOk(self): - if settings().getBoolean(["devel", "virtualPrinter", "okWithLinenumber"]): + if settings().get_boolean(["devel", "virtualPrinter", "okWithLinenumber"]): self.outgoing.put("ok %d" % self.lastN) else: self.outgoing.put("ok") diff --git a/src/octoprint/server/util/flask.py b/src/octoprint/server/util/flask.py index 91d2a738..8abba926 100644 --- a/src/octoprint/server/util/flask.py +++ b/src/octoprint/server/util/flask.py @@ -479,8 +479,8 @@ class PluginAssetResolver(flask.ext.assets.FlaskResolver): prefix, plugin, name = item.split("/", 2) blueprint = prefix + "." + plugin print('####', blueprint, app.blueprints[blueprint]) - for attr in dir(app.blueprints[blueprint]): - print "obj.%s = %s" % (attr, getattr(app.blueprints[blueprint], attr)) + #for attr in dir(app.blueprints[blueprint]): + # print "obj.%s = %s" % (attr, getattr(app.blueprints[blueprint], attr)) directory = flask.ext.assets.get_static_folder(app.blueprints[blueprint]) item = name endpoint = blueprint + ".static" diff --git a/src/octoprint/server/views.py b/src/octoprint/server/views.py index 318534f6..1bd59886 100644 --- a/src/octoprint/server/views.py +++ b/src/octoprint/server/views.py @@ -258,12 +258,9 @@ def index(): ) render_kwargs.update(plugin_vars) - #~~ render! - return render_template( - "index.jinja2", - **render_kwargs - ) + return render_template("mrbeam_index.jinja2", **render_kwargs) + #return render_template("index.jinja2", **render_kwargs) def _process_template_configs(name, implementation, configs, rules): diff --git a/src/octoprint/static/js/app/viewmodels/settings.js b/src/octoprint/static/js/app/viewmodels/settings.js index f1db8842..5eed7d6c 100644 --- a/src/octoprint/static/js/app/viewmodels/settings.js +++ b/src/octoprint/static/js/app/viewmodels/settings.js @@ -260,6 +260,10 @@ // }, // "system": { // "actions": self.system_actions() +// } +// }); +// return data; +// }; //======= $(function() { function SettingsViewModel(parameters) { @@ -304,8 +308,7 @@ $(function() { } //>>>>>>> upstream/maintenance }, - { - }, + {}, "locale", [], [], @@ -589,7 +592,6 @@ $(function() { return self.translations.allSize() > 0; }); - return data; }; //<<<<<<< HEAD diff --git a/src/octoprint/static/js/app/viewmodels/terminal.js b/src/octoprint/static/js/app/viewmodels/terminal.js index 25d2acb4..6099cf1a 100644 --- a/src/octoprint/static/js/app/viewmodels/terminal.js +++ b/src/octoprint/static/js/app/viewmodels/terminal.js @@ -355,10 +355,10 @@ $(function() { }; //<<<<<<< HEAD - self.handleKeyUp = function(event) { - if (event.keyCode == 13) { - self.sendCommandWithSafetyPopup(); - } +// self.handleKeyUp = function(event) { +// if (event.keyCode == 13) { +// self.sendCommandWithSafetyPopup(); +// } //======= self.onAfterTabChange = function(current, previous) { if (current != "#term") { @@ -370,7 +370,7 @@ $(function() { }; //>>>>>>> upstream/maintenance -// } + } OCTOPRINT_VIEWMODELS.push([ TerminalViewModel, diff --git a/src/octoprint/templates/dialogs/settings.jinja2 b/src/octoprint/templates/dialogs/settings.jinja2 index ee229566..40f3b931 100644 --- a/src/octoprint/templates/dialogs/settings.jinja2 +++ b/src/octoprint/templates/dialogs/settings.jinja2 @@ -1,10 +1,6 @@ -<<<<<<< HEAD + -======= - - ->>>>>>> upstream/maintenance diff --git a/src/octoprint/templates/dialogs/settings/serialconnection.jinja2 b/src/octoprint/templates/dialogs/settings/serialconnection.jinja2 index 3c6f5d79..a748cb24 100644 --- a/src/octoprint/templates/dialogs/settings/serialconnection.jinja2 +++ b/src/octoprint/templates/dialogs/settings/serialconnection.jinja2 @@ -22,28 +22,18 @@
-<<<<<<< HEAD -======= - ->>>>>>> upstream/maintenance + s
-<<<<<<< HEAD - -
-======= s
->>>>>>> upstream/maintenance +
diff --git a/src/octoprint/templates/index.jinja2 b/src/octoprint/templates/index.jinja2 index eeb99fdd..cae2ac47 100644 --- a/src/octoprint/templates/index.jinja2 +++ b/src/octoprint/templates/index.jinja2 @@ -58,7 +58,6 @@ {% endfor %}
->>>>>> upstream/maintenance-->
diff --git a/src/octoprint/templates/mrbeam_index.jinja2 b/src/octoprint/templates/mrbeam_index.jinja2 new file mode 100644 index 00000000..e16a081f --- /dev/null +++ b/src/octoprint/templates/mrbeam_index.jinja2 @@ -0,0 +1,651 @@ + + + + Mr Beam + + + + + + {% include 'stylesheets.jinja2' %} + {% include 'initscript.jinja2' %} + + +
+ + +
+
+
+
+
+
+ +
+ +
+ +
+
+ Mr Beam is in a locked state as it does not know its position. + First remove any objects blocking the gantry's travel range. + Then do a homing cycle. +
+ +
+ + +
+
+
+
+ {{ _('Position') }}: + + +
+
+ +
+ XY-Axes +
+ +
+
+ + + +
+
+ +
+
+
+
+ Z-Axis +
+ + + +
+
+
+ +
+
+ +
+ + Jog distance: 10mm +
+ +
+
+
+
+ +
+
+ + + + + + + +
+
+
+
+ {{ _('Machine State') }}:
+ +
+ + + {{ _('Approx. Total Job Time') }}:
+
+
{{ _('Processed') }} :
+
+ + + + +
+
+
+
+ +
+ +
+ + + +
+ +
+
+
+
+
+ + + + + + + +
+
+
+ + + +
+ + + +
+ + + + + add designs via + the design library + or drag 'n' drop + + + + + + + +
+
+
+
+
+ +
+
+
+ + +
+ +
+ + +
+
    +
  • + G0: + rapid position move +
    parameters: X,Y
    +
    example: G0 X100 Y0
    +
  • +
  • + F: + set feedrate for G1,G2,G3 +
    parameters: value
    +
    example: F300
    +
  • +
  • + G1: + work move, line +
    parameters: X,Y,F
    +
    example: G1 X100 Y0 F800
    +
  • +
  • + G2: + work move, arc clockwise +
    parameters: X,Y,I,J,F
    +
    example: G2 X10 Y10 I8 J5
    +
  • +
  • + G3: + work move, arc counterclockwise +
    parameters: X,Y,I,J,F
    +
    example: G3 X10 Y10 I8 J5
    +
  • +
  • + G4: + dwell +
    parameters: P
    +
    example: G4 P0.5
    +
  • +
  • + M3: + laser on +
    parameters: S
    +
    example: M3 S10
    +
  • +
  • + M5: + laser off +
    parameters: -
    +
    example: M5
    +
  • +
  • + M8: + fan on +
    parameters: -
    +
    example: M8
    +
  • +
  • + M9: + fan off +
    parameters: -
    +
    example: M9
    +
  • +
  • + M2: + machine off +
    parameters: -
    +
    example: M2
    +
  • +
  • + G90: + absolute coordinate mode +
    parameters: -
    +
    example: G90
    +
  • +
  • + G91: + relative coordinate mode +
    parameters: -
    +
    example: G91
    +
  • +
  • + G92: + set coordinate origin +
    parameters: X,Y
    +
    example: G92 X0 Y0
    +
  • +
  • + G20: + set units to inches +
    parameters: -
    +
    example: G20
    +
  • +
  • + G21: + set units to millimeters +
    parameters: -
    +
    example: G21
    +
  • +
+
+
+
+ +

+								
+							
+ +
+
+
+ +
+
+
+
+
    +
  1. Add designs to your working area with the -button
  2. +
  3. Afterwards switch back to the working area
  4. + +
+
+
+ {{ _('Files') }} + + +
+ + + +
+ {{ _('Free') }}: +
+
+
+ + + + {{ _('Upload') }} + + +
+
+
+
+
+ {{ _('Hint: You can also drag and drop files on this page to upload them.') }} +
+
+
+
+
+
+
+ +
+
+ +
+
+
+ + + + + + + +
+
+
+
+
+
+
+
+ +
+
+
+
+
    +
  • 1. Place your material on the working area
  • +
  • 2. Move the laser over the material
  • +
  • 3. Put on your safety glasses
  • +
  • 4. Turn the laser safety switch to on
  • +
  • → Now enable the focus mode
  • +
  • 5. Adjust the focus until the laser beam is as small as possible
  • +
  • → Disable the focus mode.
  • +
+
+
+ + +
+
+ +
+
+ + Z-Axis +
+ + +
+
+
+ +
+
+
+
+
+
+
+
+ +
+
+
+ {% include 'tabs/gcodeviewer.jinja2' %} + +
+
+
+ +
+
+
+ +
+ {% include 'dialogs/settings.jinja2' %} +
+ +
+
+
+ +
+ + +
+ + + + + +
+ + + + + {% if templatePlugins %} + {% for plugin_name in templatePlugins %} + {% include plugin_name+".jinja2" ignore missing %} + {% endfor %} + {% endif %} + + + + + {% include 'dialogs/confirmation.jinja2' %} + {% include 'dialogs/firstrun.jinja2' %} + {#% include 'dialogs/settings.jinja2' %#} + {% include 'dialogs/slicing.jinja2' %} + + + + {% include 'overlays/dragndrop.jinja2' %} + {% include 'overlays/offline.jinja2' %} + + + + {% for key in templates.generic.order %} + {% set data = templates.generic.entries[key] %} + {% include data.template ignore missing %} + {% endfor %} + + + + {% include 'javascripts.jinja2' %} + + diff --git a/src/octoprint/templates/navbar/settings.jinja2 b/src/octoprint/templates/navbar/settings.jinja2 index d250c105..cccbc1a2 100644 --- a/src/octoprint/templates/navbar/settings.jinja2 +++ b/src/octoprint/templates/navbar/settings.jinja2 @@ -1,9 +1,5 @@ -<<<<<<< HEAD + -======= - - {{ _('Settings') }} - ->>>>>>> upstream/maintenance + diff --git a/src/octoprint/templates/stylesheets.jinja2 b/src/octoprint/templates/stylesheets.jinja2 index e7270cb9..8706394c 100644 --- a/src/octoprint/templates/stylesheets.jinja2 +++ b/src/octoprint/templates/stylesheets.jinja2 @@ -2,7 +2,7 @@ {% endassets %} ->>>>>> upstream/maintenance--> +