#include <LaunchThreadTable.h>
Public Member Functions | |
| InversionThread * | currentEditableThread () |
| bool | isThreadSelected (int index) |
| LaunchThreadTable (QWidget *parent=0) | |
| void | refresh () |
| ThreadList | selectedThreads (bool &allOfTheSameType) |
| ~LaunchThreadTable () | |
| LaunchThreadTable::LaunchThreadTable | ( | QWidget * | parent = 0 | ) |
| LaunchThreadTable::~LaunchThreadTable | ( | ) | [inline] |
{}
References MSG_ID, QGpCoreTools::tr(), and TRACE.
{
TRACE;
QModelIndex index=currentIndex();
if(index.isValid()) {
InversionThread * t=static_cast<InversionThread *>(index.internalPointer());
if(t->isRunning()) {
Message::warning(MSG_ID,tr("Editing thread"),
tr("Cannot edit a running process"), Message::cancel());
return 0;
} else {
return t;
}
} else return 0;
}
| bool LaunchThreadTable::isThreadSelected | ( | int | index | ) | [inline] |
Referenced by selectedThreads().
{return selectionModel()->isRowSelected(index, rootIndex());}
| void LaunchThreadTable::refresh | ( | ) |
| ThreadList LaunchThreadTable::selectedThreads | ( | bool & | allOfTheSameType | ) |
References dinverGui, isThreadSelected(), and TRACE.
{
TRACE;
ThreadList selThreads;
int n=dinverGui->threads().count();
InversionThread * tRef=0;
allOfTheSameType=true;
for(int i=0;i < n;i++ ) {
if(isThreadSelected( i) ) {
InversionThread * t=dinverGui->threads().at(i);
if(tRef==0) tRef=t;
else if( *t!=*tRef) allOfTheSameType=false;
selThreads << t;
}
}
return selThreads;
}