Skip to content

Commit

Permalink
Renderers can now declare a preferred color theme.
Browse files Browse the repository at this point in the history
  • Loading branch information
oozcitak committed Oct 12, 2010
1 parent 8f2b0e3 commit f1a9696
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 4 deletions.
10 changes: 8 additions & 2 deletions ImageListView/ImageListView.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1033,11 +1033,17 @@ public void SetRenderer(ImageListViewRenderer renderer)
if (renderer == null)
throw new ArgumentNullException("renderer");

if (mRenderer != null)
mRenderer.Dispose();
ImageListViewRenderer oldRenderer = mRenderer;

mRenderer = renderer;
mRenderer.ImageListView = this;
ImageListViewColor[] preferredColors = mRenderer.PreferredColors;
if (preferredColors != null)
mColors = preferredColors[0];

if (oldRenderer != null)
oldRenderer.Dispose();

if (layoutManager != null)
layoutManager.Update(true);

Expand Down
4 changes: 4 additions & 0 deletions ImageListView/ImageListViewRenderer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,10 @@ public class ImageListViewRenderer : IDisposable
/// Gets whether the lazy refresh interval is exceeded.
/// </summary>
internal bool LazyRefreshIntervalExceeded { get { return ((int)(DateTime.Now - lastRenderTime).TotalMilliseconds > LazyRefreshInterval); } }
/// <summary>
/// Gets a list of color themes preferred by this renderer.
/// </summary>
public virtual ImageListViewColor[] PreferredColors { get { return null; } }
#endregion

#region Constructor
Expand Down
2 changes: 0 additions & 2 deletions ImageListViewTests/TestForm.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,6 @@ public TestForm()
imageListView.ThumbnailCaching += new Manina.Windows.Forms.ThumbnailCachingEventHandler(imageListView1_ThumbnailCaching);
imageListView.ThumbnailCached += new Manina.Windows.Forms.ThumbnailCachedEventHandler(imageListView1_ThumbnailCached);
imageListView.CacheError += new Manina.Windows.Forms.CacheErrorEventHandler(imageListView1_CacheError);

imageListView.Colors = Manina.Windows.Forms.ImageListViewColor.Mandarin;
}
#endregion

Expand Down

0 comments on commit f1a9696

Please sign in to comment.