コード例 #1
0
        private void SetupListViews()
        {
            listViewCategoriesDropSink = new RearrangingDropSink {
                CanDropBetween      = true,
                CanDropOnItem       = true,
                CanDropOnSubItem    = false,
                CanDropOnBackground = false,
                AcceptExternal      = true,
                FeedbackColor       = Color.Black
            };

            RearrangingDropSink listViewItemsDropSink = new RearrangingDropSink {
                CanDropBetween      = true,
                CanDropOnItem       = false,
                CanDropOnSubItem    = false,
                CanDropOnBackground = false,
                AcceptExternal      = false,
                FeedbackColor       = Color.Black
            };

            listViewItems.AutoResizeColumns(ColumnHeaderAutoResizeStyle.Head‌​erSize);
            listViewCategories.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
            listViewCategories.DragSource = new SimpleDragSource();
            listViewItems.DragSource      = new SimpleDragSource();
            listViewCategories.DropSink   = listViewCategoriesDropSink;
            listViewItems.DropSink        = listViewItemsDropSink;

            olvColumnItemName.ImageGetter = new ImageGetterDelegate(row => ((Item)row).ImageId);
        }
コード例 #2
0
        public GroupingSetupControl(IEnumerable <Grouping <T> > groupings)
        {
            InitializeComponent();

            DoubleBuffered = true;
            ResizeRedraw   = true;

            if (groupings == null || groupings.Count() == 0)
            {
                throw new ArgumentException("no groupings");
            }

            var rearrangingDropSink = new RearrangingDropSink(false);

            objectListView.DropSink = rearrangingDropSink;

            objectListView.ShowSortIndicators = false;
            objectListView.CustomSorter       = new SortDelegate((x, y) => { }); // noop

            objectListView.ItemChecked  += new ItemCheckedEventHandler(objectListView_ItemChecked);
            rearrangingDropSink.Dropped += new EventHandler <OlvDropEventArgs>(rearrangingDropSink_Dropped);
            rearrangingDropSink.CanDrop += new EventHandler <OlvDropEventArgs>(rearrangingDropSink_CanDrop);

            fieldNameColumn.AspectGetter    += delegate(object x) { return((x as Grouping <T>).Text); };
            objectListView.CheckedAspectName = "Checked";

            objectListView.SetObjects(groupings);
            Height = objectListView.RowHeightEffective * (objectListView.GetItemCount() + 3);
        }
コード例 #3
0
        private void InitListView()
        {
            //listview
            ListViewBeatmaps.FullRowSelect            = true;
            ListViewBeatmaps.AllowColumnReorder       = true;
            ListViewBeatmaps.Sorting                  = SortOrder.Descending;
            ListViewBeatmaps.UseHotItem               = true;
            ListViewBeatmaps.UseTranslucentHotItem    = true;
            ListViewBeatmaps.UseFiltering             = true;
            ListViewBeatmaps.UseNotifyPropertyChanged = true;
            ListViewBeatmaps.ShowItemCountOnGroups    = true;
            ListViewBeatmaps.CellEditActivation       = ObjectListView.CellEditActivateMode.DoubleClick;
            LastPlayed.AspectToStringConverter        = delegate(object cellValue)
            {
                if (cellValue == null)
                {
                    return("Never");
                }
                var val = (DateTime)cellValue;
                return(val > d ? $"{val}" : "Never");
            };

            var dropsink = new RearrangingDropSink();

            dropsink.CanDropBetween        = false;
            dropsink.CanDropOnItem         = false;
            dropsink.CanDropOnSubItem      = false;
            dropsink.CanDropOnBackground   = true;
            dropsink.ModelDropped         += DropsinkOnModelDropped;
            this.ListViewBeatmaps.DropSink = dropsink;
        }
コード例 #4
0
        public UninstallConfirmation()
        {
            InitializeComponent();

            olvColumnEnabled.AspectGetter = rowObject => ((ConfirmationEntry)rowObject).Enabled;
            olvColumnEnabled.AspectPutter = (rowObject, value) => ((ConfirmationEntry)rowObject).Enabled = (bool)value;

            olvColumnQuiet.AspectGetter = rowObject => ((ConfirmationEntry)rowObject).Entry.IsSilentPossible;
            olvColumnQuiet.AspectPutter = (rowObject, value) =>
            {
                var entry = ((ConfirmationEntry)rowObject).Entry;
                entry.IsSilentPossible = (bool)value && entry.UninstallerEntry.QuietUninstallPossible;
            };

            olvColumnInstallLocation.AspectGetter =
                rowObject => ((ConfirmationEntry)rowObject).Entry.UninstallerEntry.InstallLocation;
            olvColumnName.AspectGetter = rowObject => ((ConfirmationEntry)rowObject).Entry.UninstallerEntry.DisplayName;

            objectListView1.DragSource = new SimpleDragSource();
            var rearrangingDropSink = new RearrangingDropSink(false);

            objectListView1.DropSink     = rearrangingDropSink;
            rearrangingDropSink.Dropped += (sender, args) =>
            {
                objectListView1.PrimarySortColumn = null;
                objectListView1.Sort();
            };

            // Bug - sorting by column doesn't change the actual order, and disabling sorting doesn't do anything
            objectListView1.HeaderStyle = ColumnHeaderStyle.Nonclickable;
        }
コード例 #5
0
        private void init()
        {
            //ListViewCollections.SelectedIndexChanged += ListViewCollectionsSelectedIndexChanged;
            ListViewCollections.UseFiltering  = true;
            ListViewCollections.FullRowSelect = true;
            ListViewCollections.HideSelection = false;

            var dropsink = new RearrangingDropSink();

            dropsink.CanDropBetween           = false;
            dropsink.CanDropOnItem            = true;
            dropsink.CanDropOnSubItem         = false;
            dropsink.CanDropOnBackground      = false;
            ListViewCollections.DropSink      = dropsink;
            ListViewCollections.ModelDropped += ListViewCollections_ModelDropped;

            ListViewCollections.CellRightClick += ListViewCollectionsOnCellRightClick;
        }
コード例 #6
0
        private void InitListView()
        {
            //listview
            ListViewBeatmaps.FullRowSelect            = true;
            ListViewBeatmaps.AllowColumnReorder       = true;
            ListViewBeatmaps.Sorting                  = SortOrder.Descending;
            ListViewBeatmaps.UseHotItem               = true;
            ListViewBeatmaps.UseTranslucentHotItem    = true;
            ListViewBeatmaps.UseFiltering             = true;
            ListViewBeatmaps.UseNotifyPropertyChanged = true;
            ListViewBeatmaps.ShowItemCountOnGroups    = true;
            ListViewBeatmaps.CellEditActivation       = ObjectListView.CellEditActivateMode.DoubleClick;
            var format = "{0:0.##}";

            column_ar.AspectToStringFormat = format;
            column_cs.AspectToStringFormat = format;
            column_od.AspectToStringFormat = format;
            column_hp.AspectToStringFormat = format;

            column_stars.AspectGetter = rowObject =>
            {
                if (rowObject is Beatmap beatmap)
                {
                    return(beatmap.Stars(_currentPlayMode, _currentMods));
                }
                return(null);
            };

            column_ar.AspectGetter = rowObject =>
            {
                if (rowObject is Beatmap beatmap)
                {
                    return(_difficultyCalculator.ApplyMods(beatmap, _currentMods).Ar);
                }
                return(null);
            };
            column_od.AspectGetter = rowObject =>
            {
                if (rowObject is Beatmap beatmap)
                {
                    return(_difficultyCalculator.ApplyMods(beatmap, _currentMods).Od);
                }
                return(null);
            };
            column_cs.AspectGetter = rowObject =>
            {
                if (rowObject is Beatmap beatmap)
                {
                    return(_difficultyCalculator.ApplyMods(beatmap, _currentMods).Cs);
                }
                return(null);
            };
            column_hp.AspectGetter = rowObject =>
            {
                if (rowObject is Beatmap beatmap)
                {
                    return(_difficultyCalculator.ApplyMods(beatmap, _currentMods).Hp);
                }
                return(null);
            };
            LastPlayed.AspectToStringConverter = delegate(object cellValue)
            {
                if (cellValue == null)
                {
                    return("Never");
                }
                var val = (DateTime)cellValue;
                return(val > d ? $"{val}" : "Never");
            };

            var dropsink = new RearrangingDropSink();

            dropsink.CanDropBetween        = false;
            dropsink.CanDropOnItem         = false;
            dropsink.CanDropOnSubItem      = false;
            dropsink.CanDropOnBackground   = true;
            dropsink.ModelDropped         += DropsinkOnModelDropped;
            this.ListViewBeatmaps.DropSink = dropsink;
        }