private async Task OnDoneCommandAsync() { var selectedItems = listView.SelectedItems; if (Chooser.EnableSelection) { var values = listView.SelectedItems.Cast <object>() .Select(x => x?.GetPropertyValue(Chooser.ValuePath)) .Where(x => x != null); AtomList <object> sitems = Chooser.SelectedItems as AtomList <object>; sitems.Replace(listView.SelectedItems.Cast <object>()); if (Chooser.AllowMultipleSelection) { Chooser.Value = string.Join(Chooser.ValueSeparator, values.Select(x => x.ToString())); } else { var first = values.FirstOrDefault(); Chooser.Value = first; } } Chooser.TapCommand?.Execute(selectedItems); await DependencyService.Get <INavigation>().PopAsync(); }
private static void CallList(AtomList l) { External e = Internal.pass.ext; try { e.klass.m_list(e, (Atom[])l); } catch (Exception exc) { PostError(exc.ToString()); } }
private static void NewInstance(ExternalPtr ptr, AtomList args) { External instance; Class cl = Internal.pass.klass; // set by native side Internal.extptr = ptr; // Post("CLASS-NEW {0}",cl); try { // TODO: create dynamic delegate for that.... System.Reflection.ConstructorInfo m = cl.extclass.GetConstructor(new Type[1] { typeof(Atom[]) }); if (m != null) { instance = (External)m.Invoke(new object[1] { (Atom[])args }); } else { // search for the argument-less constructor... it must exist, we searched before m = cl.extclass.GetConstructor(System.Type.EmptyTypes); instance = (External)m.Invoke(null); } } catch (Exception exc) { instance = null; PostError(exc.ToString()); } #if DEBUG Internal.extptr.Clear(); #endif Internal.pass.ext = instance; // back to native }
public AtomListEnum(AtomList l) { list = l; }
private void _read() { _len32 = m_io.ReadU4be(); _atomType = ((QuicktimeMov.AtomType)m_io.ReadU4be()); if (Len32 == 1) { _len64 = m_io.ReadU8be(); } switch (AtomType) { case QuicktimeMov.AtomType.Moof: { __raw_body = m_io.ReadBytes(Len); var io___raw_body = new KaitaiStream(__raw_body); _body = new AtomList(io___raw_body, this, m_root); break; } case QuicktimeMov.AtomType.Tkhd: { __raw_body = m_io.ReadBytes(Len); var io___raw_body = new KaitaiStream(__raw_body); _body = new TkhdBody(io___raw_body, this, m_root); break; } case QuicktimeMov.AtomType.Stbl: { __raw_body = m_io.ReadBytes(Len); var io___raw_body = new KaitaiStream(__raw_body); _body = new AtomList(io___raw_body, this, m_root); break; } case QuicktimeMov.AtomType.Traf: { __raw_body = m_io.ReadBytes(Len); var io___raw_body = new KaitaiStream(__raw_body); _body = new AtomList(io___raw_body, this, m_root); break; } case QuicktimeMov.AtomType.Minf: { __raw_body = m_io.ReadBytes(Len); var io___raw_body = new KaitaiStream(__raw_body); _body = new AtomList(io___raw_body, this, m_root); break; } case QuicktimeMov.AtomType.Trak: { __raw_body = m_io.ReadBytes(Len); var io___raw_body = new KaitaiStream(__raw_body); _body = new AtomList(io___raw_body, this, m_root); break; } case QuicktimeMov.AtomType.Moov: { __raw_body = m_io.ReadBytes(Len); var io___raw_body = new KaitaiStream(__raw_body); _body = new AtomList(io___raw_body, this, m_root); break; } case QuicktimeMov.AtomType.Mdia: { __raw_body = m_io.ReadBytes(Len); var io___raw_body = new KaitaiStream(__raw_body); _body = new AtomList(io___raw_body, this, m_root); break; } case QuicktimeMov.AtomType.Dinf: { __raw_body = m_io.ReadBytes(Len); var io___raw_body = new KaitaiStream(__raw_body); _body = new AtomList(io___raw_body, this, m_root); break; } case QuicktimeMov.AtomType.Mvhd: { __raw_body = m_io.ReadBytes(Len); var io___raw_body = new KaitaiStream(__raw_body); _body = new MvhdBody(io___raw_body, this, m_root); break; } case QuicktimeMov.AtomType.Ftyp: { __raw_body = m_io.ReadBytes(Len); var io___raw_body = new KaitaiStream(__raw_body); _body = new FtypBody(io___raw_body, this, m_root); break; } default: { _body = m_io.ReadBytes(Len); break; } } }
private void _read() { _atoms = new AtomList(m_io, this, m_root); }
private static void CallAnything(int inlet, Symbol s, AtomList l) { // Post("CLASS-ANYTHING {0}->{1}:{2}", inlet,s,l); try { External e = Internal.pass.ext; Class c = e.klass; Hashtable h; try { h = (Hashtable)c.m_map[inlet]; } catch (IndexOutOfRangeException) { h = null; } if (h != null) { object fnd = h[s]; if (fnd != null) { MapValue mv = (MapValue)fnd; switch (mv.k) { case Kind.k_bang: { ((DynamicMethodBang)mv.d)(e); return; } case Kind.k_float: { float f = l.Count > 0 ? (float)l[0] : 0; ((DynamicMethodFloat)mv.d)(e, f); return; } case Kind.k_symbol: { Symbol sym = l.Count > 0 ? (Symbol)l[0] : _; ((DynamicMethodSymbol)mv.d)(e, sym); return; } case Kind.k_pointer: { Pointer p = l.Count > 0 ? (Pointer)l[0] : new Pointer(); ((DynamicMethodPointer)mv.d)(e, p); return; } case Kind.k_list: ((DynamicMethodList)mv.d)(e, (Atom[])l); return; case Kind.k_anything: ((DynamicMethodAnything)mv.d)(e, inlet, s, (Atom[])l); return; default: throw new NotImplementedException("Selector " + s.ToString() + " not handled"); } } } // no explicit method found... c.m_anything(e, inlet, s, (Atom[])l); } catch (Exception exc) { PostError(exc.ToString()); } }
private static void CallAnything(int inlet, Symbol s, AtomList l) { // Post("CLASS-ANYTHING {0}->{1}:{2}", inlet,s,l); try { External e = Internal.pass.ext; Class c = e.klass; Hashtable h; try { h = (Hashtable)c.m_map[inlet]; } catch (IndexOutOfRangeException) { h = null; } if(h != null) { object fnd = h[s]; if (fnd != null) { MapValue mv = (MapValue)fnd; switch(mv.k) { case Kind.k_bang: { ((DynamicMethodBang)mv.d)(e); return; } case Kind.k_float: { float f = l.Count > 0 ? (float)l[0] : 0; ((DynamicMethodFloat)mv.d)(e, f); return; } case Kind.k_symbol: { Symbol sym = l.Count > 0 ? (Symbol)l[0] : _; ((DynamicMethodSymbol)mv.d)(e, sym); return; } case Kind.k_pointer: { Pointer p = l.Count > 0 ? (Pointer)l[0] : new Pointer(); ((DynamicMethodPointer)mv.d)(e, p); return; } case Kind.k_list: ((DynamicMethodList)mv.d)(e,(Atom[])l); return; case Kind.k_anything: ((DynamicMethodAnything)mv.d)(e,inlet,s,(Atom[])l); return; default: throw new NotImplementedException("Selector " + s.ToString() + " not handled"); } } } // no explicit method found... c.m_anything(e, inlet, s, (Atom[])l); } catch (Exception exc) { PostError(exc.ToString()); } }
private static void NewInstance(ExternalPtr ptr,AtomList args) { External instance; Class cl = Internal.pass.klass; // set by native side Internal.extptr = ptr; // Post("CLASS-NEW {0}",cl); try { // TODO: create dynamic delegate for that.... System.Reflection.ConstructorInfo m = cl.extclass.GetConstructor(new Type[1] { typeof(Atom[]) }); if (m != null) instance = (External)m.Invoke(new object[1] { (Atom[])args }); else { // search for the argument-less constructor... it must exist, we searched before m = cl.extclass.GetConstructor(System.Type.EmptyTypes); instance = (External)m.Invoke(null); } } catch (Exception exc) { instance = null; PostError(exc.ToString()); } #if DEBUG Internal.extptr.Clear(); #endif Internal.pass.ext = instance; // back to native }