Moved color selector activation out of node field dragging, and into clicking on a node field
This commit is contained in:
parent
6c71c5a89d
commit
ae3c762c29
|
@ -261,7 +261,7 @@ OPERATION_RENDER_PROC(RenderColorPicker)
|
||||||
}
|
}
|
||||||
|
|
||||||
internal void
|
internal void
|
||||||
OpenColorPicker(app_state* State, v4* ValueAddr)
|
OpenColorPicker(app_state* State, node_connection* Connection)
|
||||||
{
|
{
|
||||||
operation_mode* ColorPickerMode = ActivateOperationMode(&State->Modes, "Color Picker");
|
operation_mode* ColorPickerMode = ActivateOperationMode(&State->Modes, "Color Picker");
|
||||||
ColorPickerMode->Render = RenderColorPicker;
|
ColorPickerMode->Render = RenderColorPicker;
|
||||||
|
@ -269,7 +269,7 @@ OpenColorPicker(app_state* State, v4* ValueAddr)
|
||||||
color_picker_operation_state* OpState = CreateOperationState(ColorPickerMode,
|
color_picker_operation_state* OpState = CreateOperationState(ColorPickerMode,
|
||||||
&State->Modes,
|
&State->Modes,
|
||||||
color_picker_operation_state);
|
color_picker_operation_state);
|
||||||
OpState->ValueAddr = ValueAddr;
|
OpState->ValueAddr = &Connection->V4Value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -290,19 +290,14 @@ input_command NodeFieldTextEditCommands [] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
internal void
|
internal void
|
||||||
BeginNodeFieldTextEdit(app_state* State, interface_node* Node, node_interaction Interaction)
|
BeginNodeFieldTextEdit(app_state* State, node_connection* Connection)
|
||||||
{
|
{
|
||||||
operation_mode* NodeFieldTextEditMode = ActivateOperationModeWithCommands(&State->Modes,
|
operation_mode* NodeFieldTextEditMode = ActivateOperationModeWithCommands(&State->Modes,
|
||||||
"Node Field Text Edit",
|
"Node Field Text Edit",
|
||||||
NodeFieldTextEditCommands);
|
NodeFieldTextEditCommands);
|
||||||
|
|
||||||
node_connection* Connection = Node->Connections + Interaction.InputValue;
|
|
||||||
struct_member_type InputType = Connection->Type;
|
|
||||||
if (InputType == MemberType_r32)
|
|
||||||
{
|
|
||||||
SetTextInputDestinationToFloat(&State->ActiveTextEntry, &Connection->R32Value);
|
SetTextInputDestinationToFloat(&State->ActiveTextEntry, &Connection->R32Value);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
////////////////////////////////////////
|
////////////////////////////////////////
|
||||||
//
|
//
|
||||||
|
@ -369,7 +364,7 @@ BeginInteractWithNodeField(app_state* State, node_interaction Interaction)
|
||||||
|
|
||||||
////////////////////////////////////////
|
////////////////////////////////////////
|
||||||
//
|
//
|
||||||
// Node Field Mouse Drag
|
// Node Mouse Drag
|
||||||
//
|
//
|
||||||
///////////////////////////////////////
|
///////////////////////////////////////
|
||||||
|
|
||||||
|
@ -461,7 +456,17 @@ FOLDHAUS_INPUT_COMMAND_PROC(NodeViewBeginMouseSelectInteraction)
|
||||||
State->NodeRenderSettings);
|
State->NodeRenderSettings);
|
||||||
if(IsDraggingNodeValue(NewInteraction))
|
if(IsDraggingNodeValue(NewInteraction))
|
||||||
{
|
{
|
||||||
BeginNodeFieldTextEdit(State, NodeOffset.Node, NewInteraction);
|
node_connection* Connection = NodeOffset.Node->Connections + NewInteraction.InputValue;
|
||||||
|
struct_member_type InputType = Connection->Type;
|
||||||
|
|
||||||
|
if (InputType == MemberType_r32)
|
||||||
|
{
|
||||||
|
BeginNodeFieldTextEdit(State, Connection);
|
||||||
|
}
|
||||||
|
else if (InputType == MemberType_v4)
|
||||||
|
{
|
||||||
|
OpenColorPicker(State, Connection);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -775,11 +775,6 @@ UpdateDraggingNodeValue (v2 MousePos, v2 LastFrameMousePos, node_interaction Int
|
||||||
|
|
||||||
case MemberType_v4:
|
case MemberType_v4:
|
||||||
{
|
{
|
||||||
// TODO(Peter): This is a problem. We seem to be calling this several times
|
|
||||||
if (MagSqr(MouseDelta) < 10)
|
|
||||||
{
|
|
||||||
OpenColorPicker(State, &Connection->V4Value);
|
|
||||||
}
|
|
||||||
}break;
|
}break;
|
||||||
|
|
||||||
case MemberType_NODE_COLOR_BUFFER: {} break; // NOTE(Peter): Unused for now
|
case MemberType_NODE_COLOR_BUFFER: {} break; // NOTE(Peter): Unused for now
|
||||||
|
|
Loading…
Reference in New Issue