Review Request: [17/18] Finally refactor main UI

Ivan Shapovalov intelfx100 at gmail.com
Fri Aug 31 06:44:14 UTC 2012


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/105691/
-----------------------------------------------------------

(Updated Aug. 31, 2012, 6:44 a.m.)


Review request for KDevelop and Andreas Pakulat.


Changes
-------

Add a screenshot showing unusable tab-bar at the left side.


Description
-------

Changes done:
1) Pass current project to the UI and pathes model.
-> reasoning: they use it to relativize URLs
2) last-item-placeholders in pathes- and includes-model replaced by add*() methods
-> reasoning: UI will use URL requesters to add new items
3) add a persistent (undeleteable; attempts to change its path result in creation of another item) "project root" item to the pathes model
-> reasoning: usability - many people will want to do common per-project settings
4) make project pathes model URL-aware: clean/relativize pathes on adding, introduce custom roles to get full pathes/URLs
-> reasoning: usability

UI modifications done:
5) replace listview of sub-project pathes with a combobox URL requester
-> reasoning: less on-screen space
6) Replace stacked widget for includes/defines selection with a tab-interface.
-> reasoning: usability - one can see all choices (includes and defines, maybe language features when they are merged) at once instead of having to open the combobox.
7) Use URL requesters and add/remove buttons instead of "Double-Click here..." placeholders.
-> reasoning: usability - one may select a path without having to type it.
8) Add a button to remove selected include/define
-> reasoning: in comments
9) Change various labels and popup texts
-> reasoning: on-screen readability.
10) Clear inner UI on config set rather than before config loading.
-> reasoning: robustness (when new configuration is selected, UI is cleared and refilled from scratch instead of overwriting old data).


Diffs
-----

  configwidget.h ce9ba32 
  configwidget.cpp 38bc551 
  configwidget.ui d411d83 
  custombuildsystemconfig.h 62901d4 
  custombuildsystemconfigwidget.h d94e9fc 
  custombuildsystemconfigwidget.cpp 791b7c7 
  includesmodel.h debf278 
  includesmodel.cpp ab42e16 
  kcm_custombuildsystem.cpp 2f222bf 
  projectpathsmodel.h d32bb92 
  projectpathsmodel.cpp 6ee35b7 

Diff: http://git.reviewboard.kde.org/r/105691/diff/


Testing
-------

Manual testing.


Screenshots (updated)
-----------

Before changes
  http://git.reviewboard.kde.org/r/105691/s/654/
New UI - idle
  http://git.reviewboard.kde.org/r/105691/s/655/
New UI - editing project path
  http://git.reviewboard.kde.org/r/105691/s/656/
Unusable tab-bar at the side
  http://git.reviewboard.kde.org/r/105691/s/712/


Thanks,

Ivan Shapovalov

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20120831/10549594/attachment.html>


More information about the KDevelop-devel mailing list