texturev: Added load/save settings.
This commit is contained in:
parent
f88c44a835
commit
81ded16290
@ -4,13 +4,19 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include "common.h"
|
#include "common.h"
|
||||||
|
|
||||||
#include <bgfx/bgfx.h>
|
#include <bgfx/bgfx.h>
|
||||||
|
|
||||||
#include <bx/commandline.h>
|
#include <bx/commandline.h>
|
||||||
#include <bx/os.h>
|
|
||||||
#include <bx/filepath.h>
|
|
||||||
#include <bx/uint32_t.h>
|
|
||||||
#include <bx/math.h>
|
|
||||||
#include <bx/easing.h>
|
#include <bx/easing.h>
|
||||||
|
#include <bx/file.h>
|
||||||
|
#include <bx/filepath.h>
|
||||||
|
#include <bx/math.h>
|
||||||
|
#include <bx/os.h>
|
||||||
|
#include <bx/process.h>
|
||||||
|
#include <bx/settings.h>
|
||||||
|
#include <bx/uint32_t.h>
|
||||||
|
|
||||||
#include <entry/entry.h>
|
#include <entry/entry.h>
|
||||||
#include <entry/input.h>
|
#include <entry/input.h>
|
||||||
#include <entry/cmd.h>
|
#include <entry/cmd.h>
|
||||||
@ -19,9 +25,6 @@
|
|||||||
|
|
||||||
#include <dirent.h>
|
#include <dirent.h>
|
||||||
|
|
||||||
#include <bx/file.h>
|
|
||||||
#include <bx/process.h>
|
|
||||||
|
|
||||||
#include <tinystl/allocator.h>
|
#include <tinystl/allocator.h>
|
||||||
#include <tinystl/vector.h>
|
#include <tinystl/vector.h>
|
||||||
namespace stl = tinystl;
|
namespace stl = tinystl;
|
||||||
@ -228,6 +231,7 @@ struct View
|
|||||||
, m_files(false)
|
, m_files(false)
|
||||||
, m_sdf(false)
|
, m_sdf(false)
|
||||||
{
|
{
|
||||||
|
load();
|
||||||
}
|
}
|
||||||
|
|
||||||
~View()
|
~View()
|
||||||
@ -568,6 +572,10 @@ struct View
|
|||||||
{
|
{
|
||||||
m_help ^= true;
|
m_help ^= true;
|
||||||
}
|
}
|
||||||
|
else if (0 == bx::strCmp(_argv[1], "save") )
|
||||||
|
{
|
||||||
|
save();
|
||||||
|
}
|
||||||
else if (0 == bx::strCmp(_argv[1], "info") )
|
else if (0 == bx::strCmp(_argv[1], "info") )
|
||||||
{
|
{
|
||||||
m_info ^= true;
|
m_info ^= true;
|
||||||
@ -652,6 +660,48 @@ struct View
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void load()
|
||||||
|
{
|
||||||
|
bx::FilePath filePath(bx::Dir::Home);
|
||||||
|
filePath.join(".config/bgfx/texturev.ini");
|
||||||
|
|
||||||
|
bx::Settings settings(entry::getAllocator() );
|
||||||
|
|
||||||
|
bx::FileReader reader;
|
||||||
|
if (bx::open(&reader, filePath) )
|
||||||
|
{
|
||||||
|
bx::read(&reader, settings);
|
||||||
|
bx::close(&reader);
|
||||||
|
|
||||||
|
if (!bx::fromString(&m_transitionTime, settings.get("view/transition") ) )
|
||||||
|
{
|
||||||
|
m_transitionTime = 1.0f;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void save()
|
||||||
|
{
|
||||||
|
bx::FilePath filePath(bx::Dir::Home);
|
||||||
|
filePath.join(".config/bgfx/texturev.ini");
|
||||||
|
|
||||||
|
if (bx::makeAll(filePath.getPath() ) )
|
||||||
|
{
|
||||||
|
bx::Settings settings(entry::getAllocator() );
|
||||||
|
|
||||||
|
char tmp[256];
|
||||||
|
bx::toString(tmp, sizeof(tmp), m_transitionTime);
|
||||||
|
settings.set("view/transition", tmp);
|
||||||
|
|
||||||
|
bx::FileWriter writer;
|
||||||
|
if (bx::open(&writer, filePath) )
|
||||||
|
{
|
||||||
|
bx::write(&writer, settings);
|
||||||
|
bx::close(&writer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
bx::FilePath m_path;
|
bx::FilePath m_path;
|
||||||
|
|
||||||
typedef stl::vector<std::string> FileList;
|
typedef stl::vector<std::string> FileList;
|
||||||
@ -1350,6 +1400,13 @@ int _main_(int _argc, char** _argv)
|
|||||||
cmdExec("view rgb a");
|
cmdExec("view rgb a");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::Separator();
|
||||||
|
|
||||||
|
if (ImGui::MenuItem("Save Options") )
|
||||||
|
{
|
||||||
|
cmdExec("view save");
|
||||||
|
}
|
||||||
|
|
||||||
ImGui::EndMenu();
|
ImGui::EndMenu();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user