FarNet — .NET Far API and .NET module manager

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

Post by NightRoman »

Latest post of the previous page:

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

3.3.37

Recommended FAR 1.71.2315

NEW
- IFar.Redraw() for FAR 1.71.2315
- IMenuItem.Disabled works in menus.
- IMenuItem.Text + IsSeparator is shown in menus.
- IMenuItem.From enables\disables a menu item "automatically".
- IMenu: item properties (except Text) can be changed in locked mode.
- BasePlugin.Invoking(): rarely needed, but sometimes useful, see help.
- IUserControl - currently it is not really a user defined control with custom
drawing, but it still can be used to receive some events where other controls
are not suitable.

OBSOLETE
- REMOVED property BreakCode from menus, see 3.3.36 notes.
- Editor and viewer properties Async and IsModal WILL BE REMOVED. Use new method
Open( OpenMode ) with OpenMode enum. Old method Open() with no parameter is also
obsolete for now, don't use it for this transition period; but it will not be
removed, later it will work as Open( OpenMode.None ).
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.38

NEW
- Many new features in IViewer and new interface IAnyViewer. In short, viewer
management is now similar to editor management (but features are different).
- Minor changes in IEditor and replacements for obsoletes (see below).
- IFar: TempName(), TempFolder().

FIX
- Improved error detection on Open() in editor and viewer (it used to throw a
false error in some rare special cases).

OBSOLETE\CHANGED
- Removed editor and viewer properties Async and IsModal. Use new method Open(
OpenMode ). Old method Open() with no parameter works as Open( OpenMode.None ).
- Editor and viewer properties DeleteOnClose and DeleteOnlyFileOnClose will be
removed, use new property and enum DeleteSource.
- Editor events AfterOpen, AfterClose, BeforeSave will be removed because their
names violate .NET naming guidelines; use new events: Opened, Closed, Saving.
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.39

CHANGED
- VKeyCode names was made compatible with System.ConsoleKey names.

OBSOLETE
- Removed obsolete editor and viewer properties DeleteOnClose and
DeleteOnlyFileOnClose. Use new property DeleteSource (enum DeleteSource).
- Removed obsolete editor events AfterOpen, AfterClose, BeforeSave. Use new
events: Opened, Closed, Saving. Updated demo plugin Plugins.NET \ TrimSaving.
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.40

- Access to dialogs and controls. New property IFar.Dialog - the current dialog
if any (including standard FAR dialogs). You can get the current dialog item as
IDialog.Focused or by index and work on it, e.g. get or set text of the current
IEdit. Some controls in not FAR.NET dialogs are not fully supported yet.
Example: Complete-Word-.ps1 from PowerShellFar completes a word from history of
any edit contol in any FAR dialog. See also Generate-Dialog-.ps1 as a demo of
access to all dialog controls and properties.

- New IFar.GetDialogHistory() - gets saved dialog history by its name (used by
Complete-Word-.ps1 for completion from editor control history).

- BREAKING: removed IText.Separator2 and converted type of IText.Separator from
bool to int: 0: standard text; 1: single line separator; 2: double line
separator.

- New helper IAnyViewer.ViewText - opens a viewer to view some text. Similar to
IAnyEditor.EditText but you can also choose whether it is modal or not.

- Slightly changed action on setting of IPanel.Path and IPanelPath.Path: if the
panel is a plugin not supporting the path then it is closed and a FAR panel is
opened if the new path exists.
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.41

- This is mostly a technical build for FAR 1.71.2346
- New IListBox.Title. IListBox.Text get\set is mapped to the current item text
(dynamically, i.e. when a dialog is opened).
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.42

MENU AND LIST DIALOG CONTROLS

- BREAKING. Interface IMenuItems was completely removed and standard collection
type was used instead. Not standard methods Add() of IMenuItems were moved to
IAnyMenu.Add(). In other words, in your code replace "menu.Items.Add(<text>)"
with "menu.Add(<text>)".
- New dynamic property IBaseList.Items (IListBox, IComboBox), see help. In
brief: when a dialog is started this collection is mapped to a FAR control
dynamically, i.e. all operations (set, insert, remove and etc.) are displayed
immediately. See also new DetachItems(), AttachItems().
- New method IFar::CreateMenuItem()

