FarNet — .NET Far API and .NET module manager

Анонсы новых плагинов. Обсуждение плагинов ведется ниже.
Post Reply
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

Latest post of the previous page:

http://code.google.com/p/farnet/

= 4.1.11 =

*) Fix: IPluginPanel.ShownList used to return null instead of a "dots" file.

*) Added property GettingFilesEventArgs.Names needed in rare cases when auto
alternate names are used.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.0 =

----- Major changes -----

4.1.0 introduced classes FarFile and SetFile instead of interface IFile. This
approach looks good. So now 4.2.0 in the same way introduces classes FarItem
and SetItem instead of interface IMenuItem.

Yet another change is replacement of a menu item event OnClick (with ability to
add multiple handlers) with a single handler Click. Practice shows that a
single handler is enough and less confusing.

The changes are breaking, indeed, but it should be really easy to update your
code, please follow the simple steps below:

In your code:
1) replace 'IMenuItem' with 'FarItem'
2) replace 'Far.CreateMenuItem()' with 'new SetItem()'
3) replace adding 'OnClick += ...' with setting 'Click = ...'

----- Other changes -----

*) IMenu: added still missed property ChangeConsoleTitle.

*) IFar: improved PostJob; it collects all posted handlers (excluding dupes);
then they are all invoked in the order they were posted.

*) IPanel: new method GoToName(string, bool) in addition to GoToName(string).
New one returns succeess flag or may optionally throw if a name is not found.

*) IPluginPanelInfo: renamed too general name Format into FormatName.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.1 =

*) IEditor: new method TextWriter CreateWriter(): the writer calls Insert*()
internally. It is convenient and efficient for using where a writer is
expected.

*) IEditor: new method InsertChar(): not a big deal (Insert() can do the job)
but it is effectively used by text writers created by CreateWriter().
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.2 =

*) IDialog: new event ConsoleSizeChanged ~ DN_RESIZECONSOLE.

*) IDialog: new methods DisableRedraw(), EnableRedraw() ~ DM_ENABLEREDRAW.

*) IDialog: Rect is settable after Show(), too; same as Move() + Resize().

*) IListMenu uses ConsoleSizeChanged to recalculate its size according to the
new console size.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.3 =

*) Adapted to Far 2.0.1145+: Far does not set the current directory to the
active panel path (a step to long paths support). Still, remember that .NET
itself and many other external tools do not like long paths. _090929_061740

*) New property IFar.ActivePath: Gets the path of the active Far panel or the
ActivePath (former StartDirectory) of the active FarNet panel. Mind long paths.

*) IEditor.CodePage is now settable after opening, so that it is possible to
change code pages from a plugin. Another good news: Far 2.0.1144+ API works
correctly with code pages on open, save, and save as operations.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.4 =

*) IEditor: new methods BeginAsync() and EndAsync() allows to write to not a
current editor or from background jobs. Output procedure is similar to console
output. Use this mode very carefully and only when it is absolutely needed.
Plugin PowerShellFar uses this mode for asynchronous editor consoles.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.5 =

*) Requires Far 2.0.1160. Event IPluginPanel.PuttingFiles now accepts arguments
as PuttingFilesEventArgs which has additional property Source - source path of
the files being processed. This is not a breaking change, but in Far 2.0.1145+
some operations cannot be performed correctly without this Source information,
such plugins have to be updated.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.6 =

MULTIPLE PANELS
(true for FarNet panels, simulation for Far file panels)

FarNet plugin panels on closing by Close() restore the original file panel
current and selected items. (Far does not do this itself, see Mantis 1114).

FarNet panel tools (available from the plugin menu) allow to work with multiple
FarNet panels and to simulate work with multiple standard Far file panels. You
can:
-- push any FarNet plugin panel for later use (as usual);
-- shelve any standard Far file panel, i.e. keep its state (new feature!);
-- pop/unshelve previously pushed/shelved panels; the shown panel restores its
state: current and selected items and sort and view modes (new for file panels
+ restoring of selection is new for FarNet plugin panels).

OTHER CHANGES

*) IPanel: new method SelectNames(). It is introduced for *restoring* of the
selection (see above), but it can be used for other selection tasks as well.

*) IFar: removed method PushedPanels(). It is unlikely needed for external use.

*) IPluginPanel: property ActivePath is read only now.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.7 =

*) IFar: property Version is replaced with two properties: FarVersion and
FarNetVersion.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.8 =

*** Requires Far 2.0.1181+ ***

*) IFar.ActivePath returns the internal Far current directory path. NOTE: this
is not always the same as the IPanel.Path of the active panel.

*) IPanel.GoToPath(): fixed wrong current item for paths ending with a slash.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.9 =

*) IFar.Msg(): new MsgOptions flags Gui and GuiOnMacro allow to show standard
Windows GUI message boxes. Do not use these flags without good reasons.

*) Far.exe.config: appSettings: added key FarNet.DisableGui. Allows to disable
GUI message boxes used internally in exceptional cases. Recommended (default)
value is false, i.e. special GUI messages are enabled.

*) For safety sake: avoiding unexpected results on exceptions during a running
macro IFar.ShowError() now stops a macro before showing an error dialog.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.10 =

REVISION OF PanelModeInfo

*) New abstract class FarColumn and its simple implementation SetColumn. Use
SetColumn to define panel column type, width, and title or status column type
and width.

*) Properties ColumnTitles, ColumnTypes, ColumnWidths are replaced with new
property - array Columns.

*) Properties StatusColumnTypes, StatusColumnWidths are replaced with new
property - array StatusColumns.

New columns definition is perhaps slightly more verbose but it is more object
oriented and safe: with old version incorrect data could crash Far or lead to
displayed garbage. Also, it is now easier to change column options and order
after creation (both in code and at run time).
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.11 =

*** Requires Far 2.0.1200+ ***

*) Adapted for Far 2.0.1200 (IEditor.WordDiv).
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.12 =

*) Improved view of error messages and stack information shown on exceptions
when you press buttons [View info] and [Copy info] in exception dialogs.

*) Added class PluginException. If a plugin throws exceptions then for better
diagnostics it is recommended to use this or derived from this exceptions.

*) Minor internal tweaks.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.13 =

*** Far 2.0.1209+ ***

*) Updated IFar.GetDialogHistory() for Far 2.0.1208
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Re: FarNet - .NET Far API and .NET plugin manager

Post by NightRoman »

http://code.google.com/p/farnet/

= 4.2.14 =

*) IFar.Msg() with 'Gui*' options: it is OK to provide 'helpTopic' parameter,
it's not an error, it is simply ignored. Throw only on custom buttoms: they
are not supported in GUI mode.
Post Reply

Return to “Анонсы новых плагинов”