// TODO: correct toggle function for active detail area view range private void toggleFullDetailScreen() { BrailleIOScreen vs = GetVisibleScreen(); BrailleIOViewRange detailVR = vs.GetViewRange(VR_DETAIL_NAME); // TODO: ImageData class creates own detail area --> do not use global detailarea BrailleIOViewRange topVR = vs.GetViewRange(VR_TOP_NAME); detailVR.SetHeight(deviceSize.Height - topVR.GetHeight()); detailVR.SetTop(topVR.GetHeight() - 3); io.RefreshDisplay(); audioRenderer.PlaySoundImmediately(LL.GetTrans("tangram.lector.wm.views.detail_maximize")); }
/// <summary> /// Get the touched view range. /// </summary> /// <param name="x">x value of the tap (on pin device)</param> /// <param name="y">y value of the tap (on pin device)</param> /// <param name="s">visible screen</param> /// <returns>touched view range</returns> public BrailleIOViewRange GetTouchedViewRange(double x, double y, BrailleIOScreen s) { if (s != null) { OrderedDictionary viewRanges = s.GetViewRanges(); if (viewRanges.Count > 0) { object[] keys = new object[viewRanges.Keys.Count]; viewRanges.Keys.CopyTo(keys, 0); for (int i = keys.Length - 1; i >= 0; i--) { BrailleIOViewRange vr = viewRanges[keys[i]] as BrailleIOViewRange; if (vr != null && vr.IsVisible()) { if (x >= vr.GetLeft() && x <= (vr.GetLeft() + vr.GetWidth())) { if (y >= vr.GetTop() && y <= (vr.GetTop() + vr.GetHeight())) { return(vr); } } } } } } return(null); }