Exemplo n.º 1
0
		public void JegerSelected (Jeger jeger)
		{
			var list = JaktLoggApp.instance.LoggList.Where(j => jeger == null || j.JegerId == jeger.ID);
			var hits = list.Sum(l=> l.Treff);
			var shots = list.Sum(l=> l.Skudd);
			var misses = shots - hits;
			var percent = shots > 0 ? Decimal.Round(hits*100/shots) : 0;

			GoogleGraphURI += jeger != null ? "&chtt="+HttpUtility.UrlEncode(jeger.Navn)+"" : "&chtt="+HttpUtility.UrlEncode(Utils.Translate("all_hunters"));
			GoogleGraphURI += HttpUtility.UrlEncode(string.Format(": {0} "+Utils.Translate("shots") +", {1}% "+Utils.Translate("hits"), shots, percent));
			var str = string.Format(GoogleGraphURI, hits, misses);
			
			if(Reachability.IsHostReachable("www.google.com")){
				var url = NSUrl.FromString(str);
				imageView.Image = UIImage.LoadFromData(NSData.FromUrl(url));
				//label1.Hidden = label2.Hidden = true;
				imageView.Hidden = false;
			}
			else
			{
				label1.Hidden = label2.Hidden = false;
				imageView.Hidden = true;
				label1.Text = string.Format("{0} "+ Utils.Translate("hits")+". {1} "+Utils.Translate("miss")+".", hits, misses);
				label2.Text = string.Format("{0}% "+ Utils.Translate("hits"), percent);
			}
		}
Exemplo n.º 2
0
		public void HandleButtonFilterClicked (object sender, EventArgs EventArgs)
		{
			var pickerScreen = new FooterStatsArter(screen => 
            {
				SelectedJeger = screen.SelectedJeger;
				SelectedDog = screen.SelectedDog;
				_tableSource.ItemList = GetRanking();
				TableView.ReloadData();
				
				var labelText = Utils.Translate("showingcountfor");
				if(SelectedJeger == null && SelectedDog == null)
					labelText += Utils.Translate("all_hunters_dogs");
				
				if(SelectedJeger != null)
					labelText += SelectedJeger.Fornavn;
				
				if(SelectedDog != null && SelectedJeger != null)
					labelText += "/";
				
				if(SelectedDog != null)
					labelText += SelectedDog.Navn;
				
				headerStatsFilter.SetFilterLabel(labelText);
				
			},SelectedJeger, SelectedDog);
			
			pickerScreen.ModalTransitionStyle = UIModalTransitionStyle.PartialCurl;
			PresentViewController(pickerScreen, true, null);
		}
Exemplo n.º 3
0
		public void JegerSelected (Jeger jeger)
		{
			var list = JaktLoggApp.instance.LoggList.Where(j => jeger == null || j.JegerId == jeger.ID);

			var valueList = "";
			var max = 0;
			for(var i=0; i<24; i++){
				var count = list.Where(v => v.Dato.Hour == i).Count();
				valueList += count.ToString() + ",";
				max = count > max ? count : max;
			}
			if(valueList.Length > 0)
				valueList = valueList.Substring(0, valueList.Length-1);
			
				var str = string.Format(GoogleGraphURI, max, valueList);
			
			if(Reachability.IsHostReachable("www.google.com")){
				imageView.Image = UIImage.LoadFromData(NSData.FromUrl(NSUrl.FromString(str)));
				imageView.Hidden = false;
			}
			else
			{
				imageView.Hidden = true;	
			}
		}
Exemplo n.º 4
0
		public void SaveJegerItem(Jeger item){
			
			JegerList = JegerList.OrderBy(o => o.ID).ToList<Jeger>();
			var itemToUpdate = JegerList.Where(j=>j.ID == item.ID).FirstOrDefault();
			if(itemToUpdate == null)
			{
				item.ID = JegerList.Count == 0 ? 1 : JegerList.Last().ID + 1;
				JegerList.Add(item);
			}
			else
				itemToUpdate = item;
			
			_repository.SaveJegerList(JegerList);
		}
