Review Request: Replace all old-style iterators with NG iterators

Boudewijn Rempt boud at valdyas.org
Sat Apr 28 10:49:04 BST 2012


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/104771/
-----------------------------------------------------------

Review request for Calligra.


Description
-------

We implemented a next generation of iterators in 2010 but never managed to part of Krita to the newer, faster iterators. This patch finishes the porting. Branch testers have confirmed that Krita feels quite a bit smoother and responsive now.


Diffs
-----

  krita/benchmarks/CMakeLists.txt c30532c 
  krita/benchmarks/kis_bcontrast_benchmark.cpp c2768c9 
  krita/benchmarks/kis_blur_benchmark.cpp e082cdc 
  krita/benchmarks/kis_floodfill_benchmark.cpp a8100d0 
  krita/benchmarks/kis_gradient_benchmark.cpp 9dbcb52 
  krita/benchmarks/kis_hline_iterator_benchmark.cpp 76cfbd0 
  krita/benchmarks/kis_painter_benchmark.cpp 20229b5 
  krita/benchmarks/kis_projection_benchmark.cpp 68dba89 
  krita/benchmarks/kis_random_iterator_benchmark.cpp 08ce0d4 
  krita/benchmarks/kis_rect_iterator_benchmark.h 89341a5 
  krita/benchmarks/kis_rect_iterator_benchmark.cpp 134bc61 
  krita/benchmarks/kis_stroke_benchmark.cpp 6809fd5 
  krita/benchmarks/kis_vline_iterator_benchmark.cpp 614896d 
  krita/image/CMakeLists.txt c501a70 
  krita/image/brushengine/kis_paintop.cc a550249 
  krita/image/config-tiles.h.cmake cfb1056 
  krita/image/filter/kis_color_transformation_filter.cc 70d2b8f 
  krita/image/kis_convolution_painter.cc 318d188 
  krita/image/kis_convolution_worker.h f8177d5 
  krita/image/kis_convolution_worker_fft.h 5b4b5ae 
  krita/image/kis_convolution_worker_spatial.h dd613f8 
  krita/image/kis_fill_painter.cc f241585 
  krita/image/kis_gradient_painter.cc b110998 
  krita/image/kis_histogram.cc 02656b6 
  krita/image/kis_image.cc d229b31 
  krita/image/kis_math_toolbox.cpp 1644a0d 
  krita/image/kis_node_graph_listener.cpp 20fe5c8 
  krita/image/kis_paint_device.h 1a9b7f8 
  krita/image/kis_paint_device.cc 6c57e7d 
  krita/image/kis_painter.h 8ea7949 
  krita/image/kis_painter.cc acbd275 
  krita/image/kis_perspectivetransform_worker.cpp 8dd1b47 
  krita/image/kis_pixel_selection.cpp fd2d18a 
  krita/image/kis_queues_progress_updater.cpp 24f2164 
  krita/image/kis_random_sub_accessor.h 2a889db 
  krita/image/kis_random_sub_accessor.cpp a086840 
  krita/image/kis_repeat_iterators_pixel.h 30adc86 
  krita/image/kis_selection.cc b835145 
  krita/image/kis_strokes_queue.cpp 23a25a4 
  krita/image/kis_transform_worker.cc 6e70529 
  krita/image/kis_types.h a7d8a4b 
  krita/image/kis_warptransform_worker.cc 11ed991 
  krita/image/tests/CMakeLists.txt 7365a0d 
  krita/image/tests/kis_iterator_benchmark.cpp cfa1085 
  krita/image/tests/kis_iterator_test.cpp 2869397 
  krita/image/tests/kis_iterators_ng_test.cpp e99e23d 
  krita/image/tests/kis_iterators_pixel_test.h df1c8fe 
  krita/image/tests/kis_iterators_pixel_test.cpp f2a5c6b 
  krita/image/tests/kis_paint_layer_test.cpp 948c2db 
  krita/image/tests/kis_painter_test.cpp aae58fd 
  krita/image/tests/kis_pixel_selection_test.h a89aa51 
  krita/image/tests/kis_pixel_selection_test.cpp 542be4e 
  krita/image/tests/kis_projection_test.cpp cd05a40 
  krita/image/tests/kis_threaded_applicator_test.cpp 854c35c 
  krita/image/tests/kis_transaction_test.cpp 2c9eebe 
  krita/image/tiles3/kis_hline_iterator.h 578d8c9b 
  krita/image/tiles3/kis_hline_iterator.cpp fcc5bda 
  krita/image/tiles3/kis_rect_iterator.cpp a2299e1 
  krita/image/tiles3/kis_vline_iterator.h 23ed461 
  krita/image/tiles3/kis_vline_iterator.cpp 0855de2 
  krita/plugins/extensions/colorrange/colorrange.cc 41e11c3 
  krita/plugins/extensions/colorrange/dlg_colorrange.cc 3ab6832 
  krita/plugins/extensions/dockers/defaultdockers/kis_birdeye_box.cc 6b1ed65 
  krita/plugins/extensions/dropshadow/kis_dropshadow.cc 0882397 
  krita/plugins/extensions/separate_channels/kis_channel_separator.cc 9acd5f3 
  krita/plugins/extensions/shiva/PaintDeviceImage.cpp 58c2f95 
  krita/plugins/filters/blur/kis_blur_filter.cpp 9e3833b 
  krita/plugins/filters/blur/kis_gaussian_blur_filter.cpp b00e380 
  krita/plugins/filters/blur/kis_lens_blur_filter.cpp 5cdcc2c 
  krita/plugins/filters/blur/kis_motion_blur_filter.cpp 3540829 
  krita/plugins/filters/colors/kis_color_to_alpha.cpp 41673e9 
  krita/plugins/filters/colors/kis_minmax_filters.cpp e9d9ba5 
  krita/plugins/filters/colorsfilters/colorsfilters.cpp 011e839 
  krita/plugins/filters/colorsfilters/kis_brightness_contrast_filter.cpp dc4765c 
  krita/plugins/filters/colorsfilters/kis_perchannel_filter.cpp f88bcae 
  krita/plugins/filters/embossfilter/kis_emboss_filter.cpp f486d38 
  krita/plugins/filters/example/example.cpp e49b4c4 
  krita/plugins/filters/fastcolortransfer/fastcolortransfer.cpp 283da31 
  krita/plugins/filters/fastcolortransfer/kis_wdg_fastcolortransfer.cpp 332b29d 
  krita/plugins/filters/imageenhancement/imageenhancement.cpp e885f01 
  krita/plugins/filters/imageenhancement/kis_simple_noise_reducer.cpp e614ad2 
  krita/plugins/filters/imageenhancement/kis_wavelet_noise_reduction.cpp 916fee9 
  krita/plugins/filters/levelfilter/kis_level_filter.cpp 9a41be0 
  krita/plugins/filters/noisefilter/noisefilter.cpp 5f43791 
  krita/plugins/filters/oilpaintfilter/kis_oilpaint_filter.h 21f3af1 
  krita/plugins/filters/oilpaintfilter/kis_oilpaint_filter.cpp 0b67eab 
  krita/plugins/filters/pixelizefilter/kis_pixelize_filter.cpp f6522a2 
  krita/plugins/filters/raindropsfilter/kis_raindrops_filter.cpp 1a9c802 
  krita/plugins/filters/randompickfilter/randompickfilter.cpp 0af9fdc 
  krita/plugins/filters/roundcorners/kis_round_corners_filter.cpp 56e3f41 
  krita/plugins/filters/smalltilesfilter/kis_small_tiles_filter.cpp c85f982 
  krita/plugins/filters/sobelfilter/kis_sobel_filter.cpp 25a9c5f 
  krita/plugins/filters/unsharp/kis_unsharp_filter.cpp 2fb1f84 
  krita/plugins/filters/wavefilter/wavefilter.cpp c9065f5 
  krita/plugins/formats/exr/exr_converter.cc 88e983b 
  krita/plugins/formats/jp2/jp2_converter.cc bfd31b3 
  krita/plugins/formats/jpeg/kis_jpeg_converter.cc 9057924 
  krita/plugins/formats/odg/kis_odg_import.cc 07f748d 
  krita/plugins/formats/png/kis_png_export.cc 28cc8ce 
  krita/plugins/formats/ppm/kis_ppm_export.cpp 34dbd84 
  krita/plugins/formats/ppm/kis_ppm_import.cpp e4f4987 
  krita/plugins/formats/psd/psd_image_data.cpp f533aba 
  krita/plugins/formats/psd/psd_layer_record.cpp 23ff8aa 
  krita/plugins/formats/psd/psd_loader.cpp b7cd520 
  krita/plugins/formats/raw/kis_raw_import.cpp 320a5a8 
  krita/plugins/formats/tiff/kis_buffer_stream.h 4102510 
  krita/plugins/formats/tiff/kis_buffer_stream.cc e944c80 
  krita/plugins/formats/tiff/kis_tiff_converter.cc ff3d92e 
  krita/plugins/formats/tiff/kis_tiff_reader.h 0f7777b 
  krita/plugins/formats/tiff/kis_tiff_reader.cc 3bedde3 
  krita/plugins/formats/tiff/kis_tiff_writer_visitor.h 82e4bae 
  krita/plugins/formats/tiff/kis_tiff_writer_visitor.cpp 413584f 
  krita/plugins/formats/tiff/kis_tiff_ycbcr_reader.cc b4a98c0 
  krita/plugins/formats/xcf/kis_xcf_import.cpp 16f0ebb 
  krita/plugins/generators/solid/colorgenerator.cpp 6c97e35 
  krita/plugins/paintops/chalk/chalk_brush.cpp 6011de0 
  krita/plugins/paintops/colorsmudge/kis_rate_option_widget.cpp 84c1022 
  krita/plugins/paintops/curvebrush/curve_brush.h 53c6306 
  krita/plugins/paintops/curvebrush/curve_brush.cpp 05be321 
  krita/plugins/paintops/defaultpaintops/duplicate/kis_duplicateop.cpp d4ddda4 
  krita/plugins/paintops/deform/deform_brush.h 11dc755 
  krita/plugins/paintops/deform/deform_brush.cpp 02f7ebf 
  krita/plugins/paintops/deform/kis_deform_paintop.cpp 077762b 
  krita/plugins/paintops/dynadraw/dyna_brush.cpp 7801b48 
  krita/plugins/paintops/dynadraw/kis_dyna_paintop.cpp bd3ef3e 
  krita/plugins/paintops/experiment/kis_experiment_paintop.cpp 01eaccf 
  krita/plugins/paintops/experiment/kis_experiment_paintop_settings_widget.cpp e69ebba 
  krita/plugins/paintops/filterop/kis_filterop.cpp 74180d3 
  krita/plugins/paintops/gridbrush/kis_grid_paintop.cpp 85ee70a 
  krita/plugins/paintops/hairy/hairy_brush.h 770025d 
  krita/plugins/paintops/hairy/hairy_brush.cpp b2bc87e 
  krita/plugins/paintops/hatching/hatching_brush.cpp 3860f6b 
  krita/plugins/paintops/libbrush/kis_abr_brush.cpp 48c8dab 
  krita/plugins/paintops/libbrush/kis_brush.h 707e9b0 
  krita/plugins/paintops/libbrush/kis_brush.cpp 3947a50 
  krita/plugins/paintops/libbrush/kis_gbr_brush.cpp 9d8339e 
  krita/plugins/paintops/libpaintop/kis_bidirectional_mixing_option.cpp 9c66f83 
  krita/plugins/paintops/libpaintop/kis_color_source.cpp a0f5b8c 
  krita/plugins/paintops/libpaintop/kis_custom_brush_widget.cpp a8c345d 
  krita/plugins/paintops/mypaint/brushlib/brush.hpp 42bda16 
  krita/plugins/paintops/mypaint/mypaint_surface.cpp 50e91bf 
  krita/plugins/paintops/particle/particle_brush.h 3eabee1 
  krita/plugins/paintops/particle/particle_brush.cpp 48ed386 
  krita/plugins/paintops/spray/spray_brush.h 9e13c19 
  krita/plugins/paintops/spray/spray_brush.cpp 864b85a 
  krita/plugins/tools/defaulttools/kis_tool_colorpicker.cc ab4fa69 
  krita/plugins/tools/selectiontools/kis_tool_select_contiguous.cc b0f0645 
  krita/plugins/tools/selectiontools/kis_tool_select_magnetic.h 77498aa 
  krita/plugins/tools/selectiontools/kis_tool_select_magnetic.cc f07a82e 
  krita/plugins/tools/selectiontools/kis_tool_select_similar.cc 903f066 
  krita/plugins/tools/tool_transform2/kis_tool_transform.cc 45d4830 
  krita/sdk/templates/filter/APPNAMELC.cc e2468a7 
  krita/sdk/tests/testutil.h e477908 
  krita/ui/canvas/kis_image_pyramid.cpp 6c47ea5 
  krita/ui/flake/kis_shape_selection.cpp 1154b79 
  krita/ui/kis_mask_manager.cc 42eafba 
  krita/ui/kis_png_converter.cpp d98e7be 
  krita/ui/kis_selection_manager.cc fc8158d 
  krita/ui/tests/data/HR_SketchPaper_01.pat PRE-CREATION 
  krita/ui/tests/data/load_test2.kra PRE-CREATION 
  krita/ui/tests/kis_doc2_test.cpp f436a76 
  krita/ui/tests/kis_selection_manager_test.cpp 1dc22e7 
  krita/ui/tests/scratchpad/scratchpad.cpp e2530b8 
  krita/ui/tool/kis_tool_freehand.cc 7daf27f 

Diff: http://git.reviewboard.kde.org/r/104771/diff/


Testing
-------

Animtim has been testing a lot and found one unrelated crash and an issue with the transform tool which I fixed. There is still one unittest that's broken because convolution has changed a bit.


Thanks,

Boudewijn Rempt

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/calligra-devel/attachments/20120428/d6b2b57e/attachment.htm>


More information about the calligra-devel mailing list