Merge branch 'material-design' into dev

This commit is contained in:
Oliver Hamlet
2014-12-07 20:30:22 +00:00
11 changed files with 855 additions and 270 deletions
+1 -3
View File
@@ -40,12 +40,10 @@ LOOT's UI relies on a few web libraries:
* [Marked](https://github.com/chjj/marked)
* [RequireJS](http://requirejs.org/)
These dependencies are most easily managed using [Bower](http://bower.io/), and are built for distribution using [Vulcanize](https://github.com/Polymer/vulcanize).
These dependencies are most easily managed using [Bower](http://bower.io/), and are built for distribution using [Vulcanize](https://github.com/Polymer/vulcanize) (v0.7.1+, earlier versions break LOOT's templates).
To install Bower and Vulcanize, first install [Node](http://nodejs.org/), and run `npm install -g bower vulcanize` from the command line (on Windows, it needs to be the Node command prompt). Once they are installed, fetch and build the dependencies by running `bower install ./ && vulcanize -o index.html report.html` from inside this repository's `resources/report` folder (this command doesn't need to be run through Node).
**Note:** There is currently a bug in Vulcanize (#97) that prevents it from correctly building the dependencies, so some manual editing is required to add `<tr>` and `<td>` elements back into the row templates originally found in `resources/report/html/editable-table.html`.
## Packaging Releases
Installer and zip archive releases for the main LOOT application can be handled by running the scripts `installer.nsi` and `archive.py` in the `src` folder respectively. The installer script requires [NSIS 3](http://nsis.sourceforge.net/), while the archive script requires [Python](http://www.python.org/) (2 or 3). The installer and archive files are created in the `build/` folder, relative to the repository root.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 15 KiB

+571
View File
File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 15 KiB

+2 -1
View File
@@ -32,6 +32,7 @@
"paper-progress": "Polymer/paper-progress#~0.5.0",
"core-animated-pages": "Polymer/core-animated-pages#~0.5.1",
"paper-toast": "Polymer/paper-toast#~0.5.1",
"core-list": "WrinklyNinja/core-list#51e27f42c86a91cbbe0933f618b2e82905dda83a"
"core-list": "WrinklyNinja/core-list#51e27f42c86a91cbbe0933f618b2e82905dda83a",
"core-dropdown": "kysonic/core-dropdown#b2e3b0f37afec1f1447060d7988fb271f46566c2"
}
}
+12 -2
View File
@@ -1,5 +1,10 @@
/* These styles override Polymer's own internal styling for certain elements. */
/* The following stops the main toolbar from overshadowing into the drawer. */
#container::shadow #drawer {
z-index: 1;
}
/* The following is for setting the size of the drawer in narrow mode. */
#container::shadow .narrow-layout #drawer {
width: 50% !important;
@@ -50,11 +55,11 @@ html /deep/ paper-item[disabled] {
}
/* These overrides change the colour of the tab ink effect and their underline. */
#mainToolbar paper-tabs::shadow #selectionBar {
paper-tabs::shadow #selectionBar {
background-color: white;
height: 4px;
}
#mainToolbar paper-tab::shadow #ink {
paper-tab::shadow #ink {
color: #f1f1f1;
}
@@ -102,4 +107,9 @@ html /deep/ paper-item > core-icon {
/* This makes checkboxes have the same padding as icons in lists. */
html /deep/ paper-checkbox::shadow #checkboxLabel {
padding-left: 1em;
}
/* This makes the medium-tall toolbars 2x the 56px height, rather than the 64px height. */
html /deep/ core-toolbar.medium-tall {
height: 112px;
}
+8 -12
View File
@@ -30,23 +30,24 @@ body {
background:#f8f8f8;
height: 100%;
}
#mainToolbar {
core-toolbar {
background: #4285f4;
color: white;
width: 99.99vw; /* Fix for scollbars when LOOT is run through Mod Organiser. */
height: 56px;
}
#mainToolbar {
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
z-index: 1;
}
#mainToolbar paper-dropdown {
color: black;
}
#sidebarTabs {
width: calc(33% - 68px);
}
div[drawer] > core-tooltip {
margin: 0 12px;
}
div[drawer] {
background: white;
box-shadow: rgba(0, 0, 0, 0.0980392) 0px 2px 4px, rgba(0, 0, 0, 0.0980392) 0px 0px 3px;
z-index: 1;
}
#main {
@@ -54,6 +55,7 @@ div[drawer] {
overflow-x: hidden;
position: relative;
z-index: 0;
height: calc(100% - 56px);
}
#cardsNav {
margin: 0;
@@ -74,17 +76,11 @@ paper-item > a {
#searchBox {
display: block;
}
#container {
position: fixed;
top: 56px;
height: calc(100% - 56px);
}
section {
background:white;
overflow:hidden;
margin:1em;
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
padding:1em;
position: relative;
border-top-left-radius: 2px;
+4 -4
View File
@@ -132,7 +132,7 @@ loot-clear-metadata
<div id="wrapper">
<section id="front">
<core-toolbar>
<core-tooltip id="activeTick" label="Active Plugin">
<core-tooltip id="activeTick" label="Active Plugin" noarrow>
<core-icon icon="check"></core-icon>
</core-tooltip>
<div flex>
@@ -140,13 +140,13 @@ loot-clear-metadata
<content select=".version"></content>
<content select=".crc"></content>
</div>
<core-tooltip id="dummyPlugin" label="Dummy Plugin">
<core-tooltip id="dummyPlugin" label="Dummy Plugin" noarrow>
<core-icon icon="visibility-off"></core-icon>
</core-tooltip>
<core-tooltip id="loadsBSA" label="Loads BSA">
<core-tooltip id="loadsBSA" label="Loads BSA" noarrow>
<core-icon icon="attachment"></core-icon>
</core-tooltip>
<core-tooltip id="hasUserEdits" label="Has User Metadata">
<core-tooltip id="hasUserEdits" label="Has User Metadata" noarrow>
<core-icon icon="account-circle"></core-icon>
</core-tooltip>
<paper-menu-button>
+112 -111
View File
@@ -15,7 +15,7 @@ loot-editor-close
<link rel="import" href="../bower_components/paper-input/paper-input.html">
<link rel="import" href="../bower_components/paper-input/paper-input-decorator.html">
<link rel="import" href="../bower_components/paper-tabs/paper-tabs.html">
<link rel="import" href="../bower_components/paper-button/paper-button.html">
<link rel="import" href="../bower_components/paper-icon-button/paper-icon-button.html">
<link rel="import" href="../bower_components/core-selector/core-selector.html">
<link rel="import" href="editable-table.html">
@@ -36,6 +36,12 @@ loot-editor-close
#activeTick {
color: green;
}
#accept {
color: #4285f4;
}
#cancel {
color: red;
}
/* Content styling. */
h1 {
@@ -57,7 +63,7 @@ loot-editor-close
}
/* Editor input styling. */
#editor > div > paper-checkbox, #editor > div > core-tooltip {
#main > paper-checkbox, #main > core-tooltip {
display: table;
}
#enableEdits {
@@ -81,7 +87,7 @@ loot-editor-close
border-collapse: collapse;
width: 100%;
}
table:not(.core-selected) {
table:not(.core-selected), #main:not(.core-selected) {
display: none;
}
td input {
@@ -112,7 +118,7 @@ loot-editor-close
/* Misc Styling. */
core-toolbar {
background: white;
background: #f1f1f1;
height: 56px;
}
core-toolbar > h1, core-toolbar > span {
@@ -122,21 +128,15 @@ loot-editor-close
#buttons {
text-align: right;
}
main {
#main {
padding: 1em;
}
main > core-tooltip, main > paper-checkbox {
display: table;
}
core-icon {
vertical-align: inherit !important;
}
#tableTabs {
border: 2px solid #f1f1f1;
}
paper-tabs {
background: #f1f1f1;
}
/* These overrides change the colour of the tab ink effect and their underline. */
paper-tabs::shadow #selectionBar {
background-color: #4285f4;
@@ -145,117 +145,118 @@ loot-editor-close
color: #4285f4;
}
</style>
<core-toolbar>
<core-tooltip id="activeTick" label="Active Plugin">
<core-toolbar class="medium-tall">
<core-tooltip id="activeTick" label="Active Plugin" noarrow>
<core-icon icon="check"></core-icon>
</core-tooltip>
<h1>{{data.name}}</h1>
<span class="version">{{data.version}}</span>
<span class="crc" flex>{{data.computed.crc}}</span>
<core-tooltip id="dummyPlugin" label="Dummy Plugin">
<core-tooltip id="dummyPlugin" label="Dummy Plugin" noarrow>
<core-icon icon="visibility-off"></core-icon>
</core-tooltip>
<core-tooltip id="loadsBSA" label="Loads BSA">
<core-tooltip id="loadsBSA" label="Loads BSA" noarrow>
<core-icon icon="attachment"></core-icon>
</core-tooltip>
</core-toolbar>
<main>
<paper-checkbox id="enableEdits" label="Enable Edits"></paper-checkbox>
<core-tooltip label="Global priorities are compared against all other plugins. Normal priorities are compared against only conflicting plugins." position="right">
<paper-checkbox id="globalPriority" label="Global Priority"></paper-checkbox>
<core-tooltip label="Apply" noarrow>
<paper-icon-button id="accept" icon="check"></paper-icon-button>
</core-tooltip>
<div horizontal layout center>
<div>Priority Value</div>
<paper-input-decorator>
<input id="priorityValue" is="core-input" type="number" max="999999" min="-999999" step="1" preventInvalidInput>
</paper-input-decorator>
<core-tooltip label="Cancel" noarrow>
<paper-icon-button id="cancel" icon="close"</paper-icon-button>
</core-tooltip>
<paper-tabs id="tableTabs" class="bottom fit" selected="main" valueattr="data-for" scrollable>
<paper-tab data-for="main">Main</paper-tab>
<paper-tab data-for="loadAfter">Load After</paper-tab>
<paper-tab data-for="req">Requirements</paper-tab>
<paper-tab data-for="inc">Incompatibilities</paper-tab>
<paper-tab data-for="message">Messages</paper-tab>
<paper-tab data-for="tags">Bash Tags</paper-tab>
<paper-tab data-for="dirty">Dirty Info</paper-tab>
<paper-tab data-for="locations">Locations</paper-tab>
</paper-tabs>
</core-toolbar>
<core-selector selected="main" valueattr="id">
<div id="main">
<paper-checkbox id="enableEdits" label="Enable Edits"></paper-checkbox>
<core-tooltip label="Global priorities are compared against all other plugins. Normal priorities are compared against only conflicting plugins." position="right" noarrow>
<paper-checkbox id="globalPriority" label="Global Priority"></paper-checkbox>
</core-tooltip>
<div horizontal layout center>
<div>Priority Value</div>
<paper-input-decorator>
<input id="priorityValue" is="core-input" type="number" max="999999" min="-999999" step="1" preventInvalidInput>
</paper-input-decorator>
</div>
</div>
<div id="tableTabs">
<paper-tabs selected="loadAfter" valueattr="data-for" scrollable>
<paper-tab data-for="loadAfter">Load After</paper-tab>
<paper-tab data-for="req">Requirements</paper-tab>
<paper-tab data-for="inc">Incompatibilities</paper-tab>
<paper-tab data-for="message">Messages</paper-tab>
<paper-tab data-for="tags">Bash Tags</paper-tab>
<paper-tab data-for="dirty">Dirty Info</paper-tab>
<paper-tab data-for="locations">Locations</paper-tab>
</paper-tabs>
<core-selector selected="loadAfter" valueattr="id">
<table is="editable-table" id="loadAfter" data-template="fileRow">
<thead>
<tr><th>Filename</th><th>Display Name</th><th>Condition</th><th></th></tr>
</thead>
<tbody>
<!-- File rows go here. -->
<tr><td colspan="4">Add new row...</td><td></td></tr>
</tbody>
</table>
<table is="editable-table" id="req" data-template="fileRow">
<thead>
<tr><th>Filename</th><th>Display Name</th><th>Condition</th><th></th></tr>
</thead>
<tbody>
<!-- File rows go here. -->
<tr><td colspan="4">Add new row...</td><td></td></tr>
</tbody>
</table>
<table is="editable-table" id="inc" data-template="fileRow">
<thead>
<tr><th>Filename</th><th>Display Name</th><th>Condition</th><th></th></tr>
</thead>
<tbody>
<!-- File rows go here. -->
<tr><td colspan="4">Add new row...</td><td></td></tr>
</tbody>
</table>
<table is="editable-table" id="message" data-template="messageRow">
<thead>
<tr><th>Type</th><th>Content</th><th>Condition</th><th>Language</th><th></th></tr>
</thead>
<tbody>
<!-- Message rows go here. -->
<tr><td colspan="4">Add new row...</td><td></td></tr>
</tbody>
</table>
<table is="editable-table" id="tags" data-template="tagRow">
<thead>
<tr><th>Add/Remove</th><th>Bash Tag</th><th>Condition</th><th></th></tr>
</thead>
<tbody>
<!-- Bash Tag rows go here. -->
<tr><td colspan="4">Add new row...</td><td></td></tr>
</tbody>
</table>
<table is="editable-table" id="dirty" data-template="dirtyInfoRow">
<thead>
<tr><th>CRC</th><th>ITM Count</th><th>Deleted References</th><th>Deleted Navmeshes</th><th>Cleaning Utility</th><th></th></tr>
</thead>
<tbody>
<!-- Dirty info rows go here. -->
<tr><td colspan="4">Add new row...</td><td></td></tr>
</tbody>
</table>
<table is="editable-table" id="locations" data-template="locationRow">
<thead>
<tr><th>URL</th><th>Version</th><th></th></tr>
</thead>
<tbody>
<!-- Location rows go here. -->
<tr><td colspan="3">Add new row...</td><td></td></tr>
</tbody>
</table>
</core-selector>
</div>
<div id="buttons">
<paper-button id="accept">Apply</paper-button>
<paper-button id="cancel">Cancel</paper-button>
</div>
</main>
<table is="editable-table" id="loadAfter" data-template="fileRow">
<thead>
<tr><th>Filename</th><th>Display Name</th><th>Condition</th><th></th></tr>
</thead>
<tbody>
<!-- File rows go here. -->
<tr><td colspan="4">Add new row...</td><td></td></tr>
</tbody>
</table>
<table is="editable-table" id="req" data-template="fileRow">
<thead>
<tr><th>Filename</th><th>Display Name</th><th>Condition</th><th></th></tr>
</thead>
<tbody>
<!-- File rows go here. -->
<tr><td colspan="4">Add new row...</td><td></td></tr>
</tbody>
</table>
<table is="editable-table" id="inc" data-template="fileRow">
<thead>
<tr><th>Filename</th><th>Display Name</th><th>Condition</th><th></th></tr>
</thead>
<tbody>
<!-- File rows go here. -->
<tr><td colspan="4">Add new row...</td><td></td></tr>
</tbody>
</table>
<table is="editable-table" id="message" data-template="messageRow">
<thead>
<tr><th>Type</th><th>Content</th><th>Condition</th><th>Language</th><th></th></tr>
</thead>
<tbody>
<!-- Message rows go here. -->
<tr><td colspan="4">Add new row...</td><td></td></tr>
</tbody>
</table>
<table is="editable-table" id="tags" data-template="tagRow">
<thead>
<tr><th>Add/Remove</th><th>Bash Tag</th><th>Condition</th><th></th></tr>
</thead>
<tbody>
<!-- Bash Tag rows go here. -->
<tr><td colspan="4">Add new row...</td><td></td></tr>
</tbody>
</table>
<table is="editable-table" id="dirty" data-template="dirtyInfoRow">
<thead>
<tr><th>CRC</th><th>ITM Count</th><th>Deleted References</th><th>Deleted Navmeshes</th><th>Cleaning Utility</th><th></th></tr>
</thead>
<tbody>
<!-- Dirty info rows go here. -->
<tr><td colspan="4">Add new row...</td><td></td></tr>
</tbody>
</table>
<table is="editable-table" id="locations" data-template="locationRow">
<thead>
<tr><th>URL</th><th>Version</th><th></th></tr>
</thead>
<tbody>
<!-- Location rows go here. -->
<tr><td colspan="3">Add new row...</td><td></td></tr>
</tbody>
</table>
</core-selector>
</template>
<script>
Polymer({
attached: function() {
this.shadowRoot.getElementById('tableTabs').firstElementChild.addEventListener('core-select', this.onTabSelect, false);
this.shadowRoot.getElementById('tableTabs').addEventListener('core-select', this.onTabSelect, false);
this.shadowRoot.getElementById('accept').addEventListener('click', this.onHideEditor, false);
this.shadowRoot.getElementById('cancel').addEventListener('click', this.onHideEditor, false);
@@ -264,7 +265,7 @@ loot-editor-close
},
detached: function() {
this.shadowRoot.getElementById('tableTabs').firstElementChild.removeEventListener('core-select', this.onTabSelect, false);
this.shadowRoot.getElementById('tableTabs').removeEventListener('core-select', this.onTabSelect, false);
this.shadowRoot.getElementById('accept').removeEventListener('click', this.onHideEditor, false);
this.shadowRoot.getElementById('cancel').removeEventListener('click', this.onHideEditor, false);
@@ -272,7 +273,7 @@ loot-editor-close
onTabSelect: function(evt) {
if (evt.detail.isSelected) {
evt.target.nextElementSibling.selected = evt.target.selected;
evt.target.parentElement.nextElementSibling.selected = evt.target.selected;
}
},
@@ -549,10 +550,10 @@ loot-editor-close
this.shadowRoot.getElementById('globalPriority').parentElement.setPosition();
/* Update tab bar position. */
this.shadowRoot.getElementById('tableTabs').firstElementChild.updateBar();
this.shadowRoot.getElementById('tableTabs').updateBar();
/* Also make sure right arrow is visible. */
this.shadowRoot.getElementById('tableTabs').firstElementChild.shadowRoot.querySelector('.scroll-button:last-child').firstElementChild.classList.remove('hidden');
this.shadowRoot.getElementById('tableTabs').shadowRoot.querySelector('.scroll-button:last-child').firstElementChild.classList.remove('hidden');
},
});
</script>
+2 -2
View File
@@ -28,10 +28,10 @@
</style>
<paper-item>
<core-tooltip id="loadsBSA" label="Loads BSA">
<core-tooltip id="loadsBSA" label="Loads BSA" noarrow>
<core-icon icon="attachment"></core-icon>
</core-tooltip>
<core-tooltip id="hasUserEdits" label="Has User Metadata">
<core-tooltip id="hasUserEdits" label="Has User Metadata" noarrow>
<core-icon icon="account-circle"></core-icon>
</core-tooltip>
<div><content></content></div>
+5 -1
View File
@@ -1174,7 +1174,11 @@ function initVars() {
document.getElementById('cardsNav').lastElementChild.data = loot.game.plugins;
document.getElementById('main').lastElementChild.data = loot.game.plugins;
closeProgressDialog();
setTimeout(function() {
document.getElementById('cardsNav').lastElementChild.updateSize();
closeProgressDialog();
}, 100);
return '';
}).catch(processCefError);
}
+138 -134
View File
@@ -40,73 +40,14 @@
</head>
<!-- oncontextmenu attribute disables the right-click menu. -->
<body oncontextmenu="return false" unresolved fullbleed vertical layout >
<core-toolbar id="mainToolbar">
<paper-menu-button>
<paper-icon-button icon="menu"></paper-icon-button>
<paper-dropdown class="dropdown">
<div>
<paper-item id="redatePluginsButton">
<core-icon icon="today"></core-icon>
Redate Plugins
</paper-item>
<paper-item id="wipeUserlistButton">
<core-icon icon="delete"></core-icon>
Clear All User Metadata
</paper-item>
<paper-item id="copyContentButton">
<core-icon icon="content-copy"></core-icon>
Copy Content
</paper-item>
<paper-item id="refreshContentButton">
<core-icon icon="cached"></core-icon>
Refresh Content
</paper-item>
<paper-item separator></paper-item>
<paper-item id="settingsButton">
<core-icon icon="settings"></core-icon>
Settings
</paper-item>
<paper-item separator></paper-item>
<paper-item id="helpButton">
<core-icon icon="book"></core-icon>
View Documentation
</paper-item>
<paper-item id="openLogButton">
<core-icon icon="folder"></core-icon>
Open Debug Log Location
</paper-item>
<paper-item id="aboutButton">
<core-icon icon="help"></core-icon>
About
</paper-item>
<paper-item separator></paper-item>
<paper-item id="quitButton">
<core-icon icon="close"></core-icon>
Quit
</paper-item>
</div>
</paper-dropdown>
</paper-menu-button>
<paper-icon-button icon="drawer" id="drawerToggle"></paper-icon-button>
<paper-tabs id="sidebarTabs" selected="cardsNav" valueattr="data-id">
<paper-tab data-id="cardsNav">Plugins</paper-tab>
<paper-tab data-id="filters">Filters</paper-tab>
</paper-tabs>
<loot-dropdown-menu id="gameMenu">
<!-- Generated game <li> elements go here. -->
</loot-dropdown-menu>
<span flex></span>
<core-tooltip label="Update Masterlist">
<paper-icon-button id="updateMasterlistButton" icon="file-download"></paper-icon-button>
</core-tooltip>
<core-tooltip label="Sort Plugins">
<paper-icon-button id="sortButton" icon="sort"></paper-icon-button>
</core-tooltip>
<paper-button id="applySortButton" class="hidden">Apply</paper-button>
<paper-button id="cancelSortButton" class="hidden">Cancel</paper-button>
</core-toolbar>
<core-drawer-panel id="container" drawerWidth="33%">
<div drawer vertical layout>
<core-toolbar>
<paper-tabs id="sidebarTabs" selected="cardsNav" valueattr="data-id">
<paper-tab data-id="cardsNav">Plugins</paper-tab>
<paper-tab data-id="filters">Filters</paper-tab>
</paper-tabs>
</core-toolbar>
<core-animated-pages selected="cardsNav" valueattr="id" transitions="" flex>
<div id="cardsNav" class="tab-content" layout vertical>
<paper-item>
@@ -143,77 +84,140 @@
</div>
</div>
</core-animated-pages>
<core-tooltip label="Press Enter or click outside the input to set the filter." position="top">
<core-tooltip label="Press Enter or click outside the input to set the filter." position="top" noarrow>
<paper-input id="searchBox" label="Filter content..."></paper-input>
</core-tooltip>
</div>
<div main id="main">
<section id="summary">
<h1>Summary</h1>
<table>
<tbody>
<tr>
<td>Masterlist Revision</td>
<td id="masterlistRevision">N/A</td>
</tr>
<tr>
<td>Masterlist Date</td>
<td id="masterlistDate">N/A</td>
</tr>
</tbody>
</table>
<table>
<tbody>
<tr>
<td>Warnings</td>
<td id="totalWarningNo">0</td>
</tr>
<tr>
<td>Errors</td>
<td id="totalErrorNo">0</td>
</tr>
<tr>
<td>Total Messages</td>
<td id="totalMessageNo">0</td>
</tr>
</tbody>
</table>
<table>
<tbody>
<tr>
<td>Active Plugins</td>
<td id="activePluginNo">0</td>
</tr>
<tr>
<td>Dirty Plugins</td>
<td id="dirtyPluginNo">0</td>
</tr>
<tr>
<td>Total Plugins</td>
<td id="totalPluginNo">0</td>
</tr>
</tbody>
</table>
</section>
<section id="generalMessages">
<h1>General Messages</h1>
<ul>
<!-- Generated message <li> elements go here. -->
</ul>
</section>
<core-list>
<template>
<loot-plugin-card data="{{model}}" id="{{model.id}}" data-active="{{model.isActive}}" data-dummy="{{model.isDummy}}" data-bsa="{{model.loadsBSA}}" data-edits="{{model.userlist != undefined}}">
<h1>{{model.name}}</h1>
<span class="version">{{model.version}}</span>
<span class="crc">{{model.computed.crc}}</span>
<span class="tag add">{{model.computed.tags.added}}</span>
<span class="tag remove">{{model.computed.tags.removed}}</span>
<ul></ul>
</loot-plugin-card>
</template>
<!-- Generated <loot-plugin-card> elements go here. -->
</core-list>
<div main>
<core-toolbar id="mainToolbar">
<paper-icon-button icon="menu" id="drawerToggle"></paper-icon-button>
<loot-dropdown-menu id="gameMenu">
<!-- Generated game <li> elements go here. -->
</loot-dropdown-menu>
<span flex></span>
<core-tooltip label="Sort Plugins" noarrow>
<paper-icon-button id="sortButton" icon="sort"></paper-icon-button>
</core-tooltip>
<core-tooltip label="Update Masterlist" noarrow>
<paper-icon-button id="updateMasterlistButton" icon="file-download"></paper-icon-button>
</core-tooltip>
<paper-button id="applySortButton" class="hidden">Apply</paper-button>
<paper-button id="cancelSortButton" class="hidden">Cancel</paper-button>
<paper-menu-button>
<paper-icon-button icon="more-vert"></paper-icon-button>
<paper-dropdown class="dropdown" halign="right">
<div>
<paper-item id="redatePluginsButton">
<core-icon icon="today"></core-icon>
Redate Plugins
</paper-item>
<paper-item id="wipeUserlistButton">
<core-icon icon="delete"></core-icon>
Clear All User Metadata
</paper-item>
<paper-item id="copyContentButton">
<core-icon icon="content-copy"></core-icon>
Copy Content
</paper-item>
<paper-item id="refreshContentButton">
<core-icon icon="cached"></core-icon>
Refresh Content
</paper-item>
<paper-item separator></paper-item>
<paper-item id="settingsButton">
<core-icon icon="settings"></core-icon>
Settings
</paper-item>
<paper-item separator></paper-item>
<paper-item id="helpButton">
<core-icon icon="book"></core-icon>
View Documentation
</paper-item>
<paper-item id="openLogButton">
<core-icon icon="folder"></core-icon>
Open Debug Log Location
</paper-item>
<paper-item id="aboutButton">
<core-icon icon="help"></core-icon>
About
</paper-item>
<paper-item separator></paper-item>
<paper-item id="quitButton">
<core-icon icon="close"></core-icon>
Quit
</paper-item>
</div>
</paper-dropdown>
</paper-menu-button>
</core-toolbar>
<div id="main">
<section id="summary">
<h1>Summary</h1>
<table>
<tbody>
<tr>
<td>Masterlist Revision</td>
<td id="masterlistRevision">N/A</td>
</tr>
<tr>
<td>Masterlist Date</td>
<td id="masterlistDate">N/A</td>
</tr>
</tbody>
</table>
<table>
<tbody>
<tr>
<td>Warnings</td>
<td id="totalWarningNo">0</td>
</tr>
<tr>
<td>Errors</td>
<td id="totalErrorNo">0</td>
</tr>
<tr>
<td>Total Messages</td>
<td id="totalMessageNo">0</td>
</tr>
</tbody>
</table>
<table>
<tbody>
<tr>
<td>Active Plugins</td>
<td id="activePluginNo">0</td>
</tr>
<tr>
<td>Dirty Plugins</td>
<td id="dirtyPluginNo">0</td>
</tr>
<tr>
<td>Total Plugins</td>
<td id="totalPluginNo">0</td>
</tr>
</tbody>
</table>
</section>
<section id="generalMessages">
<h1>General Messages</h1>
<ul>
<!-- Generated message <li> elements go here. -->
</ul>
</section>
<core-list>
<template>
<loot-plugin-card data="{{model}}" id="{{model.id}}" data-active="{{model.isActive}}" data-dummy="{{model.isDummy}}" data-bsa="{{model.loadsBSA}}" data-edits="{{model.userlist != undefined}}">
<h1>{{model.name}}</h1>
<span class="version">{{model.version}}</span>
<span class="crc">{{model.computed.crc}}</span>
<span class="tag add">{{model.computed.tags.added}}</span>
<span class="tag remove">{{model.computed.tags.removed}}</span>
<ul></ul>
</loot-plugin-card>
</template>
<!-- Generated <loot-plugin-card> elements go here. -->
</core-list>
</div>
</div>
</core-drawer-panel>
<paper-toast id="toast"></paper-toast>
@@ -258,7 +262,7 @@ along with LOOT. If not, see &lt;http://www.gnu.org/licenses/&gt;.
<!-- Language <option> elements go here. -->
</loot-dropdown-menu>
</div>
<core-tooltip label="The output is logged to the LOOTDebugLog.txt file." center horizontal layout>
<core-tooltip label="The output is logged to the LOOTDebugLog.txt file." center horizontal layout noarrow>
<paper-checkbox id="enableDebugLogging" label="Enable debug logging"></paper-checkbox>
</core-tooltip>
<paper-checkbox id="updateMasterlist" label="Update masterlist before sorting"></paper-checkbox>