I applied a similar idea in a drawing application I wrote recently. You can paint and fill with 1-bit patterns, but since the underlying representation preserves a "color" index for each pixel, you can repeatedly flood fill, post-hoc edit patterns, and even animate the patterns: https://beyondloom.com/tools/ditherpaint.html