예제 #1
0
      private IEnumerable<BplProxy> _retrieveProxyChain(BplDebuggerVisualizer debugger) {
         var root = debugger.RootProxy;
         var list = new List<BplProxy>();

         if (_path.Length > 0 && Object.Equals(_path[0], root.PropertyPath._path[0])) {
            var current = root;
            list.Add(current);
            for (var i = 1; i < _path.Length; i++) {
               current.LoadOnDemand(debugger);
               current = current.GetChildByKey(_path[i]);
               list.Add(current);
            }
         }
         return list;
      }
예제 #2
0
 /// <summary/>
 public override void LoadOnDemand(BplDebuggerVisualizer debugger) {
    if (!IsEmpty && !IsLoaded) {
       Load(BplChildProxiesQuery.Invoke(debugger,this).Result);
    }
 }
예제 #3
0
 public BplVisualizerForm(BplDebuggerVisualizer debugger) {
    Debugger = debugger;
    InitializeComponent();
    Load += _onLoad;
 }
예제 #4
0
 /// <summary>Invokes the query on the debugger side and returns a copy of the original query with the results filled in.</summary>
 public static BplPrecedentsQuery Invoke(BplDebuggerVisualizer debugger, BplProxy proxy) {
    var query = new BplPrecedentsQuery { Proxy = proxy };
    return query.Invoke<BplPrecedentsQuery>(debugger);
 }
예제 #5
0
 /// <summary>Invokes the query on the debugger side and returns a copy of the original query with the results filled in.</summary>
 public static BplSourcePathQuery Invoke(BplDebuggerVisualizer debugger) {
    var query = new BplSourcePathQuery();
    return query.Invoke<BplSourcePathQuery>(debugger);
 }
예제 #6
0
 /// <summary>Invokes the query on the debugger side and returns a copy of the original query with the results filled in.</summary>
 public static BplRootProxyQuery Invoke(BplDebuggerVisualizer debugger) {
    var query = new BplRootProxyQuery();
    return query.Invoke<BplRootProxyQuery>(debugger);
 }
예제 #7
0
 /// <summary>Invokes the query on the debugger side and returns a copy of the original query with the results filled in.</summary>
 public static BplChildProxiesQuery Invoke(BplDebuggerVisualizer debugger, BplObjectProxy proxy) {
    var query = new BplChildProxiesQuery { Proxy = proxy };
    return query.Invoke<BplChildProxiesQuery>(debugger);
 }
예제 #8
0
 /// <summary>Retrieves the proxy object represented by this property path.</summary>
 /// <param name="debugger">The BPL debugger.</param>
 /// <returns>The requested proxy object.</returns>
 public BplProxy RetrieveProxy(BplDebuggerVisualizer debugger) {
    var chain = _retrieveProxyChain(debugger);
    return chain.LastOrDefault();
 }
예제 #9
0
파일: BplProxy.cs 프로젝트: borkaborka/gmit
 /// <summary>Loads the proxy children on demand.</summary>
 public virtual void LoadOnDemand(BplDebuggerVisualizer debugger) {
 }