summaryrefslogtreecommitdiffstats
path: root/konversation/src/images.h
blob: c9f49fa42848031b626da20b307fad7303522c7d (plain)
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
/*
  This program is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation; either version 2 of the License, or
  (at your option) any later version.
*/

/*
  Copyright (C) 2002 Dario Abatianni <eisfuchs@tigress.com>
  Copyright (C) 2005-2006 Eike Hein <hein@kde.org>
*/

#ifndef IMAGES_H
#define IMAGES_H

#include <tqiconset.h>
#include <tqpixmap.h>
#include <tqobject.h>


/**
 * Do not create an instance of this class yourself.
 * use KonversationApplication::instance()->images().
 */

class Images : public QObject
{
    Q_OBJECT

    public:
        enum NickPrivilege
        {
            Normal=0,
            Voice,
            HalfOp,
            Op,
            Owner,
            Admin,
            _NickPrivilege_COUNT
        };

        Images();
        virtual ~Images();

        TQPixmap getCloseIcon() { return m_closeIcon; }
        TQPixmap getDisabledCloseIcon() { return m_disabledCloseIcon; }

        TQIconSet getLed(TQColor col,bool state = true);

        TQIconSet getServerLed(bool state);
        TQIconSet getSystemLed(bool state);
        TQIconSet getMsgsLed(bool state);
        TQIconSet getPrivateLed(bool state);
        TQIconSet getEventsLed();
        TQIconSet getNickLed();
        TQIconSet getHighlightsLed();

        TQIconSet getKimproxyAway() const;
        TQIconSet getKimproxyOnline() const;
        TQIconSet getKimproxyOffline() const;

        TQPixmap getNickIcon(NickPrivilege privilege,bool isAway=false) const;
        void initializeNickIcons();

    public slots:
        void updateIcons();

    protected:
        void initializeLeds();
        void initializeKimifaceIcons();

        TQPixmap m_closeIcon;
        TQPixmap m_disabledCloseIcon;

        TQIconSet m_serverLedOn;
        TQIconSet m_serverLedOff;
        TQIconSet m_systemLedOn;
        TQIconSet m_systemLedOff;
        TQIconSet m_msgsLedOn;
        TQIconSet m_msgsLedOff;
        TQIconSet m_privateLedOn;
        TQIconSet m_privateLedOff;
        TQIconSet m_eventsLedOn;
        TQIconSet m_nickLedOn;
        TQIconSet m_highlightsLedOn;

        TQColor m_serverColor;
        TQColor m_systemColor;
        TQColor m_msgsColor;
        TQColor m_privateColor;
        TQColor m_eventsColor;
        TQColor m_nickColor;
        TQColor m_highlightsColor;

        TQIconSet kimproxyAway;
        TQIconSet kimproxyOnline;
        TQIconSet kimproxyOffline;

                                                  // [privilege][away]
        TQPixmap nickIcons[_NickPrivilege_COUNT][2];
};
#endif