Page 10 of 18

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

Posted: Wed 21 Apr, 2010 13:04
by NightRoman

Latest post of the previous page:

= 4.3.16 =

-- Removed the workaround method ChangeTitle because Mantis 1334 was recently
resolved: the property .Title now changes the title permanently, null or empty
string restores the original title.

Module EditorKit
The module TrimSaving is replaced with a new module EditorKit. It contains:
-- TrimSaving (old) - trims line ends on saving;
-- ExpandTabsAll (new) - sets tabs expansion mode to 'All' for some files.
-- Reminder: file types are configurable via FarNet configuration UI.
-- You may want to remove or rename this registry key:

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

Posted: Mon 26 Apr, 2010 11:29
by NightRoman

= 4.3.17 =

Tracing (configured via Far.exe.config or dynamically)
-- Internal FarNet tracing uses newer TraceSource tools instead of older Trace.
-- "Far.exe.config" enables the source "FarNet" with the switch "FarNet.Trace".
The default switch level is "Warning". Do not forget to update the config file
(or merge with your changes) to make sure that new tracing works.
-- The trace listener writing to the file "C:\Far.exe.trace.log" is disabled in
the distributed config file. Practice shows that it is useful only in special
cases. In that cases this or other listeners should be added and configured.
Alternatively, tracing can be watched by the Sysinternals utility DbgView.exe
or in the attached debugger if any is available.

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

Posted: Fri 14 May, 2010 11:03
by NightRoman

= 4.3.18 =

New module cache approach
-- It is fine to use several Far or FarNet locations with different sets of
modules or even different versions. Cache conflicts are resolved now.
-- Theoretically new way of caching should work slightly faster because some
housekeeping procedures are not performed.
-- There is no automatic cache cleaning now. The cache may contain entries not
used any more. It is recommended to remove the cache manually periodically, in
particular after removing\moving\renaming modules and Far\FarNet locations:

Renamed confusing names
IFar.GetUserScreen -> ShowUserScreen
IFar.SetUserScreen -> SaveUserScreen
These methods are "low level" and it is very unlikely that many modules use
them. Still, if a module calls them then this change is breaking, indeed.

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

Posted: Sun 16 May, 2010 13:22
by NightRoman

= 4.3.19 =

Internal changes dealing with the user screen operations. Automatic calls of
SaveUserScreen before showing Far UI after ShowUserScreen and console writing.
NOTE: direct use of these methods and console writing is not recommended.

Renamed WriteText and WritePalette to DrawColor and DrawPalette in order to
distinguish them from low level Write* methods. In contrast to Write* family
Draw* methods are for normal use, for example for custom dialog controls.

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

Posted: Sun 23 May, 2010 15:39
by NightRoman

= 4.3.20 =

NOTE: this time update manually (not by Update-PowerShellFar.ps1) because the
FarNet package has slightly changed.

*) Renamed documentation
Renamed PowerShellFar.chm to FarNetAccord.chm. It includes PowerShellFar API
but it is about FarNet in the first place, so the new name is less confusing.

*) IButton
-- fix: .Text should return the real text, i.e. without brackets.

*) Module configuration
-- fixes in editor and filer module config tools.

*) Misc
-- fix of console colors of error messages on exit.

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

Posted: Wed 26 May, 2010 16:29
by NightRoman

= 4.3.21 =

NOTE: update manually (not by Update-PowerShellFar.ps1).

*) IFar
-- New property RawUI.

*) IRawUI
-- Low level UI operator; properties so far: WindowCursor, WindowPlace

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

Posted: Tue 01 Jun, 2010 11:33
by NightRoman

= 4.3.22 =

(Update by Update-PowerShellFar.ps1 should work fine)

*) Raw UI methods moved to a separate interface
-- Renamed recently added property IFar.RawUI to UI.
-- Added a few UI members to hide direct calls to System.Console.
-- Moved raw UI members from IFar to IFar.UI: DrawColor, DrawPalette,
GetPaletteBackground, GetPaletteForeground, MainWindowHandle, RestoreScreen,
SaveScreen, SaveUserScreen, ShowUserScreen, SetProgressState, SetProgressValue,
Redraw, and Write.

Re: FarNet — .NET Far API and .NET module manager

Posted: Sun 13 Jun, 2010 17:31
by NightRoman

= 4.3.23 =

*) Update-FarNet.ps1 (new script for selective update of FarNet packages) ... FarNet.ps1

Its goal is selective update of various FarNet packages. In particular it
updates FarNet. You may skip any packages.

You can download the script directly from the above URL (do not forget to
unblock the script) or take it together with the PowerShellFar package.

*) Raw UI
Minor changes and fixes.

Re: FarNet — .NET Far API and .NET module manager

Posted: Mon 19 Jul, 2010 19:08
by NightRoman

