got rid of message posting
parent
ab502e75b4
commit
939967bc94
|
@ -48,13 +48,9 @@ struct Sys_Bubble : public Bubble{
|
|||
#define FPS 60
|
||||
#define frame_useconds (1000000 / FPS)
|
||||
|
||||
// TODO(allen): Do we still need all of these? I've abandoned the
|
||||
// main thread / update loop thread thing (at least for a while).
|
||||
#define WM_4coder_LOAD_FONT (WM_USER + 1)
|
||||
#define WM_4coder_PAINT (WM_USER + 2)
|
||||
#define WM_4coder_SET_CURSOR (WM_USER + 3)
|
||||
#define WM_4coder_ANIMATE (WM_USER + 4)
|
||||
#define WM_4coder_EVENT_COMPLETE (WM_USER + 5)
|
||||
#define WM_4coder_SET_CURSOR (WM_USER + 1)
|
||||
#define WM_4coder_ANIMATE (WM_USER + 2)
|
||||
#define WM_4coder_EVENT_COMPLETE (WM_USER + 3)
|
||||
|
||||
struct Thread_Context{
|
||||
u32 job_id;
|
||||
|
@ -638,14 +634,6 @@ Sys_Release_Lock_Sig(system_release_lock){
|
|||
ReleaseSemaphore(win32vars.locks[id], 1, 0);
|
||||
}
|
||||
|
||||
internal void
|
||||
Win32RedrawFromUpdate(){
|
||||
SendMessage(
|
||||
win32vars.window_handle,
|
||||
WM_4coder_PAINT,
|
||||
0, 0);
|
||||
}
|
||||
|
||||
internal void
|
||||
Win32SetCursorFromUpdate(Application_Mouse_Cursor cursor){
|
||||
SendMessage(
|
||||
|
@ -1201,9 +1189,30 @@ Font_Load_Sig(system_draw_font_load){
|
|||
params->pt_size = pt_size;
|
||||
params->tab_width = tab_width;
|
||||
|
||||
SendMessage(win32vars.window_handle,
|
||||
WM_4coder_LOAD_FONT,
|
||||
0, (i32)(params - win32vars.fnt.params));
|
||||
if (win32vars.fnt.part.base == 0){
|
||||
win32vars.fnt.part = Win32ScratchPartition(Mbytes(8));
|
||||
}
|
||||
|
||||
i32 oversample = 2;
|
||||
|
||||
for (b32 success = 0; success == 0;){
|
||||
success = draw_font_load(win32vars.fnt.part.base,
|
||||
win32vars.fnt.part.max,
|
||||
params->font_out,
|
||||
params->filename,
|
||||
params->pt_size,
|
||||
params->tab_width,
|
||||
oversample);
|
||||
|
||||
if (!success){
|
||||
Win32ScratchPartitionDouble(&win32vars.fnt.part);
|
||||
}
|
||||
}
|
||||
|
||||
system_acquire_lock(FONT_LOCK);
|
||||
fnt__remove(params);
|
||||
fnt__insert(&win32vars.fnt.free_param, params);
|
||||
system_release_lock(FONT_LOCK);
|
||||
return(1);
|
||||
}
|
||||
|
||||
|
@ -1227,6 +1236,15 @@ Win32RedrawScreen(HDC hdc){
|
|||
SwapBuffers(hdc);
|
||||
}
|
||||
|
||||
internal void
|
||||
Win32RedrawFromUpdate(){
|
||||
PAINTSTRUCT ps;
|
||||
HWND hwnd = win32vars.window_handle;
|
||||
HDC hdc = BeginPaint(hwnd, &ps);
|
||||
Win32RedrawScreen(hdc);
|
||||
EndPaint(hwnd, &ps);
|
||||
}
|
||||
|
||||
// NOTE(allen): Old contents of 4ed_keyboard.cpp
|
||||
globalvar u8 keycode_lookup_table[255];
|
||||
|
||||
|
@ -1546,14 +1564,6 @@ Win32Callback(HWND hwnd, UINT uMsg,
|
|||
EndPaint(hwnd, &ps);
|
||||
}break;
|
||||
|
||||
case WM_4coder_PAINT:
|
||||
{
|
||||
PAINTSTRUCT ps;
|
||||
HDC hdc = BeginPaint(hwnd, &ps);
|
||||
Win32RedrawScreen(hdc);
|
||||
EndPaint(hwnd, &ps);
|
||||
}break;
|
||||
|
||||
case WM_4coder_SET_CURSOR:
|
||||
{
|
||||
switch (wParam){
|
||||
|
@ -1578,35 +1588,6 @@ Win32Callback(HWND hwnd, UINT uMsg,
|
|||
win32vars.input_chunk.trans.trying_to_kill = 1;
|
||||
}break;
|
||||
|
||||
case WM_4coder_LOAD_FONT:
|
||||
{
|
||||
if (win32vars.fnt.part.base == 0){
|
||||
win32vars.fnt.part = Win32ScratchPartition(Mbytes(8));
|
||||
}
|
||||
|
||||
Font_Load_Parameters *params = win32vars.fnt.params + lParam;
|
||||
i32 oversample = 2;
|
||||
|
||||
for (b32 success = 0; success == 0;){
|
||||
success = draw_font_load(win32vars.fnt.part.base,
|
||||
win32vars.fnt.part.max,
|
||||
params->font_out,
|
||||
params->filename,
|
||||
params->pt_size,
|
||||
params->tab_width,
|
||||
oversample);
|
||||
|
||||
if (!success){
|
||||
Win32ScratchPartitionDouble(&win32vars.fnt.part);
|
||||
}
|
||||
}
|
||||
|
||||
system_acquire_lock(FONT_LOCK);
|
||||
fnt__remove(params);
|
||||
fnt__insert(&win32vars.fnt.free_param, params);
|
||||
system_release_lock(FONT_LOCK);
|
||||
}break;
|
||||
|
||||
case WM_4coder_ANIMATE:
|
||||
case WM_4coder_EVENT_COMPLETE:
|
||||
win32vars.got_useful_event = 1;
|
||||
|
|
Loading…
Reference in New Issue