Sort documentation list in increasing alphabetical order.

Fixed KDE 2 handbook xml tags. This relates to bug 1859.

Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
pull/1/head
Michele Calgaro 10 years ago
parent 847b6192a9
commit 8f70b1fe65

File diff suppressed because it is too large Load Diff

@ -98,7 +98,7 @@ DocumentationPart::DocumentationPart(TQObject *parent, const char *name, const T
TQWhatsThis::add(m_widget, i18n("<b>Documentation browser</b><p>"
"The documentation browser gives access to various "
"documentation sources (TQt DCF, Doxygen, KDoc, KDevelopTOC and DevHelp "
"documentation sources (TQt DCF, Doxygen, KDoc, TDevelopTOC and DevHelp "
"documentation) and the TDevelop manuals. It also provides documentation index "
"and full text search capabilities."));
@ -107,7 +107,7 @@ DocumentationPart::DocumentationPart(TQObject *parent, const char *name, const T
setupActions();
TQTimer::singleShot(0, this, TQT_SLOT(init()));
TQTimer::singleShot(5, this, TQT_SLOT(init()));
new KDevDocumentationIface(this);
}
@ -135,7 +135,6 @@ void DocumentationPart::loadDocumentationPlugins()
docPluginService = *serviceIt;
kdDebug() << "DocumentationPart::loadDocumentationPlugins: creating plugin"
<< docPluginService->name() << endl;
int error;
DocumentationPlugin *docPlugin = KParts::ComponentFactory
::createInstanceFromService<DocumentationPlugin>(docPluginService, 0,

@ -90,8 +90,8 @@ void DocumentationItem::init( )
DocumentationCatalogItem::DocumentationCatalogItem(DocumentationPlugin* plugin,
TDEListView *parent, const TQString &name)
:DocumentationItem(DocumentationItem::Catalog, parent, name), m_plugin(plugin),
TDEListView *parent, TDEListViewItem *after, const TQString &name)
:DocumentationItem(DocumentationItem::Catalog, parent, after, name), m_plugin(plugin),
isLoaded(false), isActivated(false), m_isProjectDocumentationItem(false)
{
setExpandable(true);
@ -440,6 +440,21 @@ void DocumentationPlugin::loadIndex(IndexBox *index, DocumentationCatalogItem *i
cacheIndex(item);
}
TDEListViewItem* DocumentationPlugin::findCatalogPosition(const TQString &key, const TDEListView *contents) const
{
TDEListViewItem *curr_item = (TDEListViewItem*)(contents->firstChild());
if (!curr_item)
return NULL; // Empty listview
TDEListViewItem *prev_item = NULL;
while (curr_item && curr_item->text(0) <= key)
{
prev_item = curr_item;
curr_item = (TDEListViewItem*)(curr_item->nextSibling());
}
return prev_item;
}
void DocumentationPlugin::init(TDEListView *contents)
{
config->setGroup("Locations");
@ -448,8 +463,15 @@ void DocumentationPlugin::init(TDEListView *contents)
for (TQMap<TQString, TQString>::const_iterator it = entryMap.begin();
it != entryMap.end(); ++it)
{
if (catalogEnabled(it.key()))
createCatalog(contents, it.key(), config->readPathEntry(it.key()));
TQString cat_key = it.key();
if (catalogEnabled(cat_key))
{
// Keep the list in increasing sorted order. Given that the list is
// reasonably short, we can affort to scan through the list each time
// a new item is created
TDEListViewItem *afterItem = findCatalogPosition(cat_key, contents);
createCatalog(contents, afterItem, cat_key, config->readPathEntry(cat_key));
}
}
}
@ -472,31 +494,33 @@ void DocumentationPlugin::reinit(TDEListView *contents, IndexBox *index, TQStrin
it != entryMap.end(); ++it)
{
config->setGroup("Locations");
if (restrictions.contains(it.key()) || (!catalogEnabled(it.key())))
TQString cat_key = it.key();
if (restrictions.contains(cat_key) || (!catalogEnabled(cat_key)))
{
if (namedCatalogs.contains(it.key()))
delete namedCatalogs[it.key()];
if (namedCatalogs.contains(cat_key))
delete namedCatalogs[cat_key];
}
else
{
kdDebug() << "updating 1" << endl;
if (!namedCatalogs.contains(it.key())) //create catalog if it does not exist
if (!namedCatalogs.contains(cat_key)) //create catalog if it does not exist
{
DocumentationCatalogItem * item = createCatalog(contents, it.key(), config->readPathEntry(it.key()));
TDEListViewItem *afterItem = findCatalogPosition(cat_key, contents);
DocumentationCatalogItem *item = createCatalog(contents, afterItem, cat_key, config->readPathEntry(cat_key));
loadIndex(index, item);
index->setDirty(true);
// index->refill(indexes[item]);
}
else if (!indexEnabled(namedCatalogs[it.key()])) //clear index if it is disabled in configuration
else if (!indexEnabled(namedCatalogs[cat_key])) //clear index if it is disabled in configuration
{
kdDebug() << " updating: clearCatalogIndex" << endl;
clearCatalogIndex(namedCatalogs[it.key()]);
clearCatalogIndex(namedCatalogs[cat_key]);
}
else if ( (indexEnabled(namedCatalogs[it.key()])) //index is requested in configuration but does not yet exist
&& (!indexes.contains(namedCatalogs[it.key()])) )
else if ( (indexEnabled(namedCatalogs[cat_key])) //index is requested in configuration but does not yet exist
&& (!indexes.contains(namedCatalogs[cat_key])) )
{
kdDebug() << " index requested " << endl;
loadIndex(index, namedCatalogs[it.key()]);
loadIndex(index, namedCatalogs[cat_key]);
index->setDirty(true);
}
m_indexCreated = true;
@ -676,6 +700,21 @@ ProjectDocumentationPlugin::~ProjectDocumentationPlugin()
deinit();
}
TDEListViewItem* ProjectDocumentationPlugin::findCatalogPosition(const TQString &key, const TDEListView *contents) const
{
TDEListViewItem *curr_item = (TDEListViewItem*)(contents->firstChild());
if (!curr_item)
return NULL; // Empty listview
TDEListViewItem *prev_item = NULL;
while (curr_item && curr_item->text(0) <= key)
{
prev_item = curr_item;
curr_item = (TDEListViewItem*)(curr_item->nextSibling());
}
return prev_item;
}
void ProjectDocumentationPlugin::init(TDEListView *contents, IndexBox *index, const TQString &url)
{
m_contents = contents;
@ -684,9 +723,10 @@ void ProjectDocumentationPlugin::init(TDEListView *contents, IndexBox *index, co
if (m_catalog)
deinit();
m_catalog = m_docPlugin->createCatalog(contents,
m_type == DocumentationPlugin::APIDocs ? i18n("Project API Documentation")
: i18n("Project User Manual"), url);
TQString cat_key = (m_type == DocumentationPlugin::APIDocs ? i18n("Project API Documentation")
: i18n("Project User Manual"));
TDEListViewItem *afterItem = findCatalogPosition(cat_key, contents);
m_catalog = m_docPlugin->createCatalog(contents, afterItem, cat_key, url);
if (m_catalog)
{
m_catalog->setProjectDocumentationItem(true);

@ -72,7 +72,7 @@ class DocumentationPlugin;
class DocumentationCatalogItem: public DocumentationItem
{
public:
DocumentationCatalogItem(DocumentationPlugin* plugin, TDEListView *parent, const TQString &name);
DocumentationCatalogItem(DocumentationPlugin* plugin, TDEListView *parent, TDEListViewItem *after, const TQString &name);
DocumentationCatalogItem(DocumentationPlugin* plugin, DocumentationItem *parent, const TQString &name);
virtual ~DocumentationCatalogItem();
@ -240,8 +240,9 @@ public:
/**Returns the i18n name of the plugin.*/
virtual TQString pluginName() const = 0;
/**Creates documentation catalog with given title and url.*/
virtual DocumentationCatalogItem *createCatalog(TDEListView *contents, const TQString &title, const TQString &url) = 0;
/**Creates documentation catalog with given title and url. Catalog lists are sorted
alphabetically in increasing order.*/
virtual DocumentationCatalogItem *createCatalog(TDEListView *contents, TDEListViewItem *after, const TQString &title, const TQString &url) = 0;
/**Initialize a list of catalogs.
@param contents the listview to fill with catalogs
@ -361,6 +362,9 @@ protected:
/**Loads index from cache or creates and caches it if does not exist.*/
void loadIndex(IndexBox *index, DocumentationCatalogItem *item);
/**Find catalog insert position to maintain a sorted order.*/
TDEListViewItem* findCatalogPosition(const TQString &key, const TDEListView *contents) const;
/**Stores items deleted from configuration. @ref saveCatalogConfiguration
uses this to remove entries from configuration file.*/
TQStringList deletedConfigurationItems;
@ -408,6 +412,9 @@ public slots:
virtual void reinit();
protected:
/**Find catalog insert position to maintain a sorted order.*/
TDEListViewItem* findCatalogPosition(const TQString &key, const TDEListView *contents) const;
DocumentationPlugin *m_docPlugin;
DocumentationCatalogItem *m_catalog;

@ -51,9 +51,9 @@ DocCHMPlugin::~DocCHMPlugin()
}
DocumentationCatalogItem* DocCHMPlugin::createCatalog(TDEListView* contents, const TQString& title, const TQString& url)
DocumentationCatalogItem* DocCHMPlugin::createCatalog(TDEListView* contents, TDEListViewItem *after, const TQString& title, const TQString& url)
{
DocumentationCatalogItem *item = new DocumentationCatalogItem(this, contents, title);
DocumentationCatalogItem *item = new DocumentationCatalogItem(this, contents, after, title);
item->setURL(KURL(url));
return item;

@ -35,7 +35,7 @@ public:
virtual void setCatalogURL(DocumentationCatalogItem* item);
virtual TQString catalogTitle(const TQString& url);
virtual TQPair<KFile::Mode, TQString> catalogLocatorProps();
virtual DocumentationCatalogItem* createCatalog(TDEListView* contents, const TQString& title, const TQString& url);
virtual DocumentationCatalogItem* createCatalog(TDEListView* contents, TDEListViewItem *after, const TQString& title, const TQString& url);
virtual void createTOC(DocumentationCatalogItem* item);
virtual void createIndex(IndexBox* index, DocumentationCatalogItem* item);

@ -55,9 +55,9 @@ TQString DocCustomPlugin::pluginName() const
return i18n("Custom Documentation Collection");
}
DocumentationCatalogItem* DocCustomPlugin::createCatalog(TDEListView* contents, const TQString& title, const TQString& url)
DocumentationCatalogItem* DocCustomPlugin::createCatalog(TDEListView* contents, TDEListViewItem *after, const TQString& title, const TQString& url)
{
DocumentationCatalogItem *item = new DocumentationCatalogItem(this, contents, title);
DocumentationCatalogItem *item = new DocumentationCatalogItem(this, contents, after, title);
item->setURL(KURL(url));
return item;
}

@ -29,7 +29,7 @@ public:
virtual TQString pluginName() const;
virtual DocumentationCatalogItem* createCatalog(TDEListView* contents, const TQString& title, const TQString& url);
virtual DocumentationCatalogItem* createCatalog(TDEListView* contents, TDEListViewItem *after, const TQString& title, const TQString& url);
virtual void createTOC(DocumentationCatalogItem* item);
virtual void setCatalogURL(DocumentationCatalogItem* item);

@ -41,8 +41,8 @@ class DevHelpDocumentationCatalogItem: public DocumentationCatalogItem
{
public:
DevHelpDocumentationCatalogItem(const TQString &devHelpFile, DocumentationPlugin* plugin,
TDEListView *parent, const TQString &name)
:DocumentationCatalogItem(plugin, parent, name), m_devHelpFile(devHelpFile)
TDEListView *parent, TDEListViewItem *after, const TQString &name)
:DocumentationCatalogItem(plugin, parent, after, name), m_devHelpFile(devHelpFile)
{
}
DevHelpDocumentationCatalogItem(const TQString &devHelpFile, DocumentationPlugin* plugin,
@ -85,9 +85,9 @@ DocDevHelpPlugin::~DocDevHelpPlugin()
{
}
DocumentationCatalogItem* DocDevHelpPlugin::createCatalog(TDEListView* contents, const TQString& title, const TQString& url)
DocumentationCatalogItem* DocDevHelpPlugin::createCatalog(TDEListView* contents, TDEListViewItem *after, const TQString& title, const TQString& url)
{
return new DevHelpDocumentationCatalogItem(url, this, contents, title);
return new DevHelpDocumentationCatalogItem(url, this, contents, after, title);
}
TQPair<KFile::Mode, TQString> DocDevHelpPlugin::catalogLocatorProps()

@ -40,7 +40,7 @@ public:
virtual void createTOC(DocumentationCatalogItem* item);
virtual DocumentationCatalogItem* createCatalog(TDEListView* contents, const TQString& title, const TQString& url);
virtual DocumentationCatalogItem* createCatalog(TDEListView* contents, TDEListViewItem *after, const TQString& title, const TQString& url);
virtual bool needRefreshIndex(DocumentationCatalogItem* item);
virtual void createIndex(IndexBox* index, DocumentationCatalogItem* item);

@ -44,8 +44,8 @@ class DoxyDocumentationCatalogItem: public DocumentationCatalogItem
{
public:
DoxyDocumentationCatalogItem(const TQString &origUrl, DocumentationPlugin* plugin,
TDEListView *parent, const TQString &name)
:DocumentationCatalogItem(plugin, parent, name), m_origUrl(origUrl)
TDEListView *parent, TDEListViewItem *after, const TQString &name)
:DocumentationCatalogItem(plugin, parent, after, name), m_origUrl(origUrl)
{
}
DoxyDocumentationCatalogItem(const TQString &origUrl, DocumentationPlugin* plugin,
@ -328,10 +328,10 @@ void DocDoxygenPlugin::createTOC(DocumentationCatalogItem* item)
} while (!dirStack.isEmpty());
}
DocumentationCatalogItem *DocDoxygenPlugin::createCatalog(TDEListView *contents, const TQString &title, const TQString &url)
DocumentationCatalogItem *DocDoxygenPlugin::createCatalog(TDEListView *contents, TDEListViewItem *after, const TQString &title, const TQString &url)
{
kdDebug() << "DocDoxygenPlugin::createCatalog: url=" << url << endl;
DocumentationCatalogItem *item = new DoxyDocumentationCatalogItem(url, this, contents, title);
DocumentationCatalogItem *item = new DoxyDocumentationCatalogItem(url, this, contents, after, title);
item->setURL(url);
return item;
}

@ -35,7 +35,7 @@ public:
virtual TQString pluginName() const;
virtual DocumentationCatalogItem *createCatalog(TDEListView *contents, const TQString &title, const TQString &url);
virtual DocumentationCatalogItem *createCatalog(TDEListView *contents, TDEListViewItem *after, const TQString &title, const TQString &url);
virtual void createTOC(DocumentationCatalogItem* item);
virtual void setCatalogURL(DocumentationCatalogItem* item);

@ -43,8 +43,8 @@ class TOCDocumentationCatalogItem: public DocumentationCatalogItem
{
public:
TOCDocumentationCatalogItem(const TQString &tocFile, DocumentationPlugin* plugin,
TDEListView *parent, const TQString &name)
:DocumentationCatalogItem(plugin, parent, name), m_tocFile(tocFile)
TDEListView *parent, TDEListViewItem *after, const TQString &name)
:DocumentationCatalogItem(plugin, parent, after, name), m_tocFile(tocFile)
{
}
TOCDocumentationCatalogItem(const TQString &tocFile, DocumentationPlugin* plugin,
@ -80,9 +80,9 @@ TQString DocKDevTOCPlugin::pluginName() const
return i18n("TDevelopTOC Documentation Collection");
}
DocumentationCatalogItem* DocKDevTOCPlugin::createCatalog(TDEListView* contents, const TQString& title, const TQString& url)
DocumentationCatalogItem* DocKDevTOCPlugin::createCatalog(TDEListView* contents, TDEListViewItem *after, const TQString& title, const TQString& url)
{
return new TOCDocumentationCatalogItem(url, this, contents, title);
return new TOCDocumentationCatalogItem(url, this, contents, after, title);
}
TQPair<KFile::Mode, TQString> DocKDevTOCPlugin::catalogLocatorProps()

@ -35,7 +35,7 @@ public:
virtual TQString pluginName() const;
virtual TQString catalogTitle(const TQString& url);
virtual DocumentationCatalogItem* createCatalog(TDEListView* contents, const TQString& title, const TQString& url);
virtual DocumentationCatalogItem* createCatalog(TDEListView* contents, TDEListViewItem *after, const TQString& title, const TQString& url);
virtual void createTOC(DocumentationCatalogItem* item);
virtual void setCatalogURL(DocumentationCatalogItem* item);

@ -41,8 +41,8 @@ class TQtDocumentationCatalogItem: public DocumentationCatalogItem
{
public:
TQtDocumentationCatalogItem(const TQString &dcfFile, DocumentationPlugin* plugin,
TDEListView *parent, const TQString &name)
:DocumentationCatalogItem(plugin, parent, name), m_dcfFile(dcfFile)
TDEListView *parent, TDEListViewItem *after, const TQString &name)
:DocumentationCatalogItem(plugin, parent, after, name), m_dcfFile(dcfFile)
{
}
TQtDocumentationCatalogItem(const TQString &dcfFile, DocumentationPlugin* plugin,
@ -331,9 +331,9 @@ TQString DocQtPlugin::catalogTitle(const TQString &url)
return docEl.attribute("title", TQString());
}
DocumentationCatalogItem *DocQtPlugin::createCatalog(TDEListView *contents, const TQString &title, const TQString &url)
DocumentationCatalogItem *DocQtPlugin::createCatalog(TDEListView *contents, TDEListViewItem *after, const TQString &title, const TQString &url)
{
return new TQtDocumentationCatalogItem(url, this, contents, title);
return new TQtDocumentationCatalogItem(url, this, contents, after, title);
}
#include "docqtplugin.moc"

@ -35,7 +35,7 @@ public:
virtual TQString pluginName() const;
virtual DocumentationCatalogItem *createCatalog(TDEListView *contents, const TQString &title, const TQString &url);
virtual DocumentationCatalogItem *createCatalog(TDEListView *contents, TDEListViewItem *after, const TQString &title, const TQString &url);
virtual void createTOC(DocumentationCatalogItem *item);
virtual void setCatalogURL(DocumentationCatalogItem *item);

Loading…
Cancel
Save