Bug 202656 - [update policy] Obsolete values (dirty cache entries) should be indicated in views with a gray font color.
Summary: [update policy] Obsolete values (dirty cache entries) should be indicated in ...
Status: RESOLVED FIXED
Alias: None
Product: CDT
Classification: Tools
Component: cdt-debug-dsf (show other bugs)
Version: 0 DD 1.0   Edit
Hardware: PC All
: P3 enhancement (vote)
Target Milestone: 6.0   Edit
Assignee: Pawel Piech CLA
QA Contact: Pawel Piech CLA
URL:
Whiteboard:
Keywords:
: 203466 (view as bug list)
Depends on: 237544 204592
Blocks: 237543 202645
  Show dependency tree
 
Reported: 2007-09-07 11:29 EDT by Pawel Piech CLA
Modified: 2012-05-22 14:22 EDT (History)
4 users (show)

See Also:
cdtdoug: iplog-
Randy.Rohrbach: review+


Attachments
Patch with fix. (94.43 KB, patch)
2009-03-30 15:01 EDT, Pawel Piech CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Pawel Piech CLA 2007-09-07 11:29:51 EDT
In manual update mode, the debug views can be showing values which are no longer accurate.  But the view model usually has knowledge based on events coming from the data model when the values in the cache become obsolete.  Without retrieving the new values, the views in manual update mode can show that data in the view is out of date with a different font color in the view.
Comment 1 Pawel Piech CLA 2008-07-02 15:59:09 EDT
I added a dependency on VM cache work to enable caching of IElementPropertyProvider updates.  Practially speaking, bug 225650 will also need to be addressed before this feature can be used with the standard debugger views.
Comment 2 Pawel Piech CLA 2009-03-30 15:01:07 EDT
Created attachment 130292 [details]
Patch with fix.

This patch adds this feature and also addresses a couple of related issues.  In detail, the patch does the following:

1) When in manual update mode, the view is updated when the data in view become stale due to a model event.  This was always the case, but the stale data information was not used.  Now, if the data is stale an alternative background or foreground color is used in view.  
If in no-columns mode, a gray background is used.  If a foreground color is used to indicate changed value, etc.  It is still shown even when view data is stale.
If columns are shown, then the foreground color is set to gray instead.  This way the yellow background color for changed data can still be shown.  

2) When in manual mode, the view cache is pre-populated initially.  This avoids the problem that the view is always automatically refreshed when the debugger is first attached.  

3) When adding constants for the stale data colors, I cleaned up detail pane constants (bug 246005).
Comment 3 Pawel Piech CLA 2009-03-30 15:05:50 EDT
Given that this change includes an API change, Randy please review my changes before I commit them.
Comment 4 Randy Rohrbach CLA 2009-03-31 16:02:28 EDT
OK, I looked over all the code changes and they seem fine to me. Although there
are API changes here they are very localized and either not really used outside by anyone or immediately relate to the Properties API changes that were just put in in M6. So there will be little fallout here with these changes.

Randy
Comment 5 Pawel Piech CLA 2009-03-31 17:39:18 EDT
Thanks Randy I committed the fix.

I filed two new bugs related to this new functionality: bug 270673 and bug 270675.  I hope to have fixes for those soon.
Comment 6 Randy Rohrbach CLA 2012-05-22 14:22:12 EDT
*** Bug 203466 has been marked as a duplicate of this bug. ***