Skip to content

WIP: Fill and Selection tools

Agata Cacko requested to merge tiar/selection_tool_color_labeled_layers into master

Things to do:

  • Add new sample option in Tool Options docker
  • Make Fill Tool work with labeled layers
  • Add choice of the color of the label for the Sample Color Labeled Layers
  • Make sure Undo works (Test 2.) (or, check if it didn't work previously as well)
  • Add multiple labels choice to the constructor of the Command
  • Connect combobox to the dummies facade
  • Make sure that the combobox doesn't have the pie diagram but just rectangles (because it's big and it can) and get rid of the filter icon, of course it must still work on the other usage
  • Rewrite Combobox to work on dummies facade instead of nodes
  • KisImageSP and KisPaintDeviceSP must be created only if needed
  • remove all traces of m_unmerged etc.
  • Add documentation to all new code
  • add unit tests to all new code
  • possibly think about adding documentation to all code you've read and understood :)

Test Plan

Test file: filltooltest_newoption_001.kra

Test 1.

  1. Use Fill Tool with Sample Color Labeled Layers
  2. Note that the layer was filled according to the content of green labeled layers

Test 2.

  1. Use Fill Tool with Sample Color Labeled Layers
  2. Undo (it works, it clears the layer)
  3. Use Fill Tool with Sample Color Labeled Layers
  4. Change the settings of the Fill Tool (I used "Limit to current layer" option since it shouldn't change anything now...)
  5. Try to undo (it doesn't work and it should...)

Formalities Checklist

  • I confirmed this builds.
  • I confirmed Krita ran and the relevant functions work.
  • I tested the relevant unit tests and can confirm they are not broken. (If not possible, don't hesitate to ask for help!)
  • I made sure my commits build individually and have good descriptions as per KDE guidelines.
  • I made sure my code conforms to the standards set in the HACKING file.
  • I can confirm the code is licensed and attributed appropriately, and that unattributed code is mine, as per KDE Licensing Policy.
Edited by Agata Cacko

Merge request reports