Exemplo n.º 5
0
		void HandleRightButtonClicked (object sender, EventArgs EventArgs)
		{
			var pickerScreen = new FooterStatsArter(screen => 
            {
				SelectedJeger = screen.SelectedJeger;
				_tableSource.ItemList = GetRanking();
				TableView.ReloadData();
				
				
				_rightButton.Title = SelectedJeger == null ? "Alle jegere" : SelectedJeger.Fornavn;
			},SelectedJeger);
			
			pickerScreen.ModalTransitionStyle = UIModalTransitionStyle.PartialCurl;
			this.PresentModalViewController(pickerScreen, true);
		}
Exemplo n.º 6
0
		public JegerItemTableSource(JegerScreen controller, Jeger j)
		{
			_controller = controller;
			_jeger = j;
			
			var sectionJeger = new SectionMapping("", "");
			var sectionSlett = new SectionMapping("", "");
			
			sections.Add(sectionJeger);
			sections.Add(sectionSlett);
			
			sectionJeger.Rows.Add(new RowItemMapping {
				Label = "Fornavn",
				GetValue = () => {
					return _jeger.Fornavn;
				},
				RowSelected = () => {
					var fieldScreen = new FieldStringScreen("Fornavn", screen => {
						_jeger.Fornavn = Utils.UppercaseFirst(screen.Value);
						_controller.Refresh();
					}); 
					fieldScreen.Value = _jeger.Fornavn;
					_controller.NavigationController.PushViewController(fieldScreen, true);
				}
			});
			
			sectionJeger.Rows.Add(new RowItemMapping {
				Label = "Etternavn",
				GetValue = () => {
					return _jeger.Etternavn;
				},
				RowSelected = () => {
					var fieldScreen = new FieldStringScreen("Etternavn", screen => {
						_jeger.Etternavn = Utils.UppercaseFirst(screen.Value);
						_controller.Refresh();
					}); 
					fieldScreen.Value = _jeger.Etternavn;
					_controller.NavigationController.PushViewController(fieldScreen, true);
				}
			});
			
			
			/*
			sectionJeger.Rows.Add(new RowItemMapping {
				Label = "Telefon",
				GetValue = () => {
					return _jeger.Phone;
				},
				RowSelected = () => {
					var fieldScreen = new FieldStringScreen("Telefon", screen => {
						_jeger.Phone = screen.Value;
						_controller.Refresh();
					}); 
					fieldScreen.Value = _jeger.Phone;
					fieldScreen.KeyboardType = UIKeyboardType.PhonePad;
					_controller.NavigationController.PushViewController(fieldScreen, true);
				}
			});*/
			
			sectionJeger.Rows.Add(new RowItemMapping {
				Label = "Profilbilde",
				GetValue = () => {
					return _jeger.ImagePath.Length > 0 ? "Vis / endre" : "Legg til";
				},
				RowSelected = () => {
					ShowImageView();
				},
				ImageFile = "Images/Icons/camera.png"
			});
			
			sectionJeger.Rows.Add(new RowItemMapping {
				Label = "E-post",
				GetValue = () => {
					return _jeger.Email;
				},
				RowSelected = () => {
					var fieldScreen = new FieldStringScreen("E-post", screen => {
						_jeger.Email = screen.Value;
						_controller.Refresh();
					}); 
					fieldScreen.Value = _jeger.Email;
					fieldScreen.KeyboardType = UIKeyboardType.EmailAddress;
					_controller.NavigationController.PushViewController(fieldScreen, true);
				}
			});
			
			if(!_controller.IsNewItem){
				sectionSlett.Rows.Add(new RowItemMapping {
					Label = "Slett jeger",
					GetValue = () => {
						return "";
					}
				});
			}
		}
Exemplo n.º 7
0
		public void JegerSelected(Jeger j)
		{
			SelectedJeger = j;
			_callback(this);
			this.DismissModalViewControllerAnimated(true);
		}
Exemplo n.º 8
0
		public FooterStatsArter (Action<FooterStatsArter> callback, Jeger selectedJeger) : base("FooterStatsArter", null)
		{
			_callback = callback;	
			SelectedJeger = selectedJeger;
		}