OTHER

- IControl.Rect is also settable (always); IDialog.Rect is settable before
Show(); after Show() you can use new methods Move() and Resize().
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.43

- Avoided inconvenient for plugin development internal exceptions on loading
when plugin assemblies are changed and registry cache has to updated.
- IMessage, IFar.Msg() - if a message contains too many buttons or their text is
too long, then a dialog with a list box is used instead of a message box where
listbox items work as buttons.
- New property IPanel.IsLeft (FAR 1.71.2348).
- REMOVED IMessage.Reset() because it is not actually needed or 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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.44

- One more method IFar.Msg() with extra parameter 'helpTopic' (FYI: it looks
like IMessage is completely covered by IFar.Msg() methods and perhaps it will be
removed in the future).
- IListMenu.Incremental: '*' in the end in 'prefix' mode: see help for more
(example: used by completions in PowerShellFar).
- IEditor.Open(): if a file is already opened then start position, if any, is
not set -- fixed.
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.46

- Fixed IFar.AnyEditor.EditText(): error if the text is empty and the file is
not saved on exit.
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.47

- IListBox: new method SetFrame() to set both current and top positions.
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.48

- Fixed error messages in viewer on Add|Subtract keys ~ open next|prev file.

- IFar: new property ILine Line { get; }: current editor line in any area (it is
$Psf.HotLine moved from PowerShellFar).

- IFar: new method KeyToName(): converts an internal key code to its string
representation.

- ILine: new property WindowType: parent window type (Editor, Panels, Dialog).

- IListMenu: by default in any list menu keys [CtrlC] and [CtrlIns] are used to
copy text of the current item to the clipboard.
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.49

MACRO MANAGEMENT

- New interface IKeyMacroHost exposed as IFar.KeyMacro property. It provides
methods for macro management.

- New class KeyMacroData: data set describing a macro. It is used by
IKeyMacroHost to get\set a macro data. Note: property names and values are
related to FAR native registry names and values, but this relation is not always
direct, RTFM.

- These IFar methods are OBSOLETE and will be removed: LoadMacros(),
SaveMacros(), PostMacro(). Use new methods of IKeyMacroHost: Load(), Save(),
Post(). Note: new Post() uses 'enableOutput' parameter which is 'false' by
default instead of PostMacro() 'disableOutput' which is 'true' by default.

DOCUMENTATION

- New style of .CHM documentation. Old MSDN style actually has more disadvatages
and it is difficult to improve. New style is somehow simpler and still can be
improved in next versions. What is already improved:
*) separated indices of properties with same names;
*) overloaded methods are all shown in member list;
*) method parameter names are shown in contents;
*) enabled advanced search features;
*) added favourites tab.

OTHER CHANGES

- IListMenu: if filter is not enabled then filter dialog should not start.
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.50

MACRO MANAGEMENT

- REMOVED obsolete IFar methods: LoadMacros(), SaveMacros(), PostMacro(). Use
new methods of IKeyMacroHost: Load(), Save(), Post().

DOCUMENTATION

- Improved look of member tables: set relative column width
- Removed annoying members inherited from System.Object
- Other little improvements and topic updates.

OTHER

- Added protected constructor to BasePlugin. It denies instances of this class.
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.51

*) IEditor.Cursor is {get; set;} property now (it was {get;} only).
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

3.3.52

*) New event IControl.Drawing (e.g. it can be used to draw a user control by
IFar.WriteText and IFar.WritePalette methods).
*) New enum PaletteColor - standard FAR color palette indices.
*) New IFar.WritePalette - to write text using standard FAR colors.
*) New IFar.GetPaletteBackground, IFar.GetPaletteForeground get palette colors.
*) IAnyViewer, IViewer - new events GotFocus, LosingFocus (FAR 1.71.2406).
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: Far.Net — плагин для написания плагинов на .NET языках

Post by NightRoman »

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

= 3.3.53 =

This is mostly a techical build reflecting FAR API changes up to 1.75.2494.

There are though a couple of new items in FAR.NET:
*) IPanel.GoToName() - sets an item current by its name;
*) IPanel.GoToPath() - similar to FAR command goto:<path>.

Happy New Year!
Post Reply

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