early-access version 3105
This commit is contained in:
parent
e34c1a72d4
commit
17e11613ac
@ -1,7 +1,7 @@
|
|||||||
yuzu emulator early access
|
yuzu emulator early access
|
||||||
=============
|
=============
|
||||||
|
|
||||||
This is the source code for early-access 3104.
|
This is the source code for early-access 3105.
|
||||||
|
|
||||||
## Legal Notice
|
## Legal Notice
|
||||||
|
|
||||||
|
@ -20,8 +20,12 @@ void KEvent::Initialize(KProcess* owner) {
|
|||||||
m_readable_event.Initialize(this);
|
m_readable_event.Initialize(this);
|
||||||
|
|
||||||
// Set our owner process.
|
// Set our owner process.
|
||||||
m_owner = owner;
|
// HACK: this should never be nullptr, but service threads don't have a
|
||||||
m_owner->Open();
|
// proper parent process yet.
|
||||||
|
if (owner != nullptr) {
|
||||||
|
m_owner = owner;
|
||||||
|
m_owner->Open();
|
||||||
|
}
|
||||||
|
|
||||||
// Mark initialized.
|
// Mark initialized.
|
||||||
m_initialized = true;
|
m_initialized = true;
|
||||||
@ -50,8 +54,11 @@ Result KEvent::Clear() {
|
|||||||
void KEvent::PostDestroy(uintptr_t arg) {
|
void KEvent::PostDestroy(uintptr_t arg) {
|
||||||
// Release the event count resource the owner process holds.
|
// Release the event count resource the owner process holds.
|
||||||
KProcess* owner = reinterpret_cast<KProcess*>(arg);
|
KProcess* owner = reinterpret_cast<KProcess*>(arg);
|
||||||
owner->GetResourceLimit()->Release(LimitableResource::EventCountMax, 1);
|
|
||||||
owner->Close();
|
if (owner != nullptr) {
|
||||||
|
owner->GetResourceLimit()->Release(LimitableResource::EventCountMax, 1);
|
||||||
|
owner->Close();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace Kernel
|
} // namespace Kernel
|
||||||
|
@ -40,7 +40,6 @@ private:
|
|||||||
std::mutex m_session_mutex;
|
std::mutex m_session_mutex;
|
||||||
std::map<KServerSession*, std::shared_ptr<SessionRequestManager>> m_sessions;
|
std::map<KServerSession*, std::shared_ptr<SessionRequestManager>> m_sessions;
|
||||||
KEvent* m_wakeup_event;
|
KEvent* m_wakeup_event;
|
||||||
KProcess* m_process;
|
|
||||||
KThread* m_thread;
|
KThread* m_thread;
|
||||||
std::atomic<bool> m_shutdown_requested;
|
std::atomic<bool> m_shutdown_requested;
|
||||||
const std::string m_service_name;
|
const std::string m_service_name;
|
||||||
@ -180,39 +179,17 @@ ServiceThread::Impl::~Impl() {
|
|||||||
|
|
||||||
// Close thread.
|
// Close thread.
|
||||||
m_thread->Close();
|
m_thread->Close();
|
||||||
|
|
||||||
// Close process.
|
|
||||||
m_process->Close();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ServiceThread::Impl::Impl(KernelCore& kernel_, const std::string& service_name)
|
ServiceThread::Impl::Impl(KernelCore& kernel_, const std::string& service_name)
|
||||||
: kernel{kernel_}, m_service_name{service_name} {
|
: kernel{kernel_}, m_service_name{service_name} {
|
||||||
// Initialize process.
|
|
||||||
m_process = KProcess::Create(kernel);
|
|
||||||
KProcess::Initialize(m_process, kernel.System(), service_name,
|
|
||||||
KProcess::ProcessType::KernelInternal, kernel.GetSystemResourceLimit());
|
|
||||||
|
|
||||||
// Reserve a new event from the process resource limit
|
|
||||||
KScopedResourceReservation event_reservation(m_process, LimitableResource::EventCountMax);
|
|
||||||
ASSERT(event_reservation.Succeeded());
|
|
||||||
|
|
||||||
// Initialize event.
|
// Initialize event.
|
||||||
m_wakeup_event = KEvent::Create(kernel);
|
m_wakeup_event = KEvent::Create(kernel);
|
||||||
m_wakeup_event->Initialize(m_process);
|
m_wakeup_event->Initialize(nullptr);
|
||||||
|
|
||||||
// Commit the event reservation.
|
|
||||||
event_reservation.Commit();
|
|
||||||
|
|
||||||
// Reserve a new thread from the process resource limit
|
|
||||||
KScopedResourceReservation thread_reservation(m_process, LimitableResource::ThreadCountMax);
|
|
||||||
ASSERT(thread_reservation.Succeeded());
|
|
||||||
|
|
||||||
// Initialize thread.
|
// Initialize thread.
|
||||||
m_thread = KThread::Create(kernel);
|
m_thread = KThread::Create(kernel);
|
||||||
ASSERT(KThread::InitializeDummyThread(m_thread, m_process).IsSuccess());
|
ASSERT(KThread::InitializeDummyThread(m_thread, nullptr).IsSuccess());
|
||||||
|
|
||||||
// Commit the thread reservation.
|
|
||||||
thread_reservation.Commit();
|
|
||||||
|
|
||||||
// Start thread.
|
// Start thread.
|
||||||
m_host_thread = std::jthread([this] { LoopProcess(); });
|
m_host_thread = std::jthread([this] { LoopProcess(); });
|
||||||
|
@ -401,224 +401,127 @@ void GRenderWindow::closeEvent(QCloseEvent* event) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
int GRenderWindow::QtKeyToSwitchKey(Qt::Key qt_key) {
|
int GRenderWindow::QtKeyToSwitchKey(Qt::Key qt_key) {
|
||||||
switch (qt_key) {
|
static constexpr std::array<std::pair<Qt::Key, Settings::NativeKeyboard::Keys>, 106> key_map = {
|
||||||
case Qt::Key_A:
|
std::pair<Qt::Key, Settings::NativeKeyboard::Keys>{Qt::Key_A, Settings::NativeKeyboard::A},
|
||||||
return Settings::NativeKeyboard::A;
|
{Qt::Key_A, Settings::NativeKeyboard::A},
|
||||||
case Qt::Key_B:
|
{Qt::Key_B, Settings::NativeKeyboard::B},
|
||||||
return Settings::NativeKeyboard::B;
|
{Qt::Key_C, Settings::NativeKeyboard::C},
|
||||||
case Qt::Key_C:
|
{Qt::Key_D, Settings::NativeKeyboard::D},
|
||||||
return Settings::NativeKeyboard::C;
|
{Qt::Key_E, Settings::NativeKeyboard::E},
|
||||||
case Qt::Key_D:
|
{Qt::Key_F, Settings::NativeKeyboard::F},
|
||||||
return Settings::NativeKeyboard::D;
|
{Qt::Key_G, Settings::NativeKeyboard::G},
|
||||||
case Qt::Key_E:
|
{Qt::Key_H, Settings::NativeKeyboard::H},
|
||||||
return Settings::NativeKeyboard::E;
|
{Qt::Key_I, Settings::NativeKeyboard::I},
|
||||||
case Qt::Key_F:
|
{Qt::Key_J, Settings::NativeKeyboard::J},
|
||||||
return Settings::NativeKeyboard::F;
|
{Qt::Key_K, Settings::NativeKeyboard::K},
|
||||||
case Qt::Key_G:
|
{Qt::Key_L, Settings::NativeKeyboard::L},
|
||||||
return Settings::NativeKeyboard::G;
|
{Qt::Key_M, Settings::NativeKeyboard::M},
|
||||||
case Qt::Key_H:
|
{Qt::Key_N, Settings::NativeKeyboard::N},
|
||||||
return Settings::NativeKeyboard::H;
|
{Qt::Key_O, Settings::NativeKeyboard::O},
|
||||||
case Qt::Key_I:
|
{Qt::Key_P, Settings::NativeKeyboard::P},
|
||||||
return Settings::NativeKeyboard::I;
|
{Qt::Key_Q, Settings::NativeKeyboard::Q},
|
||||||
case Qt::Key_J:
|
{Qt::Key_R, Settings::NativeKeyboard::R},
|
||||||
return Settings::NativeKeyboard::J;
|
{Qt::Key_S, Settings::NativeKeyboard::S},
|
||||||
case Qt::Key_K:
|
{Qt::Key_T, Settings::NativeKeyboard::T},
|
||||||
return Settings::NativeKeyboard::K;
|
{Qt::Key_U, Settings::NativeKeyboard::U},
|
||||||
case Qt::Key_L:
|
{Qt::Key_V, Settings::NativeKeyboard::V},
|
||||||
return Settings::NativeKeyboard::L;
|
{Qt::Key_W, Settings::NativeKeyboard::W},
|
||||||
case Qt::Key_M:
|
{Qt::Key_X, Settings::NativeKeyboard::X},
|
||||||
return Settings::NativeKeyboard::M;
|
{Qt::Key_Y, Settings::NativeKeyboard::Y},
|
||||||
case Qt::Key_N:
|
{Qt::Key_Z, Settings::NativeKeyboard::Z},
|
||||||
return Settings::NativeKeyboard::N;
|
{Qt::Key_1, Settings::NativeKeyboard::N1},
|
||||||
case Qt::Key_O:
|
{Qt::Key_2, Settings::NativeKeyboard::N2},
|
||||||
return Settings::NativeKeyboard::O;
|
{Qt::Key_3, Settings::NativeKeyboard::N3},
|
||||||
case Qt::Key_P:
|
{Qt::Key_4, Settings::NativeKeyboard::N4},
|
||||||
return Settings::NativeKeyboard::P;
|
{Qt::Key_5, Settings::NativeKeyboard::N5},
|
||||||
case Qt::Key_Q:
|
{Qt::Key_6, Settings::NativeKeyboard::N6},
|
||||||
return Settings::NativeKeyboard::Q;
|
{Qt::Key_7, Settings::NativeKeyboard::N7},
|
||||||
case Qt::Key_R:
|
{Qt::Key_8, Settings::NativeKeyboard::N8},
|
||||||
return Settings::NativeKeyboard::R;
|
{Qt::Key_9, Settings::NativeKeyboard::N9},
|
||||||
case Qt::Key_S:
|
{Qt::Key_0, Settings::NativeKeyboard::N0},
|
||||||
return Settings::NativeKeyboard::S;
|
{Qt::Key_Return, Settings::NativeKeyboard::Return},
|
||||||
case Qt::Key_T:
|
{Qt::Key_Escape, Settings::NativeKeyboard::Escape},
|
||||||
return Settings::NativeKeyboard::T;
|
{Qt::Key_Backspace, Settings::NativeKeyboard::Backspace},
|
||||||
case Qt::Key_U:
|
{Qt::Key_Tab, Settings::NativeKeyboard::Tab},
|
||||||
return Settings::NativeKeyboard::U;
|
{Qt::Key_Space, Settings::NativeKeyboard::Space},
|
||||||
case Qt::Key_V:
|
{Qt::Key_Minus, Settings::NativeKeyboard::Minus},
|
||||||
return Settings::NativeKeyboard::V;
|
{Qt::Key_Plus, Settings::NativeKeyboard::Plus},
|
||||||
case Qt::Key_W:
|
{Qt::Key_questiondown, Settings::NativeKeyboard::Plus},
|
||||||
return Settings::NativeKeyboard::W;
|
{Qt::Key_BracketLeft, Settings::NativeKeyboard::OpenBracket},
|
||||||
case Qt::Key_X:
|
{Qt::Key_BraceLeft, Settings::NativeKeyboard::OpenBracket},
|
||||||
return Settings::NativeKeyboard::X;
|
{Qt::Key_BracketRight, Settings::NativeKeyboard::CloseBracket},
|
||||||
case Qt::Key_Y:
|
{Qt::Key_BraceRight, Settings::NativeKeyboard::CloseBracket},
|
||||||
return Settings::NativeKeyboard::Y;
|
{Qt::Key_Bar, Settings::NativeKeyboard::Pipe},
|
||||||
case Qt::Key_Z:
|
{Qt::Key_Dead_Tilde, Settings::NativeKeyboard::Tilde},
|
||||||
return Settings::NativeKeyboard::Z;
|
{Qt::Key_Ntilde, Settings::NativeKeyboard::Semicolon},
|
||||||
case Qt::Key_1:
|
{Qt::Key_Semicolon, Settings::NativeKeyboard::Semicolon},
|
||||||
return Settings::NativeKeyboard::N1;
|
{Qt::Key_Apostrophe, Settings::NativeKeyboard::Quote},
|
||||||
case Qt::Key_2:
|
{Qt::Key_Dead_Grave, Settings::NativeKeyboard::Backquote},
|
||||||
return Settings::NativeKeyboard::N2;
|
{Qt::Key_Comma, Settings::NativeKeyboard::Comma},
|
||||||
case Qt::Key_3:
|
{Qt::Key_Period, Settings::NativeKeyboard::Period},
|
||||||
return Settings::NativeKeyboard::N3;
|
{Qt::Key_Slash, Settings::NativeKeyboard::Slash},
|
||||||
case Qt::Key_4:
|
{Qt::Key_CapsLock, Settings::NativeKeyboard::CapsLockKey},
|
||||||
return Settings::NativeKeyboard::N4;
|
{Qt::Key_F1, Settings::NativeKeyboard::F1},
|
||||||
case Qt::Key_5:
|
{Qt::Key_F2, Settings::NativeKeyboard::F2},
|
||||||
return Settings::NativeKeyboard::N5;
|
{Qt::Key_F3, Settings::NativeKeyboard::F3},
|
||||||
case Qt::Key_6:
|
{Qt::Key_F4, Settings::NativeKeyboard::F4},
|
||||||
return Settings::NativeKeyboard::N6;
|
{Qt::Key_F5, Settings::NativeKeyboard::F5},
|
||||||
case Qt::Key_7:
|
{Qt::Key_F6, Settings::NativeKeyboard::F6},
|
||||||
return Settings::NativeKeyboard::N7;
|
{Qt::Key_F7, Settings::NativeKeyboard::F7},
|
||||||
case Qt::Key_8:
|
{Qt::Key_F8, Settings::NativeKeyboard::F8},
|
||||||
return Settings::NativeKeyboard::N8;
|
{Qt::Key_F9, Settings::NativeKeyboard::F9},
|
||||||
case Qt::Key_9:
|
{Qt::Key_F10, Settings::NativeKeyboard::F10},
|
||||||
return Settings::NativeKeyboard::N9;
|
{Qt::Key_F11, Settings::NativeKeyboard::F11},
|
||||||
case Qt::Key_0:
|
{Qt::Key_F12, Settings::NativeKeyboard::F12},
|
||||||
return Settings::NativeKeyboard::N0;
|
{Qt::Key_Print, Settings::NativeKeyboard::PrintScreen},
|
||||||
case Qt::Key_Return:
|
{Qt::Key_ScrollLock, Settings::NativeKeyboard::ScrollLockKey},
|
||||||
return Settings::NativeKeyboard::Return;
|
{Qt::Key_Pause, Settings::NativeKeyboard::Pause},
|
||||||
case Qt::Key_Escape:
|
{Qt::Key_Insert, Settings::NativeKeyboard::Insert},
|
||||||
return Settings::NativeKeyboard::Escape;
|
{Qt::Key_Home, Settings::NativeKeyboard::Home},
|
||||||
case Qt::Key_Backspace:
|
{Qt::Key_PageUp, Settings::NativeKeyboard::PageUp},
|
||||||
return Settings::NativeKeyboard::Backspace;
|
{Qt::Key_Delete, Settings::NativeKeyboard::Delete},
|
||||||
case Qt::Key_Tab:
|
{Qt::Key_End, Settings::NativeKeyboard::End},
|
||||||
return Settings::NativeKeyboard::Tab;
|
{Qt::Key_PageDown, Settings::NativeKeyboard::PageDown},
|
||||||
case Qt::Key_Space:
|
{Qt::Key_Right, Settings::NativeKeyboard::Right},
|
||||||
return Settings::NativeKeyboard::Space;
|
{Qt::Key_Left, Settings::NativeKeyboard::Left},
|
||||||
case Qt::Key_Minus:
|
{Qt::Key_Down, Settings::NativeKeyboard::Down},
|
||||||
return Settings::NativeKeyboard::Minus;
|
{Qt::Key_Up, Settings::NativeKeyboard::Up},
|
||||||
case Qt::Key_Plus:
|
{Qt::Key_NumLock, Settings::NativeKeyboard::NumLockKey},
|
||||||
case Qt::Key_questiondown:
|
// Numpad keys are missing here
|
||||||
return Settings::NativeKeyboard::Plus;
|
{Qt::Key_F13, Settings::NativeKeyboard::F13},
|
||||||
case Qt::Key_BracketLeft:
|
{Qt::Key_F14, Settings::NativeKeyboard::F14},
|
||||||
case Qt::Key_BraceLeft:
|
{Qt::Key_F15, Settings::NativeKeyboard::F15},
|
||||||
return Settings::NativeKeyboard::OpenBracket;
|
{Qt::Key_F16, Settings::NativeKeyboard::F16},
|
||||||
case Qt::Key_BracketRight:
|
{Qt::Key_F17, Settings::NativeKeyboard::F17},
|
||||||
case Qt::Key_BraceRight:
|
{Qt::Key_F18, Settings::NativeKeyboard::F18},
|
||||||
return Settings::NativeKeyboard::CloseBracket;
|
{Qt::Key_F19, Settings::NativeKeyboard::F19},
|
||||||
case Qt::Key_Bar:
|
{Qt::Key_F20, Settings::NativeKeyboard::F20},
|
||||||
return Settings::NativeKeyboard::Pipe;
|
{Qt::Key_F21, Settings::NativeKeyboard::F21},
|
||||||
case Qt::Key_Dead_Tilde:
|
{Qt::Key_F22, Settings::NativeKeyboard::F22},
|
||||||
return Settings::NativeKeyboard::Tilde;
|
{Qt::Key_F23, Settings::NativeKeyboard::F23},
|
||||||
case Qt::Key_Ntilde:
|
{Qt::Key_F24, Settings::NativeKeyboard::F24},
|
||||||
case Qt::Key_Semicolon:
|
// {Qt::..., Settings::NativeKeyboard::KPComma},
|
||||||
return Settings::NativeKeyboard::Semicolon;
|
// {Qt::..., Settings::NativeKeyboard::Ro},
|
||||||
case Qt::Key_Apostrophe:
|
{Qt::Key_Hiragana_Katakana, Settings::NativeKeyboard::KatakanaHiragana},
|
||||||
return Settings::NativeKeyboard::Quote;
|
{Qt::Key_yen, Settings::NativeKeyboard::Yen},
|
||||||
case Qt::Key_Dead_Grave:
|
{Qt::Key_Henkan, Settings::NativeKeyboard::Henkan},
|
||||||
return Settings::NativeKeyboard::Backquote;
|
{Qt::Key_Muhenkan, Settings::NativeKeyboard::Muhenkan},
|
||||||
case Qt::Key_Comma:
|
// {Qt::..., Settings::NativeKeyboard::NumPadCommaPc98},
|
||||||
return Settings::NativeKeyboard::Comma;
|
{Qt::Key_Hangul, Settings::NativeKeyboard::HangulEnglish},
|
||||||
case Qt::Key_Period:
|
{Qt::Key_Hangul_Hanja, Settings::NativeKeyboard::Hanja},
|
||||||
return Settings::NativeKeyboard::Period;
|
{Qt::Key_Katakana, Settings::NativeKeyboard::KatakanaKey},
|
||||||
case Qt::Key_Slash:
|
{Qt::Key_Hiragana, Settings::NativeKeyboard::HiraganaKey},
|
||||||
return Settings::NativeKeyboard::Slash;
|
{Qt::Key_Zenkaku_Hankaku, Settings::NativeKeyboard::ZenkakuHankaku},
|
||||||
case Qt::Key_CapsLock:
|
// Modifier keys are handled by the modifier property
|
||||||
return Settings::NativeKeyboard::CapsLock;
|
};
|
||||||
case Qt::Key_F1:
|
|
||||||
return Settings::NativeKeyboard::F1;
|
for (const auto& [qkey, nkey] : key_map) {
|
||||||
case Qt::Key_F2:
|
if (qt_key == qkey) {
|
||||||
return Settings::NativeKeyboard::F2;
|
return nkey;
|
||||||
case Qt::Key_F3:
|
}
|
||||||
return Settings::NativeKeyboard::F3;
|
|
||||||
case Qt::Key_F4:
|
|
||||||
return Settings::NativeKeyboard::F4;
|
|
||||||
case Qt::Key_F5:
|
|
||||||
return Settings::NativeKeyboard::F5;
|
|
||||||
case Qt::Key_F6:
|
|
||||||
return Settings::NativeKeyboard::F6;
|
|
||||||
case Qt::Key_F7:
|
|
||||||
return Settings::NativeKeyboard::F7;
|
|
||||||
case Qt::Key_F8:
|
|
||||||
return Settings::NativeKeyboard::F8;
|
|
||||||
case Qt::Key_F9:
|
|
||||||
return Settings::NativeKeyboard::F9;
|
|
||||||
case Qt::Key_F10:
|
|
||||||
return Settings::NativeKeyboard::F10;
|
|
||||||
case Qt::Key_F11:
|
|
||||||
return Settings::NativeKeyboard::F11;
|
|
||||||
case Qt::Key_F12:
|
|
||||||
return Settings::NativeKeyboard::F12;
|
|
||||||
case Qt::Key_Print:
|
|
||||||
return Settings::NativeKeyboard::PrintScreen;
|
|
||||||
case Qt::Key_ScrollLock:
|
|
||||||
return Settings::NativeKeyboard::ScrollLock;
|
|
||||||
case Qt::Key_Pause:
|
|
||||||
return Settings::NativeKeyboard::Pause;
|
|
||||||
case Qt::Key_Insert:
|
|
||||||
return Settings::NativeKeyboard::Insert;
|
|
||||||
case Qt::Key_Home:
|
|
||||||
return Settings::NativeKeyboard::Home;
|
|
||||||
case Qt::Key_PageUp:
|
|
||||||
return Settings::NativeKeyboard::PageUp;
|
|
||||||
case Qt::Key_Delete:
|
|
||||||
return Settings::NativeKeyboard::Delete;
|
|
||||||
case Qt::Key_End:
|
|
||||||
return Settings::NativeKeyboard::End;
|
|
||||||
case Qt::Key_PageDown:
|
|
||||||
return Settings::NativeKeyboard::PageDown;
|
|
||||||
case Qt::Key_Right:
|
|
||||||
return Settings::NativeKeyboard::Right;
|
|
||||||
case Qt::Key_Left:
|
|
||||||
return Settings::NativeKeyboard::Left;
|
|
||||||
case Qt::Key_Down:
|
|
||||||
return Settings::NativeKeyboard::Down;
|
|
||||||
case Qt::Key_Up:
|
|
||||||
return Settings::NativeKeyboard::Up;
|
|
||||||
case Qt::Key_NumLock:
|
|
||||||
return Settings::NativeKeyboard::NumLock;
|
|
||||||
// Numpad keys are missing here
|
|
||||||
case Qt::Key_F13:
|
|
||||||
return Settings::NativeKeyboard::F13;
|
|
||||||
case Qt::Key_F14:
|
|
||||||
return Settings::NativeKeyboard::F14;
|
|
||||||
case Qt::Key_F15:
|
|
||||||
return Settings::NativeKeyboard::F15;
|
|
||||||
case Qt::Key_F16:
|
|
||||||
return Settings::NativeKeyboard::F16;
|
|
||||||
case Qt::Key_F17:
|
|
||||||
return Settings::NativeKeyboard::F17;
|
|
||||||
case Qt::Key_F18:
|
|
||||||
return Settings::NativeKeyboard::F18;
|
|
||||||
case Qt::Key_F19:
|
|
||||||
return Settings::NativeKeyboard::F19;
|
|
||||||
case Qt::Key_F20:
|
|
||||||
return Settings::NativeKeyboard::F20;
|
|
||||||
case Qt::Key_F21:
|
|
||||||
return Settings::NativeKeyboard::F21;
|
|
||||||
case Qt::Key_F22:
|
|
||||||
return Settings::NativeKeyboard::F22;
|
|
||||||
case Qt::Key_F23:
|
|
||||||
return Settings::NativeKeyboard::F23;
|
|
||||||
case Qt::Key_F24:
|
|
||||||
return Settings::NativeKeyboard::F24;
|
|
||||||
// case Qt:::
|
|
||||||
// return Settings::NativeKeyboard::KPComma;
|
|
||||||
// case Qt:::
|
|
||||||
// return Settings::NativeKeyboard::Ro;
|
|
||||||
case Qt::Key_Hiragana_Katakana:
|
|
||||||
return Settings::NativeKeyboard::KatakanaHiragana;
|
|
||||||
case Qt::Key_yen:
|
|
||||||
return Settings::NativeKeyboard::Yen;
|
|
||||||
case Qt::Key_Henkan:
|
|
||||||
return Settings::NativeKeyboard::Henkan;
|
|
||||||
case Qt::Key_Muhenkan:
|
|
||||||
return Settings::NativeKeyboard::Muhenkan;
|
|
||||||
// case Qt:::
|
|
||||||
// return Settings::NativeKeyboard::NumPadCommaPc98;
|
|
||||||
case Qt::Key_Hangul:
|
|
||||||
return Settings::NativeKeyboard::HangulEnglish;
|
|
||||||
case Qt::Key_Hangul_Hanja:
|
|
||||||
return Settings::NativeKeyboard::Hanja;
|
|
||||||
case Qt::Key_Katakana:
|
|
||||||
return Settings::NativeKeyboard::KatakanaKey;
|
|
||||||
case Qt::Key_Hiragana:
|
|
||||||
return Settings::NativeKeyboard::HiraganaKey;
|
|
||||||
case Qt::Key_Zenkaku_Hankaku:
|
|
||||||
return Settings::NativeKeyboard::ZenkakuHankaku;
|
|
||||||
// Modifier keys are handled by the modifier property
|
|
||||||
default:
|
|
||||||
return Settings::NativeKeyboard::None;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return Settings::NativeKeyboard::None;
|
||||||
}
|
}
|
||||||
|
|
||||||
int GRenderWindow::QtModifierToSwitchModifier(Qt::KeyboardModifiers qt_modifiers) {
|
int GRenderWindow::QtModifierToSwitchModifier(Qt::KeyboardModifiers qt_modifiers) {
|
||||||
|
@ -65,9 +65,9 @@
|
|||||||
<attribute name="pageId">
|
<attribute name="pageId">
|
||||||
<string notr="true">1</string>
|
<string notr="true">1</string>
|
||||||
</attribute>
|
</attribute>
|
||||||
<layout class="QFormLayout" name="formLayout">
|
<layout class="QFormLayout" name="formLayout1">
|
||||||
<item row="0" column="0" colspan="2">
|
<item row="0" column="0" colspan="2">
|
||||||
<widget class="QLabel" name="lbl_Independent">
|
<widget class="QLabel" name="lbl_Independent1">
|
||||||
<property name="font">
|
<property name="font">
|
||||||
<font>
|
<font>
|
||||||
<pointsize>10</pointsize>
|
<pointsize>10</pointsize>
|
||||||
@ -82,7 +82,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0" colspan="2">
|
<item row="1" column="0" colspan="2">
|
||||||
<spacer name="verticalSpacer">
|
<spacer name="verticalSpacer1">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Vertical</enum>
|
<enum>Qt::Vertical</enum>
|
||||||
</property>
|
</property>
|
||||||
@ -104,7 +104,7 @@
|
|||||||
<item row="4" column="0">
|
<item row="4" column="0">
|
||||||
<widget class="QRadioButton" name="radioButton_GameBoot_No">
|
<widget class="QRadioButton" name="radioButton_GameBoot_No">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>No The game doesn't get past the "Launching..." screen</string>
|
<string>No The game doesn't get past the "Launching..." screen</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
@ -117,7 +117,7 @@
|
|||||||
<attribute name="pageId">
|
<attribute name="pageId">
|
||||||
<string notr="true">2</string>
|
<string notr="true">2</string>
|
||||||
</attribute>
|
</attribute>
|
||||||
<layout class="QFormLayout" name="formLayout">
|
<layout class="QFormLayout" name="formLayout2">
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<widget class="QRadioButton" name="radioButton_Gameplay_Yes">
|
<widget class="QRadioButton" name="radioButton_Gameplay_Yes">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
@ -133,7 +133,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="0" colspan="2">
|
<item row="0" column="0" colspan="2">
|
||||||
<widget class="QLabel" name="lbl_Independent">
|
<widget class="QLabel" name="lbl_Independent2">
|
||||||
<property name="font">
|
<property name="font">
|
||||||
<font>
|
<font>
|
||||||
<pointsize>10</pointsize>
|
<pointsize>10</pointsize>
|
||||||
@ -148,7 +148,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0" colspan="2">
|
<item row="1" column="0" colspan="2">
|
||||||
<spacer name="verticalSpacer">
|
<spacer name="verticalSpacer2">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Vertical</enum>
|
<enum>Qt::Vertical</enum>
|
||||||
</property>
|
</property>
|
||||||
@ -169,7 +169,7 @@
|
|||||||
<attribute name="pageId">
|
<attribute name="pageId">
|
||||||
<string notr="true">3</string>
|
<string notr="true">3</string>
|
||||||
</attribute>
|
</attribute>
|
||||||
<layout class="QFormLayout" name="formLayout">
|
<layout class="QFormLayout" name="formLayout3">
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<widget class="QRadioButton" name="radioButton_NoFreeze_Yes">
|
<widget class="QRadioButton" name="radioButton_NoFreeze_Yes">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
@ -185,7 +185,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="0" colspan="2">
|
<item row="0" column="0" colspan="2">
|
||||||
<widget class="QLabel" name="lbl_Independent">
|
<widget class="QLabel" name="lbl_Independent3">
|
||||||
<property name="font">
|
<property name="font">
|
||||||
<font>
|
<font>
|
||||||
<pointsize>10</pointsize>
|
<pointsize>10</pointsize>
|
||||||
@ -200,7 +200,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0" colspan="2">
|
<item row="1" column="0" colspan="2">
|
||||||
<spacer name="verticalSpacer">
|
<spacer name="verticalSpacer3">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Vertical</enum>
|
<enum>Qt::Vertical</enum>
|
||||||
</property>
|
</property>
|
||||||
@ -221,7 +221,7 @@
|
|||||||
<attribute name="pageId">
|
<attribute name="pageId">
|
||||||
<string notr="true">4</string>
|
<string notr="true">4</string>
|
||||||
</attribute>
|
</attribute>
|
||||||
<layout class="QFormLayout" name="formLayout">
|
<layout class="QFormLayout" name="formLayout4">
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<widget class="QRadioButton" name="radioButton_Complete_Yes">
|
<widget class="QRadioButton" name="radioButton_Complete_Yes">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
@ -237,7 +237,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="0" colspan="2">
|
<item row="0" column="0" colspan="2">
|
||||||
<widget class="QLabel" name="lbl_Independent">
|
<widget class="QLabel" name="lbl_Independent4">
|
||||||
<property name="font">
|
<property name="font">
|
||||||
<font>
|
<font>
|
||||||
<pointsize>10</pointsize>
|
<pointsize>10</pointsize>
|
||||||
@ -252,7 +252,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0" colspan="2">
|
<item row="1" column="0" colspan="2">
|
||||||
<spacer name="verticalSpacer">
|
<spacer name="verticalSpacer4">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Vertical</enum>
|
<enum>Qt::Vertical</enum>
|
||||||
</property>
|
</property>
|
||||||
@ -273,7 +273,7 @@
|
|||||||
<attribute name="pageId">
|
<attribute name="pageId">
|
||||||
<string notr="true">5</string>
|
<string notr="true">5</string>
|
||||||
</attribute>
|
</attribute>
|
||||||
<layout class="QFormLayout" name="formLayout">
|
<layout class="QFormLayout" name="formLayout5">
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<widget class="QRadioButton" name="radioButton_Graphical_Major">
|
<widget class="QRadioButton" name="radioButton_Graphical_Major">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
@ -296,7 +296,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="0" colspan="2">
|
<item row="0" column="0" colspan="2">
|
||||||
<widget class="QLabel" name="lbl_Independent">
|
<widget class="QLabel" name="lbl_Independent5">
|
||||||
<property name="font">
|
<property name="font">
|
||||||
<font>
|
<font>
|
||||||
<pointsize>10</pointsize>
|
<pointsize>10</pointsize>
|
||||||
@ -311,7 +311,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0" colspan="2">
|
<item row="1" column="0" colspan="2">
|
||||||
<spacer name="verticalSpacer">
|
<spacer name="verticalSpacer5">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Vertical</enum>
|
<enum>Qt::Vertical</enum>
|
||||||
</property>
|
</property>
|
||||||
@ -332,7 +332,7 @@
|
|||||||
<attribute name="pageId">
|
<attribute name="pageId">
|
||||||
<string notr="true">6</string>
|
<string notr="true">6</string>
|
||||||
</attribute>
|
</attribute>
|
||||||
<layout class="QFormLayout" name="formLayout">
|
<layout class="QFormLayout" name="formLayout6">
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<widget class="QRadioButton" name="radioButton_Audio_Major">
|
<widget class="QRadioButton" name="radioButton_Audio_Major">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
@ -355,7 +355,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="0" colspan="2">
|
<item row="0" column="0" colspan="2">
|
||||||
<widget class="QLabel" name="lbl_Independent">
|
<widget class="QLabel" name="lbl_Independent6">
|
||||||
<property name="font">
|
<property name="font">
|
||||||
<font>
|
<font>
|
||||||
<pointsize>10</pointsize>
|
<pointsize>10</pointsize>
|
||||||
@ -370,7 +370,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0" colspan="2">
|
<item row="1" column="0" colspan="2">
|
||||||
<spacer name="verticalSpacer">
|
<spacer name="verticalSpacer6">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Vertical</enum>
|
<enum>Qt::Vertical</enum>
|
||||||
</property>
|
</property>
|
||||||
|
Loading…
Reference in New Issue
Block a user