Exemplo n.º 1
0
        public MainWindow()
        {
            InitializeComponent();

            TemporaryFiles.DeleteAllPreviouslyUsed();
            foreach (var page_number in PageNumberPanel.Children)
            {
                page_number_buttons.Add(page_number as Button);
            }
            initialize_page();

            SearchText.GotFocus  += SearchText_GotFocus;
            SearchText.LostFocus += SearchText_LostFocus;

            ResultList.DataContext = new GalleryDataGridViewModel();
            ResultList.Sorting    += new DataGridSortingEventHandler(new DataGridSorter <GalleryDataGridItemViewModel>(ResultList).SortHandler);
            logic = new AutoCompleteLogic(algorithm, SearchText, AutoComplete, AutoCompleteList);

#if DEBUG
            Logger.Instance.Push("Welcome to DCInside Gallery Explorer!");
            Core.Console.Instance.Start();
#endif
            Closed += MainWindow_Closed;

            Instance       = this;
            timer.Interval = new TimeSpan(0, 0, 2);

            ServicePointManager.DefaultConnectionLimit  = int.MaxValue;
            AppDomain.CurrentDomain.UnhandledException += (s, e) =>
            {
                Logger.Instance.PushError("unhandled: " + (e.ExceptionObject as Exception).ToString());
            };
        }
        public CustomArtistsRecommendAddArtistWindow(CustomArtistsRecommendWindow car)
        {
            InitializeComponent();

            logic = new AutoCompleteLogic(TagSearchText, AutoComplete, AutoCompleteList, true, false);
            Owner = car;
        }
Exemplo n.º 3
0
        private void FinderWindow_Loaded(object sender, RoutedEventArgs e)
        {
            logic = new AutoCompleteLogic(SearchText, AutoComplete, AutoCompleteList);
            SearchList.VerticalGridLinesBrush = SearchList.HorizontalGridLinesBrush;

            if (searcher != "")
            {
                SearchText.Text = searcher;
                SearchAsync(searcher);
            }
        }
Exemplo n.º 4
0
        public CreateNew()
        {
            InitializeComponent();

            logic = new AutoCompleteLogic(algorithm, GallerySelectText, AutoComplete, AutoCompleteList)
            {
                PickOne     = true,
                IgnoreCount = false,
                Foreground  = Brushes.Black,
                DetectColor = Brushes.HotPink
            };
        }
Exemplo n.º 5
0
        private void SearchSpace_Loaded(object sender, RoutedEventArgs e)
        {
#if true
            bool loading = false;
            // Metadata 로딩
            Task.Run(async() => {
                if (IsMetadataLoaded || StartsLoading)
                {
                    return;
                }
                StartsLoading = true;
                Profiler.Push("Check metadata exists");
                if (!HitomiIndex.Instance.CheckMetadataExist() || Settings.Instance.Hitomi.AutoSync)
                {
//#if !DEBUG
//                    Koromo_Copy.Monitor.Instance.ControlEnable = true;
//                    Koromo_Copy.Monitor.Instance.Push("다운로드가 계속 진행되지 않는다면 이 창에서 Enter키를 눌러주세요");
//                    Koromo_Copy.Console.Console.Instance.Show();
//#endif
                    Profiler.Push("Start download metadata");
                    MainWindow.Instance.Fade_MiddlePopup(true, (string)FindResource("msg_download_metadata"));
#if true
                    //HitomiIndex.Instance.MetadataDownloadStatusEvent = UpdateDownloadText;
                    await HitomiIndex.Instance.DownloadMetadata();
#endif
                    MainWindow.Instance.FadeOut_MiddlePopup((string)FindResource("msg_download_data_complete"), false);
                    Koromo_Copy.Monitor.Instance.ControlEnable = false;
                }
                else
                {
                    Profiler.Push("Load metadata, hiddendata");
                    try
                    {
                        HitomiIndex.Instance.Load();
                        //MainWindow.Instance.Fade_MiddlePopup(false);
                    }
                    catch (Exception ex)
                    {
                        Koromo_Copy.Monitor.Instance.Push($"[Hitomi DataLoad] {ex.Message}\r\n{ex.StackTrace}");
                    }
                }
                if (Settings.Instance.Hitomi.UsingOriginalTitle)
                {
                    Profiler.Push("Check titles exists");
                    if (!HitomiTitle.Instance.CheckExist())
                    {
                        MainWindow.Instance.ModifyText_MiddlePopup((string)FindResource("msg_download_title"));
                        await HitomiTitle.Instance.DownloadTitle();
                        MainWindow.Instance.FadeOut_MiddlePopup((string)FindResource("msg_download_data_complete"), false);
                    }
                    HitomiTitle.Instance.Load();
                    HitomiTitle.Instance.ReplaceToOriginTitle();
                    Koromo_Copy.Monitor.Instance.Push($"Loaded titles: '{HitomiTitle.Instance.Count.ToString("#,#")}' articles.");
                }
                MainWindow.Instance.Fade_MiddlePopup(false);
                Profiler.Push("Rebuild tag data");
                HitomiIndex.Instance.RebuildTagData();
                if (HitomiIndex.Instance.metadata_collection != null)
                {
                    Koromo_Copy.Monitor.Instance.Push($"Loaded metadata: '{HitomiIndex.Instance.metadata_collection.Count.ToString("#,#")}' articles.");

                    if (Settings.Instance.Hitomi.UsingOptimization)
                    {
                        HitomiIndex.Instance.OptimizeMetadata();
                        Koromo_Copy.Monitor.Instance.Push($"Optimize metadata: '{HitomiIndex.Instance.metadata_collection.Count.ToString("#,#")}' articles.");
                    }
                }
                GC.Collect(GC.MaxGeneration, GCCollectionMode.Forced);
                loading = true;
            }).ContinueWith(t =>
            {
                if ((IsMetadataLoaded || StartsLoading) && !loading)
                {
                    return;
                }
                TotalProgress.IsIndeterminate = false;
                TotalProgress.Value           = 0;
                IsMetadataLoaded = true;
                Storyboard sb    = TotalProgress.FindResource("FadeProgressStoryboard") as Storyboard;
                if (sb != null)
                {
                    sb.Completed += Sb_Completed;
                    BeginStoryboard(sb);
                }
                RecommendSpace.Instance.Update();
                if (Koromo_Copy.Version.RequireTidy(System.Reflection.Assembly.GetExecutingAssembly().Location))
                {
                    (new PatchNoteWindow()).Show();
                    //Process.Start("https://github.com/dc-koromo/koromo-copy/blob/master/Document/Update.md");
                }
                Task.Run(() => CheckUpdate()).ContinueWith((x) => ScriptManager.Instance.Initialization()).ContinueWith((x) => SettingViewScript.Instance.Init());
                Task.Run(() => DownloaderHelper.LoadOthersAsync());
                Task.Run(() => DPIB.Instance.Start());
            }, TaskScheduler.FromCurrentSynchronizationContext());
#endif
            Window w = Window.GetWindow(this);
            // 이거 지우면 디자이너 오류남
            if (w != null)
            {
                w.LocationChanged += (object obj, EventArgs args) =>
                {
                    var offset = AutoComplete.HorizontalOffset;
                    AutoComplete.HorizontalOffset = offset + 1;
                    AutoComplete.HorizontalOffset = offset;
                };
            }

            logic = new AutoCompleteLogic(SearchText, AutoComplete, AutoCompleteList);
        }