Exemplo n.º 9
0
		/*
		private void NewItemSaveClicked(object sender, EventArgs e){
			if(jeger.Fornavn == "")
			{
				MessageBox.Show("Navn mangler", "Du må skrive inn et fornavn før du lagrer.");
				return;
			}
			_callback(this);
			NavigationController.PopViewControllerAnimated(true);
		}*/
		
		public void Delete(Jeger j){
			JaktLoggApp.instance.DeleteJeger(j);
			NavigationController.PopViewControllerAnimated(true);
		}
Exemplo n.º 10
0
		public JegerScreen (Jeger _jeger, Action<JegerScreen> callback) : base("JegerScreen", null)
		{
			jeger = _jeger;
			_callback = callback;
		}
Exemplo n.º 11
0
		public JegerScreen (Action<JegerScreen> callback) : base("JegerScreen", null)
		{
			jeger = new Jeger();
			_callback = callback;
			IsNewItem = true;
		}
Exemplo n.º 12
0
		public JegerItemTableSource(JegerScreen controller, Jeger j)
		{
			
			_controller = controller;
			_jeger = j;

			CellDelete = new CellDeleteButton(HandleDeleteButtonTouchUpInside);
			NSBundle.MainBundle.LoadNib("CellDeleteButton", CellDelete, null);
			delcell = CellDelete.Cell;
		
			headerJegerView = new HeaderJeger(_jeger);
			headerJegerView.HandleButtonImageTouchUpInside = HandleButtonImageTouchUpInside;

			var sectionJeger = new SectionMapping("", "");
			var sectionSlett = new SectionMapping("", "");
			
			sections.Add(sectionJeger);
			sections.Add(sectionSlett);
			
			sectionJeger.Rows.Add(new RowItemMapping {
				Label = Utils.Translate("jeger.firstname"),
				GetValue = () => {
					return _jeger.Fornavn;
				},
				RowSelected = () => {
					var fieldScreen = new FieldStringScreen(Utils.Translate("jeger.firstname"), screen => {
						_jeger.Fornavn = Utils.UppercaseFirst(screen.Value);
						_controller.Refresh();
					}); 
					fieldScreen.Value = _jeger.Fornavn;
					_controller.NavigationController.PushViewController(fieldScreen, true);
				}
			});
			
			sectionJeger.Rows.Add(new RowItemMapping {
				Label = Utils.Translate("jeger.lastname"),
				GetValue = () => {
					return _jeger.Etternavn;
				},
				RowSelected = () => {
					var fieldScreen = new FieldStringScreen(Utils.Translate("jeger.lastname"), screen => {
						_jeger.Etternavn = Utils.UppercaseFirst(screen.Value);
						_controller.Refresh();
					}); 
					fieldScreen.Value = _jeger.Etternavn;
					_controller.NavigationController.PushViewController(fieldScreen, true);
				}
			});
			
			
			/*
			sectionJeger.Rows.Add(new RowItemMapping {
				Label = "Telefon",
				GetValue = () => {
					return _jeger.Phone;
				},
				RowSelected = () => {
					var fieldScreen = new FieldStringScreen("Telefon", screen => {
						_jeger.Phone = screen.Value;
						_controller.Refresh();
					}); 
					fieldScreen.Value = _jeger.Phone;
					fieldScreen.KeyboardType = UIKeyboardType.PhonePad;
					_controller.NavigationController.PushViewController(fieldScreen, true);
				}
			});*/
			
			sectionJeger.Rows.Add(new RowItemMapping {
				Label = Utils.Translate("jeger.profilepicture"),
				GetValue = () => {
					return _jeger.ImagePath.Length > 0 ? Utils.Translate("picture.showimage") : Utils.Translate("picture.addimage");
				},
				RowSelected = () => {
					ShowImageView();
				},
				ImageFile = "Images/Icons/camera.png"
			});
			
			sectionJeger.Rows.Add(new RowItemMapping {
				Label = Utils.Translate("jeger.email"),
				GetValue = () => {
					return _jeger.Email;
				},
				RowSelected = () => {
					var fieldScreen = new FieldStringScreen("E-post", screen => {
						_jeger.Email = screen.Value;
						_controller.Refresh();
					}); 
					fieldScreen.Value = _jeger.Email;
					fieldScreen.KeyboardType = UIKeyboardType.EmailAddress;
					_controller.NavigationController.PushViewController(fieldScreen, true);
				}
			});
			
			if(!_controller.IsNewItem){
				sectionSlett.Rows.Add(new RowItemMapping {
					Label = Utils.Translate("jeger.delete"),
					GetValue = () => {
						return "";
					}
				});
			}
		}
