void WikipediaSettings::parseLangs(const QByteArray &data) { prefMap.clear(); if (!loader) { loader=new WikipediaLoader(); connect(loader, SIGNAL(entry(QString,QString,QString,int)), SLOT(addEntry(QString,QString,QString,int))); connect(loader, SIGNAL(finished()), SLOT(loaderFinished())); connect(this, SIGNAL(load(QByteArray)), loader, SLOT(load(QByteArray))); } emit load(data); }
QgsMilXLibrary::QgsMilXLibrary( QgisInterface *iface, QWidget *parent ) : QWidget( parent ), mIface( iface ), mLoader( 0 ) { setWindowFlags( Qt::Popup ); setObjectName( "QgsMilXLibrary" ); setStyleSheet( "QWidget#QgsMilXLibrary { background-color: white;}" ); QVBoxLayout* layout = new QVBoxLayout( this ); layout->setMargin( 2 ); layout->setSpacing( 2 ); setLayout( layout ); mFilterLineEdit = new QgsFilterLineEdit( this ); mFilterLineEdit->setPlaceholderText( tr( "Filter..." ) ); layout->addWidget( mFilterLineEdit ); connect( mFilterLineEdit, SIGNAL( textChanged( QString ) ), this, SLOT( filterChanged( QString ) ) ); mTreeView = new QTreeView( this ); mTreeView->setFrameShape( QTreeView::NoFrame ); mTreeView->setEditTriggers( QTreeView::NoEditTriggers ); mTreeView->setHeaderHidden( true ); mTreeView->setIconSize( QSize( 32, 32 ) ); layout->addWidget( mTreeView ); connect( mTreeView, SIGNAL( clicked( QModelIndex ) ), this, SLOT( itemClicked( QModelIndex ) ) ); mGalleryModel = new QStandardItemModel( this ); mFilterProxyModel = new TreeFilterProxyModel( this ); mFilterProxyModel->setSourceModel( mGalleryModel ); mLoadingModel = new QStandardItemModel( this ); QStandardItem* loadingItem = new QStandardItem( tr( "Loading..." ) ); loadingItem->setEnabled( false ); mLoadingModel->appendRow( loadingItem ); setCursor( Qt::WaitCursor ); mTreeView->setModel( mLoadingModel ); mLoader = new QgsMilXLibraryLoader( this ); connect( mLoader, SIGNAL( finished() ), this, SLOT( loaderFinished() ) ); mLoader->start(); }