Plugins and tools

Boudewijn Rempt boud at valdyas.org
Sat May 29 13:21:14 CEST 2004


I've been messing about with plugins and tools a bit, and I'm none too sure 
about the essential difference between the two concepts. 

Technically, the distinction is clear: 

Plugins reside in their own .so, are linked at runtime through some KDE magic 
(the old KImageShop plugin server turned out to be completely unrelated to 
our plugins) and can add ui to Krita's ui -- but there is no way for Krita to 
control the loading of plugins. And all our plugin .so's are placed in 
kde3/lib/kde3 -- creating a possible namespace problem, so we should probably 
rename our plugins to kis_*.so. It's not necessary to extend kis_view assign 
KActions to plugins.

Tools, on the other hand, are part of Krita's main .so, and are created on 
startup by the tool_factory. And it's not necessary to extend kis_view if you 
create a new plugin, just the tool factory. If tools were plugins, they could 
just register themselves with a toolregistry, and we could scrap the entire 
tool factory. I wouldn't mind if we implemented most functionality in the 
form of plugins; that makes development a lot easier, since plugins can be 
compiled and installed separately.

-- 
Boudewijn Rempt | http://www.valdyas.org/fading/index.cgi


More information about the kimageshop mailing list