예제 #1
0
        protected override void thumbnailClicked( Thumbnail tn, bool doubleClick )
        {
            if (tn == null)
                return;

            if (ModifierKeys == Keys.Control && !doubleClick)
            {
                if (SelectedThumbnailKey == tn.Key)
                    return;
                if (SelectedThumbnailKeys.Contains(tn.Key))
                    SelectedThumbnailKeys.Remove(tn.Key);
                else
                    SelectedThumbnailKeys.Add(tn.Key);
                Invalidate();
                return;
            }

            if (SelectedThumbnailKey != tn.Key)
            {
                SelectedThumbnailKey = tn.Key;
                loadPhotoBox(tn.loadViewImage());
                var fn = tn.GetBackdroppedFilename();
                if (fn != null)
                    _backdroppedImage = new Bitmap(fn);
            }

            if (doubleClick)
            {
                if (_person.ThumbnailKey != SelectedThumbnailKey)
                {
                    if (_person.ThumbnailLocked && ModifierKeys != Keys.Control)
                    {
                        Global.showMsgBox(this,
                                          "Eftersom bilden är låst måste du hålla in Ctrl-tangenten samtidigt som du dubbelklickar för att byta bild!");
                        return;
                    }
                    _person.ThumbnailKey = SelectedThumbnailKey;
                    updateLV(null);
                }
                _person.ThumbnailLocked = true;
            }

            Invalidate();
        }