mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-06-17 09:32:22 -07:00
jank reduction & completeness pass
This commit is contained in:
@@ -1695,13 +1695,6 @@ d_tick(Arena *arena, D_TargetArray *targets, D_BreakpointArray *breakpoints, D_P
|
||||
rd_entity_equip_ctrl_handle(entity, event->entity);
|
||||
rd_entity_equip_ctrl_id(entity, event->entity_id);
|
||||
rd_entity_equip_arch(entity, event->arch);
|
||||
|
||||
// rjf: report
|
||||
D_EventNode *n = push_array(arena, D_EventNode, 1);
|
||||
SLLQueuePush(result.first, result.last, n);
|
||||
result.count += 1;
|
||||
D_Event *evt = &n->v;
|
||||
evt->kind = D_EventKind_ProcessBegin;
|
||||
}break;
|
||||
|
||||
case CTRL_EventKind_NewThread:
|
||||
|
||||
@@ -61,7 +61,6 @@ struct D_PathMapArray
|
||||
typedef enum D_EventKind
|
||||
{
|
||||
D_EventKind_Null,
|
||||
D_EventKind_ProcessBegin,
|
||||
D_EventKind_Stop,
|
||||
D_EventKind_COUNT
|
||||
}
|
||||
|
||||
@@ -8118,7 +8118,7 @@ rd_window_frame(RD_Window *ws)
|
||||
// rjf: draw border
|
||||
if(b->flags & UI_BoxFlag_DrawBorder)
|
||||
{
|
||||
R_Rect2DInst *inst = dr_rect(pad_2f32(b->rect, 1), b->palette->colors[UI_ColorCode_Border], 0, 1.f, 1.f);
|
||||
R_Rect2DInst *inst = dr_rect(pad_2f32(b->rect, 1.f), b->palette->colors[UI_ColorCode_Border], 0, 1.f, 1.f);
|
||||
MemoryCopyArray(inst->corner_radii, b->corner_radii);
|
||||
|
||||
// rjf: hover effect
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
//~ rjf: 0.9.12 TODO notes
|
||||
//
|
||||
// [ ] remainder of @msgs pass:
|
||||
// [ ] entity listers - kill-specific-process, etc.
|
||||
// [ ] new universal ctx menu, hover, tooltips systems
|
||||
// [ ] fix memory view
|
||||
// [ ] meta eval system
|
||||
@@ -41,6 +42,19 @@
|
||||
// [x] modules view
|
||||
// [x] eval writing/committing
|
||||
// [x] breakpoint hit count resetting
|
||||
// [x] reset bp hit counts - not just on NewProcess, but on RUN! because
|
||||
// we are now evaluating them on the control thread...
|
||||
// [x] fix bug where text info is evicted, and switching back to a tab scrolls
|
||||
// to the top
|
||||
// [x] reset bp hit counts - not just on NewProcess, but on RUN! because
|
||||
// we are now evaluating them on the control thread...
|
||||
// [x] fix bug where text info is evicted, and switching back to a tab scrolls
|
||||
// to the top
|
||||
// [x] targets view
|
||||
// [x] ensure launch controls parameterize commands correctly)
|
||||
// [x] ensure ctrl+click
|
||||
// [x] scheduler view
|
||||
// [x] eval committing
|
||||
|
||||
////////////////////////////////
|
||||
//~ rjf: post-0.9.12 TODO notes
|
||||
|
||||
@@ -1187,7 +1187,7 @@ rd_watch_view_build(RD_WatchViewState *ewv, RD_WatchViewFlags flags, String8 roo
|
||||
FZY_Scope *fzy_scope = fzy_scope_open();
|
||||
Temp scratch = scratch_begin(0, 0);
|
||||
UI_ScrollPt2 scroll_pos = rd_view_scroll_pos();
|
||||
F32 entity_hover_t_rate = 1 - pow_f32(2, (-20.f * rd_state->frame_dt));
|
||||
F32 entity_hover_t_rate = rd_setting_val_from_code(RD_SettingCode_HoverAnimations).s32 ? (1 - pow_f32(2, (-20.f * rd_state->frame_dt))) : 1.f;
|
||||
|
||||
//////////////////////////////
|
||||
//- rjf: unpack arguments
|
||||
@@ -2604,10 +2604,14 @@ rd_watch_view_build(RD_WatchViewState *ewv, RD_WatchViewFlags flags, String8 roo
|
||||
B32 is_frozen = ctrl_entity_tree_is_frozen(ctrl_entity);
|
||||
RD_IconKind icon_kind = rd_cmd_kind_info_table[ctrl->kind].icon_kind;
|
||||
UI_Palette *palette = ui_top_palette();
|
||||
if(ctrl->kind == RD_CmdKind_SelectEntity || ctrl->kind == RD_CmdKind_EnableEntity)
|
||||
if(ctrl->kind == RD_CmdKind_SelectEntity)
|
||||
{
|
||||
icon_kind = entity->disabled ? RD_IconKind_RadioHollow : RD_IconKind_RadioFilled;
|
||||
}
|
||||
if(ctrl->kind == RD_CmdKind_EnableEntity)
|
||||
{
|
||||
icon_kind = entity->disabled ? RD_IconKind_CheckHollow : RD_IconKind_CheckFilled;
|
||||
}
|
||||
if(ctrl->kind == RD_CmdKind_SelectThread)
|
||||
{
|
||||
icon_kind = (ctrl_handle_match(ctrl_entity->handle, rd_base_regs()->thread) ? RD_IconKind_RadioFilled : RD_IconKind_RadioHollow);
|
||||
|
||||
@@ -1002,8 +1002,8 @@ rd_code_slice(RD_CodeSliceParams *params, TxtPt *cursor, TxtPt *mark, S64 *prefe
|
||||
UI_Palette *margin_contents_palette = ui_build_palette(rd_palette_from_code(RD_PaletteCode_Floating));
|
||||
margin_contents_palette->background = v4f32(0, 0, 0, 0);
|
||||
F32 line_num_padding_px = ui_top_font_size()*1.f;
|
||||
F32 entity_alive_t_rate = 1 - pow_f32(2, (-30.f * rd_state->frame_dt));
|
||||
F32 entity_hover_t_rate = 1 - pow_f32(2, (-20.f * rd_state->frame_dt));
|
||||
F32 entity_alive_t_rate = (1 - pow_f32(2, (-30.f * rd_state->frame_dt)));
|
||||
F32 entity_hover_t_rate = rd_setting_val_from_code(RD_SettingCode_HoverAnimations).s32 ? (1 - pow_f32(2, (-20.f * rd_state->frame_dt))) : 1.f;
|
||||
|
||||
//////////////////////////////
|
||||
//- rjf: build top-level container
|
||||
@@ -1127,6 +1127,8 @@ rd_code_slice(RD_CodeSliceParams *params, TxtPt *cursor, TxtPt *mark, S64 *prefe
|
||||
ui_set_next_text_alignment(UI_TextAlign_Center);
|
||||
UI_Key thread_box_key = ui_key_from_stringf(top_container_box->key, "###ip_%I64x_%p", line_num, thread);
|
||||
UI_Box *thread_box = ui_build_box_from_key(UI_BoxFlag_DisableTextTrunc|
|
||||
UI_BoxFlag_DrawHotEffects|
|
||||
UI_BoxFlag_DrawBorder|
|
||||
UI_BoxFlag_Clickable*!!(params->flags & RD_CodeSliceFlag_Clickable)|
|
||||
UI_BoxFlag_DrawText,
|
||||
thread_box_key);
|
||||
@@ -1275,6 +1277,8 @@ rd_code_slice(RD_CodeSliceParams *params, TxtPt *cursor, TxtPt *mark, S64 *prefe
|
||||
ui_set_next_text_alignment(UI_TextAlign_Center);
|
||||
UI_Key thread_box_key = ui_key_from_stringf(top_container_box->key, "###ip_%I64x_catchall_%p", line_num, thread);
|
||||
UI_Box *thread_box = ui_build_box_from_key(UI_BoxFlag_DisableTextTrunc|
|
||||
UI_BoxFlag_DrawHotEffects|
|
||||
UI_BoxFlag_DrawBorder|
|
||||
UI_BoxFlag_Clickable*!!(params->flags & RD_CodeSliceFlag_Clickable)|
|
||||
UI_BoxFlag_DrawText,
|
||||
thread_box_key);
|
||||
@@ -1387,6 +1391,8 @@ rd_code_slice(RD_CodeSliceParams *params, TxtPt *cursor, TxtPt *mark, S64 *prefe
|
||||
ui_set_next_palette(ui_build_palette(ui_top_palette(), .text = bp_color));
|
||||
ui_set_next_text_alignment(UI_TextAlign_Center);
|
||||
UI_Box *bp_box = ui_build_box_from_stringf(UI_BoxFlag_DrawText|
|
||||
UI_BoxFlag_DrawHotEffects|
|
||||
UI_BoxFlag_DrawBorder|
|
||||
UI_BoxFlag_Clickable*!!(params->flags & RD_CodeSliceFlag_Clickable)|
|
||||
UI_BoxFlag_DisableTextTrunc,
|
||||
"%S##bp_%p",
|
||||
|
||||
@@ -3014,6 +3014,10 @@ ui_anim_(UI_Key key, UI_AnimParams *params)
|
||||
{
|
||||
node->params.epsilon = 0.01f;
|
||||
}
|
||||
if(node->params.rate == 1)
|
||||
{
|
||||
node->current = node->params.target;
|
||||
}
|
||||
return node->current;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user