ctkDICOMAppWidget.ui 20 KB

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