= 4.3.24 =

Technical build with no API changes.

Re: FarNet — .NET Far API and .NET module manager

Posted: Mon 26 Jul, 2010 11:28
by NightRoman

= 4.3.25 =

*) IEditor
-- Very good news: workaround methods BeginAccess/EndAccess for faster line
iterations are not needed anymore (Far 2.1623+) and removed. Breaking change,
modules using them should be updated.
-- If EditorKit module is used then it has to be rebuilt.

*) Documentation
-- It is adapted for and built by the latest Sandcastle. Documentation style is
changed from "Prototype" to "VS2005" because "Prototype" is declared obsolete.
("VS2005" style is better, basically)

Re: FarNet — .NET Far API and .NET module manager

Posted: Wed 04 Aug, 2010 11:01
by NightRoman

= 4.3.26 =

*) New utility library FarNet.Tools.dll (and its FarNet.Tools.xml)
It will contain tools that are not FarNet API or Far Manager API but extra
FarNet utilities designed for all modules. If a module uses these tools then
FarNet.Tools.dll should be added to its references together with FarNet.dll.
-- moved SubsetForm from FarNet to FarNet.Tools;
-- added new utility form ProgressForm; examples: Test-ProgressForm-.ps1 in
PowerShellFar and the separately distributed module FolderChart.

*) Utility forms moved from FarNet to FarNet.Tools
-- removed IFar.CreateSubsetForm() method;
-- removed interfaces IForm and ISubsetForm.

*) Documentation
-- Added documentation of new FarNet.Tools types.
-- Improved index panel: added sub-indexes for types, joined indexes for
members with same names + full names view in the "Topics found" dialog.

Re: FarNet — .NET Far API and .NET module manager

Posted: Mon 16 Aug, 2010 17:56
by NightRoman

= 4.3.27 =

*) FarNet.Tools.ProgressForm
-- New helper method SetProgressInt64() for long integer values.
-- New method Invoke() invokes the specified job action delegate in a new
thread. This is a simple scenario with optional job thread abortion.
-- New features were tried/tested in the MultiHasher module and will be
proposed to the author. Watch the MultiHasher announcements.

Re: FarNet — .NET Far API and .NET module manager

Posted: Fri 20 Aug, 2010 12:40
by NightRoman

= 4.3.28 =

*) IEdit, IComboBox
Added property IsTouched (~ DM_EDITUNCHANGEDFLAG).

*) New interface IEditable
IEdit and IComboBox now share the same base interface IEditable.
(It's unlikely breaking, but probability is not zero)

Re: FarNet — .NET Far API and .NET module manager

Posted: Fri 27 Aug, 2010 14:09
by NightRoman

= 4.3.29 =

*) Far.Net.UI
New method SetProgressFlash() (Far 2.0.1660, ACTL_PROGRESSNOTIFY).

*) FarNet.Tools.ProgressForm
The progress form calls SetProgressFlash() after show. As a result, such
modules as FolderChart, MultiHasher have this new feature automatically.
NB: the toolbar icon flashes only if the window is not active.

*) IDialog
Fixed work of the TypeId property for native Far dialogs.

Re: FarNet — .NET Far API and .NET module manager

Posted: Sun 12 Sep, 2010 12:35
by NightRoman

= 4.3.30 =

*) IEditor
-- New property Bookmark gets the bookmark operator.
-- Method Bookmarks() moved to the IEditorBookmark.

*) New interface IEditorBookmark
Operates on the standard and stack (new!) editor bookmarks.

*) Exceptions on Far call failures
InvalidOperationException is used for internal issues, e.g. Far call failures,
instead of OperationCanceledException. Modules may be affected if they used to
catch/check OperationCanceledException.

NB: for correct work with bookmarks use Far 2.0.1667+

Re: FarNet — .NET Far API and .NET module manager

Posted: Wed 01 Dec, 2010 17:53
by NightRoman

= 4.3.31 =

*) UI: new .NET menu items
Added two new menu items "Editors..." and "Viewers..." that show the editor or
viewer list sorted by recent activity. This is experimental but it looks like a
useful addition to the native Far menu Screens.

*) Editor & Viewer
-- New methods Activate() to make the instance window active.
-- Improved internal management of editor and viewer lists. Useful side effect:
IFar methods Editors() and Viewers() return instances sorted by last activity.

*) IEditor
-- New properties KeyCount, TimeOfOpen, TimeOfSave (for statistics, AI, etc.)
-- Changed Save(): it saves only on changes. This is shorter than often used
"if (!editor.IsSaved) Save();" and helps to avoid misuse of the IsModified.
-- New method Save(bool) allows to save even not changed file.

NB: change of Save() is unlikely breaking but you may want to review your calls
and remove not needed checks.

*) IViewer
-- New property TimeOfOpen (similar to IEditor).