Source Code (Use browser search to find items of interest.)
Class Index
killustrator'FilterManager (./koffice/killustrator/filter/FilterManager.h:35)
class FilterManager {
protected:
FilterManager ();
void installDefaultFilters ();
public:
static FilterManager* instance ();
FilterInfo* findFilter (const char* fname, FilterInfo::Kind kind);
FilterInfo* getFilterForType (const char* ftype);
QStrList getInstalledFilters ();
QString importFilters ();
QString exportFilters (const char* defaultExt = 0L);
private:
QString extension (const char *fname);
QDict<FilterInfo> filters;
static FilterManager* managerInstance;
};
killustrator'FilterManager::FilterManager() (./koffice/killustrator/filter/FilterManager.cc:43)
FilterManager::FilterManager () {
installDefaultFilters ();
}
killustrator'FilterManager::installDefaultFilters() (./koffice/killustrator/filter/FilterManager.cc:47)
void FilterManager::installDefaultFilters () {
ImageExport* filter = new ImageExport ();
#ifdef HAVE_QIMGIO
filters.insert ("JPEG", new FilterInfo (FilterInfo::FKind_Export,
"JPEG Image Format", "jpg",
"Kai-Uwe Sattler",
"1.0", 0L, filter));
filters.insert ("PNG", new FilterInfo (FilterInfo::FKind_Export,
"PNG Image Format", "png",
"Kai-Uwe Sattler",
"1.0", 0L, filter));
#endif
filters.insert ("PPM", new FilterInfo (FilterInfo::FKind_Export,
"PPM Image Format", "ppm",
"Kai-Uwe Sattler",
"1.0", 0L, filter));
filters.insert ("XPM", new FilterInfo (FilterInfo::FKind_Export,
"XPM Image Format", "xpm",
"Kai-Uwe Sattler",
"1.0", 0L, filter));
filters.insert ("GIF", new FilterInfo (FilterInfo::FKind_Export,
"GIF Image Format", "gif",
"Kai-Uwe Sattler",
"1.0", 0L, filter));
KilluImport* killuFilter = new KilluImport ();
filters.insert ("KIllustrator", new FilterInfo (FilterInfo::FKind_Import,
"KIllustrator Document",
"kil",
"Kai-Uwe Sattler",
"0.1", killuFilter, 0L));
XfigImport* xfigFilter = new XfigImport ();
filters.insert ("Xfig", new FilterInfo (FilterInfo::FKind_Import,
"Xfig Document", "fig",
"Kai-Uwe Sattler",
"0.1", xfigFilter, 0L));
EPSExport* epsFilter = new EPSExport ();
filters.insert ("EPS", new FilterInfo (FilterInfo::FKind_Export,
"Encapsulated PostScript", "eps",
"Kai-Uwe Sattler",
"0.1", 0L, epsFilter));
#if not_yet
CmxImport* cmxFilter = new CmxImport ();
filters.insert ("CMX", new FilterInfo (FilterInfo::FKind_Import,
"Corel Exchange", "cmx",
"Kai-Uwe Sattler",
"0.1", cmxFilter, 0L));
#endif
}
killustrator'FilterManager::importFilters() (./koffice/killustrator/filter/FilterManager.cc:96)
QString FilterManager::importFilters () {
QString s;
QDictIterator<FilterInfo> iter (filters);
for (; iter.current (); ++iter) {
FilterInfo *fi = iter.current ();
if (fi->kind () == FilterInfo::FKind_Import) {
QString buf;
buf.sprintf ("*.%s|%s (*.%s)", fi->extension (), fi->type (),
fi->extension ());
if (s.length () > 0)
s += "\n";
s += buf;
}
}
return s;
}
killustrator'FilterManager::exportFilters() (./koffice/killustrator/filter/FilterManager.cc:113)
QString FilterManager::exportFilters (const char* defaultExt) {
// filter info for defaultExt should be at top of the list
QString s;
QDictIterator<FilterInfo> iter (filters);
if (defaultExt != 0L) {
for (; iter.current (); ++iter) {
FilterInfo *fi = iter.current ();
if (fi->kind () == FilterInfo::FKind_Export &&
::strcmp (fi->extension (), defaultExt) == 0) {
QString buf;
buf.sprintf ("*.%s|%s (*.%s)", fi->extension (), fi->type (),
fi->extension ());
s += buf;
}
}
}
for (iter.toFirst (); iter.current (); ++iter) {
FilterInfo *fi = iter.current ();
if (fi->kind () == FilterInfo::FKind_Export) {
if (defaultExt != 0L &&
::strcmp (fi->extension (), defaultExt) == 0)
continue;
QString buf;
buf.sprintf ("*.%s|%s (*.%s)", fi->extension (), fi->type (),
fi->extension ());
if (s.length () > 0)
s += "\n";
s += buf;
}
}
return s;
}
killustrator'FilterManager::extension() (./koffice/killustrator/filter/FilterManager.cc:147)
QString FilterManager::extension (const char *fname) {
QString file (fname);
QString ext;
int pos = file.findRev ('.', -1, false);
if (pos != -1)
ext = file.mid (pos + 1, file.length () - pos);
return ext;
}
killustrator'FilterManager::findFilter() (./koffice/killustrator/filter/FilterManager.cc:156)
FilterInfo* FilterManager::findFilter (const char* fname,
FilterInfo::Kind kind) {
FilterInfo* info = 0L;
QString ext = extension (fname);
QDictIterator<FilterInfo> iter (filters);
for (; iter.current (); ++iter) {
FilterInfo *fi = iter.current ();
if (fi->kind () == kind && ext == fi->extension ()) {
info = fi;
break;
}
}
return info;
}
killustrator'FilterManager::instance() (./koffice/killustrator/filter/FilterManager.cc:172)
FilterManager* FilterManager::instance () {
if (managerInstance == 0L)
managerInstance = new FilterManager ();
return managerInstance;
}
killustrator'FilterManager::getFilterForType() (./koffice/killustrator/filter/FilterManager.cc:178)
FilterInfo* FilterManager::getFilterForType (const char* ftype) {
return filters.find (ftype);
}
killustrator'FilterManager::getInstalledFilters() (./koffice/killustrator/filter/FilterManager.cc:182)
QStrList FilterManager::getInstalledFilters () {
QStrList flist;
QDictIterator<FilterInfo> iter (filters);
for (; iter.current (); ++iter)
flist.append (iter.currentKey ());
return flist;
}