private void Heart_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { Image obj = (Image)sender; Grid grid = (Grid)obj.Parent; DoujinControl control = (DoujinControl)grid.Parent; int nhId = (int)control.img.Tag; if (DoujinUtility.CheckFavorised(new Doujin(nhId))) { DatabaseControler.favorites.FindBynHentaiID(nhId).favorite = false; DatabaseControler.mainDataTable.FindBynHentaiID(nhId).favorite = false; control.heart.Source = new BitmapImage(new Uri("pack://application:,,,/heart_nofav.png")); DatabaseControler.favorites.RemoveDoujinDataRow(DatabaseControler.favorites.FindBynHentaiID(nhId)); DatabaseControler.favorites.WriteXml(DatabaseControler.favDataPath); } else { Doujin doujin = new Doujin(nhId); DatabaseControler.mainDataTable.FindBynHentaiID(nhId).favorite = true; control.heart.Source = new BitmapImage(new Uri("pack://application:,,,/heart_fav.png")); DoujinUtility.AddDoujinDataRow(doujin, DatabaseControler.favorites); DatabaseControler.favorites.WriteXml(DatabaseControler.favDataPath); //.Add(); var notify = Notifications.Notifications.NotificationNoImg(doujin.name, "", "The doujin got favorised and you can acess it at your favourite page"); DoujinUtility.MainWindow.notificationPanellul.Children.Add(notify); } }
public void Page(int page) { try { Result result = DoujinUtility.OutdatedSearch(generalSearch.Text, tagsSearch.Text, artistSearch.Text, charaSearch.Text, parodySearch.Text, popOrder, searchLang(), page); List <Doujin> localDoujinList = result.doujinshi; foreach (Doujin doujin in result.doujinshi) { //Image img = new Image(); //Doujin doujin = result.doujinshi.ElementAt(result.images.IndexOf(img)); DoujinControl doujinControl = new DoujinControl(doujin); //Console.WriteLine(result.doujinshi.ElementAt(result.images.IndexOf(img)).coverUrl); foreach (Database.DoujinSet.DoujinDataRow row in Database.DatabaseControler.favorites) { if (row.nHentaiID == doujin.nhentaiId) { //doujin = new Doujin(row.nHentaiID); doujin.favorised = true; Console.WriteLine("fav matched"); doujinControl.heart.Source = new BitmapImage(new Uri("pack://application:,,,/UiElements/heart_fav.png")); } } picgrid.Children.Add(doujinControl); /* * var source = new BitmapImage(new Uri(result.doujinshi.ElementAt(result.images.IndexOf(img)).coverUrl)); * doujinControl.img.Source = source; * double ratio = source.Width / source.Height; * doujinControl.img.ToolTip = doujin.name; * doujinControl.img.Tag = doujin.nhentaiId; * doujinControl.img.Width = 160; * doujinControl.img.Height = 230; * doujinControl.img.Margin = new Thickness(5, 3, 5, 3); * doujinControl.img.MouseLeftButtonDown += Img_MouseLeftButtonDown; * doujinControl.img.MouseRightButtonDown += Img_MouseRightButtonDown; * doujinControl.heart.MouseLeftButtonDown += Heart_MouseLeftButtonDown; * Thickness margin = doujinControl.Margin; * margin.Right = 10; * margin.Bottom = 10; * doujinControl.Margin = margin; * doujinControl.doujinName.Text = doujin.name; * doujinControl.doujinCreator.Text = doujin.ArtistsConcat(); * doujinControl.doujinTags.Text = doujin.TagsConcat(); */ //DoujinUtility.AddDoujinDataRow(doujin, DatabaseControler.mainDataTable); } DatabaseControler.mainDataTable.Init(localDoujinList); } catch { } }
public static NavBarLeftSide CreateNavBar(MainWindow window) { NavBarLeftSide navBar = new NavBarLeftSide(window); List <Grid> blocks = new List <Grid>(); Grid prefGrid = new Grid(); Dictionary <Grid, ProgressBar> refDict = new Dictionary <Grid, ProgressBar>() { { navBar.dashboardGrid, navBar.dashboardBar }, { navBar.homeGrid, navBar.homeBar }, { navBar.favGrid, navBar.favBar }, { navBar.hgamesGrid, navBar.gamesBar }, { navBar.notificationsGrid, navBar.notificationsBar }, { navBar.accountGrid, navBar.accountBar }, { navBar.settingsGrid, navBar.settingsBar }, { navBar.updateFeedGrid, navBar.updateFeedBar } }; //Bug fix deswegen 2 mal navBar.activeWindow.Background = DoujinUtility.MainWindow.animatedBrush; navBar.activeWindow.BorderBrush = DoujinUtility.MainWindow.animatedBrush; navBar.Height = 2000; navBar.HorizontalAlignment = HorizontalAlignment.Left; navBar.VerticalAlignment = VerticalAlignment.Top; navBar.Name = "navBar"; navBar.RegisterName(navBar.Name, navBar); prefGrid.Margin = new Thickness(0, -54, 0, 0); if (alwaysMaxed == false) { navBar.Width = 52; navBar.MouseEnter += delegate(object sender, MouseEventArgs e) { NavBar_MouseEnter(sender, e, navBar); }; navBar.MouseLeave += delegate(object sender, MouseEventArgs e) { NavBar_MouseLeave(sender, e, navBar); }; } else { navBar.Width = 280; } foreach (Grid obj in navBar.rootGrid.Children.OfType <Grid>()) { DoujinUtility.FindChild <ProgressBar>(obj, null).Foreground = DoujinUtility.MainWindow.animatedBrush; blocks.Add(obj); } foreach (Grid grid in blocks) { navBar.Width = 52; grid.MouseEnter += delegate(object sender, MouseEventArgs e) { NavBarText_MouseEnter(sender, e, navBar, grid, refDict[grid]); }; grid.MouseLeave += delegate(object sender, MouseEventArgs e) { NavBarText_MouseLeave(sender, e, navBar, grid, refDict[grid]); }; grid.Margin = new Thickness(grid.Margin.Left, (prefGrid.Margin.Top + grid.Height + 11), grid.Margin.Right, grid.Margin.Bottom); Console.WriteLine(prefGrid.Margin.Top); prefGrid = grid; } return(navBar); }
private void Heart_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { Image img = (Image)sender; Grid grid = (Grid)img.Parent; DoujinControl control = (DoujinControl)grid.Parent; DatabaseControler.favorites.RemoveDoujinDataRow(DatabaseControler.favorites.FindBynHentaiID((int)control.img.Tag)); favgrid.Children.Remove(control); if (DoujinUtility.DoujinIsPartOfDataTable((int)control.img.Tag, DatabaseControler.mainDataTable)) { var picGridItem = (DoujinControl)picgrid.Children[DatabaseControler.mainDataTable.FindBynHentaiID((int)control.img.Tag).ID]; picGridItem.heart.Source = new BitmapImage(new Uri("pack://application:,,,/heart_nofav.png")); } }
public AccountElement() { InitializeComponent(); List <Grid> tabSelectorGrids = new List <Grid>(); Grid prefGrid = new Grid(); prefGrid.Margin = new Thickness(0, 0, 0, 0); currentWindowButtonGrid = showcaseGrid; Dictionary <Grid, ProgressBar> refDict = new Dictionary <Grid, ProgressBar>() { { this.showcaseGrid, this.showcaseBar }, { this.recommendedGrid, this.recommendedBar }, { this.friendsGrid, this.friendsBar } }; foreach (Grid obj in this.tabSelectorGrid.Children.OfType <Grid>()) { DoujinUtility.FindChild <ProgressBar>(obj, null).Foreground = DoujinUtility.MainWindow.animatedBrush; tabSelectorGrids.Add(obj); } foreach (Grid grid in tabSelectorGrids) { grid.MouseEnter += delegate(object sender, MouseEventArgs e) { Example_EnterAnimationEvent(sender, e, this, grid, refDict[grid]); }; grid.MouseLeave += delegate(object sender, MouseEventArgs e) { Example_LeaveAnimationEvent(sender, e, this, grid, refDict[grid]); }; Console.WriteLine(prefGrid.Margin.Top); prefGrid = grid; } void Example_EnterAnimationEvent(object sender, MouseEventArgs e, AccountElement navBar, Grid grid, ProgressBar progressBar) { } void Example_LeaveAnimationEvent(object sender, MouseEventArgs e, AccountElement navBar, Grid grid, ProgressBar progressBar) { } }
public void Init() { //client.RegisterToServer("*****@*****.**", "David@1&1.de", "David@1&1.de").Wait(); //Doujin_Interface.Properties.Settings.Default.User = null; //----------------------------------------------------------------------------- //For Damian //On stackoverflow they said the way the task is called migth cause deadlock so it might be a good idea to start looking here //------------------------------------------------------------------------------- DoujinUtility.MainWindow = this; DoujinUtility.MainWindow.animatedBrush.Color = Color.FromArgb(255, 138, 0, 219); //var test = new HIDoujin("Bokurano@Mii-chan | Our @Mii-chan","english", 1278968); //test2.AddObject("petenshi",Doujin_Interface.UpdateFeed.Types.Arist); //(throw new NotImplementedException(); //Application.Current.Resources["UiDarkGray"] = new SolidColorBrush(Color.FromArgb(100, 200, 20, 20)); //Color.FromArgb(100, 200, 20, 20); this.KeyDown += MainWindow_KeyDown; this.KeyUp += MainWindow_KeyUp; var searchElement = new SE(); search = SE.CreateSearchElement(picgrid, rootGrid, this); rootGrid.Children.Add(search); registerAndLoginElement = new RegisterElementE(); rootGrid.Children.Add(registerAndLoginElement); registerAndLoginElement.Visibility = Visibility.Hidden; accountElement = new AccountElement(); rootGrid.Children.Add(accountElement); accountElement.Visibility = Visibility.Hidden; accountElement.Margin = new Thickness(52, 0, 0, 0); rootGrid.Children.Add(notifyer); //has to be added last var navBar = new NavBar(); rootGrid.Children.Add(NavBar.CreateNavBar(this)); Thickness margin = settingElement.Margin; margin.Left = 283; settingElement.Margin = margin; rootGrid.Children.Add(settingElement); if (File.Exists(DatabaseControler.favDataPath)) { DatabaseControler.favorites.ReadXml(DatabaseControler.favDataPath); foreach (var row in DatabaseControler.favorites) { row.favorite = true; favId.Add(row.nHentaiID); favDoujin.Add(DoujinUtility.DataRowToDoujin(row)); Console.WriteLine("fav added to list " + row.nHentaiID); } } if (File.Exists("cache.xml")) { DatabaseControler.doujinCache.ReadXml("cache.xml"); } //Page(1); }
public void DisplayFavorites() { search.Visibility = Visibility.Hidden; favscroll.Visibility = Visibility.Visible; favscroll.IsEnabled = true; if (favgrid.Children.Count < DatabaseControler.favorites.Count) { foreach (DoujinDataRow row in DatabaseControler.favorites) { /* * DoujinControl doujinControl = new DoujinControl(row.nHentaiID); * doujinControl.heart.Source = new BitmapImage(new Uri("pack://application:,,,/UiElements/heart_fav.png")); * favgrid.Children.Add(doujinControl); */ Doujin doujin = DoujinUtility.DataRowToDoujin(row); if (DoujinUtility.DoujinIsPartOfDataTable(doujin, DatabaseControler.localDummy)) { continue; } DoujinControl doujinControl = new DoujinControl(); favgrid.Children.Insert(0, doujinControl); var source = new BitmapImage(new Uri(row.coverUrl)); doujinControl.img.Source = source; doujinControl.img.ToolTip = doujin.name; doujinControl.img.Tag = doujin.nhentaiId; doujinControl.img.Width = 160; doujinControl.img.Height = 230; doujinControl.img.Margin = new Thickness(5, 3, 5, 3); doujinControl.img.MouseLeftButtonDown += Img_MouseLeftButtonDown; doujinControl.img.MouseRightButtonDown += Img_MouseRightButtonDown; doujinControl.heart.Source = new BitmapImage(new Uri("pack://application:,,,/UiElements/heart_fav.png")); doujinControl.heart.MouseLeftButtonDown += Heart_MouseLeftButtonDown; Thickness margin = doujinControl.Margin; margin.Right = 10; margin.Bottom = 10; doujinControl.Margin = margin; doujinControl.doujinName.Text = doujin.name; doujinControl.doujinCreator.Text = doujin.ArtistsConcat(); doujinControl.doujinTags.Text = doujin.TagsConcat(); DatabaseControler.localDummy.AddDoujinDataRow(DatabaseControler.mainDataTable.Rows.Count, row.nHentaiID, row.mediaID, row.name, row.fullName, row.artist, row.character, row.parody, row.group, row.tags, row.language, true, row.pages, row.coverUrl, row.extension); } } else if (favgrid.Children.Count > DatabaseControler.favorites.Count) { List <DoujinControl> controlList = new List <DoujinControl>(); foreach (DoujinControl doujinControl in favgrid.Children) { if (!DoujinUtility.DoujinIsPartOfDataTable((int)doujinControl.img.Tag, DatabaseControler.favorites)) { controlList.Add(doujinControl); DatabaseControler.localDummy.RemoveDoujinDataRow(DatabaseControler.localDummy.FindBynHentaiID((int)doujinControl.img.Tag)); } } foreach (DoujinControl doujinControl in controlList) { favgrid.Children.Remove(doujinControl); } } }