void administrador::on_boton_eliminarExamen_clicked() { if(fManager.eliminarExamen(itemSelected)) { reloadTree(); } }
void Project::insertFile(const KURL& nameURL, bool repaint ) { if (d->excludeRx.exactMatch(nameURL.path())) return; KURL url = nameURL; if ( !d->baseURL.isParentOf(url) ) { KURLRequesterDlg *urlRequesterDlg = new KURLRequesterDlg( d->baseURL.prettyURL(), d->m_mainWindow, ""); urlRequesterDlg->setCaption(i18n("%1: Copy to Project").arg(nameURL.prettyURL(0, KURL::StripFileProtocol))); urlRequesterDlg->urlRequester()->setMode( KFile::Directory | KFile::ExistingOnly); urlRequesterDlg->exec(); KURL destination = urlRequesterDlg->selectedURL(); if (destination.isLocalFile()) { QDir dir(destination.path()); destination.setPath(dir.canonicalPath()); } delete urlRequesterDlg; if ( !destination.isEmpty() ) { CopyTo *dlg = new CopyTo(d->baseURL); connect(dlg, SIGNAL(deleteDialog(CopyTo*)), d, SLOT(slotDeleteCopytoDlg(CopyTo*))); url = dlg->copy( nameURL, destination ); } else // Copy canceled, addition aborted { return; } } QDomElement el; while ( d->baseURL.isParentOf(url) ) { if ( !d->m_projectFiles.contains(url) ) { el = d->dom.createElement("item"); el.setAttribute("url", QuantaCommon::qUrl( QExtFileInfo::toRelative(url, d->baseURL) )); d->dom.firstChild().firstChild().appendChild( el ); KURL u = url.upURL(); ProjectURL *parentURL = d->m_projectFiles.find(u); int uploadStatus = 1; if (parentURL) uploadStatus = parentURL->uploadStatus; d->m_projectFiles.insert( new ProjectURL(url, "", uploadStatus, false, el) ); } url.setPath(url.directory(false)); } emit eventHappened("after_project_add", url.url(), QString::null); setModified(); if ( repaint ) { emit reloadTree( &(d->m_projectFiles), false, QStringList()); emit newStatus(); } }
FileBrowser::FileBrowser(const QString & directories, const QString & filter, const QString & title, const QPixmap & pm, QWidget * parent, bool dirs_as_items, bool recurse ) : SideBarWidget( title, pm, parent ), m_directories( directories ), m_filter( filter ), m_dirsAsItems( dirs_as_items ), m_recurse( recurse ) { setWindowTitle( tr( "Browser" ) ); m_l = new FileBrowserTreeWidget( contentParent() ); addContentWidget( m_l ); QWidget * ops = new QWidget( contentParent() ); ops->setFixedHeight( 24 ); QHBoxLayout * opl = new QHBoxLayout( ops ); opl->setMargin( 0 ); opl->setSpacing( 0 ); m_filterEdit = new QLineEdit( ops ); connect( m_filterEdit, SIGNAL( textEdited( const QString & ) ), this, SLOT( filterItems( const QString & ) ) ); QPushButton * reload_btn = new QPushButton( embed::getIconPixmap( "reload" ), QString::null, ops ); connect( reload_btn, SIGNAL( clicked() ), this, SLOT( reloadTree() ) ); opl->addWidget( m_filterEdit ); opl->addSpacing( 5 ); opl->addWidget( reload_btn ); addContentWidget( ops ); // Whenever the FileBrowser has focus, Ctrl+F should direct focus to its filter box. QShortcut *filterFocusShortcut = new QShortcut( QKeySequence( QKeySequence::Find ), this, SLOT(giveFocusToFilter()) ); filterFocusShortcut->setContext(Qt::WidgetWithChildrenShortcut); reloadTree(); show(); }
void FileBrowser::keyPressEvent(QKeyEvent * ke ) { if( ke->key() == Qt::Key_F5 ) { reloadTree(); } else { ke->ignore(); } }
administrador::administrador(QWidget *parent) : QWidget(parent), ui(new Ui::administrador) { ui->setupUi(this); seguir = false; ui->boton_verReg->setDisabled(true); ui->boton_crearExamen->setDisabled(true); ui->boton_eliminarExamen->setDisabled(true); reloadTree(); }
void Project::slotInsertFilesAfterCopying(const KURL::List& a_urlList) { KURL::List::ConstIterator it; KURL url; for (it = a_urlList.begin(); it != a_urlList.end(); ++it) { url = *it; //url.adjustPath(1); d->insertFiles( url, "*" ); } emit reloadTree( &(d->m_projectFiles), false, QStringList() ); }
FileBrowser::FileBrowser(const QString & directories, const QString & filter, const QString & title, const QPixmap & pm, QWidget * parent, bool dirs_as_items ) : SideBarWidget( title, pm, parent ), m_directories( directories ), m_filter( filter ), m_dirsAsItems( dirs_as_items ) { setWindowTitle( tr( "Browser" ) ); m_l = new FileBrowserTreeWidget( contentParent() ); addContentWidget( m_l ); QWidget * ops = new QWidget( contentParent() ); ops->setFixedHeight( 24 ); QHBoxLayout * opl = new QHBoxLayout( ops ); opl->setMargin( 0 ); opl->setSpacing( 0 ); m_filterEdit = new QLineEdit( ops ); connect( m_filterEdit, SIGNAL( textEdited( const QString & ) ), this, SLOT( filterItems( const QString & ) ) ); QPushButton * reload_btn = new QPushButton( embed::getIconPixmap( "reload" ), QString::null, ops ); connect( reload_btn, SIGNAL( clicked() ), this, SLOT( reloadTree() ) ); opl->addWidget( m_filterEdit ); opl->addSpacing( 5 ); opl->addWidget( reload_btn ); addContentWidget( ops ); reloadTree(); show(); }
void administrador::on_boton_crearExamen_clicked() { QStringList listaCampos; for(int i=0; i <listaEdits.length();i++) { listaCampos << listaEdits.at(i)->text(); } fManager.agregarExamen(ui->line_crearExamen->text().toStdString(),listaCampos); ui->boton_crearExamen->setDisabled(true); ui->line_crearExamen->setText(""); for(int i=0; i < listaEdits.length();i++) { listaEdits.at(i)->setText(""); } reloadTree(); }
//rename the elements in the project dom tree void Project::slotRenamed(const KURL& oldURL, const KURL& newURL) { if ( oldURL == newURL) // just in case return; // remove the target if already there // TODO: check if this is correct because it removes a folder but not the content? d->m_projectFiles.removeFromListAndXML(newURL); emit statusMsg(i18n("Renaming files...")); progressBar->setTotalSteps(d->m_projectFiles.count()); progressBar->setValue(0); progressBar->setTextEnabled(true); QDomElement el; bool isFolder = oldURL.fileName(false).isEmpty(); ProjectList::Iterator it( d->m_projectFiles ); for ( ; it.current(); ++it) { ProjectURL * curUrl = it.current(); if ( oldURL == *curUrl || (isFolder && oldURL.isParentOf(*curUrl)) ) { curUrl->setPath( curUrl->path().replace(oldURL.path(), newURL.path()) ); el = curUrl->domElement; el.setAttribute("url", d->m_projectFiles.toRelative(*curUrl).path()); // el.setAttribute("upload_time", ""); d->m_modified = true; if (! isFolder) break; } progressBar->advance(1); } progressBar->setTotalSteps(1); progressBar->setValue(0); progressBar->setTextEnabled(false); emit statusMsg(QString::null); if (d->m_modified) setModified(); // there happens more than setting the flag ! emit reloadTree(&(d->m_projectFiles), false, QStringList()); emit newStatus(); }
void Project::slotAddDirectory(const KURL& p_dirURL, bool showDlg) { KURL dirURL = p_dirURL; if ( hasProject() && !dirURL.isEmpty() ) { dirURL.adjustPath(1); if ( !d->baseURL.isParentOf(dirURL) ) { KURL destination = d->baseURL; if (showDlg) { KURLRequesterDlg *urlRequesterDlg = new KURLRequesterDlg( d->baseURL.prettyURL(), d->m_mainWindow, ""); urlRequesterDlg->setCaption(i18n("%1: Copy to Project").arg(dirURL.prettyURL(0, KURL::StripFileProtocol))); urlRequesterDlg->urlRequester()->setMode( KFile::Directory | KFile::ExistingOnly); urlRequesterDlg->exec(); destination = urlRequesterDlg->selectedURL(); delete urlRequesterDlg; } if ( (showDlg == false) || (!destination.isEmpty()) ) { CopyTo *dlg = new CopyTo(d->baseURL); connect(dlg, SIGNAL(addFilesToProject(const KURL::List&)), SLOT (slotInsertFilesAfterCopying(const KURL::List&))); connect(dlg, SIGNAL(deleteDialog(CopyTo *)), d, SLOT (slotDeleteCopytoDlg(CopyTo *))); //if ( rdir.right(1) == "/" ) rdir.remove( rdir.length()-1,1); dirURL = dlg->copy(dirURL, destination); return; } else { return; } } d->insertFiles( dirURL, "*" ); //And again, insert now directly the directory name into the project. //It's important if rdir doesn't contain any files or subdirectories. d->insertFiles(dirURL); emit reloadTree( &(d->m_projectFiles), false, QStringList() ); } }
void PlaylistEditorView::customEvent(QEvent *event) { if (event->type() == MusicPlayerEvent::MetadataChangedEvent) { // TODO: this could be more efficient reloadTree(); } else if (event->type() == MusicPlayerEvent::AlbumArtChangedEvent) { // TODO: this could be more efficient reloadTree(); } else if (event->type() == MusicPlayerEvent::TrackRemovedEvent) { updateSelectedTracks(); } else if (event->type() == MusicPlayerEvent::TrackAddedEvent) { updateSelectedTracks(); } else if (event->type() == MusicPlayerEvent::AllTracksRemovedEvent) { updateSelectedTracks(); } else if (event->type() == MusicPlayerEvent::PlaylistChangedEvent) { //TODO should just update the relevent playlist here reloadTree(); } else if (event->type() == DialogCompletionEvent::kEventType) { DialogCompletionEvent *dce = static_cast<DialogCompletionEvent*>(event); // make sure the user didn't ESCAPE out of the menu if (dce->GetResult() < 0) return; QString resultid = dce->GetId(); QString resulttext = dce->GetResultText(); if (resultid == "smartplaylistmenu") { if (GetFocusWidget() != m_playlistTree) return; MythGenericTree *node = m_playlistTree->GetCurrentNode(); if (!node) return; MusicGenericTree *mnode = dynamic_cast<MusicGenericTree*>(node); if (!mnode) return; if (resulttext == tr("New Smart Playlist")) { QString category; if (mnode->getAction() == "smartplaylistcategory") category = mnode->getString(); MythScreenStack *mainStack = GetMythMainWindow()->GetMainStack(); SmartPlaylistEditor* editor = new SmartPlaylistEditor(mainStack); if (!editor->Create()) { delete editor; return; } editor->newSmartPlaylist(category); connect(editor, SIGNAL(smartPLChanged(const QString&, const QString&)), this, SLOT(smartPLChanged(QString, QString))); mainStack->AddScreen(editor); } else if (resulttext == tr("Remove Smart Playlist"))
void Project::slotRemove(const KURL& urlToRemove) { emit statusMsg(i18n("Removing files...")); progressBar->setTotalSteps(d->m_projectFiles.count()); progressBar->setValue(0); progressBar->setTextEnabled(true); KURL url; bool isFolder = d->m_projectFiles.isFolder(urlToRemove); ProjectList projectFiles = d->m_projectFiles; ProjectList::Iterator it(projectFiles); for ( ; it.current(); ++it) { url = *(it.current()); if (urlToRemove == url || (isFolder && urlToRemove.isParentOf(url)) ) { d->m_projectFiles.removeFromListAndXML(url); d->m_modified = true; emit eventHappened("after_project_remove", url.url(), QString::null); if (!isFolder) break; } progressBar->advance(1); } progressBar->setTotalSteps(1); progressBar->setValue(0); progressBar->setTextEnabled(false); emit statusMsg(QString::null); if (d->m_modified) setModified(); // there happens more than setting the flag ! emit reloadTree( &(d->m_projectFiles), false, QStringList() ); emit newStatus(); QString urlPath = QExtFileInfo::toRelative(urlToRemove, d->baseURL).path(); QString nice = urlPath; nice = KStringHandler::lsqueeze(nice, 60); if (KMessageBox::warningContinueCancel(d->m_mainWindow, i18n("<qt>Do you want to remove <br><b>%1</b><br> from the server(s) as well?</qt>").arg(nice), i18n("Remove From Server"), KStdGuiItem::remove(), "RemoveFromServer") == KMessageBox::Continue ) { QDomNode profilesNode = d->m_sessionDom.firstChild().firstChild().namedItem("uploadprofiles"); QDomNodeList profileList = profilesNode.toElement().elementsByTagName("profile"); QDomElement e; QString s; for (uint i = 0; i < profileList.count(); i++) { e = profileList.item(i).toElement(); QString path = e.attribute("remote_path",""); if (!path.startsWith("/")) path.prepend("/"); KURL baseUrl; baseUrl.setProtocol(e.attribute("remote_protocol","ftp")); baseUrl.setPort(e.attribute("remote_port","").toInt()); baseUrl.setHost(e.attribute("remote_host","")); baseUrl.setPath(path); baseUrl.setUser(e.attribute("user","")); QString passwd = password(e.attribute("remote_protocol") + "://" + e.attribute("user") + "@" + e.attribute("remote_host")); baseUrl.setPass(passwd); baseUrl.addPath(urlPath); KIO::NetAccess::del(baseUrl, d->m_mainWindow); } } }
void setTreeMaxDepth(int max_depth) {this->max_depth = max_depth; emit propertyChanged("MaxTreeDepth"); reloadTree();}