File: kfile_plugin.cpp

package info (click to toggle)
kdevelop 4%3A3.5.2-1
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 48,464 kB
  • ctags: 30,573
  • sloc: cpp: 287,248; sh: 18,675; ruby: 4,097; makefile: 3,791; perl: 3,300; ansic: 1,406; python: 1,276; yacc: 529; lex: 373; java: 359; xml: 207; php: 20; ada: 5; fortran: 4; pascal: 4; sql: 1
file content (55 lines) | stat: -rw-r--r-- 1,572 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
%{CPP_TEMPLATE}

#include <config.h>
#include "kfile_%{APPNAMELC}.h"

#include <kgenericfactory.h>
//#include <kio/global.h>

//#include <qfileinfo.h>
//#include <qdir.h>

typedef KGenericFactory<%{APPNAME}Plugin> %{APPNAME}Factory;

K_EXPORT_COMPONENT_FACTORY(kfile_%{APPNAME}, %{APPNAME}Factory( "kfile_%{APPNAMELC}" ))

%{APPNAME}Plugin::%{APPNAME}Plugin(QObject *parent, const char *name,
                       const QStringList &args)
    : KFilePlugin(parent, name, args)
{
    //add the mimetype here - example:
    //KFileMimeTypeInfo* info = addMimeTypeInfo( "text/html" );
    KFileMimeTypeInfo* info = addMimeTypeInfo( "text/html" );

    // our new group
    KFileMimeTypeInfo::GroupInfo* group = 0L;
    group = addGroupInfo(info, "%{APPNAME}Info", i18n("%{APPNAME} Information"));

    KFileMimeTypeInfo::ItemInfo* item;

    // our new items in the group
    item = addItemInfo(group, "Items", i18n("Items"), QVariant::Int);
    item = addItemInfo(group, "Size", i18n("Size"), QVariant::Int);
    setUnit(item, KFileMimeTypeInfo::KiloBytes);

    // strings are possible, too:
    //addItemInfo(group, "Text", i18n("Document Type"), QVariant::String);
}

bool %{APPNAME}Plugin::readInfo( KFileMetaInfo& info, uint /*what*/)
{
    KFileMetaInfoGroup group = appendGroup(info, "%{APPNAME}Info");

    // add your "calculations" here
    // if something goes wrong, "return false;"


    // and finally display it!
    appendItem(group, "Items", 100);
    appendItem(group, "Size", int(5000/1024));
    
    return true;
}

#include "kfile_%{APPNAMELC}.moc"