diff options
author | Fox Caminiti <fox@foxcam.net> | 2022-11-28 21:46:43 -0500 |
---|---|---|
committer | Fox Caminiti <fox@foxcam.net> | 2022-11-28 21:46:43 -0500 |
commit | 7a5e57b5c806437b0fbd2ab0c08d616d5dec0090 (patch) | |
tree | 511ca8e173b8bfc17eead7dfa8576bb5dffa7ecb /createcalls.cpp | |
parent | 6eb627210eb2b77bcde7ca75d9bcb5b50d240f64 (diff) |
fancy keybind UI added, major brush regression
Diffstat (limited to 'createcalls.cpp')
-rw-r--r-- | createcalls.cpp | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/createcalls.cpp b/createcalls.cpp index d1f6448..a984454 100644 --- a/createcalls.cpp +++ b/createcalls.cpp @@ -659,13 +659,20 @@ Layer_TraverseForPoint(project_data *File, project_state *State, memory *Memory, v2 PointUV = {0, 0}; int OuterWidth = Comp->Width, OuterHeight = Comp->Height; int InnerWidth = 0, InnerHeight = 0; - for (int i = 1; i <= Recursions; i++) { - block_layer *InnerLayer = (block_layer *)Memory_Block_AddressAtIndex(Memory, F_Layers, RecursionIdx[i]); - layer_transforms T = Layer_GetTransforms(InnerLayer); - Layer_GetDimensions(Memory, InnerLayer, &InnerWidth, &InnerHeight); + if (Recursions == 0) { + block_layer *Layer = (block_layer *)Memory_Block_AddressAtIndex(Memory, F_Layers, State->Brush.LayerToPaint_Index); + layer_transforms T = Layer_GetTransforms(Layer); + Layer_GetDimensions(Memory, Layer, &InnerWidth, &InnerHeight); PointUV = T_CompUVToLayerUV(T, OuterWidth, OuterHeight, InnerWidth, InnerHeight, State->TempZoomRatio); - OuterWidth = InnerWidth; - OuterHeight = InnerHeight; + } else { + for (int i = 1; i <= Recursions; i++) { + block_layer *InnerLayer = (block_layer *)Memory_Block_AddressAtIndex(Memory, F_Layers, RecursionIdx[i]); + layer_transforms T = Layer_GetTransforms(InnerLayer); + Layer_GetDimensions(Memory, InnerLayer, &InnerWidth, &InnerHeight); + PointUV = T_CompUVToLayerUV(T, OuterWidth, OuterHeight, InnerWidth, InnerHeight, State->TempZoomRatio); + OuterWidth = InnerWidth; + OuterHeight = InnerHeight; + } } return PointUV * V2(InnerWidth, InnerHeight); } |