Page 2 of 18

Posted: Sun 04 Mar, 2007 21:52
by NightRoman

Latest post of the previous page:


- ILine.Pos: setting of a negative value moves cursor to the end of a line.
- New ILine.Length: text length; use it when text itself is irrelevant.
- New IEditor.GoEnd(): effective way to move cursor to the end of file.
- IFar.Msg(): header: chars '\t', '\r', '\n', if any, are replaced with spaces.
- Removed FarPluginsLoader.dll; you have to do it manually (in %FARHOME%\Lib).
- Fixed recent bugs in menus.
- New property IMenu.SelectLast: tells to select the last item.
- New IMenu feature: filters. See XML docs for properties Filter, FilterKey, FilterHistory, FilterRestore.

Posted: Sun 11 Mar, 2007 22:07
by NightRoman

- Removed: IMenuItem.Selected and related IMenu.Show(int) and parameters
Selected from several methods IMenuItems.Add(). Instead, IMenu.Show() uses
IMenu.Selected as input if it is set. This way seems more consistent than
approach with IMenuItem.Selected (potential conflict between items).

Posted: Sun 18 Mar, 2007 22:01
by NightRoman

- Created CHM help: from now on the latest version can be downloaded from:
- IFar: two new methods Write() appending plain or colored text to the user
screen (under panels).
- Far.NET does not show now error message boxes during the procedure of loading
plugins (it is annoying if problems are known and temporary). Instead, it writes
all error messages to the user screen and continues.

Posted: Sun 25 Mar, 2007 21:28
by NightRoman

- Improved some XML doc code comments, updated CHM help. CHM help: removed MSDN
references, inherited .NET comments and other redundant information.
- Preliminary internal changes for coming features.


Posted: Mon 02 Apr, 2007 02:16
by NightRoman

- Implemented panel plugin interfaces: main of them are: IPanelPlugin and
IPanelPluginInfo. See docs for details. Not yet everything is implemented but
significant part. Everything is a subject to change, this is the first version.
A simple but not really trivial example is Search-Regex-.ps1 in PowerShellFar.
- Refactoring for panel plugins: removed interface IFolder; replaced property
IFolder IFile.Parent with string IFile.ParentPath; replaced property IFolder
IPanel.Contents with IList<IFile> IPanel.Contents.
- Removed from public interface currently redundant IPluginMenuItem.FireOnOpen()
and IMenuItem.FireOnClick().


Posted: Wed 11 Apr, 2007 03:49
by NightRoman

- IFar: new method ClosePanel(): closes the current plugin panel.
- IPanelPluginInfo: new property ConfirmClose:bool.
- IPanel: new method Redraw(int, int).
- IFile: new property: Tag:int. It works as user data attached to an item.
Unfortunately Data:object, as in other interfaces, is not possible for IFile.
Removed properties Path and ParentPath, sorry for a breaking change, but they
were error prone in many cases (and redundant in many other cases); thus, if you
need parent path take it as IPanel.Path and then you decide what Path is in your
scenario: with slash, backslash, nothing, ... (if you need Path at all).
- Refactoring of panel related interfaces for new panel plugin functionality,
added new features, some minor changes may be breaking.
- Updated documentation.

Far.NET help: ... 3.3.10.rar

Posted: Mon 16 Apr, 2007 07:40
by NightRoman

- Fixed minor issues on exceptions in panel plugin events.
- IFar: new method Input() - helper to create and show IInputBox.
- IEditor: fixed exceptions from get-properties of not opened editor.
- Added Plugins.NET\Ipy: plugin to run scripts in IronPython (by Max Belugin).


Posted: Sun 22 Apr, 2007 23:02
by NightRoman

- Updated Plugins.NET\IronPython plugin (by Max Belugin).
- IFar.Input(): added 3 overloaded methods and changed parameter order in
the existing method: prompt, history, title, text.

help: ... 3.3.12.rar

Posted: Sun 29 Apr, 2007 23:27
by NightRoman

Plugin panels:
- new method IFar.GetPanelPlugin().
- removed from public interface property IPanelPlugin.Id (used internally).
- new IPanelPlugin.Another - another FAR.NET IPanelPlugin if it exists.
- new IPanelPlugin.Panel - IPanel interface for this IPanelPlugin.
- new IPanelPlugin.Host - you may use it if you have more than one panel.

Plugin disk menu:
- Added IFar.{Register | Unregister} PluginsDiskItem(): the same as
IFar.{Register | Unregister} PluginsMenuItem() but for FAR disk menu.

Far.NET plugin:
Far.NET help: ... 3.3.13.rar

Posted: Mon 14 May, 2007 03:36
by NightRoman

BREAKING CHANGE: some of IFile properties and panel modes enums renamed using
names of standard .NET class FileSystemInfo. Sorry for that, but it should be
much more convenient than to have 3 different set of names for the same things.

- change: IFar.CreatePanelPlugin() creates a panel, then IPanelPlugin.Open()
should be called explicitly.
- removed IPanelPlugin.Panel:IPanel. Instead, IPanelPlugin is derived from
IPanel and implements some functionality more effectively.
- removed IPanel.Top (it looks like it is not used), use IPanel.TopIndex which
is really needed.
- IFar.Panel, IFar.AnotherPanel: if it is a FAR.NET plugin panel it returns
IPanelPlugin (derived from IPanel, see above).
- IFile.Tag:int was replaced with IFile.Data:object, so that you can attach any
objects to your panel plugin items.

3.3.14: plugin, help:

Posted: Thu 24 May, 2007 10:47
by NightRoman

- Far.exe.config: added option FarManager.StartupErrorDialog: 0: write error
info to console (default); 1: show standard error dialog (you may want to turn
it on to view error info in viewer (button [Info])).
- fixed exception on clipboard failure.
- fixed broken examples in Plugins.NET folder

Posted: Thu 07 Jun, 2007 11:02
by NightRoman

- new property IFar.From:OpenFrom - where a plugin is opened from.
- new property IPanel.Window:Place - panel coordinates.
- new properties IEditor.TrueLines,TrueSelection: no empty last line if any.
They are designed for convenient reading or changing existing lines in foreach
loops; Add(), Insert(), RemoveAt() are available, but not yet recommended, they
can not be used in foreach anyway.

- properties {ILines | IStrings}.Text will be removed; please, use methods
{IEditor | ISelection}.{GetText | SetText} - they will be more effective.
ILines and IStrings will be almost nothing but ILine and string lists.

Posted: Mon 11 Jun, 2007 10:22
by NightRoman

- removed obsolete properties {ILines | IStrings}.Text; please, use methods
{IEditor | ISelection}.{GetText | SetText}.

Posted: Fri 15 Jun, 2007 18:21
by NightRoman

- Properties IPanel.{ReverseSortOrder | SortMode | ViewMode} are now 'get\set'
(i.e. not 'get' only).
- New properties IFar.{RootFar | RootKey} - registry paths taking into account
a user, e.g. '/u user1' in FAR command line.
- Improved switching\keeping\restoring of plugin panels modes.
- Fixed lib path in Build-JS.bat.
- Fixed ReplaceSlashes.js in examples.

Posted: Fri 22 Jun, 2007 17:36
by NightRoman


- Added 'set' method to property IPanel.NumericSort.
- Fixed issues in plugin panel start sort modes.

Posted: Mon 23 Jul, 2007 12:29
by NightRoman


- This is mostly a technical build needed for PowerShellFar 1.1.20