Skip to content

Commit

Permalink
0.1.4 (#11)
Browse files Browse the repository at this point in the history
- added ordering option, resolves #10
- added layout option, resolves #9
  • Loading branch information
jneilliii authored Jun 6, 2020
1 parent 8dc4c14 commit 77adc97
Show file tree
Hide file tree
Showing 6 changed files with 573 additions and 33 deletions.
16 changes: 13 additions & 3 deletions octoprint_consolidate_temp_control/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,25 @@
import octoprint.plugin

class ConsolidateTempControlPlugin(octoprint.plugin.TemplatePlugin,
octoprint.plugin.AssetPlugin):
octoprint.plugin.AssetPlugin,
octoprint.plugin.SettingsPlugin):

##-- Settings mixin
def get_settings_defaults(self):
return dict(tab_order=[dict(name="Temperature",selector="#temp"),dict(name="Control",selector="#control")], layout="horizontal")

##-- Template mixin
def get_template_configs(self):
return [
dict(type="tab", name="Command & Control", custom_bindings=False)
dict(type="tab", name="Command & Control", custom_bindings=False),
dict(type="settings", custom_bindings=True)
]

##-- AssetPlugin mixin
def get_assets(self):
return dict(js=["js/consolidate_temp_control.js"])
return dict(js=["js/jquery-ui.min.js","js/knockout-sortable.js","js/consolidate_temp_control.js"])

##~~ Softwareupdate hook
def update_hook(self):
return dict(
consolidate_temp_control=dict(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,43 +8,61 @@ $(function() {
self.touchui = parameters[3];
self.dragonorder = parameters[4];
self.webcamtab = parameters[5];
self.tab_order_selector = ko.pureComputed(function(){
var tabs = ko.utils.arrayMap(self.settings.settings.plugins.consolidate_temp_control.tab_order(), function(tab) {
return tab.selector();
});
return tabs;
});

// don't load when touchui is active and hide tab.
if (self.touchui && self.touchui.isActive()) {
$('#tab_plugin_consolidate_temp_control_link, #tab_plugin_consolidate_temp_control').remove();
return;
}
self.onBeforeBinding = function(){
// don't load when touchui is active and hide tab.
if (self.touchui && self.touchui.isActive()) {
$('#tab_plugin_consolidate_temp_control_link, #tab_plugin_consolidate_temp_control').remove();
return;
}

// move original temp and control tab content and remove tab links.
$('#tabs_content > #temp, #tabs_content > #control').appendTo('#tab_plugin_consolidate_temp_control > div.row-fluid').addClass('span6').removeClass('tab-pane');
$('#temp_link, #control_link').remove();
// move original temp and control tab content and remove tab links.
ko.utils.arrayForEach(self.tab_order_selector(), function(tab) {
$(tab).appendTo('#tab_plugin_consolidate_temp_control > div.row-fluid').removeClass('tab-pane').addClass('span6');
});
$('#temp_link, #control_link').remove();

// page container adjustments
$('div.page-container').css({'min-width':'1900px'});
if(self.settings.settings.plugins.consolidate_temp_control.layout() == 'horizontal'){
// page container adjustments
$('div.page-container').css({'min-width':'1900px'});

// navbar adjustments
$('#navbar > div.navbar-inner > div.container').css({'width':'100%'});
$('#navbar > div.navbar-inner > div.row-fluid > div.nav-collapse').css({'padding-right':'20px'});
// navbar adjustments
$('#navbar > div.navbar-inner > div.container').css({'width':'100%'});
$('#navbar > div.navbar-inner > div.row-fluid > div.nav-collapse').css({'padding-right':'20px'});

// main content adjustments
$('div.container.octoprint-container').addClass('row-fluid');
$('div.container.octoprint-container.row-fluid > div.row').css({'margin-left':'20px','padding-right':'20px'});
// main content adjustments
$('div.container.octoprint-container').addClass('row-fluid');
$('div.container.octoprint-container.row-fluid > div.row').css({'margin-left':'20px','padding-right':'20px'});

// sidebar adjustments
if (!self.dragonorder) {
$('div.container.octoprint-container > div.row > div.accordion.span4').removeClass('span4').addClass('span2');
$('#files div.row-fluid.upload-buttons > span.btn.btn-primary.fileinput-button.span6:nth-child(2) > span').text('Upload SD');
}
// sidebar adjustments
if (!self.dragonorder) {
$('div.container.octoprint-container > div.row > div.accordion.span4').removeClass('span4').addClass('span2');
$('#files div.row-fluid.upload-buttons > span.btn.btn-primary.fileinput-button.span6:nth-child(2) > span').text('Upload SD');
}

// tabs adjustments
if($('div#settings_plugin_themeify').length == 0 && !self.dragonorder){
$('div.container.octoprint-container > div.row > div.tabbable.span8').removeClass('span8').addClass('span10');
$('div#tabs_content div.tab-pane:not("#tab_plugin_consolidate_temp_control")').wrapInner('<div class="span6"></div>');
$('div#tabs_content div.tab-pane:not("#tab_plugin_consolidate_temp_control") div.span6').wrap('<div class="row-fluid"></div>');
// tabs adjustments
if($('div#settings_plugin_themeify').length == 0 && !self.dragonorder){
$('div.container.octoprint-container > div.row > div.tabbable.span8').removeClass('span8').addClass('span10');
$('div#tabs_content div.tab-pane:not("#tab_plugin_consolidate_temp_control")').wrapInner('<div class="span6"></div>');
$('div#tabs_content div.tab-pane:not("#tab_plugin_consolidate_temp_control") div.span6').wrap('<div class="row-fluid"></div>');
}

// footer adjustments
$('div.container.octoprint-container > div.footer').css({'padding-left':'20px','padding-right':'20px'});
} else {
$('#temp, #control').removeClass('span6');
}
}

// footer adjustments
$('div.container.octoprint-container > div.footer').css({'padding-left':'20px','padding-right':'20px'});
self.onEventSettingsUpdated = function(){
self.onBeforeBinding();
}

// fix control tab
self.onTabChange = function(current, previous) {
Expand Down Expand Up @@ -108,6 +126,7 @@ $(function() {
OCTOPRINT_VIEWMODELS.push({
construct: ConsolidateTempControlViewModel,
dependencies: ["controlViewModel", "temperatureViewModel", "settingsViewModel", "touchUIViewModel", "dragon_orderViewModel", "WebcamTabViewModel"],
optional: ["touchUIViewModel", "dragon_orderViewModel", "WebcamTabViewModel"]
optional: ["touchUIViewModel", "dragon_orderViewModel", "WebcamTabViewModel"],
elements: ["#consolidate_temp_control_settings_form"]
});
});
8 changes: 8 additions & 0 deletions octoprint_consolidate_temp_control/static/js/jquery-ui.min.js

Large diffs are not rendered by default.

Loading

0 comments on commit 77adc97

Please sign in to comment.