Exemplo n.º 1
0
        void DuplicateTab()
        {
            if (!tabControlManager.CanExcectute())
            {
                return;
            }

            var CurrentTab = tabControlManager.CurrentTab;
            var Filepath   = CurrentTab.Path;

            if (string.IsNullOrEmpty(Filepath))
            {
                var fileDialog = new OpenFileDialog
                {
                    Multiselect  = true,
                    AddExtension = true,
                    Filter       = FileFormats.FilterString
                };
                fileDialog.ShowDialog();
                Filepath = fileDialog.FileName;
            }

            if (!FilesManager.ValidFile(Filepath))
            {
                return;
            }

            var duplicate_tab     = tabControlManager.CurrentTab;
            var currentTabControl = tabControlManager.CurrentTabControl;

            if (currentTabControl.SelectedIndex != -1)
            {
                TabablzControl.AddItem(TabControlManager.GetTab(Filepath), duplicate_tab, AddLocationHint.After);
                currentTabControl.SelectedIndex = currentTabControl.Items.Count - 1;
            }
            else
            {
                var addedTab = tabControlManager.AddTab(Filepath);
                addedTab.ImageSettings.PropertyChanged += ImageSettings_PropertyChanged;
            }

            duplicate_tab = tabControlManager.CurrentTab;
            duplicate_tab.InitialImagePath         = Filepath;
            duplicate_tab.Footer.Visibility        = footerVisibility;
            duplicate_tab.ImageSettings.SortMethod = CurrentTab.ImageSettings.SortMethod;
            duplicate_tab.ImageSettings.SortMode   = CurrentTab.ImageSettings.SortMode;

            filesManager.SupportedFiles(Path.GetDirectoryName(Filepath));

            var FilenameIndex =
                duplicate_tab.Paths.FindIndex(x => Path.GetFileName(x) == Path.GetFileName(Filepath));

            duplicate_tab.Index = FilenameIndex == -1 ? 0 : (uint)FilenameIndex;

            DisplayImage();
            SetupDirectoryWatcher();
        }
Exemplo n.º 2
0
        public void AddNewTab(string filepath)
        {
            if (string.IsNullOrEmpty(filepath))
            {
                var fileDialog = new OpenFileDialog
                {
                    Multiselect  = true,
                    AddExtension = true,
                    Filter       = FileFormats.FilterString
                };
                fileDialog.ShowDialog();
                filepath = fileDialog.FileName;
            }

            if (!FilesManager.ValidFile(filepath))
            {
                return;
            }

            var CurrentTab        = tabControlManager.CurrentTab;
            var CurrentTabControl = tabControlManager.CurrentTabControl;

            if (CurrentTabControl.SelectedIndex != -1)
            {
                TabablzControl.AddItem(TabControlManager.GetTab(filepath), CurrentTab, AddLocationHint.After);
                CurrentTabControl.SelectedIndex = CurrentTabControl.Items.Count - 1;
            }
            else
            {
                var AddedTab = tabControlManager.AddTab(filepath);
                AddedTab.ImageSettings.PropertyChanged += ImageSettings_PropertyChanged;
            }

            CurrentTab = tabControlManager.CurrentTab;

            filesManager.SupportedFiles(Path.GetDirectoryName(filepath));

            var FilenameIndex =
                CurrentTab.Paths.FindIndex(x => Path.GetFileName(x) == Path.GetFileName(filepath));

            CurrentTab.Index = FilenameIndex == -1 ? 0 : (uint)FilenameIndex;

            CurrentTab.Footer.Visibility = footerVisibility;

            SetupDirectoryWatcher();
        }