Main Page | Recent changes | Edit this page | Page history

Printable version | Disclaimers | Privacy policy

Not logged in
Log in | Help
 

Interfaces Review Results: Part1

From KDevelop

1) figure out how import and parse really (should) work 
2) change to IProject::buildSystemManager(), IProject::setManagerPlugin(), IProject::projectFileManager()
        - (apaku) why should setManagerPlugin be exposed? This is something that is loaded from the project file and shouldn't be changed later on.
3) ask Hamish:
	why we have 1 mutex per thread with parse job
	can't we use semaphore to make sure all the parse job stopped when
	we request that in ::projectClosing() and don't use
	lockAllParseMutexes()
4) go through @todo's
5) change Sublime::View to QWidget in IDocument::activate
6) s/IDocument::activate/IDocument::performAdditionalActivation() ?
7) comment why we pass ICore to IDocument
	- to let plugins and docs in plugins access Core::self
	- to use notify...
8) more docs to IDocument - make sure every function that is supposed to
	call notifyFoo() has that in the documentation
9) document how you would use document factories to create your own
 	documents
        - (apaku) designer plugin can be used as reference for this
10) ask teatime about what encoding in documentcontroller does
11) s/IDocumentController::registerDocumentForMimetype/
	registerDocumentFactory
12) prevent crashes with factories that no longer exist after a plugin
	is unloaded:
	- make IDocumentFactory a QObject and use a signal to catch deletion
13) open document without using plugin's doc factories (API/UI)
14) at least document the behavior of registering doc factories
	(ala only the first one gets registered and it takes precedence
	over default implementation - warning!)
15) check if we're not emitting documentActivated signal twice in 
	documentcontroller.cpp#257 and whether #256 is needed
16) give an example of contents change without state change in 
	IDocumentController::documentContentChanged
	- text editor: doc is already modified but the new text is written
17) document the difference between ILanguage and ILanguageSupport
	- ILanguage is what core uses and ILanguageSupport is a plugin
	- basically both are the representation of the same "language"
	  one for core and another for plugin
18) don't react on part changed signal in LanguageControllerPrivate,
	but react on IDocumentController::documentActivated signal
	and get rid of casts to ro_part
19) move Language::activate/deactivate to LanguageSupport because
	that's where they are going to be used and call that directly
	from LanguageControllerPrivate
20) move Language::findByUrl and Language::findByName to the
	ILanguageController
21) remove IPlugin::isCentralPlugin and dockWidgetAreaHint
22) s/IPlugin::unload/prepareToUnload ? cleanup? and write that
	it's a good idea to remove views here
23) document iplugin.cpp#120 - a place for shared icons
24) change the API docs for IPlugin::iconLoader because it says
	"global" when it should say "plugin"
25) do addAppDir after doing reconfigure in IPlugin::newIconLoader
26) s/IPlugin::newIconLoader/IPlugin::reconfigureIconLoader
	and make it a private slot or d-pointer slot
27) s/kdevelop/kdevplatform in iplugin.cpp#120
28) PluginController::buildContextMenu has not to use QPair<>
	because it already knows the plugin name from the KPluginInfo
	so all the code should be simplified
29) plugincontroller.cpp#469 has a bug when it adds text to the
	menu every time it got used
30) move IPlugin::extensionManager to dpointer if possible
31) IPluginController::unloadPlugin should take IPlugin or KPluginInfo
	instead of the name
32) IPluginController::loadPluginInternal has to take KPluginInfo as
	and argument
33) remove IPluginController::query
34) decide what we use in IPluginController for constraints
	- QString
	- QStringList
35) IPluginController::argumentsFromService should die
36) remove kdev3_to_kdev4 from the source
37) move IPluginController::engine to the shell (remove from iface)
38) move IPluginController::loadingPlugin and pluginLoaded
 	to the implementation
39) IPluginController::profileChanged() - decide whether we need that
40) remove IProject::relativeUrl
41) s/IProject::urlRelativeToProject/absoluteUrl
42) s/KDev4ProjectFile/projectFile in iprojectcontroller.h#52
43) plugin that initiates the context menu should not show 
	(plugin name) or use submenu
44) fix ui messages in subversion plugin
45) make sure toolview titles are localized
46) create a virtual method title() in IToolViewFactory
47) remove IUiController::ShowMode enum
48) see the paper for an improvements to IToolViewFactory
49) we probably don't need ILanguage::name because we can access it
	through the language support
50) check enums for UserDefined=1024 types (seen in ibuildsystemm-r)
51) ask apaku about IBuildSystemManager::findMakefiles 
	- what it does
	- why we have the one that does not return the list
        - (apaku) /me has no idea, this existed before I started to work on kdev4

Retrieved from "http://www.kdevelop.org/mediawiki/index.php/Interfaces_Review_Results:_Part1"

This page has been accessed 1,391 times. This page was last modified 18:39, 4 July 2007. Content is available under GNU Free Documentation License 1.2.


[Main Page]
Main Page
Community portal
Current events
Recent changes
Help
Donations

Edit this page
Discuss this page
Page history
What links here
Related changes

Special pages
Bug reports