void KCMKMailSummary::load() { initFolders(); loadFolders(); emit changed(false); }
void CWizFolderView::initFolders() { CWizCategoryViewAllFoldersItem* pAllFoldersItem = new CWizCategoryViewAllFoldersItem(m_app, tr("Note Folders"), m_dbMgr.db().kbGUID()); addTopLevelItem(pAllFoldersItem); CWizStdStringArray arrayAllLocation; m_dbMgr.db().GetAllLocations(arrayAllLocation); // folder cache CWizStdStringArray arrayExtLocation; m_dbMgr.db().GetExtraFolder(arrayExtLocation); if (!arrayExtLocation.empty()) { for (CWizStdStringArray::const_iterator it = arrayExtLocation.begin(); it != arrayExtLocation.end(); it++) { if (-1 == ::WizFindInArray(arrayAllLocation, *it)) { arrayAllLocation.push_back(*it); } } } if (arrayAllLocation.empty()) { arrayAllLocation.push_back(m_dbMgr.db().GetDefaultNoteLocation()); } initFolders(pAllFoldersItem, "", arrayAllLocation); pAllFoldersItem->setExpanded(true); pAllFoldersItem->sortChildren(0, Qt::AscendingOrder); }
ListViews::ListViews( QWidget *parent, const char *name ) : QSplitter( Qt::Horizontal, parent, name ) { lstFolders.setAutoDelete( TRUE ); folders = new QListView( this ); folders->header()->setClickEnabled( FALSE ); folders->addColumn( "Folder" ); initFolders(); setupFolders(); folders->setRootIsDecorated( TRUE ); setResizeMode( folders, QSplitter::KeepSize ); QSplitter *vsplitter = new QSplitter( Qt::Vertical, this ); messages = new QListView( vsplitter ); messages->addColumn( "Sender" ); messages->addColumn( "Subject" ); messages->addColumn( "Date" ); messages->setColumnAlignment( 1, Qt::AlignRight ); messages->setAllColumnsShowFocus( TRUE ); messages->setShowSortIndicator( TRUE ); menu = new QPopupMenu( messages ); for( int i = 1; i <= 10; i++ ) menu->insertItem( QString( "Context Item %1" ).arg( i ) ); connect(messages, SIGNAL( rightButtonPressed( QListViewItem *, const QPoint& , int ) ), this, SLOT( slotRMB( QListViewItem *, const QPoint &, int ) ) ); vsplitter->setResizeMode( messages, QSplitter::KeepSize ); message = new QLabel( vsplitter ); message->setAlignment( Qt::AlignTop ); message->setBackgroundMode( PaletteBase ); connect( folders, SIGNAL( selectionChanged( QListViewItem* ) ), this, SLOT( slotFolderChanged( QListViewItem* ) ) ); connect( messages, SIGNAL( selectionChanged() ), this, SLOT( slotMessageChanged() ) ); connect( messages, SIGNAL( currentChanged( QListViewItem * ) ), this, SLOT( slotMessageChanged() ) ); messages->setSelectionMode( QListView::Extended ); // some preparations folders->firstChild()->setOpen( TRUE ); folders->firstChild()->firstChild()->setOpen( TRUE ); folders->setCurrentItem( folders->firstChild()->firstChild()->firstChild() ); folders->setSelected( folders->firstChild()->firstChild()->firstChild(), TRUE ); messages->setSelected( messages->firstChild(), TRUE ); messages->setCurrentItem( messages->firstChild() ); message->setMargin( 5 ); QValueList<int> lst; lst.append( 170 ); setSizes( lst ); }
CWizFolderView::CWizFolderView(CWizExplorerApp& app, QWidget *parent) : QTreeWidget(parent) , m_app(app) , m_dbMgr(app.databaseManager()) { header()->hide(); setAnimated(true); setAttribute(Qt::WA_MacShowFocusRect, false); setStyle(::WizGetStyle(m_app.userSettings().skin())); // use custom scrollbar setVerticalScrollMode(QAbstractItemView::ScrollPerItem); setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); m_vScroll = new CWizScrollBar(this); m_vScroll->syncWith(verticalScrollBar()); initFolders(); }
void CWizFolderView::initFolders(QTreeWidgetItem* pParent, const QString& strParentLocation, const CWizStdStringArray& arrayAllLocation) { CWizStdStringArray arrayLocation; CWizDatabase::GetChildLocations(arrayAllLocation, strParentLocation, arrayLocation); CWizStdStringArray::const_iterator it; for (it = arrayLocation.begin(); it != arrayLocation.end(); it++) { QString strLocation = *it; if (m_dbMgr.db().IsInDeletedItems(strLocation)) continue; CWizCategoryViewFolderItem* pFolderItem = new CWizCategoryViewFolderItem(m_app, strLocation, m_dbMgr.db().kbGUID()); pParent->addChild(pFolderItem); initFolders(pFolderItem, strLocation, arrayAllLocation); } }
void CWizFolderView::initFolders() { CWizCategoryViewAllFoldersItem* pAllFoldersItem = new CWizCategoryViewAllFoldersItem(m_app, tr("Note Folders"), m_dbMgr.db().kbGUID()); addTopLevelItem(pAllFoldersItem); CWizStdStringArray arrayAllLocation; m_dbMgr.db().GetAllLocations(arrayAllLocation); initFolders(pAllFoldersItem, "", arrayAllLocation); if (arrayAllLocation.empty()) { const QString strNotes("/My Notes/"); m_dbMgr.db().AddExtraFolder(strNotes); m_dbMgr.db().SetObjectVersion("folder", 0); arrayAllLocation.push_back(strNotes); } //init extra folders CWizStdStringArray arrayExtLocation; m_dbMgr.db().GetExtraFolder(arrayExtLocation); CWizStdStringArray::const_iterator it; for (it = arrayExtLocation.begin(); it != arrayExtLocation.end(); it++) { QString strLocation = *it; if (strLocation.isEmpty()) continue; if (m_dbMgr.db().IsInDeletedItems(strLocation)) continue; addFolder(strLocation, true); } pAllFoldersItem->setExpanded(true); pAllFoldersItem->sortChildren(0, Qt::AscendingOrder); }
void CWizFolderView::showEvent(QShowEvent *event) { clear(); initFolders(); }