-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 630979f
Showing
8 changed files
with
204 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
# This file is for unifying the coding style for different editors and IDEs | ||
# editorconfig.org | ||
|
||
root = true | ||
|
||
[*] | ||
end_of_line = lf | ||
charset = utf-8 | ||
insert_final_newline = true | ||
trim_trailing_whitespace = true | ||
|
||
[**.py] | ||
indent_style = tab | ||
|
||
[**.js] | ||
indent_style = space | ||
indent_size = 4 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
*.pyc | ||
*.swp | ||
.idea | ||
*.iml | ||
build | ||
dist | ||
*.egg* | ||
.DS_Store | ||
*.zip |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
include README.md |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# OctoPrint-Autoselect | ||
|
||
The Autoselect Plugin will automatically select newly uploaded files for | ||
printing if there is an active connection to a printer and currently no print | ||
job running. | ||
|
||
## Setup | ||
|
||
Install via the bundled [Plugin Manager](https://github.com/foosel/OctoPrint/wiki/Plugin:-Plugin-Manager) | ||
or manually using this URL: | ||
|
||
https://github.com/OctoPrint/OctoPrint-Autoselect/archive/master.zip |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
--- | ||
layout: plugin | ||
|
||
id: autoselect | ||
title: OctoPrint-Autoselect | ||
description: Automatically selects freshly uploaded files for printing if no print job is currently active. | ||
author: Gina Häußge | ||
license: AGPLv3 | ||
|
||
date: 2015-06-27 | ||
|
||
homepage: https://github.com/OctoPrint/OctoPrint-Autoselect | ||
source: https://github.com/OctoPrint/OctoPrint-Autoselect | ||
archive: https://github.com/OctoPrint/OctoPrint-Autoselect/archive/master.zip | ||
|
||
tags: | ||
- ux | ||
- upload | ||
- filemanagement | ||
|
||
compatibility: | ||
# list of compatible versions, for example 1.2.0. If left empty no specific version requirement will be assumed | ||
octoprint: | ||
- 1.2.0 | ||
--- | ||
|
||
The Autoselect Plugin will automatically select newly uploaded files for | ||
printing if there is an active connection to a printer and currently no print | ||
job running. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
# coding=utf-8 | ||
from __future__ import absolute_import | ||
|
||
import octoprint.plugin | ||
from octoprint.filemanager.destinations import FileDestinations | ||
|
||
class AutoselectPlugin(octoprint.plugin.EventHandlerPlugin): | ||
def on_event(self, event, payload): | ||
if event != "Upload": | ||
return | ||
|
||
if not self._printer.is_ready(): | ||
self._logger.debug("Printer is not ready, not autoselecting uploaded file") | ||
return | ||
|
||
filename = payload["file"] | ||
target = payload["target"] | ||
|
||
if target == FileDestinations.SDCARD: | ||
path = filename | ||
sd = True | ||
else: | ||
path = self._file_manager.path_on_disk(target, filename) | ||
sd = False | ||
|
||
self._logger.info("Selecting {} on {} that was just uploaded".format(filename, target)) | ||
self._printer.select_file(path, sd, False) | ||
|
||
__plugin_name__ = "Autoselect Plugin" | ||
|
||
def __plugin_load__(): | ||
global __plugin_implementation__ | ||
__plugin_implementation__ = AutoselectPlugin() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
### | ||
# This file is only here to make sure that something like | ||
# | ||
# pip install -e . | ||
# | ||
# works as expected. Requirements can be found in setup.py. | ||
### | ||
|
||
. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
# coding=utf-8 | ||
|
||
######################################################################################################################## | ||
### Do not forget to adjust the following variables to your own plugin. | ||
|
||
# The plugin's identifier, has to be unique | ||
plugin_identifier = "autoselect" | ||
|
||
# The plugin's python package, should be "octoprint_<plugin identifier>", has to be unique | ||
plugin_package = "octoprint_autoselect" | ||
|
||
# The plugin's human readable name. Can be overwritten within OctoPrint's internal data via __plugin_name__ in the | ||
# plugin module | ||
plugin_name = "OctoPrint-Autoselect" | ||
|
||
# The plugin's version. Can be overwritten within OctoPrint's internal data via __plugin_version__ in the plugin module | ||
plugin_version = "0.1.0" | ||
|
||
# The plugin's description. Can be overwritten within OctoPrint's internal data via __plugin_description__ in the plugin | ||
# module | ||
plugin_description = """Automatically selects freshly uploaded files for printing if no print job is currently active.""" | ||
|
||
# The plugin's author. Can be overwritten within OctoPrint's internal data via __plugin_author__ in the plugin module | ||
plugin_author = "Gina Häußge" | ||
|
||
# The plugin's author's mail address. | ||
plugin_author_email = "[email protected]" | ||
|
||
# The plugin's homepage URL. Can be overwritten within OctoPrint's internal data via __plugin_url__ in the plugin module | ||
plugin_url = "https://github.com/OctoPrint/OctoPrint-Autoselect" | ||
|
||
# The plugin's license. Can be overwritten within OctoPrint's internal data via __plugin_license__ in the plugin module | ||
plugin_license = "AGPLv3" | ||
|
||
# Any additional requirements besides OctoPrint should be listed here | ||
plugin_requires = [] | ||
|
||
### -------------------------------------------------------------------------------------------------------------------- | ||
### More advanced options that you usually shouldn't have to touch follow after this point | ||
### -------------------------------------------------------------------------------------------------------------------- | ||
|
||
# Additional package data to install for this plugin. The subfolders "templates", "static" and "translations" will | ||
# already be installed automatically if they exist. | ||
plugin_additional_data = [] | ||
|
||
# Any additional python packages you need to install with your plugin that are not contains in <plugin_package>.* | ||
plugin_addtional_packages = [] | ||
|
||
# Any python packages within <plugin_package>.* you do NOT want to install with your plugin | ||
plugin_ignored_packages = [] | ||
|
||
# Additional parameters for the call to setuptools.setup. If your plugin wants to register additional entry points, | ||
# define dependency links or other things like that, this is the place to go. Will be merged recursively with the | ||
# default setup parameters as provided by octoprint_setuptools.create_plugin_setup_parameters using | ||
# octoprint.util.dict_merge. | ||
# | ||
# Example: | ||
# plugin_requires = ["someDependency==dev"] | ||
# additional_setup_parameters = {"dependency_links": ["https://github.com/someUser/someRepo/archive/master.zip#egg=someDependency-dev"]} | ||
additional_setup_parameters = {} | ||
|
||
######################################################################################################################## | ||
|
||
from setuptools import setup | ||
|
||
try: | ||
import octoprint_setuptools | ||
except: | ||
print("Could not import OctoPrint's setuptools, are you sure you are running that under " | ||
"the same python installation that OctoPrint is installed under?") | ||
import sys | ||
sys.exit(-1) | ||
|
||
setup_parameters = octoprint_setuptools.create_plugin_setup_parameters( | ||
identifier=plugin_identifier, | ||
package=plugin_package, | ||
name=plugin_name, | ||
version=plugin_version, | ||
description=plugin_description, | ||
author=plugin_author, | ||
mail=plugin_author_email, | ||
url=plugin_url, | ||
license=plugin_license, | ||
requires=plugin_requires, | ||
additional_packages=plugin_addtional_packages, | ||
ignored_packages=plugin_ignored_packages, | ||
additional_data=plugin_additional_data | ||
) | ||
|
||
if len(additional_setup_parameters): | ||
from octoprint.util import dict_merge | ||
setup_parameters = dict_merge(setup_parameters, additional_setup_parameters) | ||
|
||
setup(**setup_parameters) |