protected override void BeginProcessing() { if (Append) { var panel = Far.Api.Panel as Panel; if (panel == null || panel.GetType() != typeof(ObjectPanel)) { throw new InvalidOperationException("There is no panel able to append objects."); } _panel = (ObjectPanel)panel; } else { _panel = new ObjectPanel(); // common parameters ApplyParameters(_panel); // more parameters _panel.Columns = Columns; _panel.ExcludeMemberPattern = ExcludeMemberPattern; _panel.HideMemberPattern = HideMemberPattern; // and title, if not yet if (string.IsNullOrEmpty(_panel.Title) && !string.IsNullOrEmpty(A.Psf._myCommand)) { _panel.Title = A.Psf._myCommand; } } }
protected override void BeginProcessing() { if (Append) { var panel = Far.Api.Panel as Panel; if (panel == null || panel.GetType() != typeof(ObjectPanel)) throw new InvalidOperationException("There is no panel able to append objects."); _panel = (ObjectPanel)panel; } else { _panel = new ObjectPanel(); // common parameters ApplyParameters(_panel); // more parameters _panel.Columns = Columns; _panel.ExcludeMemberPattern = ExcludeMemberPattern; _panel.HideMemberPattern = HideMemberPattern; // and title, if not yet if (string.IsNullOrEmpty(_panel.Title) && !string.IsNullOrEmpty(A.Psf._myCommand)) _panel.Title = A.Psf._myCommand; } }
protected override void BeginProcessing() { _panel = new ObjectPanel(); // common parameters ApplyParameters(_panel); // more parameters _panel.Columns = Columns; _panel.ExcludeMemberPattern = ExcludeMemberPattern; _panel.HideMemberPattern = HideMemberPattern; // and title, if not yet if (string.IsNullOrEmpty(_panel.Title) && !string.IsNullOrEmpty(A.Psf._myCommand)) { _panel.Title = A.Psf._myCommand; } }
public void ShowPanel() { string currentDirectory = A.Psf.SyncPaths(); try { string drive = UI.SelectMenu.SelectDrive(null, true); if (drive == null) return; AnyPanel ap; if (drive == "Folder &tree") ap = new FolderTree(); else if (drive == "&Any objects") ap = new ObjectPanel(); else ap = new ItemPanel(drive); ap.Open(); } finally { A.SetCurrentDirectoryFinally(currentDirectory); } }
/// <summary> /// Puts a value into the command line or opens a lookup panel or member panel. /// </summary> /// <param name="file">The file to process.</param> public override void OpenFile(FarFile file) { if (file == null) throw new ArgumentNullException("file"); PSPropertyInfo pi = file.Data as PSPropertyInfo; // e.g. visible mode: sender is MemberDefinition if (pi == null) return; // lookup opener? if (_LookupOpeners != null) { ScriptHandler<OpenFileEventArgs> handler; if (_LookupOpeners.TryGetValue(file.Name, out handler)) { handler.Invoke(this, new OpenFileEventArgs(file)); return; } } // case: can show value in the command line string s = Converter.InfoToLine(pi); if (s != null) { // set command line ILine cl = Far.Api.CommandLine; cl.Text = "=" + s; cl.SelectText(1, s.Length + 1); return; } // case: enumerable IEnumerable ie = Cast<IEnumerable>.From(pi.Value); if (ie != null) { ObjectPanel op = new ObjectPanel(); op.AddObjects(ie); op.OpenChild(this); return; } // open members OpenFileMembers(file); }