Exemplo n.º 13
0
		public HeaderJeger (Jeger j) : base("HeaderJeger", null)
		{
			_jeger = j;
		}
Exemplo n.º 14
0
		public void DeleteJeger(Jeger item){
			//remove jeger from loggs
			var logger = LoggList.Where(x => x.JegerId == item.ID);
			foreach(var logg in logger){
				logg.JegerId = 0;
			}
			_repository.SaveLoggList(LoggList);
			
			//remove jeger from jakts
			var jakts = JaktList.Where(x => x.JegerIds.Contains(item.ID));
			foreach(var jakt in jakts){
				jakt.JegerIds.Remove(item.ID);
			}
			
			//remove jeger images
			DeleteFile(Utils.GetPath(item.ImagePath));
			               
			//remove jeger from jegerlist
			JegerList.Remove(item);
			_repository.SaveJegerList(JegerList);
		}
Exemplo n.º 15
0
		public LoggItemTableSource(LoggItemScreen controller)
		{
			var jeger = new Jeger();
			if(JaktLoggApp.instance.CurrentJakt.JegerIds.Count > 0)
				jeger = JaktLoggApp.instance.GetJeger(JaktLoggApp.instance.CurrentJakt.JegerIds[0]);
			
			_controller = controller;
			
			var section1 = new SectionMapping("", "");
			var section2 = new SectionMapping("", "");
			var section3 = new SectionMapping("Ekstra felter", "");
			var sectionSlett = new SectionMapping("", "");
			
			section1.Rows.Add(new RowItemMapping {
				Label = "Felt/sett vilt",
				GetValue = () => {
					var lbl = "";
					if(loggItem.ArtId > 0)
						lbl = loggItem.Treff + " " + JaktLoggApp.instance.GetArt(loggItem.ArtId).Navn + " på " + loggItem.Skudd + " skudd";
					else 
						lbl = loggItem.Skudd + " skudd, " + loggItem.Treff + " treff";
					
					if(loggItem.Sett > 0)
						lbl += ", " + loggItem.Sett + " sett ";
					
					return lbl;
				},
				RowSelected = () => {
					var fieldScreen = new FieldLoggCatch("Felt/sett vilt", screen => {
						loggItem.ArtId = screen.CurrentArtId;
						loggItem.Treff = screen.CurrentHits;
						loggItem.Skudd = screen.CurrentShots;
						loggItem.Sett = screen.CurrentSeen;
						_controller.Refresh();
					});
					fieldScreen.CurrentArtId = loggItem.ArtId;
					fieldScreen.CurrentHits = loggItem.Treff;
					fieldScreen.CurrentShots = loggItem.Skudd;
					fieldScreen.CurrentSeen = loggItem.Sett;
					_controller.NavigationController.PushViewController(fieldScreen, true);
				},
				ImageFile = "Images/Icons/target.png"
			});
			
			section1.Rows.Add(new RowItemMapping {
				Label = "Posisjon",
				GetValue = () => {
					return string.IsNullOrEmpty(loggItem.Latitude) ? "Ikke satt" : "Se i kart";
				},
				RowSelected = () => {
					var fieldScreen = new FieldLocationScreen(loggItem, screen => {
						loggItem.Latitude = screen.Latitude;
						loggItem.Longitude = screen.Longitude;
						_controller.Refresh();
					});
					fieldScreen.Latitude = loggItem.Latitude;
					fieldScreen.Longitude = loggItem.Longitude;
					_controller.NavigationController.PushViewController(fieldScreen, true);
				},
				ImageFile = "Images/Icons/pin.png"
			});
			
			section1.Rows.Add(new RowItemMapping {
				Label = "Jeger",
				GetValue = () => {
					
					if(loggItem.JegerId == 0 && JaktLoggApp.instance.CurrentJakt.JegerIds.Count == 1){
						loggItem.JegerId = jeger.ID;
						_controller.Refresh();
					}
					else if(loggItem.JegerId == 0)
						return string.Empty;
					
					else
						jeger = JaktLoggApp.instance.GetJeger(loggItem.JegerId);
					
					
					return jeger.Navn;
				},
				RowSelected = () => {
					var jegerlist = CreateSingleSelectJegerItems();
					var fieldScreen = new FieldSingleChoiceListScreen("Velg jeger", jegerlist, screen => {
						loggItem.JegerId = screen.SelectedKey == "" ? 0 : Int32.Parse(screen.SelectedKey);
						_controller.Refresh();
					});
					fieldScreen.SelectedKey = loggItem.JegerId.ToString();
					_controller.NavigationController.PushViewController(fieldScreen, true);
				},
				ImageFile = "Images/Icons/user.png"
			});
			
			section2.Rows.Add(new RowItemMapping {
				Label = "Tidspunkt",
				GetValue = () => {
					return loggItem.Dato.Day + "/" + loggItem.Dato.Month + " " + loggItem.Dato.Hour +":"+loggItem.Dato.Minute;
				},
				RowSelected = () => {
					var fieldScreen = new FieldDatePickerScreen(screen => {
						loggItem.Dato = screen.Date;
						_controller.Refresh();
					}); 
					fieldScreen.Date = new DateTime(JaktLoggApp.instance.CurrentJakt.DatoFra.Year, 
					                                loggItem.Dato.Month, 
					                                loggItem.Dato.Day, 
					                                loggItem.Dato.Hour, 
					                                loggItem.Dato.Minute, 
					                                loggItem.Dato.Second);
					fieldScreen.Mode = UIDatePickerMode.DateAndTime;
					fieldScreen.Title = "Tidspunkt";
					_controller.NavigationController.PushViewController(fieldScreen, true);
				},
				ImageFile = "Images/Icons/calendar.png"
			});
			
			section2.Rows.Add(new RowItemMapping {
				Label = "Notater",
				GetValue = () => {
					return loggItem.Notes;
				},
				RowSelected = () => {
					var fieldScreen = new FieldNotesScreen("Notater", screen => {
						loggItem.Notes = screen.Value;
						_controller.Refresh();
					});
					fieldScreen.Value = loggItem.Notes;
					_controller.NavigationController.PushViewController(fieldScreen, true);
				},
				ImageFile = "Images/Icons/notepad.png"
			});
			
			section2.Rows.Add(new RowItemMapping {
				Label = "Bilde",
				GetValue = () => {
					return loggItem != null && loggItem.ImagePath.Length > 0 ? "Vis / endre" : "Legg til";
				},
				RowSelected = () => {
					ShowImageView();
				},
				ImageFile = "Images/Icons/camera.png"
			});
			
			/*section3.Rows.Add(new RowItemMapping {
				Label = "Værforhold",
				GetValue = () => {
					return loggItem.Weather;
				},
				RowSelected = () => {
					var options = new List<SingleSelectRowItem>();
					options.Add(new SingleSelectRowItem(){ Key = "Sol", TextLabel = "Soll" });
					options.Add(new SingleSelectRowItem(){ Key = "Overskyet", TextLabel = "Overskyet" });
					options.Add(new SingleSelectRowItem(){ Key = "Regn", TextLabel = "Regn" });
					var fieldScreen = new FieldSingleChoiceListScreen("Værforhold", options, screen => {
						loggItem.Weather = screen.SelectedKey;
						_controller.Refresh();
					});
					_controller.NavigationController.PushViewController(fieldScreen, true);
				}
			});*/
			
			foreach(var selectedLoggTypeId in JaktLoggApp.instance.SelectedLoggTypeIds)
			{
				var item = JaktLoggApp.instance.LoggTypeList.SingleOrDefault(i => i.Key == selectedLoggTypeId);
				switch(item.Navn){
					case "Vær":
					
						section3.Rows.Add(new RowItemMapping {
						Label = "Værforhold",
						GetValue = () => {
							return loggItem.Weather;
						},
						RowSelected = () => 
							{
								var options = new List<SingleSelectRowItem>();
								options.Add(new SingleSelectRowItem(){ Key = "Sol", TextLabel = "Sol" });
								options.Add(new SingleSelectRowItem(){ Key = "Delvis skyet", TextLabel = "Delvis skyet" });
								options.Add(new SingleSelectRowItem(){ Key = "Overskyet", TextLabel = "Overskyet" });
								options.Add(new SingleSelectRowItem(){ Key = "Regn", TextLabel = "Regn" });
								options.Add(new SingleSelectRowItem(){ Key = "Snø", TextLabel = "Snø" });
								var fieldScreen = new FieldSingleChoiceListScreen("Værforhold", options, screen => {
									loggItem.Weather = screen.SelectedKey;
									_controller.Refresh();
								});
							fieldScreen.SelectedKey = loggItem.Weather;
								_controller.NavigationController.PushViewController(fieldScreen, true);
							}
						
						});
					break;
					case "Kjønn":
					
						section3.Rows.Add(new RowItemMapping {
						Label = "Kjønn",
						GetValue = () => {
							return loggItem.Gender;
						},
						RowSelected = () => 
						{
							var options = new List<SingleSelectRowItem>();
							options.Add(new SingleSelectRowItem(){ Key = "Hannkjønn", TextLabel = "Hannkjønn" });
							options.Add(new SingleSelectRowItem(){ Key = "Hunnkjønn", TextLabel = "Hunnkjønn" });
							
							var fieldScreen = new FieldSingleChoiceListScreen("Kjønn", options, screen => {
								loggItem.Gender = screen.SelectedKey;
								_controller.Refresh();
							});
							fieldScreen.SelectedKey = loggItem.Gender;
							_controller.NavigationController.PushViewController(fieldScreen, true);
							}
						
						});
					break;
					
					case "Tagger":
					
						section3.Rows.Add(new RowItemMapping {
						Label = "Tagger på geviret",
						GetValue = () => {
							return loggItem.Tags == 0 ? "" : loggItem.Tags.ToString();
						},
						RowSelected = () => 
							{
								var fieldScreen = new FieldNumberPickerScreen(screen => {
									loggItem.Tags = Int32.Parse(screen.Value);
									_controller.Refresh();
								});
							fieldScreen.Value = loggItem.Tags.ToString();
							fieldScreen.Title = "Antall tagger på gevir";
							fieldScreen.LabelExtension = " tagger";
							
							_controller.NavigationController.PushViewController(fieldScreen, true);
							}
						
						});
					break;
					
					case "Alder":
					
						section3.Rows.Add(new RowItemMapping {
						Label = "Alder",
						GetValue = () => {
							return loggItem.Age;
						},
						RowSelected = () => 
							{
								var options = new List<SingleSelectRowItem>();
								options.Add(new SingleSelectRowItem(){ Key = "Kalv", TextLabel = "Kalv" });
								options.Add(new SingleSelectRowItem(){ Key = "1 1/2 år", TextLabel = "1 1/2 år" });
								options.Add(new SingleSelectRowItem(){ Key = "2 1/2 år og eldre", TextLabel = "2 1/2 år og eldre" });
								
								var fieldScreen = new FieldSingleChoiceListScreen("Alder", options, screen => {
								loggItem.Age = screen.SelectedKey;
								_controller.Refresh();
								});
							fieldScreen.SelectedKey = loggItem.Age;
							controller.NavigationController.PushViewController(fieldScreen, true);
							
							}
						});
					break;
					
					case "Vekt":
					
						section3.Rows.Add(new RowItemMapping {
						Label = "Vekt",
						GetValue = () => {
							return loggItem.Weight == 0 ? "" : loggItem.Weight + " kg";
						},
						RowSelected = () => 
							{
								var fieldScreen = new FieldNumberPickerScreen(screen => {
									loggItem.Weight = Int32.Parse(screen.Value);
									_controller.Refresh();
								});
							fieldScreen.Value = loggItem.Weight.ToString();
							fieldScreen.Title = "Vekt i kilo";
							fieldScreen.LabelExtension = " kg";
							_controller.NavigationController.PushViewController(fieldScreen, true);
							}
						
						});
					break;
					
					case "Slaktevekt":
					
						section3.Rows.Add(new RowItemMapping {
						Label = "Slaktevekt",
						GetValue = () => {
							return loggItem.ButchWeight == 0 ? "" : loggItem.ButchWeight + " kg";
						},
						RowSelected = () => 
							{
								var fieldScreen = new FieldNumberPickerScreen(screen => {
									loggItem.ButchWeight = Int32.Parse(screen.Value);
									_controller.Refresh();
								});
							fieldScreen.Value = loggItem.ButchWeight.ToString();
							fieldScreen.Title = "Slaktevekt i kilo";
							fieldScreen.LabelExtension = " kg";
							_controller.NavigationController.PushViewController(fieldScreen, true);
							}
						
						});
					break;
					
					case "Våpentype":
					
						section3.Rows.Add(new RowItemMapping {
							Label = "Våpentype",
							GetValue = () => {
								return loggItem.WeaponType;
							},
							RowSelected = () => {
								var fieldScreen = new FieldStringScreen("Våpentype", screen => {
									loggItem.WeaponType = screen.Value;
									_controller.Refresh();
								});
								fieldScreen.Placeholder = "Skriv inn våpentype";
								fieldScreen.Value = loggItem.WeaponType;
								//autosuggest:
								var autoitems = (from x in JaktLoggApp.instance.LoggList
								              where x.WeaponType != string.Empty
											  select x.WeaponType.ToUpper()).Distinct();
								var autosuggests = new List<ItemCount>();
								foreach(var autoitem in autoitems){
									autosuggests.Add(new ItemCount{
										Name = autoitem,
										Count = JaktLoggApp.instance.LoggList.Where(y => y.WeaponType.ToUpper() == autoitem).Count()
									});
								}
								fieldScreen.AutoSuggestions = autosuggests.OrderByDescending( o => o.Count ).ToList();          
								_controller.NavigationController.PushViewController(fieldScreen, true);
							},
							ImageFile = ""
						});
					
					break;
					
					case "Hund":
					
						section3.Rows.Add(new RowItemMapping {
							Label = "Hund",
							GetValue = () => {
								return loggItem.Dog;
							},
							RowSelected = () => {
								var fieldScreen = new FieldStringScreen("Hund", screen => {
									loggItem.Dog = screen.Value;
									_controller.Refresh();
								});
								fieldScreen.Placeholder = "Skriv inn hundenavn";
								fieldScreen.Value = loggItem.Dog;
								//autosuggest:
								var autoitems = (from x in JaktLoggApp.instance.LoggList
								              where x.Dog != string.Empty
											  select x.Dog.ToUpper()).Distinct();
								var autosuggests = new List<ItemCount>();
								foreach(var autoitem in autoitems){
									autosuggests.Add(new ItemCount{
										Name = autoitem,
										Count = JaktLoggApp.instance.LoggList.Where(y => y.Dog.ToUpper() == autoitem).Count()
									});
								}
								fieldScreen.AutoSuggestions = autosuggests.OrderByDescending( o => o.Count ).ToList();          
								_controller.NavigationController.PushViewController(fieldScreen, true);
							},
							ImageFile = ""
						});
					
					break;
				}
			}
			
			
			if(!_controller.IsNewItem){
				sectionSlett.Rows.Add(new RowItemMapping {
					Label = "Slett loggføring",
					GetValue = () => {
						return "";
					}
				});
			}
			
			sections.Add(section1);
			sections.Add(section2);
			
			if(section3.Rows.Count > 0)
				sections.Add(section3);
			
			sections.Add(sectionSlett);
			
		}
Exemplo n.º 16
0
		public void JegerSelected(Jeger j)
		{
			SelectedJeger = j;
		}