|
@@ -150,7 +150,8 @@ class imageBrowserWidget(ScriptedLoadableModuleWidget):
|
|
|
self.setupList=qt.QComboBox()
|
|
|
self.setupList.addItem('<Select>')
|
|
|
self.setupList.addItem("limfomiPET_iBrowser.json")
|
|
|
- self.setupList.addItem("iraemm_iBrowser.json")
|
|
|
+ self.setupList.addItem("iraemm_iBrowserProspective.json")
|
|
|
+ self.setupList.addItem("iraemm_iBrowserRetrospective.json")
|
|
|
self.setupList.currentIndexChanged.connect(self.onSetupListChanged)
|
|
|
setupFormLayout.addRow("Setup:",self.setupList)
|
|
|
|
|
@@ -278,6 +279,7 @@ class imageBrowserWidget(ScriptedLoadableModuleWidget):
|
|
|
self.serverList.setStyleSheet('background-color: green')
|
|
|
|
|
|
def onPatientListChanged(self,i):
|
|
|
+ #add potential filters from setup to dbFilter
|
|
|
ds=self.logic.getDataset(dbFilter={'participant':self.patientList.currentText})
|
|
|
|
|
|
visitVar=self.logic.getVarName(var='visitField')
|
|
@@ -496,7 +498,9 @@ class imageBrowserLogic(ScriptedLoadableModuleLogic):
|
|
|
#"iPNUMMretro/Study"
|
|
|
#self.schema='study'
|
|
|
#self.dataset=self.isetup['query']
|
|
|
-
|
|
|
+
|
|
|
+ #include filters...
|
|
|
+
|
|
|
ds=self.getDataset()
|
|
|
|
|
|
ids=[row[self.isetup['participantField']] for row in ds['rows']]
|
|
@@ -512,12 +516,20 @@ class imageBrowserLogic(ScriptedLoadableModuleLogic):
|
|
|
return defaults[var]
|
|
|
|
|
|
|
|
|
- def getDataset(self,name="Imaging",dbFilter=[]):
|
|
|
+ def getDataset(self,name="Imaging",dbFilter={}):
|
|
|
dset=self.isetup['datasets'][name]
|
|
|
project=dset['project']
|
|
|
schema=dset['schema']
|
|
|
query=dset['query']
|
|
|
+
|
|
|
+ #add default filters
|
|
|
qFilter=[]
|
|
|
+ try:
|
|
|
+ for qf in dset['filter']:
|
|
|
+ v=dset['filter'][qf]
|
|
|
+ qFilter.append({'variable':qf,'value':v,'oper':'eq'})
|
|
|
+ except KeyError:
|
|
|
+ pass
|
|
|
for f in dbFilter:
|
|
|
if f=='participant':
|
|
|
qFilter.append({'variable':self.isetup['participantField'],
|