View Issue Details

IDProjectCategoryView StatusLast Update
0001672Slicer4Core: Base Codepublic2017-06-07 23:27
Reporterfinetjul Assigned Tojcfr  
PrioritylowSeverityfeatureReproducibilityN/A
Status resolvedResolutionfixed 
Product VersionSlicer 4.0.1 
Target VersionFixed in Version 
Summary0001672: Change ctkDirectoryButton into ctkPathLineEdit
Description

ctkDirectoryButton enforces a fixed width (can't be shrinked), while ctkPathLineEdit is a bit more flexible.

Additional Information

ctkDirectoryButton was created to mimic Slicer3 behavior. ctkPathLineEdit offers multiple way to select a file/directory: using a browse button, using auto-completion, or using favorites.

TagsNo tags attached.

Relationships

related to 0002291 acknowledgedjcfr "Add a directory" cannot navigate path 

Activities

finetjul

finetjul

2012-06-07 06:57

administrator   ~0004786

Embed an optional browse button in ctkPathLineEdit:
Q_PROPERTY(bool showBrowseButton READ showBrowseButton WRITE setShowBrowseButton)

crmullin

crmullin

2012-06-07 07:01

developer   ~0004787

Would this be instead of linking to a QPushButton as in these instructions?
https://github.com/commontk/CTK/issues/14

finetjul

finetjul

2012-06-07 07:17

administrator   ~0004788

yes, ctkPathLineEdit would offer the option of having a browse button inside the widget directly.

finetjul

finetjul

2012-06-19 12:16

administrator   ~0004859

Please clean up qSlicerCLIModuleUIHelperPrivate::createFileTagWidget()

crmullin

crmullin

2012-06-19 12:37

developer   ~0004860

Do you mean that inside this function would be a good place to use ctkPathLineEdit instead of QLineEdit?

finetjul

finetjul

2012-06-19 13:09

administrator   ~0004861

Yes, but please update your repo, it's already the case.
I just use a QToolButton manually, and it should be using the ctkPathLineEdit built-in toolbutton when it will exist.

finetjul

finetjul

2012-08-26 22:16

administrator   ~0005792

Browse button added in ctkPathLineEdit in: https://github.com/commontk/CTK/commit/0de5ad082c0ba0d68056ca40a4e31ea2b9bd0556

finetjul

finetjul

2012-08-28 09:56

administrator   ~0005835

From Andrei on 08/28/2012:
[...]
What I do not like is that it becomes intuitive only once you start
typing something meaningful. It just does not look like the place you
would use to select the path. [...] here are some ideas for discussion:
a) initialize the widget with the currently selected path, don't have
it blank, also maybe make it grayed out to make it look different from
the regular LineEdit
b) what is the purpose of the drop-down "v" button on the right? It has
no effect for me. Is this history? How does an item get added to that
history?
c) for the "Browse" button, add some icon that would hint the user that
it is for path selection ("..." does not seem to be intuitive enough)
d) IMO, there should be an option to disable editing of the line edit
part of the widget, and use it only for displaying the selected path,
so that user interacts with it using only browse button, and maybe
history button.

finetjul

finetjul

2012-08-28 09:59

administrator   ~0005836

a) I agree. Note for developer, consider using QLineEdit::placeholderText
b) it is for the history, items can be set only at the application level. Maybe it should be off by default though. Could also add a mode where any current path is added in the list (especially in the d case)
c) I agree
d) Great idea

fedorov

fedorov

2012-08-28 14:41

developer   ~0005845

One more idea: once an item is selected, does it make sense (and is it possible?) to display an icon to the left of the text, to indicate what kind of item was selected (directory vs file)?

jcfr

jcfr

2012-09-14 12:07

administrator   ~0006079

This is currently targeted for 4.3 and is lower priority. Having a fresh eye on the topic would be great. If you have any question, feel free to ask to Chris

jcfr

jcfr

2012-09-24 07:42

administrator   ~0006186

Reminder sent to: crmullin

Hi Chris, not sure to remember. Did you have topic related to that issue ? Sankhesh will be working on it. Thanks

crmullin

crmullin

2012-09-24 09:22

developer   ~0006188

I don't believe I had anything substantial on this issue.

sankhesh

sankhesh

2012-11-21 06:23

developer   ~0007335

Seems like the browse button in ctkPathLineEdit expects to choose a file. Is this intentional?
If yes, there should be a boolean that controls whether the browse button opens a file selection or directory selection dialog.

finetjul

finetjul

2012-11-21 09:56

administrator   ~0007338

The type of browse dialog is controlled by the type of filter:
https://github.com/commontk/CTK/blob/master/Libs/Widgets/ctkPathLineEdit.cpp#L419

