ctkDICOMAppWidget.ui 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <ui version="4.0">
  3. <class>ctkDICOMAppWidget</class>
  4. <widget class="QWidget" name="ctkDICOMAppWidget">
  5. <property name="geometry">
  6. <rect>
  7. <x>0</x>
  8. <y>0</y>
  9. <width>739</width>
  10. <height>638</height>
  11. </rect>
  12. </property>
  13. <property name="sizePolicy">
  14. <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
  15. <horstretch>0</horstretch>
  16. <verstretch>0</verstretch>
  17. </sizepolicy>
  18. </property>
  19. <property name="windowTitle">
  20. <string>ctkDICOMAppWidget</string>
  21. </property>
  22. <layout class="QVBoxLayout" name="verticalLayout_2">
  23. <item>
  24. <layout class="QHBoxLayout" name="HorizontalLayout_3"/>
  25. </item>
  26. <item>
  27. <widget class="QToolBar" name="ToolBar">
  28. <property name="windowTitle">
  29. <string>toolBar</string>
  30. </property>
  31. <property name="floatable">
  32. <bool>true</bool>
  33. </property>
  34. <addaction name="ActionImport"/>
  35. <addaction name="ActionExport"/>
  36. <addaction name="ActionQuery"/>
  37. <addaction name="ActionSend"/>
  38. </widget>
  39. </item>
  40. <item>
  41. <layout class="QVBoxLayout" name="VerticalLayout">
  42. <item>
  43. <layout class="QHBoxLayout" name="TopLayout">
  44. <item>
  45. <widget class="QLabel" name="DatabaseNameLabel">
  46. <property name="maximumSize">
  47. <size>
  48. <width>100</width>
  49. <height>20</height>
  50. </size>
  51. </property>
  52. <property name="text">
  53. <string>LocalDatabase:</string>
  54. </property>
  55. </widget>
  56. </item>
  57. <item>
  58. <widget class="ctkDirectoryButton" name="DirectoryButton" native="true">
  59. <property name="minimumSize">
  60. <size>
  61. <width>200</width>
  62. <height>20</height>
  63. </size>
  64. </property>
  65. </widget>
  66. </item>
  67. <item>
  68. <spacer name="HorizontalSpacer">
  69. <property name="orientation">
  70. <enum>Qt::Horizontal</enum>
  71. </property>
  72. <property name="sizeHint" stdset="0">
  73. <size>
  74. <width>40</width>
  75. <height>20</height>
  76. </size>
  77. </property>
  78. </spacer>
  79. </item>
  80. </layout>
  81. </item>
  82. <item>
  83. <layout class="QHBoxLayout" name="QueryLayout" stretch="0,1,0">
  84. <item>
  85. <layout class="QHBoxLayout" name="horizontalLayout_4"/>
  86. </item>
  87. <item>
  88. <widget class="QTreeView" name="TreeView">
  89. <property name="alternatingRowColors">
  90. <bool>true</bool>
  91. </property>
  92. </widget>
  93. </item>
  94. <item>
  95. <layout class="QVBoxLayout" name="searchOptionLayout">
  96. <item>
  97. <widget class="ctkDICOMQueryWidget" name="SearchOption" native="true"/>
  98. </item>
  99. <item>
  100. <spacer name="VerticalSpacer">
  101. <property name="orientation">
  102. <enum>Qt::Vertical</enum>
  103. </property>
  104. <property name="sizeHint" stdset="0">
  105. <size>
  106. <width>20</width>
  107. <height>40</height>
  108. </size>
  109. </property>
  110. </spacer>
  111. </item>
  112. </layout>
  113. </item>
  114. </layout>
  115. </item>
  116. <item>
  117. <layout class="QHBoxLayout" name="horizontalLayout"/>
  118. </item>
  119. <item>
  120. <widget class="QFrame" name="UserFrame">
  121. <property name="frameShape">
  122. <enum>QFrame::StyledPanel</enum>
  123. </property>
  124. <property name="frameShadow">
  125. <enum>QFrame::Raised</enum>
  126. </property>
  127. </widget>
  128. </item>
  129. <item>
  130. <layout class="QHBoxLayout" name="ViewerLayout">
  131. <item>
  132. <layout class="QVBoxLayout" name="verticalLayout">
  133. <item>
  134. <widget class="ctkDICOMThumbnailListWidget" name="ThumbnailsWidget" native="true">
  135. <property name="sizePolicy">
  136. <sizepolicy hsizetype="Expanding" vsizetype="Expanding">
  137. <horstretch>0</horstretch>
  138. <verstretch>0</verstretch>
  139. </sizepolicy>
  140. </property>
  141. <property name="minimumSize">
  142. <size>
  143. <width>0</width>
  144. <height>200</height>
  145. </size>
  146. </property>
  147. </widget>
  148. </item>
  149. <item>
  150. <layout class="QHBoxLayout" name="horizontalLayout_3">
  151. <item>
  152. <spacer name="horizontalSpacer">
  153. <property name="orientation">
  154. <enum>Qt::Horizontal</enum>
  155. </property>
  156. <property name="sizeHint" stdset="0">
  157. <size>
  158. <width>40</width>
  159. <height>20</height>
  160. </size>
  161. </property>
  162. </spacer>
  163. </item>
  164. <item>
  165. <widget class="QSlider" name="ThumbnailWidthSlider">
  166. <property name="maximumSize">
  167. <size>
  168. <width>200</width>
  169. <height>16777215</height>
  170. </size>
  171. </property>
  172. <property name="minimum">
  173. <number>64</number>
  174. </property>
  175. <property name="maximum">
  176. <number>256</number>
  177. </property>
  178. <property name="value">
  179. <number>128</number>
  180. </property>
  181. <property name="orientation">
  182. <enum>Qt::Horizontal</enum>
  183. </property>
  184. </widget>
  185. </item>
  186. <item>
  187. <spacer name="horizontalSpacer_2">
  188. <property name="orientation">
  189. <enum>Qt::Horizontal</enum>
  190. </property>
  191. <property name="sizeHint" stdset="0">
  192. <size>
  193. <width>40</width>
  194. <height>20</height>
  195. </size>
  196. </property>
  197. </spacer>
  198. </item>
  199. </layout>
  200. </item>
  201. </layout>
  202. </item>
  203. <item>
  204. <widget class="QFrame" name="PreviewFrame">
  205. <property name="minimumSize">
  206. <size>
  207. <width>256</width>
  208. <height>256</height>
  209. </size>
  210. </property>
  211. <layout class="QVBoxLayout" name="verticalLayout_3">
  212. <item>
  213. <layout class="QHBoxLayout" name="HorizontalLayout">
  214. <item>
  215. <widget class="QPushButton" name="PrevStudyButton">
  216. <property name="sizePolicy">
  217. <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
  218. <horstretch>32</horstretch>
  219. <verstretch>32</verstretch>
  220. </sizepolicy>
  221. </property>
  222. <property name="maximumSize">
  223. <size>
  224. <width>40</width>
  225. <height>32</height>
  226. </size>
  227. </property>
  228. <property name="toolTip">
  229. <string>Previous study</string>
  230. </property>
  231. <property name="text">
  232. <string>&lt;&lt;&lt;</string>
  233. </property>
  234. </widget>
  235. </item>
  236. <item>
  237. <widget class="QPushButton" name="PrevSeriesButton">
  238. <property name="sizePolicy">
  239. <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
  240. <horstretch>32</horstretch>
  241. <verstretch>32</verstretch>
  242. </sizepolicy>
  243. </property>
  244. <property name="maximumSize">
  245. <size>
  246. <width>40</width>
  247. <height>32</height>
  248. </size>
  249. </property>
  250. <property name="toolTip">
  251. <string>Previous series</string>
  252. </property>
  253. <property name="text">
  254. <string>&lt;&lt;</string>
  255. </property>
  256. </widget>
  257. </item>
  258. <item>
  259. <widget class="QPushButton" name="PrevImageButton">
  260. <property name="sizePolicy">
  261. <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
  262. <horstretch>32</horstretch>
  263. <verstretch>32</verstretch>
  264. </sizepolicy>
  265. </property>
  266. <property name="maximumSize">
  267. <size>
  268. <width>40</width>
  269. <height>32</height>
  270. </size>
  271. </property>
  272. <property name="toolTip">
  273. <string>Previous image</string>
  274. </property>
  275. <property name="text">
  276. <string>&lt;</string>
  277. </property>
  278. </widget>
  279. </item>
  280. <item>
  281. <widget class="QPushButton" name="NextImageButton">
  282. <property name="sizePolicy">
  283. <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
  284. <horstretch>32</horstretch>
  285. <verstretch>32</verstretch>
  286. </sizepolicy>
  287. </property>
  288. <property name="maximumSize">
  289. <size>
  290. <width>40</width>
  291. <height>32</height>
  292. </size>
  293. </property>
  294. <property name="toolTip">
  295. <string>Next image</string>
  296. </property>
  297. <property name="text">
  298. <string>&gt;</string>
  299. </property>
  300. </widget>
  301. </item>
  302. <item>
  303. <widget class="QPushButton" name="NextSeriesButton">
  304. <property name="sizePolicy">
  305. <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
  306. <horstretch>32</horstretch>
  307. <verstretch>32</verstretch>
  308. </sizepolicy>
  309. </property>
  310. <property name="maximumSize">
  311. <size>
  312. <width>40</width>
  313. <height>32</height>
  314. </size>
  315. </property>
  316. <property name="toolTip">
  317. <string>Next series</string>
  318. </property>
  319. <property name="text">
  320. <string>&gt;&gt;</string>
  321. </property>
  322. </widget>
  323. </item>
  324. <item>
  325. <widget class="QPushButton" name="NextStudyButton">
  326. <property name="sizePolicy">
  327. <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
  328. <horstretch>32</horstretch>
  329. <verstretch>32</verstretch>
  330. </sizepolicy>
  331. </property>
  332. <property name="maximumSize">
  333. <size>
  334. <width>40</width>
  335. <height>32</height>
  336. </size>
  337. </property>
  338. <property name="toolTip">
  339. <string>Next study</string>
  340. </property>
  341. <property name="text">
  342. <string>&gt;&gt;&gt;</string>
  343. </property>
  344. </widget>
  345. </item>
  346. </layout>
  347. </item>
  348. <item>
  349. <widget class="ctkDICOMDatasetView" name="ImagePreview" native="true">
  350. <property name="sizePolicy">
  351. <sizepolicy hsizetype="Minimum" vsizetype="Expanding">
  352. <horstretch>0</horstretch>
  353. <verstretch>0</verstretch>
  354. </sizepolicy>
  355. </property>
  356. </widget>
  357. </item>
  358. <item>
  359. <layout class="QHBoxLayout" name="horizontalLayout_2">
  360. <item>
  361. <widget class="QCheckBox" name="AutoPlayCheckbox">
  362. <property name="text">
  363. <string>auto-play</string>
  364. </property>
  365. </widget>
  366. </item>
  367. <item>
  368. <widget class="QSlider" name="PlaySlider">
  369. <property name="sizePolicy">
  370. <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
  371. <horstretch>0</horstretch>
  372. <verstretch>0</verstretch>
  373. </sizepolicy>
  374. </property>
  375. <property name="orientation">
  376. <enum>Qt::Horizontal</enum>
  377. </property>
  378. </widget>
  379. </item>
  380. </layout>
  381. </item>
  382. </layout>
  383. </widget>
  384. </item>
  385. </layout>
  386. </item>
  387. </layout>
  388. </item>
  389. </layout>
  390. <action name="ActionImport">
  391. <property name="text">
  392. <string>Import</string>
  393. </property>
  394. <property name="toolTip">
  395. <string>Import a DICOM file or folder</string>
  396. </property>
  397. </action>
  398. <action name="ActionExport">
  399. <property name="enabled">
  400. <bool>false</bool>
  401. </property>
  402. <property name="text">
  403. <string>Export</string>
  404. </property>
  405. <property name="toolTip">
  406. <string>Export selected study/series to a DICOM folder (not yet available)</string>
  407. </property>
  408. </action>
  409. <action name="ActionQuery">
  410. <property name="text">
  411. <string>Query</string>
  412. </property>
  413. <property name="toolTip">
  414. <string>Query and Retrieve DICOM studies from a DICOM node</string>
  415. </property>
  416. </action>
  417. <action name="ActionSend">
  418. <property name="enabled">
  419. <bool>false</bool>
  420. </property>
  421. <property name="text">
  422. <string>Send</string>
  423. </property>
  424. <property name="toolTip">
  425. <string>Send DICOM Studies to a DICOM node (not yet available)</string>
  426. </property>
  427. </action>
  428. </widget>
  429. <customwidgets>
  430. <customwidget>
  431. <class>ctkDICOMQueryWidget</class>
  432. <extends>QWidget</extends>
  433. <header>ctkDICOMQueryWidget.h</header>
  434. <container>1</container>
  435. </customwidget>
  436. <customwidget>
  437. <class>ctkDirectoryButton</class>
  438. <extends>QWidget</extends>
  439. <header>ctkDirectoryButton.h</header>
  440. <container>1</container>
  441. <slots>
  442. <signal>directoryChanged(QString)</signal>
  443. </slots>
  444. </customwidget>
  445. <customwidget>
  446. <class>ctkDICOMThumbnailListWidget</class>
  447. <extends>QWidget</extends>
  448. <header>ctkDICOMThumbnailListWidget.h</header>
  449. <container>1</container>
  450. </customwidget>
  451. <customwidget>
  452. <class>ctkDICOMDatasetView</class>
  453. <extends>QWidget</extends>
  454. <header location="global">ctkDICOMDatasetView.h</header>
  455. <container>1</container>
  456. </customwidget>
  457. </customwidgets>
  458. <resources/>
  459. <connections>
  460. <connection>
  461. <sender>ActionImport</sender>
  462. <signal>triggered(bool)</signal>
  463. <receiver>ctkDICOMAppWidget</receiver>
  464. <slot>openImportDialog()</slot>
  465. <hints>
  466. <hint type="sourcelabel">
  467. <x>-1</x>
  468. <y>-1</y>
  469. </hint>
  470. <hint type="destinationlabel">
  471. <x>319</x>
  472. <y>239</y>
  473. </hint>
  474. </hints>
  475. </connection>
  476. <connection>
  477. <sender>ActionExport</sender>
  478. <signal>triggered(bool)</signal>
  479. <receiver>ctkDICOMAppWidget</receiver>
  480. <slot>openExportDialog()</slot>
  481. <hints>
  482. <hint type="sourcelabel">
  483. <x>-1</x>
  484. <y>-1</y>
  485. </hint>
  486. <hint type="destinationlabel">
  487. <x>319</x>
  488. <y>239</y>
  489. </hint>
  490. </hints>
  491. </connection>
  492. <connection>
  493. <sender>ActionQuery</sender>
  494. <signal>triggered(bool)</signal>
  495. <receiver>ctkDICOMAppWidget</receiver>
  496. <slot>openQueryDialog()</slot>
  497. <hints>
  498. <hint type="sourcelabel">
  499. <x>-1</x>
  500. <y>-1</y>
  501. </hint>
  502. <hint type="destinationlabel">
  503. <x>319</x>
  504. <y>239</y>
  505. </hint>
  506. </hints>
  507. </connection>
  508. <connection>
  509. <sender>NextImageButton</sender>
  510. <signal>clicked()</signal>
  511. <receiver>ctkDICOMAppWidget</receiver>
  512. <slot>onNextImage()</slot>
  513. <hints>
  514. <hint type="sourcelabel">
  515. <x>608</x>
  516. <y>395</y>
  517. </hint>
  518. <hint type="destinationlabel">
  519. <x>369</x>
  520. <y>318</y>
  521. </hint>
  522. </hints>
  523. </connection>
  524. <connection>
  525. <sender>PrevImageButton</sender>
  526. <signal>clicked()</signal>
  527. <receiver>ctkDICOMAppWidget</receiver>
  528. <slot>onPreviousImage()</slot>
  529. <hints>
  530. <hint type="sourcelabel">
  531. <x>566</x>
  532. <y>395</y>
  533. </hint>
  534. <hint type="destinationlabel">
  535. <x>369</x>
  536. <y>318</y>
  537. </hint>
  538. </hints>
  539. </connection>
  540. <connection>
  541. <sender>NextSeriesButton</sender>
  542. <signal>clicked()</signal>
  543. <receiver>ctkDICOMAppWidget</receiver>
  544. <slot>onNextSeries()</slot>
  545. <hints>
  546. <hint type="sourcelabel">
  547. <x>650</x>
  548. <y>395</y>
  549. </hint>
  550. <hint type="destinationlabel">
  551. <x>369</x>
  552. <y>318</y>
  553. </hint>
  554. </hints>
  555. </connection>
  556. <connection>
  557. <sender>PrevSeriesButton</sender>
  558. <signal>clicked()</signal>
  559. <receiver>ctkDICOMAppWidget</receiver>
  560. <slot>onPreviousSeries()</slot>
  561. <hints>
  562. <hint type="sourcelabel">
  563. <x>524</x>
  564. <y>395</y>
  565. </hint>
  566. <hint type="destinationlabel">
  567. <x>369</x>
  568. <y>318</y>
  569. </hint>
  570. </hints>
  571. </connection>
  572. <connection>
  573. <sender>NextStudyButton</sender>
  574. <signal>clicked()</signal>
  575. <receiver>ctkDICOMAppWidget</receiver>
  576. <slot>onNextStudy()</slot>
  577. <hints>
  578. <hint type="sourcelabel">
  579. <x>692</x>
  580. <y>395</y>
  581. </hint>
  582. <hint type="destinationlabel">
  583. <x>369</x>
  584. <y>318</y>
  585. </hint>
  586. </hints>
  587. </connection>
  588. <connection>
  589. <sender>PrevStudyButton</sender>
  590. <signal>clicked()</signal>
  591. <receiver>ctkDICOMAppWidget</receiver>
  592. <slot>onPreviousStudy()</slot>
  593. <hints>
  594. <hint type="sourcelabel">
  595. <x>482</x>
  596. <y>395</y>
  597. </hint>
  598. <hint type="destinationlabel">
  599. <x>369</x>
  600. <y>318</y>
  601. </hint>
  602. </hints>
  603. </connection>
  604. <connection>
  605. <sender>AutoPlayCheckbox</sender>
  606. <signal>stateChanged(int)</signal>
  607. <receiver>ctkDICOMAppWidget</receiver>
  608. <slot>onAutoPlayCheckboxStateChanged(int)</slot>
  609. <hints>
  610. <hint type="sourcelabel">
  611. <x>430</x>
  612. <y>596</y>
  613. </hint>
  614. <hint type="destinationlabel">
  615. <x>369</x>
  616. <y>318</y>
  617. </hint>
  618. </hints>
  619. </connection>
  620. <connection>
  621. <sender>ThumbnailWidthSlider</sender>
  622. <signal>valueChanged(int)</signal>
  623. <receiver>ctkDICOMAppWidget</receiver>
  624. <slot>onThumbnailWidthSliderValueChanged(int)</slot>
  625. <hints>
  626. <hint type="sourcelabel">
  627. <x>236</x>
  628. <y>610</y>
  629. </hint>
  630. <hint type="destinationlabel">
  631. <x>369</x>
  632. <y>318</y>
  633. </hint>
  634. </hints>
  635. </connection>
  636. </connections>
  637. <slots>
  638. <signal>signal1()</signal>
  639. <slot>openImportDialog()</slot>
  640. <slot>openExportDialog()</slot>
  641. <slot>openQueryDialog()</slot>
  642. <slot>onDatabaseDirectoryChaged(QString)</slot>
  643. <slot>onNextImage()</slot>
  644. <slot>onPreviousImage()</slot>
  645. <slot>onNextSeries()</slot>
  646. <slot>onPreviousSeries()</slot>
  647. <slot>onNextStudy()</slot>
  648. <slot>onPreviousStudy()</slot>
  649. <slot>onAutoPlayCheckboxStateChanged(int)</slot>
  650. <slot>onThumbnailWidthSliderValueChanged(int)</slot>
  651. </slots>
  652. </ui>