mirror of
https://github.com/loot/libloot.git
synced 2026-07-27 14:16:01 -07:00
Added git attributes file.
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
# Auto detect text files and perform LF normalization
|
||||
* text=auto
|
||||
|
||||
# Custom for Visual Studio
|
||||
*.cs diff=csharp
|
||||
*.sln merge=union
|
||||
*.csproj merge=union
|
||||
*.vbproj merge=union
|
||||
*.fsproj merge=union
|
||||
*.dbproj merge=union
|
||||
|
||||
# Standard to msysgit
|
||||
*.doc diff=astextplain
|
||||
*.DOC diff=astextplain
|
||||
*.docx diff=astextplain
|
||||
*.DOCX diff=astextplain
|
||||
*.dot diff=astextplain
|
||||
*.DOT diff=astextplain
|
||||
*.pdf diff=astextplain
|
||||
*.PDF diff=astextplain
|
||||
*.rtf diff=astextplain
|
||||
*.RTF diff=astextplain
|
||||
+178
-178
@@ -1,178 +1,178 @@
|
||||
/* BOSS
|
||||
|
||||
A plugin load order optimiser for games that use the esp/esm plugin system.
|
||||
|
||||
Copyright (C) 2013 WrinklyNinja
|
||||
|
||||
This file is part of BOSS.
|
||||
|
||||
BOSS is free software: you can redistribute
|
||||
it and/or modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation, either version 3 of
|
||||
the License, or (at your option) any later version.
|
||||
|
||||
BOSS is distributed in the hope that it will
|
||||
be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with BOSS. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
body {
|
||||
font:10pt/1.5 Helvetica,sans-serif;
|
||||
margin:0;
|
||||
background:#f8f8f8;
|
||||
}
|
||||
noscript div {
|
||||
background:#c00;
|
||||
display:block;
|
||||
padding:10px 5px;
|
||||
color:white;
|
||||
}
|
||||
#nav {
|
||||
background:#e3e3e3;
|
||||
position:fixed;
|
||||
top:0;
|
||||
left:0;
|
||||
z-index:2;
|
||||
box-shadow: 0 0 3px 1px rgba(0,0,0,0.5);
|
||||
width:100%;
|
||||
}
|
||||
.button {
|
||||
display:inline-table;
|
||||
cursor:pointer;
|
||||
padding:0.5em;
|
||||
text-decoration:none;
|
||||
transition:background 0.2s;
|
||||
}
|
||||
.button.current {
|
||||
background: #ccc;
|
||||
}
|
||||
.button[id] {
|
||||
position:absolute;
|
||||
right:0;
|
||||
}
|
||||
#main {
|
||||
position:absolute;
|
||||
top:32px;
|
||||
width:100%;
|
||||
}
|
||||
#summary, #plugins {
|
||||
padding:1em;
|
||||
}
|
||||
table {
|
||||
margin:0 auto;
|
||||
border-radius:10px;
|
||||
border-collapse:separate;
|
||||
border-spacing:0;
|
||||
}
|
||||
td {
|
||||
padding:0.5em;
|
||||
line-height:1.5;
|
||||
border-right: 1px solid #ccc;
|
||||
border-bottom: 1px solid #ccc;
|
||||
text-align:right;
|
||||
padding-left:3em;
|
||||
}
|
||||
table tr:first-child td {
|
||||
border-top: 1px solid #ccc;
|
||||
}
|
||||
table td:first-child {
|
||||
text-align:left;
|
||||
padding-left:0.5em;
|
||||
border-left: 1px solid #ccc;
|
||||
border-right: none;
|
||||
}
|
||||
table tr:first-child td:first-child {
|
||||
border-top-left-radius: 5px;
|
||||
}
|
||||
table tr:first-child td:last-child {
|
||||
border-top-right-radius: 5px;
|
||||
}
|
||||
table tr:last-child td:first-child {
|
||||
border-bottom-left-radius: 5px;
|
||||
}
|
||||
table tr:last-child td:last-child {
|
||||
border-bottom-right-radius: 5px;
|
||||
}
|
||||
#noChanges {
|
||||
font-weight:bold;
|
||||
font-size:12pt;
|
||||
text-align:center;
|
||||
margin:1em;
|
||||
}
|
||||
#filters {
|
||||
background:#e8e8e8;
|
||||
z-index:1;
|
||||
overflow:hidden;
|
||||
position:fixed;
|
||||
right:0;
|
||||
top:32px;
|
||||
display:block;
|
||||
box-shadow:0 0 3px 1px rgba(0,0,0,0.5);
|
||||
}
|
||||
#filters.hidden {
|
||||
display:none;
|
||||
}
|
||||
#filters label {
|
||||
display:block;
|
||||
padding:0.2em 0.5em;
|
||||
white-space:nowrap;
|
||||
cursor:pointer;
|
||||
}
|
||||
#filters div {
|
||||
padding:0.4em;
|
||||
font-style:italic;
|
||||
}
|
||||
input[type='checkbox'] {
|
||||
position:relative;
|
||||
top:0.15em;
|
||||
margin-right:0.5em;
|
||||
}
|
||||
|
||||
ul {margin-top:0.5em; margin-bottom:1em;}
|
||||
li {margin:0.75em 0;}
|
||||
|
||||
#plugins > ul {list-style:none;}
|
||||
.hidden, li.hidden, #summary.hidden, #plugins.hidden {
|
||||
display:none;
|
||||
}
|
||||
|
||||
|
||||
/* Old BOSS Log CSS */
|
||||
|
||||
ul{list-style:none;padding-left:0;}
|
||||
|
||||
ul li{margin-left:0;margin-bottom:1em;}
|
||||
|
||||
li ul{margin-top:.5em;padding-left:2.5em;margin-bottom:2em;}
|
||||
|
||||
li.error{background:#ff9090;display:table;padding:0.3em 0.5em;border-radius:0.5em;}
|
||||
|
||||
li.warn{background:#FFDD55;display:table;padding:0.3em 0.5em;border-radius:0.5em;}
|
||||
|
||||
li.success{background:#90ff90;display:table;padding:0.3em 0.5em;border-radius:0.5em;}
|
||||
|
||||
.version{color:#6394F8;margin-right:1em;}
|
||||
|
||||
.crc{color:#BC8923;margin-right:1em;}
|
||||
|
||||
.mod{margin-right:1em;}
|
||||
|
||||
tr.good td {background: #90ff90;}
|
||||
|
||||
tr.warn td {background: #FFDD55;}
|
||||
|
||||
tr.error td {background:#ff9090;}
|
||||
|
||||
th {text-align:left; padding:1em; background:lightblue;}
|
||||
|
||||
.message {color:#880088;}
|
||||
|
||||
#summary li {border-radius:0.5em;padding:0.5em 1em;display:table;background:#DDD;}
|
||||
|
||||
#summary li.error{background:#ff9090;}
|
||||
|
||||
#summary li.warn{background:#FFDD55;}
|
||||
/* BOSS
|
||||
|
||||
A plugin load order optimiser for games that use the esp/esm plugin system.
|
||||
|
||||
Copyright (C) 2013 WrinklyNinja
|
||||
|
||||
This file is part of BOSS.
|
||||
|
||||
BOSS is free software: you can redistribute
|
||||
it and/or modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation, either version 3 of
|
||||
the License, or (at your option) any later version.
|
||||
|
||||
BOSS is distributed in the hope that it will
|
||||
be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with BOSS. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
body {
|
||||
font:10pt/1.5 Helvetica,sans-serif;
|
||||
margin:0;
|
||||
background:#f8f8f8;
|
||||
}
|
||||
noscript div {
|
||||
background:#c00;
|
||||
display:block;
|
||||
padding:10px 5px;
|
||||
color:white;
|
||||
}
|
||||
#nav {
|
||||
background:#e3e3e3;
|
||||
position:fixed;
|
||||
top:0;
|
||||
left:0;
|
||||
z-index:2;
|
||||
box-shadow: 0 0 3px 1px rgba(0,0,0,0.5);
|
||||
width:100%;
|
||||
}
|
||||
.button {
|
||||
display:inline-table;
|
||||
cursor:pointer;
|
||||
padding:0.5em;
|
||||
text-decoration:none;
|
||||
transition:background 0.2s;
|
||||
}
|
||||
.button.current {
|
||||
background: #ccc;
|
||||
}
|
||||
.button[id] {
|
||||
position:absolute;
|
||||
right:0;
|
||||
}
|
||||
#main {
|
||||
position:absolute;
|
||||
top:32px;
|
||||
width:100%;
|
||||
}
|
||||
#summary, #plugins {
|
||||
padding:1em;
|
||||
}
|
||||
table {
|
||||
margin:0 auto;
|
||||
border-radius:10px;
|
||||
border-collapse:separate;
|
||||
border-spacing:0;
|
||||
}
|
||||
td {
|
||||
padding:0.5em;
|
||||
line-height:1.5;
|
||||
border-right: 1px solid #ccc;
|
||||
border-bottom: 1px solid #ccc;
|
||||
text-align:right;
|
||||
padding-left:3em;
|
||||
}
|
||||
table tr:first-child td {
|
||||
border-top: 1px solid #ccc;
|
||||
}
|
||||
table td:first-child {
|
||||
text-align:left;
|
||||
padding-left:0.5em;
|
||||
border-left: 1px solid #ccc;
|
||||
border-right: none;
|
||||
}
|
||||
table tr:first-child td:first-child {
|
||||
border-top-left-radius: 5px;
|
||||
}
|
||||
table tr:first-child td:last-child {
|
||||
border-top-right-radius: 5px;
|
||||
}
|
||||
table tr:last-child td:first-child {
|
||||
border-bottom-left-radius: 5px;
|
||||
}
|
||||
table tr:last-child td:last-child {
|
||||
border-bottom-right-radius: 5px;
|
||||
}
|
||||
#noChanges {
|
||||
font-weight:bold;
|
||||
font-size:12pt;
|
||||
text-align:center;
|
||||
margin:1em;
|
||||
}
|
||||
#filters {
|
||||
background:#e8e8e8;
|
||||
z-index:1;
|
||||
overflow:hidden;
|
||||
position:fixed;
|
||||
right:0;
|
||||
top:32px;
|
||||
display:block;
|
||||
box-shadow:0 0 3px 1px rgba(0,0,0,0.5);
|
||||
}
|
||||
#filters.hidden {
|
||||
display:none;
|
||||
}
|
||||
#filters label {
|
||||
display:block;
|
||||
padding:0.2em 0.5em;
|
||||
white-space:nowrap;
|
||||
cursor:pointer;
|
||||
}
|
||||
#filters div {
|
||||
padding:0.4em;
|
||||
font-style:italic;
|
||||
}
|
||||
input[type='checkbox'] {
|
||||
position:relative;
|
||||
top:0.15em;
|
||||
margin-right:0.5em;
|
||||
}
|
||||
|
||||
ul {margin-top:0.5em; margin-bottom:1em;}
|
||||
li {margin:0.75em 0;}
|
||||
|
||||
#plugins > ul {list-style:none;}
|
||||
.hidden, li.hidden, #summary.hidden, #plugins.hidden {
|
||||
display:none;
|
||||
}
|
||||
|
||||
|
||||
/* Old BOSS Log CSS */
|
||||
|
||||
ul{list-style:none;padding-left:0;}
|
||||
|
||||
ul li{margin-left:0;margin-bottom:1em;}
|
||||
|
||||
li ul{margin-top:.5em;padding-left:2.5em;margin-bottom:2em;}
|
||||
|
||||
li.error{background:#ff9090;display:table;padding:0.3em 0.5em;border-radius:0.5em;}
|
||||
|
||||
li.warn{background:#FFDD55;display:table;padding:0.3em 0.5em;border-radius:0.5em;}
|
||||
|
||||
li.success{background:#90ff90;display:table;padding:0.3em 0.5em;border-radius:0.5em;}
|
||||
|
||||
.version{color:#6394F8;margin-right:1em;}
|
||||
|
||||
.crc{color:#BC8923;margin-right:1em;}
|
||||
|
||||
.mod{margin-right:1em;}
|
||||
|
||||
tr.good td {background: #90ff90;}
|
||||
|
||||
tr.warn td {background: #FFDD55;}
|
||||
|
||||
tr.error td {background:#ff9090;}
|
||||
|
||||
th {text-align:left; padding:1em; background:lightblue;}
|
||||
|
||||
.message {color:#880088;}
|
||||
|
||||
#summary li {border-radius:0.5em;padding:0.5em 1em;display:table;background:#DDD;}
|
||||
|
||||
#summary li.error{background:#ff9090;}
|
||||
|
||||
#summary li.warn{background:#FFDD55;}
|
||||
|
||||
+471
-471
File diff suppressed because it is too large
Load Diff
+96
-96
@@ -1,96 +1,96 @@
|
||||
/* BOSS
|
||||
|
||||
A plugin load order optimiser for games that use the esp/esm plugin system.
|
||||
|
||||
Copyright (C) 2012-2013 WrinklyNinja
|
||||
|
||||
This file is part of BOSS.
|
||||
|
||||
BOSS is free software: you can redistribute
|
||||
it and/or modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation, either version 3 of
|
||||
the License, or (at your option) any later version.
|
||||
|
||||
BOSS is distributed in the hope that it will
|
||||
be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with BOSS. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef __BOSS_HELPERS__
|
||||
#define __BOSS_HELPERS__
|
||||
|
||||
#include "metadata.h"
|
||||
|
||||
#include <stdint.h>
|
||||
#include <string>
|
||||
#include <boost/filesystem.hpp>
|
||||
#include <boost/regex.hpp>
|
||||
|
||||
namespace boss {
|
||||
|
||||
/// Array used to try each of the expressions defined using
|
||||
/// an iteration for each of them.
|
||||
extern boost::regex version_checks[7];
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// Helper functions
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
//Calculate the CRC of the given file for comparison purposes.
|
||||
uint32_t GetCrc32(const boost::filesystem::path& filename);
|
||||
|
||||
//Converts an integer to a string using BOOST's Spirit.Karma. Faster than a stringstream conversion.
|
||||
std::string IntToString(const int n);
|
||||
|
||||
//Converts an integer to a hex string using BOOST's Spirit.Karma. Faster than a stringstream conversion.
|
||||
std::string IntToHexString(const int n);
|
||||
|
||||
//Converts a boolean to a string representation (true/false)
|
||||
std::string BoolToString(const bool b);
|
||||
|
||||
//Check if registry subkey exists.
|
||||
bool RegKeyExists(const std::string& keyStr, const std::string& subkey, const std::string& value);
|
||||
|
||||
//Get registry subkey value string.
|
||||
std::string RegKeyStringValue(const std::string& keyStr, const std::string& subkey, const std::string& value);
|
||||
|
||||
//Get the local application data path.
|
||||
boost::filesystem::path GetLocalAppDataPath();
|
||||
|
||||
//Turns an absolute filesystem path into a valid file:// URL.
|
||||
std::string ToFileURL(const boost::filesystem::path& file);
|
||||
|
||||
//Converts between BOSS's global const value and the ISO 639-3 value for a language.
|
||||
std::string GetLangString(const unsigned int num);
|
||||
unsigned int GetLangNum(const std::string& str);
|
||||
|
||||
//Runs a command using the Win32 API.
|
||||
bool RunCommand(const std::string& command, std::string& output);
|
||||
|
||||
//Version class for more robust version comparisons.
|
||||
class Version {
|
||||
private:
|
||||
std::string verString;
|
||||
public:
|
||||
Version();
|
||||
Version(const std::string& ver);
|
||||
Version(const boost::filesystem::path& file);
|
||||
Version(const Plugin& plugin);
|
||||
|
||||
std::string AsString() const;
|
||||
|
||||
bool operator > (Version);
|
||||
bool operator < (Version);
|
||||
bool operator >= (Version);
|
||||
bool operator <= (Version);
|
||||
bool operator == (Version);
|
||||
bool operator != (Version);
|
||||
};
|
||||
}
|
||||
|
||||
#endif
|
||||
/* BOSS
|
||||
|
||||
A plugin load order optimiser for games that use the esp/esm plugin system.
|
||||
|
||||
Copyright (C) 2012-2013 WrinklyNinja
|
||||
|
||||
This file is part of BOSS.
|
||||
|
||||
BOSS is free software: you can redistribute
|
||||
it and/or modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation, either version 3 of
|
||||
the License, or (at your option) any later version.
|
||||
|
||||
BOSS is distributed in the hope that it will
|
||||
be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with BOSS. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef __BOSS_HELPERS__
|
||||
#define __BOSS_HELPERS__
|
||||
|
||||
#include "metadata.h"
|
||||
|
||||
#include <stdint.h>
|
||||
#include <string>
|
||||
#include <boost/filesystem.hpp>
|
||||
#include <boost/regex.hpp>
|
||||
|
||||
namespace boss {
|
||||
|
||||
/// Array used to try each of the expressions defined using
|
||||
/// an iteration for each of them.
|
||||
extern boost::regex version_checks[7];
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// Helper functions
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
//Calculate the CRC of the given file for comparison purposes.
|
||||
uint32_t GetCrc32(const boost::filesystem::path& filename);
|
||||
|
||||
//Converts an integer to a string using BOOST's Spirit.Karma. Faster than a stringstream conversion.
|
||||
std::string IntToString(const int n);
|
||||
|
||||
//Converts an integer to a hex string using BOOST's Spirit.Karma. Faster than a stringstream conversion.
|
||||
std::string IntToHexString(const int n);
|
||||
|
||||
//Converts a boolean to a string representation (true/false)
|
||||
std::string BoolToString(const bool b);
|
||||
|
||||
//Check if registry subkey exists.
|
||||
bool RegKeyExists(const std::string& keyStr, const std::string& subkey, const std::string& value);
|
||||
|
||||
//Get registry subkey value string.
|
||||
std::string RegKeyStringValue(const std::string& keyStr, const std::string& subkey, const std::string& value);
|
||||
|
||||
//Get the local application data path.
|
||||
boost::filesystem::path GetLocalAppDataPath();
|
||||
|
||||
//Turns an absolute filesystem path into a valid file:// URL.
|
||||
std::string ToFileURL(const boost::filesystem::path& file);
|
||||
|
||||
//Converts between BOSS's global const value and the ISO 639-3 value for a language.
|
||||
std::string GetLangString(const unsigned int num);
|
||||
unsigned int GetLangNum(const std::string& str);
|
||||
|
||||
//Runs a command using the Win32 API.
|
||||
bool RunCommand(const std::string& command, std::string& output);
|
||||
|
||||
//Version class for more robust version comparisons.
|
||||
class Version {
|
||||
private:
|
||||
std::string verString;
|
||||
public:
|
||||
Version();
|
||||
Version(const std::string& ver);
|
||||
Version(const boost::filesystem::path& file);
|
||||
Version(const Plugin& plugin);
|
||||
|
||||
std::string AsString() const;
|
||||
|
||||
bool operator > (Version);
|
||||
bool operator < (Version);
|
||||
bool operator >= (Version);
|
||||
bool operator <= (Version);
|
||||
bool operator == (Version);
|
||||
bool operator != (Version);
|
||||
};
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
+719
-719
File diff suppressed because it is too large
Load Diff
+520
-520
File diff suppressed because it is too large
Load Diff
+22
-22
@@ -1,22 +1,22 @@
|
||||
#include "wx/msw/wx.rc"
|
||||
1 VERSIONINFO
|
||||
FILEVERSION 3,0,0,0
|
||||
PRODUCTVERSION 3,0,0,0
|
||||
FILEOS VOS__WINDOWS32
|
||||
FILETYPE VFT_APP
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "FileVersion", "3.0.0"
|
||||
VALUE "LegalCopyright", "Copyright (C) 2013 WrinklyNinja"
|
||||
VALUE "ProductVersion", "3.0.0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x409, 1200
|
||||
END
|
||||
END
|
||||
MAINICON ICON "../resources/icon.ico"
|
||||
#include "wx/msw/wx.rc"
|
||||
1 VERSIONINFO
|
||||
FILEVERSION 3,0,0,0
|
||||
PRODUCTVERSION 3,0,0,0
|
||||
FILEOS VOS__WINDOWS32
|
||||
FILETYPE VFT_APP
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "FileVersion", "3.0.0"
|
||||
VALUE "LegalCopyright", "Copyright (C) 2013 WrinklyNinja"
|
||||
VALUE "ProductVersion", "3.0.0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x409, 1200
|
||||
END
|
||||
END
|
||||
MAINICON ICON "../resources/icon.ico"
|
||||
|
||||
Reference in New Issue
Block a user