[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kdevelop-devel
Subject:    the curse of loose coupling
From:       "Steven T. Hatton" <hattons () globalsymmetry ! com>
Date:       2005-07-04 20:47:13
Message-ID: 200507041647.13815.hattons () globalsymmetry ! com
[Download RAW message or body]

I've returned to the task of trying to figure out how KDevelop is put 
together.  I believe I understand most of what's going on, in principle.  The 
specific area I am currently trying to understand is the Class Browser.  I 
believe that is the same as the ClassViewPart.  Looking things over has given 
me the understanding that this is implemented as a plugin.

Taking things from the top, I started reading the function main() in 
src/main.cpp.  That led me to PluginController::loadInitialPlugins() which 
took me to 
kdevelop/src/plugincontroler.h and thence to 
kdevelop/src/plugincontroler.cpp and back to

void PluginController::loadInitialPlugins()
{    
    loadCorePlugins();
    loadGlobalPlugins();
}

PluginController::~PluginController()
{
  unloadPlugins();
}

void PluginController::loadCorePlugins()
{
  KTrader::OfferList coreOffers = m_engine.offers(m_profile, 
ProfileEngine::Core);
  loadPlugins( coreOffers );
}

void PluginController::loadGlobalPlugins( const QStringList & ignorePlugins )
{
  KTrader::OfferList globalOffers = m_engine.offers(m_profile, 
ProfileEngine::Global);
  loadPlugins( globalOffers, ignorePlugins );
}
Then back to find ProfileEngine m_engine; in
kdevelop/src/plugincontroler.h

Well, that sends me to:
kdevelop/src/profileengine/lib/profileengine.h

Which has some stuff using KTrader, which I recognize from months back as some 
kind of service advertisement mechanism.  But now I need to figure out what 
is being provided by KTrader, and how that is determined.

I was hoping to have more of this figured out before I sent this message, but 
I have to restart my mail client, and if I put it in drafts, I might forget 
to send it.
-- 
Regards,
Steven

_______________________________________________
KDevelop-devel mailing list
KDevelop-devel@barney.cs.uni-potsdam.de
http://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-devel
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic