mirror of
https://github.com/jmarshall23/DoomRTX.git
synced 2026-08-19 04:04:54 +02:00
Switched to dark theme.
This commit is contained in:
@@ -104,6 +104,83 @@ static void InitRadiantCommonControls() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static COLORREF RadiantDarkPaneColor() {
|
||||||
|
return RGB(24, 24, 24);
|
||||||
|
}
|
||||||
|
|
||||||
|
static COLORREF RadiantDarkSplitterColor() {
|
||||||
|
return RGB(38, 38, 38);
|
||||||
|
}
|
||||||
|
|
||||||
|
static COLORREF RadiantDarkSplitterHighlightColor() {
|
||||||
|
return RGB(58, 58, 58);
|
||||||
|
}
|
||||||
|
|
||||||
|
static COLORREF RadiantDarkSplitterShadowColor() {
|
||||||
|
return RGB(12, 12, 12);
|
||||||
|
}
|
||||||
|
|
||||||
|
static HBRUSH RadiantDarkPaneBrush() {
|
||||||
|
static HBRUSH hBrush = ::CreateSolidBrush(RadiantDarkPaneColor());
|
||||||
|
return hBrush;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void SetRadiantSavedInfoColor(int colorIndex, float r, float g, float b) {
|
||||||
|
g_qeglobals.d_savedinfo.colors[colorIndex][0] = r;
|
||||||
|
g_qeglobals.d_savedinfo.colors[colorIndex][1] = g;
|
||||||
|
g_qeglobals.d_savedinfo.colors[colorIndex][2] = b;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void ApplyRadiantDarkXYAndZTheme() {
|
||||||
|
// The XY and Z views are both grid-based editor windows. Keep those views
|
||||||
|
// dark regardless of the rest of the MFC chrome/theme selection.
|
||||||
|
SetRadiantSavedInfoColor(COLOR_GRIDBACK, 0.045f, 0.045f, 0.050f);
|
||||||
|
SetRadiantSavedInfoColor(COLOR_GRIDMINOR, 0.120f, 0.120f, 0.130f);
|
||||||
|
SetRadiantSavedInfoColor(COLOR_GRIDMAJOR, 0.220f, 0.240f, 0.265f);
|
||||||
|
SetRadiantSavedInfoColor(COLOR_GRIDBLOCK, 0.330f, 0.395f, 0.500f);
|
||||||
|
SetRadiantSavedInfoColor(COLOR_GRIDTEXT, 0.780f, 0.800f, 0.835f);
|
||||||
|
SetRadiantSavedInfoColor(COLOR_BRUSHES, 0.780f, 0.790f, 0.815f);
|
||||||
|
SetRadiantSavedInfoColor(COLOR_SELBRUSHES, 1.000f, 0.580f, 0.160f);
|
||||||
|
SetRadiantSavedInfoColor(COLOR_CLIPPER, 0.270f, 0.540f, 1.000f);
|
||||||
|
SetRadiantSavedInfoColor(COLOR_VIEWNAME, 0.600f, 0.720f, 1.000f);
|
||||||
|
SetRadiantSavedInfoColor(COLOR_PRECISION_CROSSHAIR, 1.000f, 0.230f, 0.850f);
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef IDI_ICON1
|
||||||
|
static HICON LoadRadiantFrameIcon(int cx, int cy) {
|
||||||
|
return reinterpret_cast<HICON>(::LoadImage(
|
||||||
|
AfxGetResourceHandle(),
|
||||||
|
MAKEINTRESOURCE(IDI_ICON1),
|
||||||
|
IMAGE_ICON,
|
||||||
|
cx,
|
||||||
|
cy,
|
||||||
|
LR_DEFAULTCOLOR | LR_SHARED
|
||||||
|
));
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static void ApplyRadiantFrameIcon(CWnd* pWnd) {
|
||||||
|
if (!pWnd || !pWnd->GetSafeHwnd()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef IDI_ICON1
|
||||||
|
HICON hBigIcon = LoadRadiantFrameIcon(::GetSystemMetrics(SM_CXICON), ::GetSystemMetrics(SM_CYICON));
|
||||||
|
HICON hSmallIcon = LoadRadiantFrameIcon(::GetSystemMetrics(SM_CXSMICON), ::GetSystemMetrics(SM_CYSMICON));
|
||||||
|
|
||||||
|
if (hBigIcon) {
|
||||||
|
pWnd->SetIcon(hBigIcon, TRUE);
|
||||||
|
}
|
||||||
|
if (hSmallIcon) {
|
||||||
|
pWnd->SetIcon(hSmallIcon, FALSE);
|
||||||
|
}
|
||||||
|
else if (hBigIcon) {
|
||||||
|
pWnd->SetIcon(hBigIcon, FALSE);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
// globals
|
// globals
|
||||||
CString g_strAppPath; // holds the full path of the executable
|
CString g_strAppPath; // holds the full path of the executable
|
||||||
CMainFrame* g_pParentWnd = NULL; // used to precast to CMainFrame
|
CMainFrame* g_pParentWnd = NULL; // used to precast to CMainFrame
|
||||||
@@ -781,7 +858,7 @@ BOOL CMainFrameLeftPaneWnd::Create(CWnd* pParent, UINT nID) {
|
|||||||
CString className = AfxRegisterWndClass(
|
CString className = AfxRegisterWndClass(
|
||||||
CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS,
|
CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS,
|
||||||
::LoadCursor(NULL, IDC_ARROW),
|
::LoadCursor(NULL, IDC_ARROW),
|
||||||
(HBRUSH)(COLOR_BTNFACE + 1),
|
RadiantDarkPaneBrush(),
|
||||||
NULL
|
NULL
|
||||||
);
|
);
|
||||||
return CWnd::CreateEx(
|
return CWnd::CreateEx(
|
||||||
@@ -876,12 +953,12 @@ void CMainFrameLeftPaneWnd::DrawSplitter(CDC* pDC) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
CRect rc = m_rcSplitter;
|
CRect rc = m_rcSplitter;
|
||||||
CBrush brush(::GetSysColor(COLOR_BTNFACE));
|
CBrush brush(RadiantDarkSplitterColor());
|
||||||
pDC->FillRect(rc, &brush);
|
pDC->FillRect(rc, &brush);
|
||||||
pDC->Draw3dRect(rc, ::GetSysColor(COLOR_3DHILIGHT), ::GetSysColor(COLOR_3DSHADOW));
|
pDC->Draw3dRect(rc, RadiantDarkSplitterHighlightColor(), RadiantDarkSplitterShadowColor());
|
||||||
|
|
||||||
int y = rc.top + rc.Height() / 2;
|
int y = rc.top + rc.Height() / 2;
|
||||||
CPen pen(PS_SOLID, 1, ::GetSysColor(COLOR_3DSHADOW));
|
CPen pen(PS_SOLID, 1, RadiantDarkSplitterShadowColor());
|
||||||
CPen* oldPen = pDC->SelectObject(&pen);
|
CPen* oldPen = pDC->SelectObject(&pen);
|
||||||
pDC->MoveTo(rc.left + 6, y);
|
pDC->MoveTo(rc.left + 6, y);
|
||||||
pDC->LineTo(rc.right - 6, y);
|
pDC->LineTo(rc.right - 6, y);
|
||||||
@@ -1013,7 +1090,7 @@ BOOL CMainFrameLeftPaneWnd::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
|
|||||||
BOOL CMainFrameLeftPaneWnd::OnEraseBkgnd(CDC* pDC) {
|
BOOL CMainFrameLeftPaneWnd::OnEraseBkgnd(CDC* pDC) {
|
||||||
CRect client;
|
CRect client;
|
||||||
GetClientRect(client);
|
GetClientRect(client);
|
||||||
CBrush brush(::GetSysColor(COLOR_BTNFACE));
|
CBrush brush(RadiantDarkPaneColor());
|
||||||
pDC->FillRect(client, &brush);
|
pDC->FillRect(client, &brush);
|
||||||
DrawSplitter(pDC);
|
DrawSplitter(pDC);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@@ -1053,7 +1130,7 @@ BOOL CMainFrameLayoutWnd::Create(CWnd* pParent, UINT nID) {
|
|||||||
CString className = AfxRegisterWndClass(
|
CString className = AfxRegisterWndClass(
|
||||||
CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS,
|
CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS,
|
||||||
::LoadCursor(NULL, IDC_ARROW),
|
::LoadCursor(NULL, IDC_ARROW),
|
||||||
(HBRUSH)(COLOR_BTNFACE + 1),
|
RadiantDarkPaneBrush(),
|
||||||
NULL
|
NULL
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -1151,12 +1228,12 @@ void CMainFrameLayoutWnd::DrawSplitter(CDC* pDC) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
CRect rc = m_rcSplitter;
|
CRect rc = m_rcSplitter;
|
||||||
CBrush brush(::GetSysColor(COLOR_BTNFACE));
|
CBrush brush(RadiantDarkSplitterColor());
|
||||||
pDC->FillRect(rc, &brush);
|
pDC->FillRect(rc, &brush);
|
||||||
pDC->Draw3dRect(rc, ::GetSysColor(COLOR_3DHILIGHT), ::GetSysColor(COLOR_3DSHADOW));
|
pDC->Draw3dRect(rc, RadiantDarkSplitterHighlightColor(), RadiantDarkSplitterShadowColor());
|
||||||
|
|
||||||
int x = rc.left + rc.Width() / 2;
|
int x = rc.left + rc.Width() / 2;
|
||||||
CPen pen(PS_SOLID, 1, ::GetSysColor(COLOR_3DSHADOW));
|
CPen pen(PS_SOLID, 1, RadiantDarkSplitterShadowColor());
|
||||||
CPen* oldPen = pDC->SelectObject(&pen);
|
CPen* oldPen = pDC->SelectObject(&pen);
|
||||||
pDC->MoveTo(x, rc.top + 6);
|
pDC->MoveTo(x, rc.top + 6);
|
||||||
pDC->LineTo(x, rc.bottom - 6);
|
pDC->LineTo(x, rc.bottom - 6);
|
||||||
@@ -1290,7 +1367,7 @@ BOOL CMainFrameLayoutWnd::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message) {
|
|||||||
BOOL CMainFrameLayoutWnd::OnEraseBkgnd(CDC* pDC) {
|
BOOL CMainFrameLayoutWnd::OnEraseBkgnd(CDC* pDC) {
|
||||||
CRect client;
|
CRect client;
|
||||||
GetClientRect(client);
|
GetClientRect(client);
|
||||||
CBrush brush(::GetSysColor(COLOR_BTNFACE));
|
CBrush brush(RadiantDarkPaneColor());
|
||||||
pDC->FillRect(client, &brush);
|
pDC->FillRect(client, &brush);
|
||||||
DrawSplitter(pDC);
|
DrawSplitter(pDC);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@@ -1871,6 +1948,8 @@ void MFCCreate(HINSTANCE hInstance)
|
|||||||
LoadRegistryInfo("radiant_SavedInfo", &g_qeglobals.d_savedinfo, &l);
|
LoadRegistryInfo("radiant_SavedInfo", &g_qeglobals.d_savedinfo, &l);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ApplyRadiantDarkXYAndZTheme();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -1895,6 +1974,9 @@ int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) {
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ApplyRadiantFrameIcon(this);
|
||||||
|
ApplyRadiantDarkXYAndZTheme();
|
||||||
|
|
||||||
UINT nID = (g_PrefsDlg.m_bWideToolbar) ? IDR_TOOLBAR_ADVANCED : IDR_TOOLBAR1;
|
UINT nID = (g_PrefsDlg.m_bWideToolbar) ? IDR_TOOLBAR_ADVANCED : IDR_TOOLBAR1;
|
||||||
|
|
||||||
if (!CreateEmbeddedMainToolBar(nID)) {
|
if (!CreateEmbeddedMainToolBar(nID)) {
|
||||||
@@ -2057,8 +2139,19 @@ void CMainFrame::LoadCommandMap() {
|
|||||||
=======================================================================================================================
|
=======================================================================================================================
|
||||||
*/
|
*/
|
||||||
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) {
|
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) {
|
||||||
// TODO: Modify the Window class or styles here by modifying the CREATESTRUCT cs
|
BOOL result = CFrameWnd::PreCreateWindow(cs);
|
||||||
return CFrameWnd::PreCreateWindow(cs);
|
#ifdef IDI_ICON1
|
||||||
|
HICON hClassIcon = LoadRadiantFrameIcon(::GetSystemMetrics(SM_CXICON), ::GetSystemMetrics(SM_CYICON));
|
||||||
|
if (hClassIcon) {
|
||||||
|
cs.lpszClass = AfxRegisterWndClass(
|
||||||
|
CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS,
|
||||||
|
::LoadCursor(NULL, IDC_ARROW),
|
||||||
|
(HBRUSH)(COLOR_WINDOW + 1),
|
||||||
|
hClassIcon
|
||||||
|
);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
// CMainFrame diagnostics
|
// CMainFrame diagnostics
|
||||||
@@ -2606,6 +2699,7 @@ BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) {
|
|||||||
RecalcMainLayout();
|
RecalcMainLayout();
|
||||||
|
|
||||||
CreateQEChildren();
|
CreateQEChildren();
|
||||||
|
ApplyRadiantDarkXYAndZTheme();
|
||||||
AttachDoomWindowToGameTab();
|
AttachDoomWindowToGameTab();
|
||||||
ApplyActiveTabInputMode();
|
ApplyActiveTabInputMode();
|
||||||
|
|
||||||
@@ -5061,6 +5155,7 @@ void CMainFrame::OnColorSetoriginal() {
|
|||||||
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][1] = 0.0;
|
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][1] = 0.0;
|
||||||
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][2] = 1.0;
|
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][2] = 1.0;
|
||||||
|
|
||||||
|
ApplyRadiantDarkXYAndZTheme();
|
||||||
Sys_UpdateWindows(W_ALL);
|
Sys_UpdateWindows(W_ALL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5105,6 +5200,7 @@ void CMainFrame::OnColorSetqer() {
|
|||||||
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][1] = 0.0;
|
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][1] = 0.0;
|
||||||
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][2] = 1.0;
|
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][2] = 1.0;
|
||||||
|
|
||||||
|
ApplyRadiantDarkXYAndZTheme();
|
||||||
Sys_UpdateWindows(W_ALL);
|
Sys_UpdateWindows(W_ALL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5137,6 +5233,7 @@ void CMainFrame::OnColorSetSuperMal() {
|
|||||||
g_qeglobals.d_savedinfo.colors[COLOR_VIEWNAME][2] = 0.74f;
|
g_qeglobals.d_savedinfo.colors[COLOR_VIEWNAME][2] = 0.74f;
|
||||||
|
|
||||||
|
|
||||||
|
ApplyRadiantDarkXYAndZTheme();
|
||||||
Sys_UpdateWindows(W_ALL);
|
Sys_UpdateWindows(W_ALL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5184,6 +5281,7 @@ void CMainFrame::OnColorSetblack() {
|
|||||||
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][1] = 0.0;
|
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][1] = 0.0;
|
||||||
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][2] = 1.0;
|
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][2] = 1.0;
|
||||||
|
|
||||||
|
ApplyRadiantDarkXYAndZTheme();
|
||||||
Sys_UpdateWindows(W_ALL);
|
Sys_UpdateWindows(W_ALL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5223,6 +5321,7 @@ void CMainFrame::OnColorSetMax() {
|
|||||||
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][1] = 0.0f;
|
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][1] = 0.0f;
|
||||||
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][2] = 1.0f;
|
g_qeglobals.d_savedinfo.colors[COLOR_PRECISION_CROSSHAIR][2] = 1.0f;
|
||||||
|
|
||||||
|
ApplyRadiantDarkXYAndZTheme();
|
||||||
Sys_UpdateWindows(W_ALL);
|
Sys_UpdateWindows(W_ALL);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user