Instead of an additional property, I suggest extended documentation in the .h instead.

jcfr

jcfr

2013-08-19 14:17

administrator   ~0009525

Work-in-progress topic: https://github.com/jcfr/Slicer/tree/1672-change-ctkdirectorybutton-into-ctkpathlineedit

jcfr

jcfr

2017-06-07 23:27

administrator   ~0014610

Fix committed to 2145-support-for-installing-extension-from-file branch.

Related Changesets

Slicer: 2145-support-for-installing-extension-from-file d5089285

2013-08-20 14:50:03

jcfr

Details Diff
BUG: Change ctkDirectoryButton into ctkPathLineEdit

*DO NOT INTEGRATE*

Know issue: When updating the Cache directory in setting panel, each
key stroke leads to the creation of path.

Fixes 0001672

From: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22301 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/QTCLI/qSlicerCLIModuleUIHelper.cxx Diff File
mod - Base/QTGUI/Resources/UI/qSlicerSaveDataDialog.ui Diff File
mod - Base/QTGUI/Resources/UI/qSlicerSettingsCachePanel.ui Diff File
mod - Base/QTGUI/Resources/UI/qSlicerSettingsExtensionsPanel.ui Diff File
mod - Base/QTGUI/Resources/UI/qSlicerSettingsModulesPanel.ui Diff File
mod - Base/QTGUI/qSlicerSaveDataDialog.cxx Diff File
mod - Base/QTGUI/qSlicerSettingsCachePanel.cxx Diff File
mod - Base/QTGUI/qSlicerSettingsExtensionsPanel.cxx Diff File
mod - Base/QTGUI/qSlicerSettingsModulesPanel.cxx Diff File
mod - Modules/Loadable/TractographyInteractiveSeeding/Resources/UI/qSlicerTractographyInteractiveSeedingModuleWidget.ui Diff File
mod - Modules/Loadable/TractographyInteractiveSeeding/qSlicerTractographyInteractiveSeedingModuleWidget.cxx Diff File
mod - Modules/Scripted/DICOM2FullBrainTractography/DICOM2FullBrainTractographyLib/Resources/UI/dicom2nrrd.ui Diff File
mod - Modules/Scripted/DICOM2FullBrainTractography/DICOM2FullBrainTractographyLib/full_tractography_workflow.py Diff File

Issue History

Date Modified Username Field Change
2012-01-30 05:31 finetjul New Issue
2012-01-30 05:31 finetjul Status new => assigned
2012-01-30 05:31 finetjul Assigned To => finetjul
2012-02-01 04:32 finetjul Assigned To finetjul => joe_snyder
2012-06-01 11:50 jcfr Assigned To joe_snyder => crmullin
2012-06-07 06:57 finetjul Note Added: 0004786
2012-06-07 07:01 crmullin Note Added: 0004787
2012-06-07 07:17 finetjul Note Added: 0004788
2012-06-19 12:16 finetjul Note Added: 0004859
2012-06-19 12:37 crmullin Note Added: 0004860
2012-06-19 13:09 finetjul Note Added: 0004861
2012-08-20 10:02 jcfr Target Version Slicer 4.2.0 - Feature freeze Sept 1st 2012 => Slicer 4.2.5
2012-08-21 09:39 jcfr Target Version Slicer 4.2.5 => Slicer 4.3.0
2012-08-26 22:16 finetjul Note Added: 0005792
2012-08-28 09:56 finetjul Note Added: 0005835
2012-08-28 09:59 finetjul Note Added: 0005836
2012-08-28 14:41 fedorov Note Added: 0005845
2012-09-14 12:05 jcfr Assigned To crmullin => sankhesh
2012-09-14 12:07 jcfr Note Added: 0006079
2012-09-14 12:19 jcfr Relationship added related to 0002291
2012-09-24 07:42 jcfr Note Added: 0006186
2012-09-24 09:22 crmullin Note Added: 0006188
2012-11-21 06:23 sankhesh Note Added: 0007335
2012-11-21 09:56 finetjul Note Added: 0007338
2013-06-03 05:15 jcfr Assigned To sankhesh => jcfr
2013-08-19 14:17 jcfr Note Added: 0009525
2013-08-19 14:17 jcfr Target Version Slicer 4.3.0 => Slicer 4.4.0
2014-04-22 10:25 jcfr Status assigned => acknowledged
2014-04-22 10:25 jcfr Target Version Slicer 4.4.0 =>
2017-06-07 23:27 jcfr Changeset attached => Slicer 2145-support-for-installing-extension-from-file d5089285
2017-06-07 23:27 jcfr Note Added: 0014610
2017-06-07 23:27 jcfr Status acknowledged => resolved
2017-06-07 23:27 jcfr Resolution open => fixed