Formatting of changes

As per the style guide
This commit is contained in:
x1nixmzeng 2016-01-07 20:51:28 +00:00
parent effe241a11
commit e4cef38d95
4 changed files with 192 additions and 198 deletions

View File

@ -516,7 +516,7 @@ X_STATUS Emulator::CompleteLaunch(const std::wstring& path,
}
// Try and load the resource database (xex only)
char title[9] = { 0 };
char title[9] = {0};
sprintf(title, "%08X", module->title_id());
uint32_t resource_data = 0;
@ -531,7 +531,8 @@ X_STATUS Emulator::CompleteLaunch(const std::wstring& path,
xe::xdbf::XdbfBlock icon_block = xe::xdbf::get_icon(db);
if (icon_block.buffer != nullptr) {
display_window_->set_icon_from_buffer(icon_block.buffer, icon_block.size);
display_window_->set_icon_from_buffer(icon_block.buffer,
icon_block.size);
}
}
}

View File

@ -167,13 +167,14 @@ bool Win32Window::set_title(const std::wstring& title) {
return true;
}
bool Win32Window::set_icon_from_buffer(void *buffer, size_t size) {
bool Win32Window::set_icon_from_buffer(void* buffer, size_t size) {
if (icon_ != nullptr) {
DestroyIcon(icon_);
}
HICON icon = CreateIconFromResourceEx(reinterpret_cast<BYTE *>(buffer), static_cast<DWORD>(size), TRUE, 0x00030000, 0, 0, LR_DEFAULTCOLOR);
HICON icon = CreateIconFromResourceEx(reinterpret_cast<BYTE*>(buffer),
static_cast<DWORD>(size), TRUE,
0x00030000, 0, 0, LR_DEFAULTCOLOR);
if (icon != nullptr) {
icon_ = icon;

View File

@ -12,25 +12,19 @@
namespace xe {
namespace xdbf {
XdbfWrapper::XdbfWrapper() = default;
XdbfWrapper::XdbfWrapper() = default;
XBDF_HEADER& XdbfWrapper::get_header() const
{
return *state_.header;
}
XBDF_HEADER& XdbfWrapper::get_header() const { return *state_.header; }
XBDF_ENTRY& XdbfWrapper::get_entry(uint32_t n) const
{
XBDF_ENTRY& XdbfWrapper::get_entry(uint32_t n) const {
return state_.entries[n];
}
}
XBDF_FILE_LOC& XdbfWrapper::get_file(uint32_t n) const
{
XBDF_FILE_LOC& XdbfWrapper::get_file(uint32_t n) const {
return state_.files[n];
}
}
bool XdbfWrapper::initialize(uint8_t* buffer, size_t length)
{
bool XdbfWrapper::initialize(uint8_t* buffer, size_t length) {
if (length <= sizeof(XBDF_HEADER)) {
return false;
}
@ -59,15 +53,14 @@ namespace xdbf {
}
return false;
}
}
XdbfBlock XdbfWrapper::get_entry(XdbfSection section, uint64_t id) const {
XdbfBlock block = { nullptr,0 };
XdbfBlock XdbfWrapper::get_entry(XdbfSection section, uint64_t id) const {
XdbfBlock block = {nullptr, 0};
uint32_t x = 0;
while( x < get_header().entry_current ) {
auto &entry = get_entry(x);
while (x < get_header().entry_current) {
auto& entry = get_entry(x);
if (entry.section == section && entry.id == id) {
block.buffer = state_.offset + entry.offset;
@ -79,15 +72,13 @@ namespace xdbf {
}
return block;
}
}
XdbfBlock get_icon(XdbfWrapper& ref)
{
XdbfBlock get_icon(XdbfWrapper& ref) {
return ref.get_entry(kSectionImage, 0x8000);
}
}
std::string get_title(XdbfWrapper& ref)
{
std::string get_title(XdbfWrapper& ref) {
std::string title_str;
XdbfBlock block = ref.get_entry(kSectionMetadata, 0x58535443);
@ -97,20 +88,23 @@ namespace xdbf {
assert_true(xstc->magic == 'XSTC');
uint32_t def_language = xstc->default_language;
XdbfBlock lang_block = ref.get_entry(kSectionStringTable, static_cast<uint64_t>(def_language));
XdbfBlock lang_block =
ref.get_entry(kSectionStringTable, static_cast<uint64_t>(def_language));
if (lang_block.buffer != nullptr) {
XDBF_XSTR_HEADER* xstr_head = reinterpret_cast<XDBF_XSTR_HEADER*>(lang_block.buffer);
XDBF_XSTR_HEADER* xstr_head =
reinterpret_cast<XDBF_XSTR_HEADER*>(lang_block.buffer);
assert_true(xstr_head->magic == 'XSTR');
assert_true(xstr_head->version == 1);
uint16_t str_count = xstr_head->string_count;
uint8_t *currentAddress = lang_block.buffer + sizeof(XDBF_XSTR_HEADER);
uint8_t* currentAddress = lang_block.buffer + sizeof(XDBF_XSTR_HEADER);
uint16_t s = 0;
while( s < str_count && title_str.empty() ) {
XDBF_STRINGTABLE_ENTRY* entry = reinterpret_cast<XDBF_STRINGTABLE_ENTRY*>(currentAddress);
while (s < str_count && title_str.empty()) {
XDBF_STRINGTABLE_ENTRY* entry =
reinterpret_cast<XDBF_STRINGTABLE_ENTRY*>(currentAddress);
currentAddress += sizeof(XDBF_STRINGTABLE_ENTRY);
uint16_t len = entry->string_length;
@ -125,8 +119,7 @@ namespace xdbf {
}
return title_str;
}
}
} // namespace xdbf
} // namespace xe

View File

@ -18,86 +18,86 @@
namespace xe {
namespace xdbf {
// http://freestyledash.googlecode.com/svn/trunk/Freestyle/Tools/XEX/SPA.h
// http://freestyledash.googlecode.com/svn/trunk/Freestyle/Tools/XEX/SPA.cpp
// http://freestyledash.googlecode.com/svn/trunk/Freestyle/Tools/XEX/SPA.h
// http://freestyledash.googlecode.com/svn/trunk/Freestyle/Tools/XEX/SPA.cpp
enum XdbfSection : uint16_t {
enum XdbfSection : uint16_t {
kSectionMetadata = 0x0001,
kSectionImage = 0x0002,
kSectionStringTable = 0x0003,
};
};
enum XdbfLocale : uint32_t {
enum XdbfLocale : uint32_t {
kLocaleDefault = 0,
kLocaleEnglish = 1,
kLocaleJapanese = 2,
};
};
struct XBDF_HEADER {
struct XBDF_HEADER {
xe::be<uint32_t> magic;
xe::be<uint32_t> version;
xe::be<uint32_t> entry_max;
xe::be<uint32_t> entry_current;
xe::be<uint32_t> free_max;
xe::be<uint32_t> free_current;
};
static_assert_size(XBDF_HEADER, 24);
};
static_assert_size(XBDF_HEADER, 24);
#pragma pack(push, 1)
struct XBDF_ENTRY {
struct XBDF_ENTRY {
xe::be<uint16_t> section;
xe::be<uint64_t> id;
xe::be<uint32_t> offset;
xe::be<uint32_t> size;
};
static_assert_size(XBDF_ENTRY, 18);
};
static_assert_size(XBDF_ENTRY, 18);
#pragma pack(pop)
struct XBDF_FILE_LOC {
struct XBDF_FILE_LOC {
xe::be<uint32_t> offset;
xe::be<uint32_t> size;
};
static_assert_size(XBDF_FILE_LOC, 8);
};
static_assert_size(XBDF_FILE_LOC, 8);
struct XDBF_XSTC {
struct XDBF_XSTC {
xe::be<uint32_t> magic;
xe::be<uint32_t> version;
xe::be<uint32_t> size;
xe::be<uint32_t> default_language;
};
static_assert_size(XDBF_XSTC, 16);
};
static_assert_size(XDBF_XSTC, 16);
#pragma pack(push, 1)
struct XDBF_XSTR_HEADER {
struct XDBF_XSTR_HEADER {
xe::be<uint32_t> magic;
xe::be<uint32_t> version;
xe::be<uint32_t> size;
xe::be<uint16_t> string_count;
};
static_assert_size(XDBF_XSTR_HEADER, 14);
};
static_assert_size(XDBF_XSTR_HEADER, 14);
#pragma pack(pop)
struct XDBF_STRINGTABLE_ENTRY {
struct XDBF_STRINGTABLE_ENTRY {
xe::be<uint16_t> id;
xe::be<uint16_t> string_length;
};
static_assert_size(XDBF_STRINGTABLE_ENTRY, 4);
};
static_assert_size(XDBF_STRINGTABLE_ENTRY, 4);
struct XdbfState {
struct XdbfState {
XBDF_HEADER* header;
XBDF_ENTRY* entries;
XBDF_FILE_LOC* files;
uint8_t* offset;
uint8_t* data;
size_t size;
};
};
struct XdbfBlock {
struct XdbfBlock {
uint8_t* buffer;
size_t size;
};
};
class XdbfWrapper {
class XdbfWrapper {
public:
XdbfWrapper();
@ -110,11 +110,10 @@ namespace xdbf {
XBDF_FILE_LOC& get_file(uint32_t n) const;
XdbfState state_;
};
XdbfBlock get_icon(XdbfWrapper& ref);
std::string get_title(XdbfWrapper& ref);
};
XdbfBlock get_icon(XdbfWrapper& ref);
std::string get_title(XdbfWrapper& ref);
} // namespace xdbf
} // namespace xe