📄 istreeitem.cpp
字号:
// istreeitem.cpp: implementation of the CISTreeItem class.
//
//////////////////////////////////////////////////////////////////////
#include "istreeitem.h"
#include <qpixmap.h>
static const char* folder_closed_xpm[]={
"16 16 9 1",
"g c #808080",
"b c #c0c000",
"e c #c0c0c0",
"# c #000000",
"c c #ffff00",
". c None",
"a c #585858",
"f c #a0a0a4",
"d c #ffffff",
"..###...........",
".#abc##.........",
".#daabc#####....",
".#ddeaabbccc#...",
".#dedeeabbbba...",
".#edeeeeaaaab#..",
".#deeeeeeefe#ba.",
".#eeeeeeefef#ba.",
".#eeeeeefeff#ba.",
".#eeeeefefff#ba.",
".##geefeffff#ba.",
"...##gefffff#ba.",
".....##fffff#ba.",
".......##fff#b##",
".........##f#b##",
"...........####."};
static const char* folder_open_xpm[]={
"16 16 11 1",
"# c #000000",
"g c #c0c0c0",
"e c #303030",
"a c #ffa858",
"b c #808080",
"d c #a0a0a4",
"f c #585858",
"c c #ffdca8",
"h c #dcdcdc",
"i c #ffffff",
". c None",
"....###.........",
"....#ab##.......",
"....#acab####...",
"###.#acccccca#..",
"#ddefaaaccccca#.",
"#bdddbaaaacccab#",
".eddddbbaaaacab#",
".#bddggdbbaaaab#",
"..edgdggggbbaab#",
"..#bgggghghdaab#",
"...ebhggghicfab#",
"....#edhhiiidab#",
"......#egiiicfb#",
"........#egiibb#",
"..........#egib#",
"............#ee#"};
static const char * folder_locked[]={
"16 16 10 1",
"h c #808080",
"b c #ffa858",
"f c #c0c0c0",
"e c #c05800",
"# c #000000",
"c c #ffdca8",
". c None",
"a c #585858",
"g c #a0a0a4",
"d c #ffffff",
"..#a#...........",
".#abc####.......",
".#daa#eee#......",
".#ddf#e##b#.....",
".#dfd#e#bcb##...",
".#fdccc#daaab#..",
".#dfbbbccgfg#ba.",
".#ffb#ebbfgg#ba.",
".#ffbbe#bggg#ba.",
".#fffbbebggg#ba.",
".##hf#ebbggg#ba.",
"...###e#gggg#ba.",
".....#e#gggg#ba.",
"......###ggg#b##",
".........##g#b##",
"...........####."};
static const char * pix_file []={
"16 16 7 1",
"# c #000000",
"b c #ffffff",
"e c #000000",
"d c #404000",
"c c #c0c000",
"a c #ffffc0",
". c None",
"................",
".........#......",
"......#.#a##....",
".....#b#bbba##..",
"....#b#bbbabbb#.",
"...#b#bba##bb#..",
"..#b#abb#bb##...",
".#a#aab#bbbab##.",
"#a#aaa#bcbbbbbb#",
"#ccdc#bcbbcbbb#.",
".##c#bcbbcabb#..",
"...#acbacbbbe...",
"..#aaaacaba#....",
"...##aaaaa#.....",
".....##aa#......",
".......##......."};
QPixmap *folderLocked = 0;
QPixmap *folderClosed = 0;
QPixmap *folderOpen =0;
QPixmap *fileNormal = 0;
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CISTreeItem::CISTreeItem(CISObject* p,QListView *parent, QString label )
:QListViewItem(parent,label ),m_pPix(0)
{
m_pObject=p;
MoveToLast();
}
CISTreeItem::CISTreeItem(CISObject* p,QListViewItem *parent, QString label)
:QListViewItem(parent,label ),m_pPix(0)
{
m_pObject=p;
MoveToLast();
}
CISTreeItem::CISTreeItem(CISObject* p,QListView *parent, QListViewItem *after, QString label)
:QListViewItem(parent,after,label ),m_pPix(0)
{
m_pObject=p;
MoveToLast();
}
CISTreeItem::CISTreeItem(CISObject* p,QListViewItem *parent, QListViewItem *after, QString label)
:QListViewItem(parent,after,label ),m_pPix(0)
{
m_pObject=p;
MoveToLast();
}
CISTreeItem::~CISTreeItem()
{
}
void CISTreeItem::SetObject(CISObject* p)
{
m_pObject=p;
}
CISObject* CISTreeItem::GetObject()
{
return m_pObject;
}
void CISTreeItem::MoveToLast()
{
CISTreeItem *hTemp = this;
CISTreeItem *hItem = this;
while(hItem->nextSibling ()!= 0)
{
hTemp = (CISTreeItem*) hItem-> nextSibling();
hItem = hTemp;
}
moveItem (hTemp);
}
void CISTreeItem::setPixmap( QPixmap *p )
{
m_pPix = p;
}
void CISTreeItem::setOpen(bool o)
{
QPixmap *f;
if ( o )
f = new QPixmap( folder_open_xpm );
else
f = new QPixmap( folder_closed_xpm );
setPixmap( f );
QListViewItem::setOpen( o );
}
const QPixmap *CISTreeItem::pixmap( int i ) const
{
if ( i )
return 0;
return m_pPix;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -