Exemplo n.º 1
0
        /// <summary>
        /// Initializes a new instance of the ExportSelectionDialog class.
        /// Shows the sequence selection dialog
        /// </summary>
        /// <param name="callbackForSelectionHelper">
        /// Callback to method which will show the selection helper and return selection address as string
        /// </param>
        /// <param name="maxSequenceCount">Maximum number of sequences user can select</param>
        public ExportSelectionDialog(
            SelectionHelperCallback callbackForSelectionHelper,
            int maxSequenceCount)
        {
            this.IsSequenceNameVisible = true;
            this.GetSelectionFromSheet = callbackForSelectionHelper;
            this.maxSequenceItems      = maxSequenceCount > 1 ? maxSequenceCount : 1;

            InitializeComponent();
        }
Exemplo n.º 2
0
        /// <summary>
        /// Initializes a new instance of the ExportSelectionDialog class.
        /// Shows the sequence selection dialog
        /// </summary>
        /// <param name="callbackForSelectionHelper">
        /// Callback to method which will show the selection helper and return selection address as string
        /// </param>
        /// <param name="maxSequenceCount">Maximum number of sequences user can select</param>
        public ExportSelectionDialog(
                SelectionHelperCallback callbackForSelectionHelper,
                int maxSequenceCount)
        {
            this.IsSequenceNameVisible = true;
            this.GetSelectionFromSheet = callbackForSelectionHelper;
            this.maxSequenceItems = maxSequenceCount > 1 ? maxSequenceCount : 1;

            InitializeComponent();
        }
Exemplo n.º 3
0
        /// <summary>
        /// Initializes a new instance of the InputSelectionDialog class.
        /// Shows the sequence selection dialog
        /// </summary>
        /// <param name="callbackForSelectionHelper">
        /// Callback to method which will show the selection helper and return selection address as string
        /// </param>
        /// <param name="minSequenceCount">Minimum number of sequences to be selected.</param>
        /// <param name="maxSequenceCount">Maximum number of sequences user can select.</param>
        /// <param name="intersectOperation">Is this intersect operation</param>
        /// <param name="isOverlappingIntervalVisible">Is overlapping interval visible</param>
        /// <param name="isMinimumOverlapVisible">Is minimum overlap visible</param>
        /// <param name="sequenceLabels">
        /// Labels to be displayed for each sequence textbox. ex : "Reference Sequence".
        /// Labels will be applied from top to bottom in the order of labels given to a
        /// maximum number of 'minSequenceCount'
        /// </param>
        public InputSelectionDialog(
            SelectionHelperCallback callbackForSelectionHelper,
            int minSequenceCount,
            int maxSequenceCount,
            bool intersectOperation,
            bool isOverlappingIntervalVisible,
            bool isMinimumOverlapVisible,
            params string[] sequenceLabels)
        {
            this.IsSequenceNameVisible = true;
            this.GetSelectionFromSheet = callbackForSelectionHelper;
            this.sequenceLabels        = sequenceLabels;
            this.minSequenceItems      = minSequenceCount > 1 ? minSequenceCount : 1;
            this.maxSequenceItems      = maxSequenceCount > minSequenceCount ? maxSequenceCount : this.minSequenceItems;

            InitializeComponent();
            if (!isOverlappingIntervalVisible)
            {
                this.stkOverlapping.Visibility = Visibility.Collapsed;

                // This is merge operation, so set the default to "0"
                this.txtOverlap.Text = "0";
                this.isUseMetadataCheckBoxVisible = false;
            }
            else
            {
                this.isUseMetadataCheckBoxVisible = true;
                bool isFirst = true;
                foreach (InputSequenceItem item in this.GetSequences())
                {
                    item.IsUseMetadataCheckBoxVisible = this.isUseMetadataCheckBoxVisible;
                    if (isFirst && this.isUseMetadataCheckBoxVisible)
                    {
                        item.IsUseMetadataSelected = true;
                        isFirst = false;
                    }

                    item.UseMetadataSelected += new RoutedEventHandler(OnUseMetadataSelected);
                }

                this.Initialize(intersectOperation);
            }

            if (!isMinimumOverlapVisible)
            {
                this.stkMinimumOverlap.Visibility = Visibility.Collapsed;
            }
        }
Exemplo n.º 4
0
        /// <summary>
        /// Initializes a new instance of the InputSelectionDialog class.
        /// Shows the sequence selection dialog
        /// </summary>
        /// <param name="callbackForSelectionHelper">
        /// Callback to method which will show the selection helper and return selection address as string
        /// </param>
        /// <param name="minSequenceCount">Minimum number of sequences to be selected.</param>
        /// <param name="maxSequenceCount">Maximum number of sequences user can select.</param>
        /// <param name="intersectOperation">Is this intersect operation</param>
        /// <param name="isOverlappingIntervalVisible">Is overlapping interval visible</param>
        /// <param name="isMinimumOverlapVisible">Is minimum overlap visible</param>
        /// <param name="sequenceLabels">
        /// Labels to be displayed for each sequence textbox. ex : "Reference Sequence".
        /// Labels will be applied from top to bottom in the order of labels given to a 
        /// maximum number of 'minSequenceCount'
        /// </param>
        public InputSelectionDialog(
                SelectionHelperCallback callbackForSelectionHelper,
                int minSequenceCount,
                int maxSequenceCount,
                bool intersectOperation,
                bool isOverlappingIntervalVisible,
                bool isMinimumOverlapVisible,
                params string[] sequenceLabels)
        {
            this.IsSequenceNameVisible = true;
            this.GetSelectionFromSheet = callbackForSelectionHelper;
            this.sequenceLabels = sequenceLabels;
            this.minSequenceItems = minSequenceCount > 1 ? minSequenceCount : 1;
            this.maxSequenceItems = maxSequenceCount > minSequenceCount ? maxSequenceCount : this.minSequenceItems;

            InitializeComponent();
            if (!isOverlappingIntervalVisible)
            {
                this.stkOverlapping.Visibility = Visibility.Collapsed;

                // This is merge operation, so set the default to "0"
                this.txtOverlap.Text = "0";
                this.isUseMetadataCheckBoxVisible = false;
            }
            else
            {
                this.isUseMetadataCheckBoxVisible = true;
                bool isFirst = true;
                foreach (InputSequenceItem item in this.GetSequences())
                {
                    item.IsUseMetadataCheckBoxVisible = this.isUseMetadataCheckBoxVisible;
                    if (isFirst && this.isUseMetadataCheckBoxVisible)
                    {
                        item.IsUseMetadataSelected = true;
                        isFirst = false;
                    }

                    item.UseMetadataSelected += new RoutedEventHandler(OnUseMetadataSelected);
                }

                this.Initialize(intersectOperation);
            }

            if (!isMinimumOverlapVisible)
            {
                this.stkMinimumOverlap.Visibility = Visibility.Collapsed;
            }
        }