home *** CD-ROM | disk | FTP | other *** search
/ 73.234.73.94.ip.orionnet.ru / 73.234.73.94.ip.orionnet.ru.tar / 73.234.73.94.ip.orionnet.ru / Far30b3000.x86.20121208.msi / changelog_eng < prev    next >
Text File  |  2012-12-08  |  398KB  |  12,086 lines

  1. =======================================================================================
  2. This file is a translation of the main russian changelog and is provided by volunteers.
  3. It might not always be as up to date as the main changelog.
  4. =======================================================================================
  5.  
  6. drkns 02.12.2012 12:42:54 +0200 - build 2989
  7.  
  8. 1. Continuation of 2987.
  9.  
  10. drkns 02.12.2012 01:20:47 +0200 - build 2988
  11.  
  12. 1. Continuation of 2987. 
  13.  
  14. drkns 01.12.2012 23:53:07 +0200 - build 2987
  15.  
  16. 1. 0002212: Long volume labels are cropped
  17.    The widths of all volume menu columns are now calculated automatically.
  18.  
  19. w17 01.12.2012 14:01:35 +0400 - build 2986
  20.  
  21. 1. fix(2985) - FAR crash on file saving from the editor
  22.  
  23. drkns 30.11.2012 22:50:38 +0200 - build 2985
  24.  
  25. 1. Continuing the refactoring.
  26.  
  27. w17 30.11.2012 05:44:35 +0400 - build 2984
  28.  
  29. 1. vs 2010 buildable fix(2983). gcc < 4.6.1 is not supported anymore
  30.  
  31. drkns 29.11.2012 23:30:26 +0200 - build 2983
  32.  
  33. 1. Continuation of 2953.
  34.  
  35. lort 29.11.2012 18:13:34 +0400 - build 2982
  36.  
  37. 1. Incorrect DM_SETEDITPOSITION functions if EditorSetPosition has any parameter set to -1.
  38.  
  39. drkns 29.11.2012 01:00:22 +0200 - build 2981
  40.  
  41. 1. Continuation of 2953.
  42.  
  43. w17 29.11.2012 02:57:41 +0400 - build 2980
  44.  
  45. 1. M#1494: Crash on sequential closing and opening the editor from a plugin.
  46.  
  47. w17 28.11.2012 19:22:32 +0400 - build 2979
  48.  
  49. 1. search failure after '\0' in editor
  50.  
  51. drkns 28.11.2012 00:23:56 +0200 - build 2978
  52.  
  53. 1. Continuation of 2953.
  54.  
  55. shmuel 27.11.2012 15:58:53 +0200 - build 2977
  56.  
  57. 1. Continuation of 2976: DB sections renamed.
  58.    "farconfig/macros/variables" --> "farconfig/macros/modules".
  59.    "farconfig/macros/variables/variable" --> "farconfig/macros/modules/module".
  60.    If someone has already created modules, export them from 2976, rename the sections, import to 2977.
  61.  
  62. shmuel 25.11.2012 19:08:41 +0200 - build 2976
  63.  
  64. 1. Experimental: the use of "farconfig/macros/variables" database section for Lua modules (libraries).
  65.    Each variable stands for a module. The module names are case dependent.
  66.    Example: <variable name="shmuel.utils" type="text"> ...... </variable>
  67.    Example of use in a macro: utils=require "shmuel.utils"
  68.    ATTENTION: "variables" are no longer loaded at FAR start. Use "constants" for this.
  69.  
  70. svs 25.11.2012 20:06:39 +0400 - build 2975
  71.  
  72. 1. Correction of GetSearchReplaceString - hiding All button.
  73.  
  74. shmuel 25.11.2012 10:44:34 +0200 - build 2974
  75.  
  76. 1. Macro API: Mouse.LastCtrlState property is added, unlike Mouse.CtrlState, it is
  77.    updated both on mouse and keyboard events.
  78.  
  79. drkns 24.11.2012 15:48:39 +0200 - build 2973
  80.  
  81. 1. Continuation of 2972.
  82.  
  83. w17 23.11.2012 18:15:56 +0400 - build 2972
  84.  
  85. 1. Continuation of 2791
  86.    [System Properties] malfunction in file attributes dialog on old Windows versions
  87.  
  88. shmuel 23.11.2012 11:51:43 +0200 - build 2971
  89.  
  90. 1. Plugins API: in GetDirList and FSF.FarRecursiveSearch functions, some fields of PluginPanelItem structure
  91.    contained garbage.
  92.  
  93. shmuel 22.11.2012 19:58:34 +0200 - build 2970
  94.  
  95. 1. Forum: Menu.Show(Items,"",0x8+0x80,Idx) does not position to item with number Idx.
  96.  
  97. drkns 22.11.2012 19:41:01 +0200 - build 2969
  98.  
  99. 1. Excessive SetCurrentDirectory call in launcher.
  100.  
  101. lort 22.11.2012 21:06:41 +0400 - build 2968
  102.  
  103. 1. Crash when copying selected block in viewer.
  104.  
  105. shmuel 21.11.2012 23:59:49 +0200 - build 2967
  106.  
  107. 1. Correction of 2966.
  108.  
  109. shmuel 21.11.2012 22:19:38 +0200 - build 2966
  110.  
  111. 1. M#2163: LUA: φσ ≡αßε≥ασ≥ ⌠δαπ DisableOutput
  112.  
  113. w17 21.11.2012 22:16:55 +0400 - build 2965
  114.  
  115. 1. truemod broken aka 'no' to regexps (from sonar)
  116.  
  117. drkns 21.11.2012 00:02:24 +0200 - build 2964
  118.  
  119. 1. Continuation of 2953.1.
  120.  
  121. drkns 20.11.2012 21:44:24 +0200 - build 2963
  122.  
  123. 1. 0002203: Import malfunction
  124.  
  125. drkns 20.11.2012 21:31:35 +0200 - build 2962
  126.  
  127. 1. 0002202: Crash on plugin loading/unloading
  128.  
  129. svs 20.11.2012 13:03:29 +0400 - build 2961
  130.  
  131. 1. Duplicate hotkeys in "Plugins manager settings" dialog and viewer settings
  132.  
  133. 2. Correction of help, including TI:
  134.    #15 System.SetAttrFolderRules
  135.    #29 System.WipeSymbol
  136.    #31 System.FlagPosixSemantics
  137.    #37 System.ShowCheckingFile
  138.    #63 System.PluginMaxReadData
  139.    #51 System.SilentLoadPlugin
  140.    #17 System.ExceptRules
  141.    #23 System.CopyBufferSize
  142.    #36 System.SubstNameRule
  143.    #42 System.SubstPluginPrefix
  144.    #69 System.CopySecurityOptions
  145.    #25 Interface.CursorSize1..Interface.CursorSize4
  146.    #1  Editor.WordDiv
  147.    #19 Editor.ReadOnlyLock
  148.    #20 Editor.FileSizeLimit
  149.    #16 XLat.WordDivForXlat
  150.  
  151. 3. Options::MaxPositionCache ("System.MaxPositionCache", TechInfo #11) is removed as deprecated.
  152.  
  153. 4. Options::Dialogs.SelectFromHistory ("Dialog.SelectFromHistory", TechInfo #41) is removed as deprecated.
  154.  
  155. svs 20.11.2012 12:48:10 +0400 - build 2960
  156.  
  157. 1. Typos
  158.  
  159. 2. Conflicting hotkeys in editor settings dialog
  160.  
  161. svs 20.11.2012 11:01:50 +0400 - build 2959
  162.  
  163. 1. Edit::Search() content moved to SearchString()
  164.  
  165. 2. GetSearchReplaceString() redone
  166.    Title and SubTitle parameters are added
  167.    Case, WholeWords, Reverse and Regexp parameters are now pointers.
  168.    If any of the parameters is nullptr then the corresponding option in dialog is set to Disable (or has to be hidden?)
  169.  
  170. 2. Help: proceeding with help.
  171.    Now Case, WholeWords and Regexp options are available
  172.    Initial options are taken from global values:
  173.  
  174.       Case             Global->GlobalSearchCase         (as in editor)
  175.       WholeWords       Global->GlobalSearchWholeWords   (as in editor)
  176.       Regexp           Global->Opt->HelpSearchRegexp    (standalone, "Help.HelpSearchRegexp" of Bool type)
  177.  
  178.    Next:
  179.      Next line in file must be "cleared" from markup before feeding it to SearchString()
  180.  
  181. drkns 19.11.2012 23:08:59 +0200 - build 2958
  182.  
  183. 1. Forum: pressing Enter on a boolean value in far:config causes a crash.
  184.  
  185. drkns 19.11.2012 23:04:39 +0200 - build 2957
  186.  
  187. 1. Continuing global variables elimination.
  188.  
  189. drkns 19.11.2012 13:47:53 +0200 - build 2956
  190.  
  191. 1. Correction of 2953.1.
  192.  
  193. w17 19.11.2012 14:53:38 +0400 - build 2955
  194.  
  195. 1. Correction of 2926
  196.    'plugin' flag lost in refactoring which lead to plugin settings loading failure from default configuration.
  197.  
  198. shmuel 19.11.2012 12:11:54 +0200 - build 2954
  199.  
  200. 1. Far.Cfg_Get() macrofunction works for all settings displayed in far:config.
  201.  
  202. drkns 18.11.2012 20:44:29 +0200 - build 2953
  203.  
  204. 1. Say "No!" to dr^W global variables and especially to global objects initialized in random order.
  205.    Part #1: Now there is one global object Global, please put everything in it, not in hpp files.
  206.    To be continued.
  207.  
  208. 2. A bonus to #1: dialog handling function and thread function can be class members now.
  209.  
  210. drkns 18.11.2012 09:55:22 +0200 - build 2952
  211.  
  212. 1. Correction of alignment for debug builds.
  213.  
  214. shmuel 18.11.2012 01:29:46 +0200 - build 2951
  215.  
  216. 1. FAR crash if msgbox() was called in a plugin, right after Plugin.Call(), and then Esc was pressed,
  217.    given that a macro is bound to Esc in dialogs.
  218.  
  219. svs 13.11.2012 20:32:42 +0400 - build 2950
  220.  
  221. 1. First approximation for search in help.
  222.    F7 key as usual.
  223.    The results are presented as links to found topics.
  224.  
  225.    The search is dumb so far, the occurrence of entered substring is searched in lines read from current help file.
  226.  
  227.    Next:
  228.    1. Debug
  229.    2. Replace GetString(...) with GetSearchReplaceString(false,...) with all bells and whistles (Case, WholeWords and Regexp fields)
  230.    3. something more
  231.  
  232. zg 12.11.2012 15:08:38 +0200 - build 2949
  233.  
  234. 1. forum: Far.DisableHistory is broken for everyone or just me ?
  235.  
  236. lort 11.11.2012 16:47:46 +0400 - build 2948
  237.  
  238. 1. If a menu does not fit the screen height, draw it upwards.
  239.  
  240. w17 11.11.2012 16:31:30 +0400 - build 2947
  241.  
  242. 1. Another correction of 2943
  243.  
  244. lort 11.11.2012 15:27:16 +0400 - build 2946
  245.  
  246. 1. Correction of 2944
  247.  
  248. w17 11.11.2012 09:54:32 +0400 - build 2945
  249.  
  250. 1. Correction of 2943
  251.  
  252. t-rex 11.11.2012 03:34:35 +0200 - build 2944
  253.  
  254. 1. Fix for numerous bugs in new menus, for example:
  255.    - right click in drive menu called emenu twice
  256.    - for filter (CtrlAltF) in filter menu, BS didn't edit the filter
  257.    The meaning of the fix: VMenu2:Call() (i.e. menu processing function)
  258.    must return true if it has processed the event ant there is nothing more to do
  259.    (regardless of what encyclopedia says about the return codes of DN_*).
  260.    There had been a mess before.
  261.  
  262. w17 10.11.2012 22:33:19 +0400 - build 2943
  263.  
  264. 1. Fix for viewer search with persistent selection off.
  265.  
  266. drkns 10.11.2012 20:17:07 +0200 - build 2942
  267.  
  268. 1. Another bug with new menus - for regular dialogs InitDialogObjects() was called twice, sometimes with interesting consequences.
  269.  
  270. lort 09.11.2012 23:06:48 +0400 - build 2941
  271.  
  272. 1. couldn't close the print window (M#2193.1)
  273.  
  274. 2. Incorrect calculation of menu position.
  275.  
  276. 3. ECTL_REALTOTAB, ECTL_TABTOREAL and ECTL_SELECT malfunctional in wrapper
  277.  
  278. t-rex 09.11.2012 17:29:21 +0200 - build 2940
  279.  
  280. 1. "Right click selects files" option in "Panel Settings".
  281.  
  282. shmuel 08.11.2012 18:25:29 +0200 - build 2939
  283.  
  284. 1. M#2192: artifacts after macro loading errors.
  285.  
  286. shmuel 08.11.2012 10:38:50 +0200 - build 2938
  287.  
  288. 1. Correction of 2923 (_control87 call moved from FAR to LuaMacro plugin).
  289.  
  290. t-rex 07.11.2012 20:33:12 +0200 - build 2937
  291.  
  292. 1. On file association start, if associated app couldn't be detected by FAR
  293.    buf the start was successful, then starting error was displayed.
  294.    It is especially actual for Windows 8 metro app associations.
  295.  
  296. lort 07.11.2012 21:56:16 +0400 - build 2936
  297.  
  298. 1. When autocompletion menu was open, "." could not be entered from numeric keyboard.
  299.  
  300. shmuel 06.11.2012 21:41:14 +0200 - build 2935
  301.  
  302. 1. M#2189: In editor, Keys('CtrlX') always uses Windows clipboard.
  303.  
  304. lort 06.11.2012 20:21:06 +0400 - build 2934
  305.  
  306. 1. ═σ ≡αßε≥αδΦ Dlg.Id Φ Dlg.Owner ∩≡Φ ε≥Ω≡√≥ε∞ ∞σφ■ αΓ≥εΣε∩εδφσφΦ .
  307.  
  308. 2. Correction of 2897.3
  309.  
  310. w17 06.11.2012 14:08:45 +0400 - build 2933
  311.  
  312. 1. viewer dump mode autodetect fixed
  313.  
  314. w17 06.11.2012 09:49:47 +0400 - build 2932
  315.  
  316. 1. correction of 2915
  317.  
  318. shmuel 05.11.2012 18:00:53 +0200 - build 2931
  319.  
  320. 1. Correction of 2923 ("debug asserion failed" for x64).
  321.  
  322. w17 05.11.2012 18:18:43 +0400 - build 2930
  323.  
  324. 1. M#2187: malfunctional "@" and SilentExternal for external Viewer/Editor call
  325.  
  326. w17 05.11.2012 06:29:56 +0400 - build 2929
  327.  
  328. 1. M#2185: Error while setting colors of sorting groups files
  329.  
  330. shmuel 04.11.2012 01:06:54 +0200 - build 2928
  331.  
  332. 1. M#2183: A macro cannot insert the end of line.
  333.  
  334. drkns 03.11.2012 19:26:52 +0200 - build 2927
  335.  
  336. 1. Another couple of issues.
  337.  
  338. drkns 03.11.2012 17:42:08 +0200 - build 2926
  339.  
  340. 1. Continuing refactoring of configdb.
  341.  
  342. 2. Refactoring of BitFlags.
  343.  
  344. zg 03.11.2012 17:01:30 +0200 - build 2925
  345.  
  346. 1. correction of VCTL_SETKEYBAR and Param2=-1.
  347.  
  348. drkns 02.11.2012 23:59:11 +0200 - build 2924
  349.  
  350. 1. Correction of 2920.
  351.  
  352. shmuel 02.11.2012 23:03:34 +0200 - build 2923
  353.  
  354. 1. Experimental: preventing crashes from division by zero for plugins setting FPU exceptions on.
  355.  
  356. shmuel 02.11.2012 17:59:31 +0200 - build 2922
  357.  
  358. 1. FarMacroCall structure is streamlined.
  359.  
  360. drkns 02.11.2012 02:18:10 +0200 - build 2921
  361.  
  362. 1. Continuation of 2920.
  363.  
  364. drkns 02.11.2012 02:05:17 +0200 - build 2920
  365.  
  366. 1. Slightly refactoring of configdb.
  367.  
  368. zg 01.11.2012 23:05:49 +0200 - build 2919
  369.  
  370. 1. OPEN_FROM_MASK is removed for uselessness.
  371.  
  372. zg 01.11.2012 22:16:49 +0200 - build 2918
  373.  
  374. 1. ViewerMode.Type -> ViewerMode.ViewMode.
  375.  
  376. 2. VSMT_HEX -> VSMT_VIEWMODE.
  377.  
  378. w17 01.11.2012 18:06:23 +0400 - build 2917
  379.  
  380. 1. correction of 2913, 2914, 2916 - 'panelmodes' were not loaded
  381.  
  382. w17 01.11.2012 16:05:57 +0400 - build 2916
  383.  
  384. 1. correction of 2913, 2914
  385.    The parameter name in Far.exe.ini changed to TemplateProfile.
  386.    By default this is a path to FILE (%FARHOME%\Default.farconfig).
  387.  
  388. w17 01.11.2012 12:52:48 +0400 - build 2915
  389.  
  390. 1. M#2181: crash after VE_READ.
  391.  
  392. w17 31.10.2012 11:54:41 +0400 - build 2914
  393.  
  394. 1. correction of 2913 - fixing broken export
  395.  
  396. w17 30.10.2012 20:12:55 +0400 - build 2913
  397.  
  398. 1. M#2177: Implement possibility of default settings/profile creation
  399.    Settings are imported from Default.farconfig file, its location is given by
  400.    TemplateProfileDir  parameter in Far.exe.ini (%FARHOME%\Default is default),
  401.    or via command line '/t "TemplateDir"'.  Settings are imported at the moment of
  402.    settings DB file open and only if the file is missing.
  403.  
  404. zg 30.10.2012 00:20:23 +0200 - build 2912
  405.  
  406. 1. Flags field added to OpenShortcutInfo. FOSF_ACTIVE is set
  407.    if OPEN_SHORTCUT is called in the active panel
  408.    and not set for the passive one.
  409.  
  410. 2. from Alexey Samlyukov: FarMacroValue.Length -> FarMacroValue.Size
  411.  
  412. lort 29.10.2012 18:35:55 +0400 - build 2911
  413.  
  414. 1. Return scren redraw in dialog destructor.
  415.  
  416. 2. History menu remained on screen after launch a command displaying nothing.
  417.  
  418. shmuel 29.10.2012 16:02:33 +0200 - build 2910
  419.  
  420. 1. No 'P' symbol in upper left corner of the screen while running editor/viewer macro starting from mf.waitkey(0)
  421.  
  422. drkns 28.10.2012 21:40:06 +0200 - build 2909
  423.  
  424. 1. Warnings.
  425.  
  426. zg 28.10.2012 17:11:29 +0200 - build 2908
  427.  
  428. 1. gcc warnings.
  429.  
  430. zg 28.10.2012 01:57:25 +0200 - build 2907
  431.  
  432. 1. ACTL_GETWINDOWINFO returned wrong Type and TypeName for menus.
  433.  
  434. 2. ACTL_GETWINDOWTYPE returned wrong Type for menus.
  435.  
  436. 3. captions acquisition did not work for menus.
  437.  
  438. zg 27.10.2012 23:55:03 +0200 - build 2906
  439.  
  440. 1. regression in 1605.2.
  441.  
  442. zg 27.10.2012 22:54:17 +0200 - build 2905
  443.  
  444. 1. correction of 2882.
  445.  
  446. shmuel 27.10.2012 20:52:46 +0200 - build 2904
  447.  
  448. 1. If a plugin returns 1 or INVALID_HANDLE_VALUE on OPEN_FROMMACRO call then Plugin.Call returns true.
  449.  
  450. shmuel 25.10.2012 22:48:24 +0200 - build 2903
  451.  
  452. 1. Correction of 2898.
  453.  
  454. 2. Forum: macros able to run while another macro works, i.e. instead of key name recognition
  455.    an appropriate macro is started if there's one.
  456.  
  457. shmuel 25.10.2012 12:10:48 +0200 - build 2902
  458.  
  459. 1. Correction of 2898.
  460.  
  461. w17 25.10.2012 13:41:27 +0400 - build 2901
  462.  
  463. 1. M#2179, RCtrlIns/Num0 are not processed in FastFind (CtrlIns is enough to get the text)
  464.  
  465. lort 24.10.2012 19:07:51 +0400 - build 2900
  466.  
  467. 1. Fix for redraw in autocompletion.
  468.  
  469. 2. Disable CtrlF5 in history and F11 in plugins menu.
  470.  
  471. shmuel 24.10.2012 01:52:21 +0200 - build 2899
  472.  
  473. 1. Plugin.Call asynchronous call returns:
  474.    - false if the plugin is not found
  475.    - true if the call is asynchronous in fact
  476.    - else the same as with synchronous call
  477.  
  478. shmuel 24.10.2012 00:16:56 +0200 - build 2898
  479.  
  480. 1. M#2170: Malfunction of Plugin.Call 'async' mode, which should be activated by mmode(3, 1) command.
  481.  
  482. lort 23.10.2012 19:19:23 +0400 - build 2897
  483.  
  484. 1. All menus are redone and now based on dialogs, VMenu class is now used for DI_LISTBOX Φ DI_COMBOBOX
  485.    implementation only, VMenu2 in other places.
  486.  
  487. 2. DN_LISTHOTKEY is now sent only if a hotkey has been really pressed.
  488.  
  489. 3. Lists without DIF_LISTNOCLOSE flag close the dialog on mouse button release, not on button press.
  490.  
  491. shmuel 21.10.2012 10:41:54 +0200 - build 2896
  492.  
  493. 1. If a macro had DisableOutput and Plugin.Call() displayed a dialog, it was not shown on screen.
  494.  
  495. shmuel 20.10.2012 19:43:21 +0200 - build 2895
  496.  
  497. 1. Four data types able to return Plugin.Call are appended with another one:
  498.    "binary value" - this is a string that can contain any data and is not affected with
  499.    UTF-16LE -> UTF-8 transformation.
  500.  
  501. zg 20.10.2012 11:21:39 +0200 - build 2894
  502.  
  503. 1. correction of 2893.
  504.  
  505. shmuel 20.10.2012 08:21:04 +0200 - build 2893
  506.  
  507. 1. Plugin.Call can return one or more values, each of then can be:
  508.    64-bit integer, floating point number, string or boolean value.
  509.      - For that, the invoked plugin must fill in the FarMacroCall structure and return the pointer to it.
  510.      - This structure must be either static or allocated, i.e. do not place it in OpenW function's stack.
  511.      - If non-zero Callback is specified in the structure then the function will be called.
  512.        At the moment of Callback call the data is already copied and can be freed.
  513.    If the plugin wants just return true or false then it has to return 1 or 0 accordingly.
  514.    The change introduced in build 2891 is cancelled by this one.
  515.  
  516. shmuel 19.10.2012 15:49:37 +0200 - build 2892
  517.  
  518. 1. Refactoring.
  519.  
  520. shmuel 18.10.2012 23:55:32 +0200 - build 2891
  521.  
  522. 1. Plugin.Call returns 0 if the plugin is not found (i. e. as before transition to Lua).
  523.  
  524. svs 15.10.2012 17:47:39 +0400 - build 2890
  525.  
  526. 1. "Typos"
  527.  
  528. svs 15.10.2012 12:09:58 +0400 - build 2889
  529.  
  530. 1. FAR constants (for MsX etc the constants are reserved in "right places")
  531.  
  532. 2. SZLOG removed - use std, for example, _SHMUEL (details in SYSLOG-RU)
  533.  
  534. 3. MACRO_OP_* removed
  535.  
  536. shmuel 15.10.2012 01:36:45 +0200 - build 2888
  537.  
  538. 1. Refactoring.
  539.  
  540. shmuel 14.10.2012 15:29:04 +0200 - build 2887
  541.  
  542. 1. Far->LuaFAR->LuaMacro data exchange protocol is slightly simplified.
  543.  
  544. zg 14.10.2012 04:05:26 +0200 - build 2886
  545.  
  546. 1. on error while macro initialization the upper left screen character "freezed".
  547.  
  548. shmuel 13.10.2012 14:23:03 +0200 - build 2885
  549.  
  550. 1. If a macro launched by a plugin in panels ended with transition to editor or viewer,
  551.    then the upper left corner of the screen was displayed incorrectly.
  552.  
  553. zg 12.10.2012 03:04:19 +0200 - build 2884
  554.  
  555. 1. correction of 2882.
  556.  
  557. zg 12.10.2012 01:24:21 +0200 - build 2883
  558.  
  559. 1. correction of 2882.
  560.  
  561. zg 11.10.2012 23:22:48 +0200 - build 2882
  562.  
  563. 1. experimental.
  564.    macros work in interactive objects, such as dialogs created from macros.
  565.  
  566. zg 11.10.2012 21:24:04 +0200 - build 2881
  567.  
  568. 1. FAR crash if no luamacro plugin present while macros do exist.
  569.  
  570. shmuel 11.10.2012 17:14:46 +0200 - build 2880
  571.  
  572. 1. MacroControl(MCTL_GETLASTERROR) function operating is restored with the following changes:
  573.    - ErrCode can take only 2 values: MPEC_SUCCESS and MPEC_ERROR.
  574.    - ErrPos.X has no meaning and must be ignored.
  575.  
  576. shmuel 09.10.2012 11:34:47 +0200 - build 2879
  577.  
  578. 1. MacroControl(MCTL_SENDSTRING,MSSC_CHECK) function also checks files if Sequence[0]=='@'.
  579.  
  580. t-rex 08.10.2012 21:26:43 +0200 - build 2878
  581.  
  582. 1. Fixes in wrapper for ECTL_EXPANDTABS, ECTL_GETBOOKMARKS and ECTL_GETSTACKBOOKMARKS.
  583.  
  584. 2. BookmarkCount and SessionBookmarkCount now are of size_t in EditorInfo, fr uniformity with EditorBookmarks.
  585.    (it does not affect plugins work).
  586.  
  587. shmuel 08.10.2012 08:29:17 +0200 - build 2877
  588.  
  589. 1. Fix: (in editor) "after macro call, text is displayed on screen only after key press".
  590.  
  591. t-rex 07.10.2012 15:56:20 +0200 - build 2876
  592.  
  593. 1. Warnings, MACROMODEAREA type is set where needed.
  594.  
  595. shmuel 07.10.2012 09:13:46 +0200 - build 2875
  596.  
  597. 1. Forum: quotation marks (") no longer supported in macros.
  598.  
  599. shmuel 07.10.2012 00:43:45 +0200 - build 2874
  600.  
  601. 1. Displaying a message at macro writing attempt if LuaMacro plugin is not loaded.
  602.    (M#2161: Macros malfunction if LUA dll's set is incomplete).
  603.  
  604. zg 07.10.2012 00:17:08 +0200 - build 2873
  605.  
  606. 1. ECTL_EXPANDTABS - Param2 is expected as a pointer to intptr_t.
  607.    x64 have to be fixed if ECTL_EXPANDTABS is used.
  608.  
  609. 2. error in ECTL_SETKEYBAR when Param2==-1.
  610.  
  611. t-rex 06.10.2012 20:40:23 +0200 - build 2872
  612.  
  613. 1. x64 warnings in DialogBuilder.
  614.  
  615. t-rex 06.10.2012 18:48:30 +0200 - build 2871
  616.  
  617. 1. For FSF functions, intptr_t is removed where it has no sense at all,
  618.    x64 plugins have to be rebuilt and fixed if qsort/bsearch/FarRecursiveSearch are used.
  619.  
  620. svs 05.10.2012 13:55:08 +0400 - build 2870
  621.  
  622. 1. SQLite 3.7.14.1
  623.  
  624. shmuel 05.10.2012 01:49:35 +0200 - build 2869
  625.  
  626. 1. M#2159: Plugin.Menu waits for menu closed and prevents use of Keys() for hotkey selection in menu
  627.  
  628. 2. Plugin.Menu, Plugin.Config and Plugin.Command macrofunctions return false/true.
  629.  
  630. w17 04.10.2012 16:37:06 +0400 - build 2868
  631.  
  632. 1. Visible leading space(s) in dialog static text
  633.  
  634. w17 04.10.2012 15:26:15 +0400 - build 2867
  635.  
  636. 1. 0002167: Crash on Copy File/Folder Interrupt
  637.  
  638. zg 04.10.2012 05:41:56 +0200 - build 2866
  639.  
  640. 1. ECTL_SETPOSITION did not work in wrapper.
  641.  
  642. w17 03.10.2012 23:49:25 +0400 - build 2865
  643.  
  644. 1. Viewer assert for looooooooooong lines
  645.  
  646. shmuel 03.10.2012 16:05:55 +0200 - build 2864
  647.  
  648. 1. Disable macro recording if LuaMacro plugin is not loaded.
  649.    (M#2161: Macros malfunction if LUA dll's set is incomplete).
  650.  
  651. w17 03.10.2012 12:50:50 +0400 - build 2863
  652.  
  653. 1. Loacl [x] ShowWhiteSpace broken in editor (and not only there)
  654.  
  655. drkns 02.10.2012 22:11:59 +0200 - build 2862
  656.  
  657. 1. 0002165: Encoding selection cancellation
  658.  
  659. shmuel 02.10.2012 18:40:00 +0200 - build 2861
  660.  
  661. 1. Erroneous rollback of changes in build 2859.
  662.  
  663. shmuel 02.10.2012 17:40:00 +0200 - build 2860
  664.  
  665. 1. M#2160: Macro with Menu.Select works in Shell but not in Dialog and Editor.
  666.  
  667. svs 02.10.2012 17:43:33 +0400 - build 2859
  668.  
  669. 1. Macro: Panel.Item(typePanel,Index,TypeInfo) returns true/false for
  670.     TypeInfo = 8 (Selected) and 10 (SortGroup)
  671.  
  672. 2. Macro: panel.setpath(), fexist(), beep(), Window.Scroll() return true/false
  673.  
  674. shmuel 02.10.2012 14:30:00 +0200 - build 2858
  675.  
  676. 1. M#2162: FAR crash at start when used as editor for Git (perhaps because of the new macro engine).
  677.  
  678. zg 01.10.2012 16:18:35 +0200 - build 2857
  679.  
  680. 1. FAR_LUA is removed completely, so is the code that was excluded by its presence.
  681.  
  682. svs 01.10.2012 16:05:34 +0400 - build 2856
  683.  
  684. 1. Macro: Plugin.Exist(GUID) now returns true/false.
  685.    Instead of
  686.      if Plugin.Exist(GUID) > 0 then
  687.    write
  688.      if Plugin.Exist(GUID) then
  689.  
  690. shmuel 01.10.2012 03:25:00 +0200 - build 2855
  691.  
  692. 1. Correction of 2854 for more common case.
  693.  
  694. shmuel 01.10.2012 02:05:00 +0200 - build 2854
  695.  
  696. 1. Dlg.GetValue error (from Aidar).
  697.  
  698. shmuel 30.09.2012 13:50:00 +0200 - build 2853
  699.  
  700. 1. Issue#13: Plugin.Menu waits for menu close instead of returning immediately after menu show.
  701.  
  702. zg 30.09.2012 03:41:42 +0200 - build 2852
  703.  
  704. 1. FAR_LUA is removed from plugin.hpp.
  705.  
  706. zg 30.09.2012 03:26:20 +0200 - build 2851
  707.  
  708. 1. Spring project merged (https://github.com/shmuz/Spring).
  709.    thereby Lua 5.1 is used instead of macro language (http://www.lua.org).
  710.    all macros are broken.
  711.  
  712. drkns 29.09.2012 15:20:18 +0200 - build 2850
  713.  
  714. 1. Correction of 2844 for fields with input mask.
  715.  
  716. 2. far:config crash after changes in api.
  717.  
  718. 3. Projects for vs 2012.
  719.  
  720. zg 29.09.2012 13:35:44 +0200 - build 2849
  721.  
  722. 1. correction of 2848: UserData.Data was not freed for elements which did not match search criterions.
  723.  
  724. zg 29.09.2012 03:30:26 +0200 - build 2848
  725.  
  726. 1. correction of 2807.1: freeing UserData.Data in search and some other places.
  727.  
  728. drkns 29.09.2012 00:47:40 +0200 - build 2847
  729.  
  730. 1. Finishing (I hope) this codepage related stuff. For the future, I'd appreciate proper fixes instead of monkey patching.
  731.  
  732. w17 28.09.2012 08:45:42 +0400 - build 2846
  733.  
  734. 1. M#2157: Alt-F7: file content search gives no result on fresh 64-bit versions (aka 2838 continue)
  735.  
  736. w17 28.09.2012 08:09:25 +0400 - build 2845
  737.  
  738. 1. GETTEXT returned L"\0"; instead of empty string
  739.  
  740. drkns 27.09.2012 22:45:22 +0200 - build 2844
  741.  
  742. 1. Highlight text in dialog text field ending with spaces or tabulations.
  743.  
  744. drkns 27.09.2012 19:13:43 +0200 - build 2843
  745.  
  746. 1. HANDLE hPanel removed from ProcessConsoleInputInfo.
  747.  
  748. w17 27.09.2012 11:58:13 +0400 - build 2842
  749.  
  750. 1. M#2156: Shift-F4: file contents lost on save (aka 2838 continue)
  751.  
  752. w17 26.09.2012 10:49:55 +0400 - build 2841
  753.  
  754. 1. another excessive one
  755.  
  756. w17 26.09.2012 10:14:11 +0400 - build 2840
  757.  
  758. 1. wrong fix for a 'typo', rolling back
  759.  
  760. w17 26.09.2012 10:00:52 +0400 - build 2839
  761.  
  762. 1. -typos in dialog.cpp (thnx sonar)
  763.  
  764. w17 25.09.2012 19:48:01 +0400 - build 2838
  765.  
  766. 1. x64 Editor fix
  767.  
  768. svs 24.09.2012 11:32:50 +0400 - build 2837
  769.  
  770. 1. Mantis#0001687: ProcessConsoleInput
  771.    Open.
  772.    Bugs go to new tickets.
  773.  
  774. w17 24.09.2012 10:52:12 +0400 - build 2836
  775.  
  776. 1. Debug build fix
  777.  
  778. zg 23.09.2012 21:22:44 +0200 - build 2835
  779.  
  780. 1. ACTL_EJECTMEDIA is removed.
  781.  
  782. zg 23.09.2012 20:56:39 +0200 - build 2834
  783.  
  784. 1. from Alexey Samlyukov:
  785.    PluginPanelItem.UserData.UserData -> PluginPanelItem.UserData.Data
  786.    PluginPanelItem.UserData.Callback -> PluginPanelItem.UserData.FreeData
  787.  
  788. drkns 23.09.2012 20:31:24 +0200 - build 2833
  789.  
  790. 1. intptr_t & DlgBuilder
  791.  
  792. 2. Leave vswscanf for gcc.
  793.  
  794. zg 23.09.2012 20:03:02 +0200 - build 2832
  795.  
  796. 1. vc has no vswscanf.
  797.  
  798. zg 23.09.2012 19:12:13 +0200 - build 2831
  799.  
  800. 1. in API, some UINT/DWORD are replaced with uintptr_t.
  801.  
  802. zg 23.09.2012 17:19:39 +0200 - build 2830
  803.  
  804. 1. int is replaced with intptr_t throughout whole API.
  805.  
  806. zg 23.09.2012 03:09:28 +0200 - build 2829
  807.  
  808. 1. Reserved is added to a couple of structures.
  809.  
  810. 2. StructSize field is added to the following structures:
  811.    FarDialogEvent
  812.    FarList
  813.  
  814. zg 23.09.2012 01:52:19 +0200 - build 2828
  815.  
  816. 1. ViewerMode is redone. Wrap&WordWrap -> Flags. Hex -> Type.
  817.  
  818. zg 23.09.2012 00:37:48 +0200 - build 2827
  819.  
  820. 1. PanelMode got rid of StructSize field.
  821.  
  822. 2. some structures lost the Reserved field.
  823.  
  824. drkns 23.09.2012 00:00:16 +0200 - build 2826
  825.  
  826. 1. A new opti "cursor at end" in editor settings, when switched on, search places the cursor to the end of found text
  827.  
  828. 2. "select found" option moved from search dialog to editor settings dialog.
  829.  
  830. zg 22.09.2012 22:38:35 +0200 - build 2825
  831.  
  832. 1. in InfoPanelLine, Separator is replaced with Flags. IPLFLAGS_SEPARATOR flag is added.
  833.    all native plugins are broken.
  834.  
  835. zg 22.09.2012 21:37:30 +0200 - build 2824
  836.  
  837. 1. in ECTL_SETKEYBAR/VCTL_SETKEYBAR, FarSetKeyBarTitles must be passed instead of KeyBarTitles.
  838.  
  839. zg 22.09.2012 04:39:38 +0200 - build 2823
  840.  
  841. 1. From Shmuel Zeigerman: correction of 2822.
  842.  
  843. zg 22.09.2012 02:25:21 +0200 - build 2822
  844.  
  845. 1. for obvious reasons, PInfo and GInfo fields in FarGetPluginInformation are made pointers.
  846.    PCTL_GETPLUGININFORMATION functioning is unchanged.
  847.  
  848. zg 22.09.2012 01:17:59 +0200 - build 2821
  849.  
  850. 1. StructSize field added to the following structures:
  851.    FarSettingsItem
  852.    FarSettingsEnum
  853.    FarSettingsValue
  854.    all native plugins are broken.
  855.  
  856. zg 21.09.2012 17:01:33 +0200 - build 2820
  857.  
  858. 1. ViewerInfo got rid of FileName field, like in editor.
  859.  
  860. 2. in order to obtain file name, VCTL_GETFILENAME is added, similar to ECTL_GETFILENAME.
  861.  
  862. 3. correction of 2816 for ANSI plugins.
  863.  
  864. 4. all native plugins are broken.
  865.  
  866. w17 21.09.2012 13:02:47 +0400 - build 2819
  867.  
  868. 1. M#1870: in Show selected first, selection of the last item gets the cursor "jump" to the item
  869.  
  870. zg 21.09.2012 02:25:27 +0200 - build 2818
  871.  
  872. 1. ACTL_ENABLEREDRAW is removed.
  873.  
  874. zg 21.09.2012 02:15:53 +0200 - build 2817
  875.  
  876. 1. SessionBookmarkCount field is added to EditorInfo.
  877.  
  878. zg 21.09.2012 02:01:45 +0200 - build 2816
  879.  
  880. 1. for ECTL_GETFILENAME the buffer size is passed in Param1.
  881.  
  882. zg 21.09.2012 00:43:26 +0200 - build 2815
  883.  
  884. 1. EditorBookMarks -> EditorBookmarks. Size is the size of allocated memory as in FarGetPluginPanelItem.
  885.    required size can be obtained with ECTL_GETBOOKMARKS/ECTL_GETSESSIONBOOKMARKS call.
  886.    Count returns bookmarks count.
  887.  
  888. zg 20.09.2012 22:32:55 +0200 - build 2814
  889.  
  890. 1. correction of 2807.1.
  891.  
  892. zg 20.09.2012 21:24:01 +0200 - build 2813
  893.  
  894. 1. FSF.DeleteBuffer is removed.
  895.  
  896. 2. FSF.CopyToClipboard got 1 extra parameter - the type of the block being placed to clipboard. FCT_STREAM - the streaming one. FCT_COLUMN - the vertical one.
  897.    returned value is TRUE in case of success, FALSE otherwise.
  898.  
  899. 3. FSF.PasteFromClipboard writes to Data maximum of Length characters including '\0' from the clipboard. the returned value is the required buffer size.
  900.    if there's no requested content type in the clipboard then the returned value is 0.
  901.    FCT_ANY - return any block.
  902.    FCT_STREAM - return streaming block only.
  903.    FCT_COLUMN - return vertical block only.
  904.  
  905. 4. all native plugins are broken.
  906.  
  907. w17 20.09.2012 16:44:39 +0400 - build 2812
  908.  
  909. 1. size_t in Read/Write
  910.  
  911. zg 20.09.2012 13:28:23 +0200 - build 2811
  912.  
  913. 1. changes in ProcessPanelEventInfo by Alexey Samlyukov.
  914.    all native plugins are broken.
  915.  
  916. 2. GetVirtualFindDataInfo, FreeVirtualFindDataW and GetVirtualFindDataW are removed.
  917.  
  918. lort 19.09.2012 19:52:41 +0400 - build 2810
  919.  
  920. 1. A new command ACTL_ENABLEREDRAW, Param1=1 - enable FAR window redraw, Param1=0 - disable it.
  921.    Returned value is the previous state, to obtain the current state set Param1=-1
  922.  
  923. w17 19.09.2012 13:40:39 +0400 - build 2809
  924.  
  925. 1. correction of 2794
  926.  
  927. zg 19.09.2012 00:47:09 +0200 - build 2808
  928.  
  929. 1. correction of 2807.1.
  930.  
  931. zg 18.09.2012 22:33:00 +0200 - build 2807
  932.  
  933. 1. 0001699: Ease the use of UserData for storing data by panel plugins
  934.    UserData in PluginPanelItem is a structure.
  935.    UserData is a pointer to anything.
  936.    Callback is a function that removes UserData.
  937. 2. As plugin authors do not want UserData contain the plugin handle and demand it be passed via Callback,
  938.    FreePluginDirList got an additional parameter.
  939.    all native plugins are broken.
  940.  
  941. zg 17.09.2012 16:55:00 +0200 - build 2806
  942.  
  943. 1. correction of 2799.
  944.  
  945. w17 17.09.2012 12:54:32 +0400 - build 2805
  946.  
  947. 1. fix for 2797.1
  948.  
  949. zg 17.09.2012 03:15:55 +0200 - build 2804
  950.  
  951. 1. DM_GETTEXTLENGTH & DM_GETTEXTPTR are removed.
  952.    some native plugins are broken.
  953.  
  954. zg 16.09.2012 20:27:31 +0200 - build 2803
  955.  
  956. 1. API is changed: the type for string lengths and in-string offsets is changed from int to intptr_t.
  957.    all native plugins are broken. also, side effects are possible for x64 FAR.
  958.  
  959. 2. Γ ViewerSelect ≥Φ∩ BlockLen __int64.
  960.    all native plugins are broken.
  961.  
  962. zg 16.09.2012 18:29:46 +0200 - build 2802
  963.  
  964. 1. for OPEN_COMMANDLINE, pointer to OpenCommandLineInfo is passed instead of pointer to a string.
  965.    all native plugins are broken.
  966.  
  967. zg 16.09.2012 17:12:23 +0200 - build 2801
  968.  
  969. 1. StructSize field is added to the following structures:
  970.    EditorServiceRegion
  971.    EditorSetParameter
  972.    EditorUndoRedo
  973.    EditorGetString
  974.    EditorSetString
  975.    EditorInfo
  976.    EditorBookMarks
  977.    EditorSetPosition
  978.    EditorSelect
  979.    EditorConvertPos
  980.    EditorSaveFile
  981.    all native plugins are broken.
  982.  
  983. zg 16.09.2012 15:48:35 +0200 - build 2800
  984.  
  985. 1. StructSize field is added to the following structures:
  986.    ViewerSetMode
  987.    ViewerSelect
  988.    ViewerSetPosition
  989.    all native plugins are broken.
  990.  
  991. zg 16.09.2012 14:35:28 +0200 - build 2799
  992.  
  993. 1. StructSize field is added to the following structures:
  994.    FarGetPluginPanelItem
  995.    PanelRedrawInfo
  996.    CmdLineSelect
  997.    ActlEjectMedia
  998.    ActlMediaType
  999.    FarGetValue
  1000.    FarSetColors
  1001.    ProgressValue
  1002.    all native plugins are broken.
  1003.  
  1004. w17 12.09.2012 01:00:31 +0400 - build 2798
  1005.  
  1006. 1. Editor [Shift]F8 and KeyBar
  1007.  
  1008. w17 11.09.2012 18:33:46 +0400 - build 2797
  1009.  
  1010. 1. M#868: Text garbled when encoding changed to an "incompatible" one -- [Show] button is added
  1011.  
  1012. 2. M#1555: When file access denied, the number of hard links is always 1
  1013.  
  1014. svs 07.09.2012 16:44:59 +0400 - build 2796
  1015.  
  1016. 1. "FARCONFIGMODE" removed
  1017.  
  1018. 2. Some help for TI:
  1019.      #9  System.CmdHistoryRule
  1020.      #27 System.ConsoleDetachKey
  1021.      #34 System.QuotedSymbols
  1022.      #50 System.QuotedName
  1023.      #38 Interface.AltF9
  1024.      #61 Dialog.CBoxMaxHeight
  1025.      #44 Editor.EditorUndoSize
  1026.      #32 Editor.CharCodeBase
  1027.      #13 Editor.BSLikeDel
  1028.      #18 Editor.EditorF7Rules
  1029.      #67 Editor.AllowEmptySpaceAfterEof
  1030.      #24 Interface.ShiftsKeyRules
  1031.  
  1032. 3. Interface.ShowTimeoutDACLFiles and Interface.ShowTimeoutDelFiles are removed
  1033.  
  1034. 4. Interface.RedrawTimeout is added
  1035.  
  1036. svs 07.09.2012 14:09:44 +0400 - build 2795
  1037.  
  1038. 1. Some help for TI:
  1039.      #75 Panel.ShellRightLeftArrowsRule
  1040.      #43 Panel.Layout.ScrollbarMenu
  1041.      #14 Panel.CtrlFRule
  1042.      #8  Panel.CtrlAltShiftRule
  1043.      #6  Panel.RightClickRule
  1044.      #79 System.ExcludeCmdHistory
  1045.      #45 System.Executor.RestoreCP
  1046.      #49 System.Executor.UseAppPath
  1047.      #54 System.Executor.ExcludeCmds
  1048.      #74 System.Executor.FullTitle
  1049.      #78 Interface.FormatNumberSeparators
  1050.      #73 System.Executor.BatchType
  1051.  
  1052. 2. FAR sets FARCONFIGMODE = RO variable while working with configuration bases
  1053.    in read-only mode ("/ro" switch is set).
  1054.    In normal DB operations mode, the FARCONFIGMODE variable is absent.
  1055.  
  1056. w17 05.09.2012 16:19:47 +0400 - build 2794
  1057.  
  1058. 1. M#2135: typing 'shift + letter' diacritic sequence also outputs the + character
  1059.    (from Maximus)
  1060.  
  1061. svs 04.09.2012 20:02:31 +0400 - build 2793
  1062.  
  1063. 1. SQLite 3.7.14
  1064.  
  1065. 2. Mantis#0002141: $AKey malfunction in macros for MsWheelUp/MsWheelDown
  1066.  
  1067. 3. Some help for TI:
  1068.      #12 Help.ActivateURL
  1069.      #47 Confirmations.EscTwiceToInterrupt
  1070.      #7  System.AllCtrlAltShiftRule
  1071.      #68 System.CASRule
  1072.  
  1073. w17 04.09.2012 19:41:42 +0400 - build 2792
  1074.  
  1075. 1. M#2147 -- UTF7 excluded from FindFile 'AllCodepages'
  1076.  
  1077. drkns 27.08.2012 15:26:16 +0200 - build 2791
  1078.  
  1079. 1. Properties could not be shown in the disk menu in old Windows versions.
  1080.  
  1081. drkns 25.08.2012 23:22:21 +0200 - build 2790
  1082.  
  1083. 1. Info panel invocation could cause crash in some cases.
  1084.  
  1085. w17 14.08.2012 20:17:00 +0400 - build 2789
  1086.  
  1087. 1. M#0002144: Interface.CtrlPgUp option change was not stored
  1088.  
  1089. w17 13.08.2012 13:40:46 +0400 - build 2788
  1090.  
  1091. 1. continue 2787
  1092.  
  1093. w17 09.08.2012 17:32:48 +0400 - build 2787
  1094.  
  1095. 1. far:config hex int editor
  1096.  
  1097. 2. far:config BOOLEAN3 (3-state checkbox)
  1098.  
  1099. 3. far:config help
  1100.  
  1101. 4. other help corrections and minor code fix
  1102.  
  1103. w17 08.08.2012 15:51:16 +0400 - build 2786
  1104.  
  1105. 1. M#2142: Specify the catalog for separate storage of history/cache and other settings
  1106.    UserLocalProfileDir parameter os added to Far.exe.ini, it can also ce specified in command line
  1107.  
  1108. w17 06.08.2012 08:23:39 +0400 - build 2785
  1109.  
  1110. 1. correction of 2782
  1111.  
  1112. w17 31.07.2012 13:43:58 +0400 - build 2784
  1113.  
  1114. 1. FileList fix
  1115.    Initializing all members, correcting the numbers of selected items on update.
  1116.  
  1117. w17 30.07.2012 22:12:25 +0400 - build 2783
  1118.  
  1119. 1. VMENU_WRAPMODE is used again for DI_LISTBOX
  1120.    If the flag is present then wrap-stop, else wrap-none :)
  1121.  
  1122. w17 29.07.2012 13:54:09 +0400 - build 2782
  1123.  
  1124. 1. M#2139: inconsistent error message when trying to create a file with same name as existing directory
  1125.  
  1126. w17 28.07.2012 22:39:24 +0400 - build 2781
  1127.  
  1128. 1. 2754 again
  1129.  
  1130. w17 28.07.2012 19:35:45 +0400 - build 2780
  1131.  
  1132. 1. another correction for 2766
  1133.  
  1134. w17 25.07.2012 17:59:51 +0400 - build 2779
  1135.  
  1136. 1. M#2138 Shift-F1 does not work for archiver change
  1137.  
  1138. w17 25.07.2012 15:52:30 +0400 - build 2778
  1139.  
  1140. 1. more of 2766 - not all checks were switched off
  1141.  
  1142. w17 25.07.2012 14:31:47 +0400 - build 2777
  1143.  
  1144. 1. correction of wrap-stop for 'custom' with DN_GETVALUE.
  1145.  
  1146. w17 25.07.2012 13:20:38 +0400 - build 2776
  1147.  
  1148. 1. once more, correction of 2754
  1149.  
  1150. w17 25.07.2012 12:56:49 +0400 - build 2775
  1151.  
  1152. 1. continuation of 2766
  1153.    VMENU_WRAPMODE is ignored - all lists (custom with DN_GETVALUE too) are in 'wrap-stop' mode.
  1154.    if there is no objections, VMENU_WRAPMODE is pending for full removal.
  1155.  
  1156. w17 25.07.2012 00:57:48 +0400 - build 2774
  1157.  
  1158. 1. M#0002137: VCTL_GETINFO returns true even if there's no viewers opened
  1159.  
  1160. w17 24.07.2012 12:36:10 +0400 - build 2773
  1161.  
  1162. 1. keyboard.cpp - removed useless(?) piece of code
  1163.  
  1164. w17 23.07.2012 13:36:10 +0400 - build 2772
  1165.  
  1166. 1. Launcher and Opt.Clock
  1167.  
  1168. drkns 20.07.2012 13:32:50 +0200 - build 2771
  1169.  
  1170. 1. Correction in the launcher.
  1171.  
  1172. w17 20.07.2012 01:10:43 +0400 - build 2770
  1173.  
  1174. 1. correction of 2675
  1175.  
  1176. drkns 19.07.2012 23:35:49 +0200 - build 2769
  1177.  
  1178. 1. If volume free size could not be obtained, show "?" in panel status line instead of "0".
  1179.  
  1180. zg 14.07.2012 16:42:43 +0200 - build 2768
  1181.  
  1182. 1. file corruption when copying files of size over 4gb when system copy routine is off.
  1183.  
  1184. w17 13.07.2012 22:29:29 +0400 - build 2767
  1185.  
  1186. 1. correction of 2766
  1187.  
  1188. w17 13.07.2012 18:10:04 +0400 - build 2766
  1189.  
  1190. 1. M#0001841, behavior changed for VMENU_WRAPMODE.
  1191.    On Maximus' proposal -- http://forum.farmanager.com/viewtopic.php?f=3&t=6563&p=85042&hilit=wrap#p88298
  1192.  
  1193. w17 11.07.2012 13:18:34 +0400 - build 2765
  1194.  
  1195. 1. correction of 2754.
  1196.    check if something fixed for M#2128 has been broken.
  1197.  
  1198. 2. correction of 2764.
  1199.  
  1200. w17 09.07.2012 13:32:49 +0400 - build 2764
  1201.  
  1202. 1. 'plugincache.db' name depends on CPU arch.
  1203.    x86: plugincache32.db, x64: plugincache64.db, IA64: plugincacheIA64.db
  1204.  
  1205. w17 09.07.2012 07:59:11 +0400 - build 2763
  1206.  
  1207. 1. The clock is not working in Far 3 Viewer
  1208.  
  1209. w17 09.07.2012 06:50:52 +0400 - build 2762
  1210.  
  1211. 1. more correction on 2757
  1212.  
  1213. w17 08.07.2012 17:22:26 +0400 - build 2761
  1214.  
  1215. 1. correction of correction of 2757 (10x Denis)
  1216.  
  1217. w17 08.07.2012 16:50:44 +0400 - build 2760
  1218.  
  1219. 1. correction of 2757 (from Shmuel)
  1220.  
  1221. drkns 05.07.2012 21:37:04 +0200 - build 2759
  1222.  
  1223. 1. 0002132: If FAR has started at directory junction, privilege elevation does not work
  1224.  
  1225. w17 05.07.2012 17:33:42 +0400 - build 2758
  1226.  
  1227. 1. M#2130: Active panel contents disappear when info panel on the other panel is opened.
  1228.  
  1229. w17 05.07.2012 11:43:50 +0400 - build 2757
  1230.  
  1231. 1.M#2129: After FAR startup, ".." in the root of a network share is missing.
  1232.  
  1233. w17 04.07.2012 12:16:35 +0400 - build 2756
  1234.  
  1235. 1. Editor can read and write files with 2-byte encodings (932, 936, ...)
  1236.    Thus, there is no need to hide them in dialogs for ShiftF2/ShiftF4.
  1237.  
  1238. svs 03.07.2012 13:37:10 +0400 - build 2755
  1239.  
  1240. 1. SQLite 3.7.13
  1241.  
  1242. w17 03.07.2012 12:05:08 +0400 - build 2754
  1243.  
  1244. 1. M#2128: Folders containing more than 128 files at network share cannot be viewed
  1245.  
  1246. w17 28.06.2012 17:15:04 +0400 - build 2753
  1247.  
  1248. 1. continuation of continuation of 2751
  1249.  
  1250. w17 28.06.2012 16:02:33 +0400 - build 2752
  1251.  
  1252. 1. continuation of 2751
  1253.  
  1254. w17 28.06.2012 14:21:36 +0400 - build 2751
  1255.  
  1256. 1. endless loop in editor replace reverse search
  1257.    replacement of, say, ';' to ';+' never finished...
  1258.  
  1259.  
  1260. w17 27.06.2012 21:44:29 +0400 - build 2750
  1261.  
  1262. 1. another correction of 2748 - avoid code duplication
  1263.  
  1264. w17 27.06.2012 16:45:39 +0400 - build 2749
  1265.  
  1266. 1. correction of 2748
  1267.  
  1268. w17 27.06.2012 15:43:12 +0400 - build 2748
  1269.  
  1270. 1. "Use case sensitive sort" is renamed
  1271.    Better variants are welcome.
  1272.  
  1273. 2. M#0821: "Save file position" option also affects the storing of the current encoding
  1274.    The encoding may be saved with no position (re)stored, the opposite is inaccessible.
  1275.  
  1276. 3. M#0011: wrap/wwrap/unwrap saved in history
  1277.    Two more options in viewer settings for storing the encoding and word wrapping mode.
  1278.  
  1279. drkns 24.06.2012 16:21:55 +0200 - build 2747
  1280.  
  1281. 1. Correction of 2738.
  1282.  
  1283. w17 23.06.2012 21:30:59 +0400 - build 2746
  1284.  
  1285. 1. M#1632: Correction of click position for codepages and Goto
  1286.    ViewMode is clickable
  1287.  
  1288. w17 22.06.2012 17:48:01 +0400 - build 2745
  1289.  
  1290. 1. M#1607: time setting error when copying to own share
  1291.    M$ surprise workaround
  1292.  
  1293. w17 22.06.2012 01:38:30 +0400 - build 2744
  1294.  
  1295. 1. 2471 again - building the sorting table with the use of CompareString standard sorting
  1296.  
  1297. w17 21.06.2012 15:23:20 +0400 - build 2743
  1298.  
  1299. 1. another correction of 2741
  1300.  
  1301. w17 21.06.2012 15:15:05 +0400 - build 2742
  1302.  
  1303. 1. correction of 2741
  1304.  
  1305. w17 21.06.2012 14:53:36 +0400 - build 2741
  1306.  
  1307. 1. EXPERIMENTAL. M#1343,2019 Alternative sort mode for 'Use case sensitive sort'
  1308.    It is not quite what it was in the old FAR, the more correct name is Uppercase First
  1309.  
  1310. drkns 20.06.2012 20:47:54 +0200 - build 2740
  1311.  
  1312. 1. Correction of unknown reparse points displaying.
  1313.  
  1314. w17 20.06.2012 21:43:35 +0400 - build 2739
  1315.  
  1316. 1. FileList::Find -- case sensitive/insetsitive compare logic fixed
  1317.  
  1318. drkns 17.06.2012 22:01:04 +0200 - build 2738
  1319.  
  1320. 1. /i key (Set icon for FAR console window) moved to interface settings.
  1321.    Also, there is a possibility of setting of separate icon when launched under admin account.
  1322.  
  1323. drkns 17.06.2012 18:36:59 +0200 - build 2737
  1324.  
  1325. 1. Search malfunction in ADS.
  1326.  
  1327. drkns 17.06.2012 13:10:15 +0200 - build 2736
  1328.  
  1329. 1. Crash at start if access to start directory is denied.
  1330.  
  1331. drkns 16.06.2012 16:03:01 +0200 - build 2735
  1332.  
  1333. 1. Panel.CtrlFRule (TI#14) is off by default.
  1334.  
  1335. drkns 16.06.2012 01:36:09 +0200 - build 2734
  1336.  
  1337. 1. Correction of 2733.
  1338.  
  1339. drkns 15.06.2012 23:09:58 +0200 - build 2733
  1340.  
  1341. 1. elevation: OpenVirtualDisk support and some makeup.
  1342.  
  1343. w17 15.06.2012 15:30:17 +0400 - build 2732
  1344.  
  1345. 1. EXPERIMENTAL. M#2103: This version of %1 is not compatible with the version of Windows you're running
  1346.  
  1347. svs 14.06.2012 12:58:15 +0400 - build 2731
  1348.  
  1349. 1. Mantis#0002068: Bug displaying panels size after a command (for example "pause")
  1350.  
  1351. drkns 13.06.2012 09:15:54 +0200 - build 2730
  1352.  
  1353. 1. cppcheck warnings.
  1354.  
  1355. 2. In 2724, displaying of speed of copying to nul was broken.
  1356.  
  1357. 3. Using more common [u]intptr_t instead of <INT|LONG|DWORD>_PTR.
  1358.  
  1359. drkns 11.06.2012 16:18:00 +0200 - build 2729
  1360.  
  1361. 1. With "auto save setup", highlighting groups were stored incorrectly.
  1362.  
  1363. drkns 09.06.2012 19:34:06 +0200 - build 2728
  1364.  
  1365. 1. Endless search for all matches of /^$/m regex
  1366.  
  1367. zg 09.06.2012 18:44:36 +0200 - build 2727
  1368.  
  1369. 1. 0002125: Errors with highlighting in editor
  1370.  
  1371. drkns 09.06.2012 14:02:57 +0200 - build 2726
  1372.  
  1373. 1. Minor fixes in elevation and copier.
  1374.  
  1375. 2. DialogBuilder did not support negative numbers input.
  1376.  
  1377. drkns 08.06.2012 15:36:03 +0200 - build 2725
  1378.  
  1379. 1. Third state of checkboxes was not stored in settings.
  1380.  
  1381. w17 08.06.2012 09:51:35 +0400 - build 2724
  1382.  
  1383. 1. M#1666: information about copying multiple files
  1384.     If [ ] show total size and [x] show time then current file copying speed is shown
  1385.  
  1386. w17 07.06.2012 13:35:13 +0400 - build 2723
  1387.  
  1388. 1. M#2124: /$/m regex "non-standard" behavior
  1389.  
  1390. w17 05.06.2012 21:27:50 +0400 - build 2722
  1391.  
  1392. 1. M#0000228: Save "delete file on close" flag in viewer/editor after F6
  1393.  
  1394. 2. FileViewer(__int64 ViewerStartPos)
  1395.  
  1396. 3. help invoked with far /ro [/rw]
  1397.  
  1398. svs 04.06.2012 16:21:07 +0400 - build 2721
  1399.  
  1400. 1. A typo for Debug
  1401.  
  1402. 2. SQLite 3.7.12.1
  1403.  
  1404. drkns 02.06.2012 14:54:41 +0200 - build 2720
  1405.  
  1406. 1. Completion with CtrlSpace did not work.
  1407.  
  1408. drkns 02.06.2012 00:32:29 +0200 - build 2719
  1409.  
  1410. 1. More on %pathext% + a couple of issues.
  1411.  
  1412. drkns 01.06.2012 14:56:00 +0200 - build 2718
  1413.  
  1414. 1. Correction of privileges check.
  1415.  
  1416. drkns 01.06.2012 14:15:50 +0200 - build 2717
  1417.  
  1418. 1. F4 and CtrlH processing is added to far:config.
  1419.  
  1420. drkns 01.06.2012 13:05:50 +0200 - build 2716
  1421.  
  1422. 1. %pathext% variable was not expanded in mask groups.
  1423.  
  1424. drkns 01.06.2012 08:05:48 +0200 - build 2715
  1425.  
  1426. 1. Forgotten debug code in 2702 :)
  1427.  
  1428. drkns 01.06.2012 00:09:33 +0200 - build 2714
  1429.  
  1430. 1. Continuation of 2707.
  1431.  
  1432. drkns 31.05.2012 08:18:28 +0200 - build 2713
  1433.  
  1434. 1. gcc build, a better way does exist.
  1435.  
  1436. w17 31.05.2012 01:08:59 +0400 - build 2712
  1437.  
  1438. 1. gcc build (a better way may exist ?)
  1439.  
  1440. drkns 30.05.2012 20:57:08 +0200 - build 2711
  1441.  
  1442. 1. Correction of 2131.2.
  1443.  
  1444. drkns 30.05.2012 19:27:12 +0200 - build 2710
  1445.  
  1446. 1. A typo in 2707.
  1447.  
  1448. w17 30.05.2012 20:16:33 +0400 - build 2709
  1449.  
  1450. 1. 1108: Wher Wipe (Alt-del) is used on a folder, the operation (and whole FAR) freezes
  1451.    far3 does not, but the problem can be reproduced partially.
  1452.  
  1453. 2. viewer's minimal changes after 2707
  1454.  
  1455. drkns 30.05.2012 18:20:05 +0200 - build 2708
  1456.  
  1457. 1. Correction of 2707.1.
  1458.  
  1459. drkns 30.05.2012 14:35:00 +0200 - build 2707
  1460.  
  1461. 1. Configuration is reworked.
  1462.    - generalconfig.db is written only changes now.
  1463.    - far:config has got bool instead of int where it is needed.
  1464.    - the default key for console detach is now CtrlShiftTab.
  1465.  
  1466. 2. Macro: PanelItem is removed, use Panel.Item.
  1467.  
  1468. 3. printf elimination is continuing.
  1469.  
  1470. 4. "/w-" key is added - "window mode" forced switching off.
  1471.  
  1472. w17 30.05.2012 05:51:52 +0400 - build 2706
  1473.  
  1474. 1. 2122: Incorrect comparison of catalogs from menu item Commands - Compare Folders
  1475.  
  1476. w17 29.05.2012 13:30:08 +0400 - build 2705
  1477.  
  1478. 1. 2115: Unable to view files found with a search in temporary panel
  1479.  
  1480. drkns 25.05.2012 08:35:25 +0200 - build 2704
  1481.  
  1482. 1. Correction of 2702.2.
  1483.  
  1484. drkns 25.05.2012 00:34:44 +0200 - build 2703
  1485.  
  1486. 1. Correction of 2702.1.
  1487.  
  1488. drkns 25.05.2012 00:06:38 +0200 - build 2702
  1489.  
  1490. 1. 0002113: Viewer does not switch between files in search result list
  1491.  
  1492. 2. 0002116: A message pops up when volume selection dialog is invoked.
  1493.  
  1494. drkns 24.05.2012 20:38:20 +0200 - build 2701
  1495.  
  1496. 1. In some cases, file panel refresh could crash FAR.
  1497.  
  1498. drkns 24.05.2012 10:59:24 +0200 - build 2700
  1499.  
  1500. 1. 0002112: Command line autocompletion does not work after commands history dialog use
  1501.  
  1502. w17 23.05.2012 09:54:59 +0400 - build 2699
  1503.  
  1504. 1. Fix for 2679.1
  1505.  
  1506. w17 23.05.2012 05:08:42 +0400 - build 2698
  1507.  
  1508. 1. Correction of 2676.1
  1509.  
  1510. drkns 21.05.2012 23:06:13 +0200 - build 2697
  1511.  
  1512. 1. Some reduction of ImportedFunctions code.
  1513.  
  1514. w17 21.05.2012 13:19:37 +0400 - build 2696
  1515.  
  1516. 1. 2679.4 - after Esc, the scan results are shown without a delay
  1517.  
  1518. drkns 21.05.2012 10:12:45 +0200 - build 2695
  1519.  
  1520. 1. Correction of 2601.
  1521.  
  1522. w17 20.05.2012 12:08:44 +0400 - build 2694
  1523.  
  1524. 1. 2107: Crash while copying
  1525.  
  1526. drkns 19.05.2012 23:08:50 +0200 - build 2693
  1527.  
  1528. 1. Continuation of 2690.
  1529.  
  1530. drkns 18.05.2012 16:02:47 +0200 - build 2692
  1531.  
  1532. 1. Continuation of 2689.
  1533.  
  1534. drkns 18.05.2012 15:24:56 +0200 - build 2691
  1535.  
  1536. 1. Continuation of 2690.
  1537.  
  1538. drkns 18.05.2012 14:21:09 +0200 - build 2690
  1539.  
  1540. 1. Completion can be fine-tuned via far:config.
  1541.    Interface.Completion.Use???? options, 1 - use always, 2 - with manual call only.
  1542.  
  1543. drkns 18.05.2012 13:48:24 +0200 - build 2689
  1544.  
  1545. 1. Transition to paths like cd \\?\GLOBALROOT\Device\Harddisk0\Partition1, \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy3 etc. did not work
  1546.  
  1547. drkns 18.05.2012 13:32:43 +0200 - build 2688
  1548.  
  1549. 1. History settings are accessible via far:config.
  1550.  
  1551. 2. Correction of 2683.
  1552.  
  1553. w17 18.05.2012 12:50:35 +0400 - build 2687
  1554.  
  1555. 1. 2679.3 - after interrupting with Esc, the result of incomplete directory scanning is shown anyway
  1556.  
  1557. drkns 18.05.2012 09:49:36 +0200 - build 2686
  1558.  
  1559. 1. Continuation of #0002102: ULF_UNIQUE without ULF_SORT could lead to incorrect order of items.
  1560.  
  1561. svs 18.05.2012 10:39:11 +0400 - build 2685
  1562.  
  1563. 1. Mantis#0001491: CtrlStartPosChar does not work with the first line (caption does not count)
  1564.    NearTopicFound was not reset to 0 in the line next to fixed area.
  1565.  
  1566. 2. SQLite 3.7.12
  1567.  
  1568. drkns 17.05.2012 20:42:33 +0200 - build 2684
  1569.  
  1570. 1. Correction of 2683.
  1571.  
  1572. drkns 17.05.2012 20:18:36 +0200 - build 2683
  1573.  
  1574. 1. UserDefinedList refactored. Now there is an unlimited number of separators, consecutive delimiters are not an error.
  1575.    Also 0002102: Path environment variable not processed correctly isf it contains empty strings between semicolons
  1576.  
  1577. w17 17.05.2012 13:38:16 +0400 - build 2682
  1578.  
  1579. 1. 2679.2 - WIN key does not interrupt directory scan
  1580.  
  1581. w17 17.05.2012 13:12:53 +0400 - build 2681
  1582.  
  1583. 1. 2679.1 - tilde
  1584.  
  1585. drkns 16.05.2012 21:45:11 +0200 - build 2680
  1586.  
  1587. 1. Do not switch the autocompletion on while messages remain in console message queue.
  1588.  
  1589. w17 16.05.2012 13:58:29 +0400 - build 2679
  1590.  
  1591. 1. M#2101: "quick search" may be cancelled with any key
  1592.    Color indication whether directory scan was aborted
  1593.  
  1594. 2. 2676 - 'far /rw'
  1595.  
  1596. w17 16.05.2012 11:37:29 +0400 - build 2678
  1597.  
  1598. 1. correction of 2676
  1599.  
  1600. svs 16.05.2012 10:04:17 +0400 - build 2677
  1601.  
  1602. 1. Mantis#0002096: Navigation on text in search results menu
  1603.    (from DAtaMan)
  1604.  
  1605.    - if "Select found" is on then the search results are selected after Enter is pressed :)
  1606.    - Ctrl-Enter sets the cursor on the found text and selects it if "Select found" is on
  1607.    - F5 switches the menu size
  1608.    - Ctrl-Up/Down scrolls the editor text
  1609.    - Add sets the stacked bookmark
  1610.    - RCtrl-(0-9) - set the bookmark 0..9 in the current position, LCtrl-(0-9) - go to bookmark 0-9
  1611.  
  1612.  
  1613. w17 15.05.2012 19:31:43 +0400 - build 2676
  1614.  
  1615. 1. M#2100: Problems with FAR 3 start from write protected volumes
  1616.    work with configuration databases unchanged.
  1617.    'far -ro' or 'ReadOnlyConfig=1' in far.exe.ini, no autodetection
  1618.  
  1619. 2. gcc -warning
  1620.  
  1621. w17 14.05.2012 14:17:56 +0400 - build 2675
  1622.  
  1623. 1. 2673 continuation...
  1624.    identification of FAT, an option for disabling the panel catalog monitoring feature on focus lose
  1625.  
  1626. svs 14.05.2012 13:54:16 +0400 - build 2674
  1627.  
  1628. 1. Correction of build 2672
  1629.    API: add MPEC_BREAK_OTL
  1630.  
  1631. 2. Mantis#0002059: Macro functions for accessing editor lines by their index
  1632.    For Editor.SetStr(), cursor positioning functionality is removed. Appropriate functions are intended for this
  1633.  
  1634. w17 12.05.2012 19:24:42 +0400 - build 2673
  1635.  
  1636. 1. M#2098: File created by an external program did not appear in the active panel
  1637.  
  1638. svs 12.05.2012 14:00:53 +0400 - build 2672
  1639.  
  1640. 1. Macro: "$break" operator is added - $rep and $while loops termination.
  1641.  
  1642. 2. Correction of TVar::operator--() and TVar::operator++()
  1643.  
  1644. svs 11.05.2012 11:53:32 +0400 - build 2671
  1645.  
  1646. 1. Mantis#0001891: Right-aligned extesions
  1647.    (from samlyukov)
  1648.  
  1649. svs 11.05.2012 11:34:27 +0400 - build 2670
  1650.  
  1651. 1. Mantis#0002097: VF_ENABLE_F6 does not work
  1652.    (from Denis)
  1653.    Viewer.SetEnableF6() call took place later than planned.
  1654.  
  1655. 2. Mantis#0001736: akey(1,0)==akey(1,1) Far 3.0.1931 far2.0.1807
  1656.    "rat race".
  1657.  
  1658. svs 10.05.2012 20:55:52 +0400 - build 2669
  1659.  
  1660. 1. Adding isNumber() to TVar - is it a number? (Integer/Real/StrNumber)
  1661.  
  1662. 2. Mantis#0002059: Macro functions for accessing editor lines by their index
  1663.    Now Line may be a "number" (Integer/Real/StrNumber), not only integer.
  1664.    Cast:
  1665.      Integer       -> Integer
  1666.      Real          -> Integer
  1667.      StrNumber     -> Integer
  1668.      Not StrNumber -> error (editor.[get|set|ins|del]str do not work)
  1669.  
  1670.    Also, if S was not specified it was equal to "0".
  1671.  
  1672. drkns 10.05.2012 16:16:31 +0200 - build 2668
  1673.  
  1674. 1. And once more.
  1675.  
  1676. drkns 10.05.2012 16:12:43 +0200 - build 2667
  1677.  
  1678. 1. Correction of 2666.1.
  1679.  
  1680. drkns 10.05.2012 15:26:08 +0200 - build 2666
  1681.  
  1682. 1. Autocompletion issues:
  1683.    - affected elements match the condition %path%\<something>.%pathext% or mentioned in App Paths (DIF_EDITPATHEXEC/FIB_EDITPATHEXEC in api);
  1684.    - manual call moved from CtrlShiftEnd to CtrlSpace;
  1685.    - mode "without menu" is redone, now the sequential scan is used.
  1686.  
  1687. w17 10.05.2012 16:09:01 +0400 - build 2665
  1688.  
  1689. 1. FAR crash after ShiftDel in cmdline autocompletion menu on file items
  1690.  
  1691. 2. Don't show disabled UTF-7 line in encoding selection menu in viewer and editor
  1692.  
  1693. svs 10.05.2012 15:06:25 +0400 - build 2664
  1694.  
  1695. 1. Mantis#0002059: Macro functions for accessing editor lines by their index
  1696.    (from DAtaMan)
  1697.  
  1698.     - Editor.GetStr works even if the editor is locked
  1699.     + after Editor.SetStr the cursor position is unchanged
  1700.  
  1701. svs 10.05.2012 12:06:11 +0400 - build 2663
  1702.  
  1703. 1. Mantis#0002059: Macro functions for accessing editor lines by their index
  1704.    (from DAtaMan)
  1705.  
  1706.    1. Editor::GetStringByNumber minor optimization
  1707.  
  1708.    2. Added macro commands:
  1709.  
  1710.      N=Editor.DelLine([Line])
  1711.      S=Editor.GetStr([Line])
  1712.      N=Editor.InsStr([S[,Line]])
  1713.      N=Editor.SetStr([S[,Line]])
  1714.  
  1715.      when Line is not given, the functions process the current line.
  1716.  
  1717.    A text macro - empty lines removal:
  1718.  
  1719.      $If(Selected)
  1720.        %StartLine=Editor.Sel(0, 0);
  1721.        %EndLine=Editor.Sel(0, 2);
  1722.      $Else
  1723.        %StartLine=1;
  1724.        %EndLine=Editor.Lines;
  1725.      $End
  1726.  
  1727.      %Count=%EndLine-%StartLine+1;
  1728.      %i=%StartLine;
  1729.      Editor.Undo(0);
  1730.      $Rep(%Count)
  1731.        $If(Len(Trim(Editor.GetStr(%i)))==0)
  1732.          Editor.DelLine(%i);
  1733.        $Else
  1734.          %i=%i+1;
  1735.        $End
  1736.      $End
  1737.      Editor.Undo(1);
  1738.  
  1739. svs 05.05.2012 16:18:15 +0400 - build 2662
  1740.  
  1741. 1. Mantis#0002095: Crash on history-guided transition to a plugin
  1742.    (from Maximus)
  1743.  
  1744. svs 04.05.2012 23:11:07 +0400 - build 2661
  1745.  
  1746. 1. Correction of 2660
  1747.  
  1748. svs 04.05.2012 12:55:16 +0400 - build 2660
  1749.  
  1750. 1. Mantis#0001879: FAR ignores the absence of EOL specified by a plugin
  1751.    (from Maximus)
  1752.    ANSI plugins...
  1753.  
  1754. 2. Mantis#0002094: Duplication of Enter on Eval call (from a macro)
  1755.    Highly experimental.
  1756.    It needs checking.
  1757.    incl. callplugin etc...
  1758.  
  1759. drkns 04.05.2012 11:11:26 +0200 - build 2659
  1760.  
  1761. 1. SetErrorMode was set later than necessary.
  1762.  
  1763. 2. A couple of minor issues.
  1764.  
  1765. svs 03.05.2012 15:03:42 +0400 - build 2658
  1766.  
  1767. 1. Mantis#0001879: FAR ignores the absence of EOL specified by a plugin
  1768.    (from Maximus)
  1769.    without DropModified.diff
  1770.  
  1771. 2. Some help for editor option "Show white space"
  1772.  
  1773. svs 03.05.2012 10:04:23 +0400 - build 2657
  1774.  
  1775. 1. Mantis#0001743: History switch off capability
  1776.    Correction of build 2338.
  1777.  
  1778. drkns 02.05.2012 21:30:43 +0200 - build 2656
  1779.  
  1780. 1. Monitoring changes in folders opened in panels only if FAR has a focus.
  1781.  
  1782. drkns 02.05.2012 18:23:04 +0200 - build 2655
  1783.  
  1784. 1. Continuation of 2655 - "Use Ctrl-PgUp to change drive" switch now has 3 positions.
  1785.  
  1786. drkns 02.05.2012 18:01:04 +0200 - build 2654
  1787.  
  1788. 1. 0002093: Ctrl-PgUp shows volumes list only
  1789.  
  1790. svs 02.05.2012 10:25:17 +0400 - build 2653
  1791.  
  1792. 1. Mantis#0002089: Crash on plugins menu call attempt in the macro editing dialog.
  1793.  
  1794.    endless loop in dialog.cpp#2782 at:
  1795.    return FrameManager->ProcessKey(Key);
  1796.  
  1797.    0. FrameManager->ProcessKey(KEY_F11); ==>
  1798.    1. Dialog::ProcessKey(KEY_F11) ==>
  1799.    2. Manager::ProcessKey(KEY_F11); here goes "if (!IsProcessAssignMacroKey)" and the whole block is skipped ==> CurrentFrame->ProcessKey(KEY_F11);
  1800.    4. goto 1
  1801.  
  1802.    There's no need for plugins in macro parameters changing dialog.
  1803.    But if you wish them here, then:
  1804.    1) Roll this patch back (remove "if (!IsProcessAssignMacroKey)" in Dialog::ProcessKey in processing of F11)
  1805.    2) in Manager::ProcessKey, move processing of KEY_F11 before "if (!IsProcessAssignMacroKey)"
  1806.  
  1807.    But then, IMHO, we'll get the "loop" again if processing of KEY_F11 in Manager::ProcessKey will be "closed" come day (see changelog for build 1360)
  1808.  
  1809. drkns 29.04.2012 16:19:25 +0200 - build 2652
  1810.  
  1811. 1. 0002090: FAR crash at DIF_USELASTHISTORY
  1812.  
  1813. w17 29.04.2012 12:30:17 +0400 - build 2651
  1814.  
  1815. 1. M#2091: Home button does not work in menu (M#2083)
  1816.    (from Maximus)
  1817.  
  1818. 2. minimal 2605 correction
  1819.  
  1820. zg 28.04.2012 21:02:12 +0200 - build 2650
  1821.  
  1822. 1. Problems with history while working with several FAR instances.
  1823.  
  1824. 2. gcc warnings.
  1825.  
  1826. svs 28.04.2012 09:46:51 +0400 - build 2649
  1827.  
  1828. 1. "far:config" check is now case independent.
  1829.  
  1830. 2. Mantis#0001810: elevation request in Info panel ignores the configuration
  1831.    See the "Show CD drive parameters" option in "InfoPanel settings" dialog.
  1832.    It is on by default.
  1833.  
  1834. svs 27.04.2012 18:06:47 +0400 - build 2648
  1835.  
  1836. 1. Mantis#0001876: The name of the edited/viewed file in the beginning of the window caption
  1837.  
  1838.    In Far:Config (so far), "Interface" and TEXT parameters "EditorTitleFormat" and "ViewerTitleFormat" are searched.
  1839.    The default format is: "%Lng %File".
  1840.    Here go the templates: "%File" - the file name, "%Lng" - a line from the lng file ("edit" or "view")
  1841.    Don't forget that there's the "TitleAddons" template appended to the caption.
  1842.  
  1843. drkns 27.04.2012 13:46:30 +0200 - build 2647
  1844.  
  1845. 1. Correction of 2646.1.
  1846.  
  1847. drkns 26.04.2012 20:35:56 +0200 - build 2646
  1848.  
  1849. 1. Misc on far:config.
  1850.  
  1851. t-rex 26.04.2012 19:44:06 +0200 - build 2645
  1852.  
  1853. 1. far:config showed System.BoxSymbols with garbage.
  1854.  
  1855. svs 26.04.2012 17:50:01 +0400 - build 2644
  1856.  
  1857. 1. Mantis#0001620: Full names in the keybar
  1858.    "To play around".
  1859.    "Stem|suffix1|suffix2|suffix3" variant is implemented.
  1860.    It depends on available length (for optimal fill).
  1861.  
  1862.    Consider "Bearb|eit|eiten". Depending on the width of the label one of 3 variants is chosen:
  1863.    "Bearb"         = "Bearb"
  1864.    "Bearb" + "eit" = "Bearbeit"
  1865.    "Bearb"+"eiten" = "Bearbeiten"
  1866.    i.e. the stem remains anyway.
  1867.  
  1868.    The memory for the label is dynamically allocated (there is no 16 characters limit).
  1869.  
  1870.    Before you rush for editing farlang.templ.m4 in order to adjust the labels for this kind of behavior,
  1871.    here's how you can practice:
  1872.  
  1873.    <?xml version="1.0" encoding="UTF-8" ?>
  1874.    <farconfig>
  1875.        <generalconfig>
  1876.            <setting key="KeyBarLabels.English.Shell" name="AltF4" type="text" value="Edit|..|Ext| Extern| External" />
  1877.            <setting key="KeyBarLabels.English.Shell" name="F4" type="text" value="Edit| File" />
  1878.        </generalconfig>
  1879.    </farconfig>
  1880.  
  1881. 2. A help topic on volume selection configuration dialog is added.
  1882.  
  1883. 3. Mantis#0002013: "cd ~" behavior
  1884.  
  1885.    "cd ~" is legalized - now it can be configured in command line configuration dialog.
  1886.    It if on by default and points to %FARHOME%.
  1887.  
  1888. w17 26.04.2012 17:39:15 +0400 - build 2643
  1889.  
  1890. 1. Viewer CRCRLF (as in the editor)
  1891.  
  1892. 2. continuation of 2605
  1893.  
  1894. drkns 26.04.2012 00:34:11 +0200 - build 2642
  1895.  
  1896. 1. And once more.
  1897.  
  1898. drkns 26.04.2012 00:10:19 +0200 - build 2641
  1899.  
  1900. 1. Correction of 2640.1.
  1901.  
  1902. drkns 25.04.2012 20:34:13 +0200 - build 2640
  1903.  
  1904. 1. "To play around" - far:config in command line shows an internal browser-style configuration editor.
  1905.    Keep in mind that many of the settings require restart.
  1906.  
  1907. svs 25.04.2012 18:33:36 +0400 - build 2639
  1908.  
  1909. 1. Correction of build 2626 on returning info about a macro.
  1910.  
  1911. zg 25.04.2012 15:13:51 +0200 - build 2638
  1912.  
  1913. 1. a fix of gcc build with the use of winapi from mingw.org.
  1914.  
  1915. w17 25.04.2012 15:46:58 +0400 - build 2637
  1916.  
  1917. 1. M#2087: Incorrect Esc processing in copy error dialog
  1918.    (from Maximus)
  1919.  
  1920. 2. Removing a 'secret' key Help.FollowMouse
  1921.  
  1922. 3. changelog -typos
  1923.  
  1924. svs 25.04.2012 11:57:18 +0400 - build 2636
  1925.  
  1926. 1. Mantis#0000651: No link creation item in FAR menu
  1927.  
  1928. w17 25.04.2012 00:12:34 +0400 - build 2635
  1929.  
  1930. 1. CtrlPgUp did not work in plugin panels if the Interface.CtrlPgUp option was off
  1931.    and the current directory in the file panel, which the plugin panel had been opened from, was the volume root.
  1932.  
  1933. drkns 24.04.2012 21:18:03 +0200 - build 2634
  1934.  
  1935. 1. More correction on 2632.
  1936.  
  1937. svs 24.04.2012 17:44:04 +0400 - build 2633
  1938.  
  1939. 1. Correction of 2632
  1940.  
  1941. svs 24.04.2012 17:16:28 +0400 - build 2632
  1942.  
  1943. 1. Mantis#0001357: Show all types of Reparse Points in panels
  1944.  
  1945.    Recognizing:
  1946.     IO_REPARSE_TAG_MOUNT_POINT  0xA0000003L = Directory Junction or Volume Mount Point
  1947.     IO_REPARSE_TAG_SYMLINK      0xA000000CL = Directory or File Symbolic Link
  1948.     IO_REPARSE_TAG_DFS          0x8000000AL = Distributed File System
  1949.     IO_REPARSE_TAG_DFSR         0x80000012L = Distributed File System Replication
  1950.     IO_REPARSE_TAG_HSM          0xC0000004L = Hierarchical Storage Management
  1951.     IO_REPARSE_TAG_HSM2         0x80000006L = Hierarchical Storage Management2
  1952.     IO_REPARSE_TAG_SIS          0x80000007L = Single Instance Storage
  1953.     IO_REPARSE_TAG_WIM          0x80000008L = Windows Imaging Format
  1954.     IO_REPARSE_TAG_CSV          0x80000009L = Cluster Shared Volumes
  1955.  
  1956.    {
  1957.      Other tags are shown as ":XXXXXXXX" (X is a hex digit).
  1958.      As the info is too specific, it is not displayed by default.
  1959.      To display it, set the "Panel.Layout\ShowUnknownReparsePoint" parameter to 1:
  1960.       <?xml version="1.0" encoding="UTF-8" ?>
  1961.       <farconfig>
  1962.           <generalconfig>
  1963.               <setting key="Panel.Layout" name="ShowUnknownReparsePoint" type="qword" value="0000000000000001" />
  1964.           </generalconfig>
  1965.       </farconfig>
  1966.    }
  1967.  
  1968.    An option is added to panel settings: "Determine Volume Mount point".
  1969.    It allows specitying "Junction" in "size" field for directories (either "Junction" or "Volume").
  1970.    The option if off by default for panels because of its slow execution (especially on network volumes).
  1971.  
  1972.    Links info is not shown in QView if the file object is inaccessible, because of apiGetFileAttributes() failure.
  1973.  
  1974. 2. The links field does exist in attributes settings dialog, but it is RO in case of unsuccessful obtaining of the info and 'Reparse'.
  1975.  
  1976. 3. Macro: panel.item(XX,XX,23) returns ReparseTag
  1977.  
  1978. drkns 22.04.2012 02:16:36 +0200 - build 2631
  1979.  
  1980. 1. Drive menu was not invoked if '@:' drive had been opened in the panel.
  1981.  
  1982. svs 20.04.2012 13:36:55 +0400 - build 2630
  1983.  
  1984. 1. Mantis#0001687: ProcessConsoleInput
  1985.    (from Maximus)
  1986.  
  1987. svs 20.04.2012 12:10:58 +0400 - build 2629
  1988.  
  1989. 1. Mantis#0002069: rep(n,string)
  1990.    Macro: S=StrPad(V,Cnt[,Fill[,Op]]) function is added
  1991.      v     - original expression, if not specified or has a zero length then it is considred as an empty line
  1992.      cnt   - result size
  1993.              if negative or 0 then V is returned
  1994.              if V is specified and cnt is less than V length then V is returned
  1995.      Fill  - value to fill with
  1996.      Op    - how to fill: 0 - from the right, 1 - from the left, 2 - centered.
  1997.  
  1998.  
  1999. w17 19.04.2012 15:45:53 +0400 - build 2628
  2000.  
  2001. 1. gcc -warning
  2002.  
  2003. 2. farlang minimal correction
  2004.  
  2005. w17 18.04.2012 18:27:12 +0400 - build 2627
  2006.  
  2007. 1. And 2605 once more
  2008.  
  2009. svs 18.04.2012 18:06:58 +0400 - build 2626
  2010.  
  2011. 1. Macro: keys limit is removed:
  2012.  
  2013.      <macro area="Shell" key="printFooBar"><text>print("FooBar")</text></macro>
  2014.      <macro area="Shell" key="CtrlP" flags="DisableOutput"><text>eval("printFooBar",2)</text></macro>
  2015.  
  2016.    "printFooBar" cannot be removed interactively.
  2017.  
  2018. svs 18.04.2012 17:18:43 +0400 - build 2625
  2019.  
  2020. 1. Mantins#0002077: QView crash in a plugin panel
  2021.    (from Maximus)
  2022.  
  2023. drkns 18.04.2012 16:16:13 +0200 - build 2624
  2024.  
  2025. 1. Correction of 2597.1.
  2026.  
  2027. w17 18.04.2012 16:53:54 +0400 - build 2623
  2028.  
  2029. 1. 2605 once more
  2030.  
  2031. drkns 18.04.2012 10:30:09 +0200 - build 2622
  2032.  
  2033. 1. The screen was not redrawn after an external editor/viewer call.
  2034.  
  2035. 2. A couple of minor issues in usermenu.
  2036.  
  2037. svs 18.04.2012 10:18:49 +0400 - build 2621
  2038.  
  2039. 1. Mantis#0002070: ProcessConsoleInputInfo processing error
  2040.    (from Maximus)
  2041.  
  2042. drkns 17.04.2012 10:11:45 +0200 - build 2620
  2043.  
  2044. 1. 0002074: Show and modify Owner SID in Attributes dialog
  2045.  
  2046. 2. 0002078: FAR crash with an incorrect lng file
  2047.  
  2048. svs 16.04.2012 19:20:40 +0400 - build 2619
  2049.  
  2050. 1. Macro: correction of the "engine".
  2051.  
  2052. 2. Correction of KeyMacro::GetPlainText(). Debugging.
  2053.  
  2054. w17 16.04.2012 18:20:39 +0400 - build 2618
  2055.  
  2056. 1. Correction of 2605
  2057.  
  2058. drkns 16.04.2012 14:33:05 +0200 - build 2617
  2059.  
  2060. 1. 2616 build failure.
  2061.  
  2062. 2. 0002076: Transition to network shares of a CentOS-5.4 system did not work
  2063.  
  2064. svs 16.04.2012 10:54:54 +0400 - build 2616
  2065.  
  2066. 1. Macro: correction of the "engine".
  2067.  
  2068. 2. Optimization of TVarSet class - removing the TAbstractSet intermediate class.
  2069.  
  2070. 3. Correction of TVar class.
  2071.  
  2072. zg 15.04.2012 14:20:58 +0200 - build 2615
  2073.  
  2074. 1. correction of 2603.
  2075.  
  2076. w17 15.04.2012 10:55:54 +0400 - build 2614
  2077.  
  2078. 1. M#1183: On Reload, codepage storing must take place before reading
  2079.  
  2080. w17 14.04.2012 10:21:14 +0400 - build 2613
  2081.  
  2082. 1. Correction of 2607
  2083.  
  2084. zg 13.04.2012 19:36:08 +0200 - build 2612
  2085.  
  2086. 1. Far.Cfg.Get returns public settings only.
  2087.  
  2088. zg 13.04.2012 01:29:20 +0200 - build 2611
  2089.  
  2090. 1. PCTL_FINDPLUGIN returns nullptr, PCTL_GETPLUGININFORMATION returns 0 for just deleted plugins.
  2091.  
  2092. zg 12.04.2012 20:36:52 +0200 - build 2610
  2093.  
  2094. 1. 0002071: Regexps processing error - \x00
  2095.  
  2096. drkns 12.04.2012 15:39:48 +0200 - build 2609
  2097.  
  2098. 1. AltF4 in usermenu now opens a real file, not a temporary one.
  2099.  
  2100. 2. An option for control of displaying ".." in the root.
  2101.  
  2102. drkns 12.04.2012 09:55:30 +0200 - build 2608
  2103.  
  2104. 1. Correction of 2601.2.
  2105.  
  2106. 2. Correction of 2604.1.
  2107.  
  2108. w17 12.04.2012 03:11:29 +0400 - build 2607
  2109.  
  2110. 1. M#1773: Let enable AutoDetect item in Shift-F8 menu
  2111.    ACHTUNG: CP_AUTODETECT is renamed to CP_DEFAULT
  2112.  
  2113. 2. M#1775: Shift-F4: Possibility of repeated automatic definifion of encoding of an opened file
  2114.  
  2115. w17 12.04.2012 02:52:21 +0400 - build 2606
  2116.  
  2117. 1. Correction of 2605
  2118.  
  2119. w17 11.04.2012 23:14:16 +0400 - build 2605
  2120.  
  2121. 1. 0002065: Mouse cursor position interferes with keyboard cursor control in help system.
  2122.    Just to try, ACHTUNG: the behaviour has changed : links are NOT highlighted on mouse move.
  2123.  
  2124. drkns 11.04.2012 20:37:03 +0200 - build 2604
  2125.  
  2126. 1. 0002067: Unexpected reaction to mouse wheel in vertical menus
  2127.  
  2128. 2. Some more of 2597.1.
  2129.  
  2130. zg 11.04.2012 17:38:32 +0200 - build 2603
  2131.  
  2132. 1. 0002004: Commands history is not saved within the session.
  2133.  
  2134. 2. gcc warning.
  2135.  
  2136. w17 11.04.2012 15:39:21 +0400 - build 2602
  2137.  
  2138. 1. rollback of 2599.2
  2139.  
  2140. drkns 11.04.2012 14:14:33 +0200 - build 2601
  2141.  
  2142. 1. 0002020: 'One level up' transition disappeared from network panel
  2143.    and another couple of bugs in 2597.1
  2144.  
  2145. 2. Experimental - ".." is now displayed in root directories too.
  2146.  
  2147. w17 11.04.2012 14:32:17 +0400 - build 2600
  2148.  
  2149. 1. M#2066: Long file name overwritten with the short one
  2150.  
  2151. w17 10.04.2012 23:47:54 +0400 - build 2599
  2152.  
  2153. 1. execute.cpp: fix image subsystem detection (from Maximus5)
  2154.  
  2155. 2. open-as... for incorrectly given name (from Maximus5)
  2156.  
  2157. drkns 10.04.2012 21:58:06 +0200 - build 2598
  2158.  
  2159. 1. Correction of 2597.1.
  2160.  
  2161. drkns 10.04.2012 20:51:51 +0200 - build 2597
  2162.  
  2163. 1. Inner paths parser is reworked slightly. Root detection must have improved and various minor bugs fixed. Well, or bigger ones may appear, it depends :)
  2164.  
  2165. 2. Once again on 0002061: Date wrong in Attributes dialog.
  2166.  
  2167. w17 10.04.2012 20:21:20 +0400 - build 2596
  2168.  
  2169. 1. More restrictions on SEE_MASK_INVOKEIDLIST - off for .exe files
  2170.  
  2171. w17 10.04.2012 19:30:17 +0400 - build 2595
  2172.  
  2173. 1. !~ was replaced with 1st letter of short name in associations
  2174.  
  2175. svs 10.04.2012 18:38:40 +0400 - build 2594
  2176.  
  2177. 1. Mantis#0002064: A bug in HiText2Str
  2178.  
  2179. w17 06.04.2012 23:27:23 +0400 - build 2593
  2180.  
  2181. 1. FSF.sprintf() fix for gcc 4.6+
  2182.  
  2183. drkns 06.04.2012 14:09:49 +0200 - build 2592
  2184.  
  2185. 1. 0002061: Date wrong in Attributes dialog
  2186.  
  2187. zg 05.04.2012 02:36:51 +0200 - build 2591
  2188.  
  2189. 1. fix for visual inconsistency after ECTL_SELECT if the cursor was set to an incorrect place for vertical blocks.
  2190.  
  2191. zg 05.04.2012 01:53:27 +0200 - build 2590
  2192.  
  2193. 1. fix for visual inconsistency after ECTL_SELECT if the cursor was set to an incorrect place for stream blocks.
  2194.  
  2195. 2. ECTL_SETPOSITION and ECTL_SETSTRING do not reset block selection flag at once, but only if continuing selection shows the cursor positioned in incorrect place.
  2196.  
  2197. zg 04.04.2012 23:02:53 +0200 - build 2589
  2198.  
  2199. 1. correction of 2589.
  2200.  
  2201. zg 04.04.2012 21:49:33 +0200 - build 2588
  2202.  
  2203. 1. ECTL_SETPOSITION updates LeftPos to the correct value at once. else ECTL_GETINFO could get incorrect data.
  2204.  
  2205. zg 04.04.2012 19:25:15 +0200 - build 2587
  2206.  
  2207. 1. highly experimental. invoking other FCTL_* does not lead to FCTL_CLOSEPANEL cancellation.
  2208.  
  2209. zg 04.04.2012 18:11:47 +0200 - build 2586
  2210.  
  2211. 1. ECF_TABMARKCURRENT misbehaved with non-zero LeftPos in editor.
  2212.  
  2213. w17 04.04.2012 18:22:17 +0400 - build 2585
  2214.  
  2215. 1. gcc 4.7.0 warnings, +build x64 far / x86 gcc
  2216.  
  2217. zg 04.04.2012 15:06:12 +0200 - build 2584
  2218.  
  2219. 1. correction of 2584. if an archive was opened bypassing AnalyseW then the cursor was not positioned after exit on FCTL_CLOSEPANEL.
  2220.  
  2221. zg 03.04.2012 17:12:52 +0200 - build 2583
  2222.  
  2223. 1. if FCTL_CLOSEPANEL was given an empty Param2 then the transition moved to the previous file panel, if it had existed, instead of fixed file panels.
  2224.  
  2225. zg 02.04.2012 13:53:24 +0200 - build 2582
  2226.  
  2227. 1. 0002060: Technical information on plugins in the disk menu
  2228.  
  2229. drkns 01.04.2012 15:09:54 +0200 - build 2581
  2230.  
  2231. 1. Transition to upper directory did not work for UNC paths.
  2232.  
  2233. zg 01.04.2012 15:02:04 +0200 - build 2580
  2234.  
  2235. 1. PFLAGS_SHORTCUT is added. it reflects OPIF_SHORTCUT's state.
  2236.  
  2237. 2. FCTL_GETPANELDIRECTORY always returns info on the current directory. You can learn whether it is safe to use by checking the presence of PFLAGS_SHORTCUT.
  2238.  
  2239. 3. warning.
  2240.  
  2241. svs 29.03.2012 14:03:42 +0400 - build 2579
  2242.  
  2243. 1. For Macro.Keyword(XXX,1), "Funcs","Consts","Vars" are unavailable because these are reserved words and they are indirectly related to macro areas.
  2244.  
  2245. 2. Macro.var|const parameters were misplaced and the response to "0" was not implemented (it gets the number of "objects")
  2246.  
  2247. w17 28.03.2012 23:45:50 +0400 - build 2578
  2248.  
  2249. 1. output 'set prefix>file' and 'set prefix | command' to cmd.exe
  2250.  
  2251. 2. warning
  2252.  
  2253. svs 28.03.2012 19:59:45 +0400 - build 2577
  2254.  
  2255. 1. Processed type is added (the second parameter) for Macro.Const() and Macro.Var()
  2256.     Type:
  2257.       2 - return the numeric value of the constant/variable type (0,1,2,3)
  2258.       3 - return the name of the constant/variable type ("unknown","integer","text","real")
  2259.  
  2260. 2. For Macro.Keyword, Type=4 is added - the function returns the constant/variable type (for example, "unknown","integer","text","real")
  2261.  
  2262. svs 28.03.2012 17:39:50 +0400 - build 2576
  2263.  
  2264. 1. Mantis#0002056: Error in returning from plugin.call / callplugin
  2265.    (from Maximus)
  2266.  
  2267. 2. Macro: Plugin.Cmdline is renamed to Plugin.Command
  2268.  
  2269. 3. Macro: MacroArea 'variable' is renamed to Macro.Area
  2270.  
  2271. 4. Macro: macro functions are added that allow getting information about some macro language elements:
  2272.  
  2273.      S=Macro.Keyword(Index[,Type])
  2274.        Returns a keyword indexed with Index (starting from 1). If Index=0 then the number of words is returned (numeric).
  2275.        Type:
  2276.          0 (by default) - Far Keywords (those from MKeywords array, for example, Far.Width, PPanel.OPIFlags etc.)
  2277.          1 - Area (those from MKeywordsArea array, for example, Shell, MainMenu etc.)
  2278.          2 - Macro Flags (those from MKeywordsFlags array, for example, DisableOutput, NoPluginPanels etc.)
  2279.          3 - Macro Operation (those starting from '$', for example, $if, $SelWord etc.)
  2280.  
  2281.      S=Macro.Func(Index[,Type])
  2282.        Returns information about a function indexed with Index (starting from 1). If Index=0 then the number of registered macro functions is returned (numeric).
  2283.        Type:
  2284.          0 (by default) - name
  2285.          1 - syntax
  2286.          2 - GUID of a plugin providing the function
  2287.  
  2288.      S=Macro.Const(Index[,Type])
  2289.        Returns information about a constant indexed with Index (starting from 1). If Index=0 then the number of constants is returned (numeric).
  2290.        Type:
  2291.          0 (by default) - the constant name
  2292.          1 - the value
  2293.  
  2294.      S=Macro.Var(Index[,Type])
  2295.        Returns information about a variable indexed with Index (starting from 1). If Index=0 then the number of variables is returned (numeric).
  2296.        Type:
  2297.          0 (by default) - the variable name
  2298.          1 - the value
  2299.  
  2300. 5. Macro: "$Text" is removed, use "print"
  2301.    Double-quoted text is temporarily left.
  2302.  
  2303.  
  2304. 6. In intMacroFunction array, the names of the functions are made CaseMixed...
  2305.  
  2306.  
  2307.  
  2308.    <ACHTUNG>
  2309.  
  2310.    Check your macros against these issues:
  2311.      1) Plugin.Cmdline -> Plugin.Command
  2312.      2) MacroArea -> to Macro.Area
  2313.      3) "$Text" is removed, use "print"
  2314.  
  2315.    </ACHTUNG>
  2316.  
  2317.  
  2318. w17 28.03.2012 16:27:50 +0400 - build 2575
  2319.  
  2320. 1. Mantis#1506: Regexps cannot be used in backwards search
  2321.  
  2322. drkns 26.03.2012 13:20:06 +0200 - build 2574
  2323.  
  2324. 1. A typo in 2453.1
  2325.  
  2326. zg 25.03.2012 20:59:15 +0200 - build 2573
  2327.  
  2328. 1. when processing shift-f2, OPM_TOPLEVEL was returned earlier for the first file, and OPM_TOPLEVEL|OPM_SILENT for the next ones.
  2329.    now there is plugin-wise separation. OPM_SILENT is added starting from the second file being processed by a particular plugin.
  2330.  
  2331. zg 25.03.2012 19:11:55 +0200 - build 2572
  2332.  
  2333. 1. OpenW returns NULL if the panel is not created. PANEL_STOP - if the panel is created but further processing has to be cancelled. (HANDLE)-2 is not processed intentionally.
  2334.    all native plugins are broken.
  2335.  
  2336. 2. AnalyseW returns NULL if the format has not been recognized. INVALID_HANDLE_VALUE is also considered as a recognized format now.
  2337.    all native plugins are broken.
  2338.  
  2339. zg 25.03.2012 17:30:47 +0200 - build 2571
  2340.  
  2341. 1. FSF::qsort is removed. FSF::qsortex is renamed to FSF::qsort and __cdecl is replaced with WINAPI.
  2342.    all native plugins are broken.
  2343.  
  2344. 2. FSF::bsearch is changed. __cdecl is replaced with WINAPI. additional 'user' parameter is passed to the compare function.
  2345.    all native plugins are broken.
  2346.  
  2347. 3. FSF::Reserved is removed.
  2348.    all native plugins are broken.
  2349.  
  2350. zg 25.03.2012 14:58:20 +0200 - build 2570
  2351.  
  2352. 1. correction of 2567.
  2353.  
  2354. drkns 25.03.2012 14:15:24 +0200 - build 2569
  2355.  
  2356. 1. warning.
  2357.  
  2358. 2. api: constant CURRENT_EDITOR == -1 for EditorControl.
  2359.  
  2360. zg 25.03.2012 04:17:02 +0200 - build 2568
  2361.  
  2362. 1. DM_LISTINFO implementation is fixed in the wrapper.
  2363.  
  2364. zg 25.03.2012 02:23:52 +0200 - build 2567
  2365.  
  2366. 1. StructSize field is added to the following structures:
  2367.    FarListUpdate
  2368.    FarListInsert
  2369.    FarListGetItem
  2370.    FarListPos
  2371.    FarListFind
  2372.    FarListDelete
  2373.    FarListInfo
  2374.    FarListItemData
  2375.    FarListTitles
  2376.    FarDialogItemColors
  2377.    FarDialogItemData
  2378.    OpenDlgPluginData
  2379.    FarGetDialogItem
  2380.    all native plugins are broken.
  2381.  
  2382. svs 23.03.2012 17:09:23 +0400 - build 2566
  2383.  
  2384. 1. Mantis#0000881: Incorrect $AKey functioning.
  2385.  
  2386. drkns 23.03.2012 13:57:12 +0200 - build 2565
  2387.  
  2388. 1. Correction of 2564.
  2389.  
  2390. 2. Warnings.
  2391.  
  2392. svs 22.03.2012 16:08:04 +0400 - build 2564
  2393.  
  2394. 1. a minor fix to get rid of calling GeneralCfg
  2395.  
  2396. 2. ReadConfig() call is moved "higher".
  2397.  
  2398. 3. sqlite 3.7.11
  2399.  
  2400. svs 22.03.2012 14:24:38 +0400 - build 2563
  2401.  
  2402. 1. Mantis#0002053: Some <RCtrl + LAlt + key> combinations malfunction
  2403.  
  2404. svs 22.03.2012 12:35:09 +0400 - build 2562
  2405.  
  2406. 1. Preparing to the tree file storing theme - new dialog "Tree settings".
  2407.  
  2408. 2. "Auto change folder" option moved from "Panel settings" to the new dialog "Tree settings".
  2409.  
  2410. 3. The tree is now stored in tree3.far file (its "structure" is unchanged so far), and the cache is in tree3.cache directory.
  2411.  
  2412. 4. tree3.cache directory is now placed in LocalProfilePath (earlier in %FARHOME%)
  2413.  
  2414. svs 20.03.2012 13:31:49 +0400 - build 2561
  2415.  
  2416. 1. Fix for 2557 (regarding syslog.cpp)
  2417.  
  2418. 2. Mantis#0001483: Make Dlg.GetValue() parameters optional
  2419.  
  2420.    Dlg.GetValue()==Dlg.GetValue(-1)
  2421.  
  2422. 3. Mantis#0001903: Plugin.Menu(guid,menuGuid)
  2423.  
  2424.    <ACHTUNG>
  2425.  
  2426.    Plugin.Prefix is renamed to Plugin.Cmdline
  2427.  
  2428.    </ACHTUNG>
  2429.  
  2430. svs 20.03.2012 11:17:53 +0400 - build 2560
  2431.  
  2432. 1. Fix for 2557
  2433.  
  2434. zg 20.03.2012 03:51:54 +0200 - build 2559
  2435.  
  2436. 1. ECTL_TURNOFFMARKINGBLOCK is removed. required actions are taken automatically for all ECTL_* changing anything in the editor.
  2437.  
  2438. zg 20.03.2012 02:51:44 +0200 - build 2558
  2439.  
  2440. 1. rollback of 2551.
  2441.  
  2442. 2. KMFLAGS_SAVEMACRO is removed.
  2443.  
  2444. zg 20.03.2012 02:36:49 +0200 - build 2557
  2445.  
  2446. 1. Private field in PluginStartupInfo.
  2447.  
  2448. zg 19.03.2012 19:43:07 +0200 - build 2556
  2449.  
  2450. 1. shortcuts and plugin history processing is redone.
  2451.    now following a shortcut of a history item always causes OpenW(OPEN_SHORTCUT,...). Data points to OpenShortcutInfo.
  2452.    in order to plugin folders get to history and shortcuts, it is necessary to specify OPIF_SHORTCUT flag in OpenPanelInfo.Flags.
  2453.    FCTL_GETPANELDIRECTORY for a plugin panel without OPIF_SHORTCUT flag returns 0.
  2454.  
  2455. drkns 19.03.2012 14:01:43 +0200 - build 2555
  2456.  
  2457. 1. Mantis#0002051: Error in copying to a CentOS-5.4 system's network share.
  2458.  
  2459. 2. A couple of issues in the copier.
  2460.  
  2461. zg 18.03.2012 01:23:01 +0200 - build 2554
  2462.  
  2463. 1. FAR also closes plugin panel automatically if OpenPlanelInfo.CurDir==L"\\".
  2464.  
  2465. 2. correction of 2553.
  2466.  
  2467. svs 17.03.2012 15:17:38 +0400 - build 2553
  2468.  
  2469. 1. Since Mantis#1840, global variables and constants are written to DB.
  2470.    Global variables must get to the "storage" in 2 ways only:
  2471.     a) via farconfig file
  2472.     b) via msave() macrofunction.
  2473.  
  2474.    http://forum.farmanager.com/viewtopic.php?p=89561#p89561 ∩.1
  2475.  
  2476.    The code of the KeyMacro::WriteVarsConsts() function is "hidden" so far.
  2477.  
  2478. svs 17.03.2012 13:43:33 +0400 - build 2552
  2479.  
  2480. 1. Macro: bug $SelWord
  2481.    macro:post ShiftF4 t e s t Enter t e s t $SelWord msgbox("","Not selected") Space Left $SelWord msgbox("","Selected")
  2482.  
  2483.    http://forum.farmanager.com/viewtopic.php?p=89561#p89561  ∩.5
  2484.  
  2485. zg 16.03.2012 20:06:10 +0200 - build 2551
  2486.  
  2487. 1. OPM_SHORTCUT is added. it is passed to AnalyseW when following a shortcut or a history item.
  2488.  
  2489. svs 16.03.2012 10:56:28 +0400 - build 2550
  2490.  
  2491. 1. Mantis#0001483: Make Dlg.GetValue() parameters optional
  2492.  
  2493.    V=Dlg.GetValue([Pos[,InfoID]])
  2494.  
  2495.    If the parameter(s) are not specified then it is implied that:
  2496.      Pos - returns values from the current focused item
  2497.      InfoID - the item value (0)
  2498.  
  2499. svs 15.03.2012 10:20:11 +0400 - build 2549
  2500.  
  2501. 1. Far.Cfg.Get("System.KnownIDs", "Network")
  2502.    returns garbage
  2503.    If the field is GeneralConfig::TYPE_BLOB and this is not "System.KnownIDs", then Far.Cfg.Get() sets Far.Cfg.Err error (macro constant) to 1
  2504.  
  2505. zg 15.03.2012 04:15:06 +0200 - build 2548
  2506.  
  2507. 1. in 2351, transition to file panel from history was broken.
  2508.  
  2509. zg 15.03.2012 02:17:13 +0200 - build 2547
  2510.  
  2511. 1. in 2036, transition to nearest accessible folder in folder links was broken.
  2512.  
  2513. zg 14.03.2012 23:16:28 +0200 - build 2546
  2514.  
  2515. 1. the following options available to plugins: FSSF_INTERFACE/"ShowMenuBar", FSSF_DIALOG/"EditBlock", FSSF_DIALOG/"EULBsClear", FSSF_DIALOG/"DelRemovesBlocks", FSSF_PANELLAYOUT/"ColumnTitles", FSSF_PANELLAYOUT/"StatusLine", FSSF_PANELLAYOUT/"SortMode".
  2516.  
  2517. svs 13.03.2012 15:12:25 +0400 - build 2545
  2518.  
  2519. 1. Help updated
  2520.  
  2521. 2. Restoring a lost option (on drag&drop) in confirmations dialog...
  2522.  
  2523. 3. Help for MaskGroupsSettings
  2524.  
  2525. zg 13.03.2012 12:20:04 +0200 - build 2544
  2526.  
  2527. 1. FSSF_SCREEN/"KeyBar" option available to plugins.
  2528.  
  2529. svs 13.03.2012 11:16:01 +0400 - build 2543
  2530.  
  2531. 1. DMODE_NOPLUGINS is added to PluginManager::CallPlugin and PluginManager::CallPluginItem
  2532.  
  2533. 2. Macro: renamed: Plugin.Call -> Plugin.Menu, Plugin.Int -> Plugin.Call
  2534.  
  2535. 3. Macro: N=Plugin.Exist(Guid) macrofunction is added
  2536.    Returns: 0 - there's no plugin with Guid identifier, 1 - there is such a plugin.
  2537.  
  2538. zg 13.03.2012 01:52:57 +0200 - build 2542
  2539.  
  2540. 1. FSSF_CONFIRMATIONS/"RemoveConnection" option available to plugins.
  2541.  
  2542. zg 13.03.2012 01:09:42 +0200 - build 2541
  2543.  
  2544. 1. As it had been promised, ACTL_GETSYSWORDDIV, ACTL_GETSYSTEMSETTINGS, ACTL_GETPANELSETTINGS, ACTL_GETINTERFACESETTINGS,
  2545.    ACTL_GETCONFIRMATIONS, ACTL_GETDESCSETTINGS, ACTL_GETPLUGINMAXREADDATA ACTL_GETDIALOGSETTINGS are removed.
  2546.    plugins not prepared to this in time may be broken.
  2547.  
  2548. svs 12.03.2012 21:30:41 +0400 - build 2540
  2549.  
  2550. 1. Mantis#0001903: Plugin.Menu(guid,menuGuid)
  2551.    (from Maximus)
  2552.  
  2553.      N=Plugin.Call(Guid[,MenuGuid])
  2554.        Similar to plugin call from plugins menu with F11 with no hotkeys definition or plugin search needed in the list.
  2555.      N=Plugin.Config(Guid[,MenuGuid])
  2556.        Similar to plugin call from "Plugin parameters" menu with no hotkeys definition or plugin search needed in the list.
  2557.        Panels only.
  2558.      N=Plugin.Prefix(Guid,Command)
  2559.        Similar to plugin call with a prefix from panels with no storing/clearing/restoring current command line contents needed.
  2560.      N=Plugin.Int(Guid[,Item])
  2561.        an alias for callplugin
  2562.  
  2563.    mmode(3) doen not influence to these functions (except for Plugin.Int)
  2564.  
  2565.    <ACHTUNG>
  2566.  
  2567.    Debugging in process...
  2568.  
  2569.    </ACHTUNG>
  2570.  
  2571. 2. mmode(3) is on by default!
  2572.  
  2573. zg 12.03.2012 14:02:00 +0200 - build 2539
  2574.  
  2575. 1. a new flag is added, WIF_MODAL. ACTL_GETWINDOWINFO also returns information on modal windows. ACTL_GETWINDOWCOUNT is the summary windows count.
  2576.  
  2577. zg 12.03.2012 05:30:07 +0200 - build 2538
  2578.  
  2579. 1. EditorControl(RealId,...) did not work for modal editors.
  2580.  
  2581. w17 12.03.2012 00:04:46 +0400 - build 2537
  2582.  
  2583. 1. correction of 2536
  2584.  
  2585. 2. M#2049: Autocompletion does not work if the folder name contains spaces
  2586.  
  2587. w17 11.03.2012 14:38:39 +0400 - build 2536
  2588.  
  2589. 1. M#2048: Search in directories containing ";"
  2590.  
  2591. w17 09.03.2012 11:31:30 +0400 build - 2535
  2592.  
  2593. 1. M#2045 - Win+Up does not maximize the FAR window
  2594.  
  2595. w17 07.03.2012 23:39:00 +0400 build - 2534
  2596.  
  2597. 1. the cause of crash is formally eliminated. what the code doe is a secret for me
  2598.  
  2599. drkns 07.03.2012 15:06:24 +0200 - build 2533
  2600.  
  2601. 1. Now GuardLastError class also stores ntstatus.
  2602.  
  2603. w17 07.03.2012 09:12:30 +0400 - build 2532
  2604.  
  2605. 1. correction in 2531
  2606.  
  2607. drkns 06.03.2012 19:31:53 +0200 - build 2531
  2608.  
  2609. 1. A workaround for a bug in ShellExecuteEx.
  2610.  
  2611. zg 06.03.2012 17:53:49 +0200 - build 2530
  2612.  
  2613. 1. if the cursor was hidden, alt-up could be broken beyond lines and in tabulation spaces.
  2614.  
  2615. 2. correction of 2525 for vertical blocks old behaviour.
  2616.  
  2617. zg 06.03.2012 17:31:05 +0200 - build 2529
  2618.  
  2619. 1. rollback of 2524.
  2620.  
  2621. drkns 06.03.2012 15:07:46 +0200 - build 2528
  2622.  
  2623. 1. From Tim Sobolev: search in mask groups menu.
  2624.  
  2625. w17 06.03.2012 14:50:05 +0400 - build 2527
  2626.  
  2627. 1. Unicode .hlf file reading error
  2628.  
  2629. drkns 06.03.2012 10:46:25 +0200 - build 2526
  2630.  
  2631. 1. In some cases the necessary width of messages was calculated incorrectly.
  2632.  
  2633. zg 06.03.2012 04:46:05 +0200 - build 2525
  2634.  
  2635. 1. correction of 2357.1. the width of vertical block is calculated correctly. take into account it can be inexisting even if the vertical selection exists in the current line.
  2636.  
  2637. zg 06.03.2012 04:05:03 +0200 - build 2524
  2638.  
  2639. 1. vertical blocks redone. now block is bound to symbols instead of screen position.
  2640.  
  2641. zg 05.03.2012 20:23:08 +0200 - build 2523
  2642.  
  2643. 1. Cannot select zero width vertical block with editor.sel.
  2644.  
  2645. zg 05.03.2012 16:18:48 +0200 - build 2522
  2646.  
  2647. 1. 0002043: Editor.Sel(1,1) does not work in the editor in described situation
  2648.  
  2649. svs 05.03.2012 12:30:56 +0400 - build 2521
  2650.  
  2651. 1. Variables moved from Options into the separate ExecuteOptions structure
  2652.    strExcludeCmds and strHomeDir (cd ~) are added to ExecuteOptions
  2653.  
  2654. 2. Getting rid of GeneralCfg->GetValue() in execution code
  2655.  
  2656. svs 05.03.2012 11:48:02 +0400 - build 2520
  2657.  
  2658. 1. Mantis#0002041: DN_LISTHOTKEY - incorrect functioning in combo boxes
  2659.     Incorrect positioning is observed in dialogs when an item is chosen with a hotkey in a combo.
  2660.     The main problem is caused with the following one:
  2661.     "Modal::ExitCode = -1;" in "VMenu::DisplayObject()"
  2662.  
  2663.     Being chosen with a hotkey, ExitCode is set to a needed value in VMenu::CheckKeyHiOrAcc() function, then EndLoop loop finish flag is set.
  2664.     The plugin gets DN_LISTHOTKEY notification from VMenu::ProcessKey(). As the plugin has normally returned 'false', the code setting the position back into
  2665.     its previous value does not execute.
  2666.     After that, ExitCode is reset to -1 in VMenu::DisplayObject().
  2667.     Then, combo processing loop in Dialog::SelectFromComboBox() is finished, "Dest=ComboBox->Modal::GetExitCode();" position is acquired,
  2668.     which is already -1 ==> "ComboBox->SetSelectPos(OriginalPos,0);" is invoked (the plugin is not notified of that).
  2669.  
  2670.     The second problem: the plugin responded 'true' to DN_LISTHOTKEY.
  2671.     Here, the docs have to be updated, because the phrase "TRUE - plugin has processed the event." does not really clear things :-)
  2672.  
  2673. drkns 04.03.2012 21:22:30 +0200 - build 2519
  2674.  
  2675. 1. Correction of 2517.
  2676.  
  2677. drkns 04.03.2012 16:26:41 +0200 - build 2518
  2678.  
  2679. 1. A typo in 2453.
  2680.  
  2681. drkns 04.03.2012 14:08:07 +0200 - build 2517
  2682.  
  2683. 1. Continuation of 2488 - groups can contain other groups.
  2684.  
  2685. drkns 02.03.2012 23:46:55 +0200 - build 2516
  2686.  
  2687. 1. Correction of 2515.1.
  2688.  
  2689. drkns 02.03.2012 13:58:31 +0200 - build 2515
  2690.  
  2691. 1. A new command in FSF.ProcessName: PN_CHECKMASK - check validity of a mask. Also, a new flag: PN_SHOWERRORMESSAGE - show error messages.
  2692.  
  2693. 2. Microsoft has played a dirty trick by adding PS_PAUSED to shobjidl.h, so constants form PROGRESSTATE have TBPS_ prefix now.
  2694.  
  2695. 3. MSVC 11 compatibility.
  2696.  
  2697. 4. Rudiments of ARM build.
  2698.  
  2699. 5. Completion of STACKBOOKMARK -> SESSIONBOOKMARK.
  2700.  
  2701. svs 02.03.2012 09:16:43 +0400 - build 2514
  2702.  
  2703. 1. correction of build 2508
  2704.  
  2705. 2. Mantis#0002037: Garbage in MCTL_GETLASTERROR
  2706.  
  2707. 3. Mantis#0002039: Auto-starting macro recording bug
  2708.  
  2709. 4. Mantis#0002040: Ctrl. Ctrl. <key> Yes ShiftF9 does not delete a macro
  2710.  
  2711. drkns 02.03.2012 00:25:26 +0200 - build 2513
  2712.  
  2713. 1. Mantis#0002038 File panel highlighting is disabled with a clean profile
  2714.  
  2715. 2. FSF.ProcessName(PN_CMPNAMELIST) is now "complete" and capable of all Far features.
  2716.  
  2717. w17 01.03.2012 22:14:13 +0400 build - 2512
  2718.  
  2719. 1. correction of 2511 - getting rid of AI
  2720.  
  2721. w17 01.03.2012 19:16:09 +0400 - build 2511
  2722.  
  2723. 1. some AI when making a decision of saving file encoding
  2724.  
  2725. w17 01.03.2012 18:12:05 +0400 - build 2510
  2726.  
  2727. 1. MinGW gcc 4.5 build fixed
  2728.  
  2729. w17 01.03.2012 17:30:51 +0400 - build 2509
  2730.  
  2731. 1. continuation of 2504
  2732.  
  2733. drkns 01.03.2012 12:42:56 +0200 - build 2508
  2734.  
  2735. 1. from svs: correction of build 2507.
  2736.  
  2737. drkns 01.03.2012 11:46:15 +0200 - build 2507
  2738.  
  2739. 1. from svs: macros stopped running if the macro sequence ended with callplugin
  2740.  
  2741. w17 01.03.2012 12:37:57 +0400 - build 2506
  2742.  
  2743. 1. fixing text displaying after search for long lines/NO_WRAP/found=startline
  2744.  
  2745. svs 01.03.2012 09:13:01 +0400 - build 2505
  2746.  
  2747. 1. matching editor bookmarks STACKBOOKMARK -> SESSIONBOOKMARK
  2748.    (from samlyukov)
  2749.    http://forum.farmanager.com/viewtopic.php?p=85114#p85114
  2750.  
  2751. w17 01.03.2012 02:24:47 +0400 build - 2504
  2752.  
  2753. 1. if a database was not opened 'normally' Finalize() is done for each of its stmtXXXX,
  2754.    else it cannot be closed nor renamed correctly
  2755.  
  2756. 2. show Far database names (not plugins' ones) which have been opened 'abnormally' at startup
  2757.  
  2758. w17 29.02.2012 17:05:06 +0400 - build 2503
  2759.  
  2760. 1. a typo crashed the viewer when reverse search was performed
  2761.  
  2762. svs 29.02.2012 16:52:09 +0400 - build 2502
  2763.  
  2764. 1. Clipboard::InternalCopy() is added.
  2765.    It copies binary data between inner and system clipboards.
  2766.    It is used in clip(3|4) macrofunction.
  2767.  
  2768. 2. Clipboard::CopyHDROP() is given an ability of work with things other than the system clipboard.
  2769.  
  2770.  
  2771. drkns 29.02.2012 13:55:44 +0200 - build 2501
  2772.  
  2773. 1. A couple of minor issues.
  2774.  
  2775. svs 29.02.2012 12:41:31 +0400 - build 2500
  2776.  
  2777. 1. Continuation of 2498.
  2778.    Removing KeyMacros.CallPluginRules from the configuration in favor of mmode(3)
  2779.  
  2780. drkns 29.02.2012 09:42:16 +0200 - build 2499
  2781.  
  2782. 1. Continuation of 2493.
  2783.  
  2784. svs 29.02.2012 10:53:34 +0400 - build 2498
  2785.  
  2786. 1. Macro: mmode function is appended with Action = 3 (CallPluginEnableMacro)
  2787.    It lets enabling/disabling macros when the plugin is invoked with CallPlugin macrofunction.
  2788.      mmode(3,0) - disable
  2789.      mmode(3,1) - enable
  2790.      mmode(3,2) - switch the mode (swap)
  2791.    The previous value is returned.
  2792.    It influences the current macro sequence only.
  2793.    By default it is disabled.
  2794.  
  2795.    For example, let's draw in editor a small rectangle with DrawLine
  2796.    mmode(3,1) callplugin("C941E865-9C29-485C-99B3-0C710940F2D8","ShiftRight ShiftRight ShiftDown ShiftDown ShiftLeft ShiftLeft ShiftUp ShiftUp ShiftRight Esc")
  2797.  
  2798. drkns 28.02.2012 16:57:48 +0200 - build 2497
  2799.  
  2800. 1. Continuation of 2493.
  2801.  
  2802. w17 28.02.2012 14:09:10 +0400 - build 2496
  2803.  
  2804. 1. gcc build fix
  2805.  
  2806. drkns 27.02.2012 21:09:02 +0200 - build 2495
  2807.  
  2808. 1. Continuation of 2493 - using IFileIsInUse interface (benefits: ability of switching to locking app, ability of closing the file remotely).
  2809.  
  2810. 2. Corrections in Message dialog sizing: now buttons must be fitting the borders.
  2811.  
  2812. drkns 26.02.2012 23:36:01 +0200 - build 2494
  2813.  
  2814. 1. Correction of 2493.
  2815.  
  2816. drkns 26.02.2012 22:28:58 +0200 - build 2493
  2817.  
  2818. 1. If a file deletion attempt fails due to the file being locked by another process, now it is possible to find out the name of the process in some cases.
  2819.  
  2820. drkns 26.02.2012 10:40:09 +0200 - build 2492
  2821.  
  2822. 1. Continuation of 2488 - a group can be a regular expression.
  2823.  
  2824. drkns 25.02.2012 20:10:24 +0200 - build 2491
  2825.  
  2826. 1. A typo in 2470.
  2827.  
  2828. drkns 24.02.2012 21:11:56 +0200 - build 2490
  2829.  
  2830. 1. Optimization and simplification of lng reader.
  2831.  
  2832. drkns 24.02.2012 14:57:54 +0200 - build 2489
  2833.  
  2834. 1. Continuation of 2488.
  2835.  
  2836. drkns 24.02.2012 14:27:51 +0200 - build 2488
  2837.  
  2838. 1. New entity: "file mask groups" (Options - Groups of file masks).
  2839.    An arbitrary amount of file masks can form a named group.
  2840.    The name of the group in angle brackets ("<name>") can be used anywhere along with masks themselves.
  2841.  
  2842. svs 23.02.2012 14:18:24 +0400 - build 2487
  2843.  
  2844. 1. Correction of 2486
  2845.  
  2846. svs 23.02.2012 09:44:26 +0400 - build 2486
  2847.  
  2848. 1. Mantis#0000466: Extension of macro language with plugins
  2849.    Next step.
  2850.    Quite a bit is left to completion :-)
  2851.    It is supposed that plugincache.will contain a cache for macro function names
  2852.    provided by plugin (the format is the same as for prefixes): in order to skip loading plugins having
  2853.    ProcessMacroW() at start and loading macros.
  2854.  
  2855. drkns 22.02.2012 22:23:30 +0200 - build 2485
  2856.  
  2857. 1. in 1881, buffer cleaning with CopyToClipboard(0) was broken.
  2858.  
  2859. zg 22.02.2012 18:58:03 +0200 - build 2484
  2860.  
  2861. 1. correction of 2458. OPEN_FROMMACRO in PluginManager::CallPlugin.
  2862.  
  2863. zg 22.02.2012 18:45:43 +0200 - build 2483
  2864.  
  2865. 1. 0001410: Add a flag into OpenFilePluginW for archive operations recognition (ShiftF3)
  2866.    OPM_COMMANDS flag is added.
  2867.  
  2868. zg 22.02.2012 17:21:14 +0200 - build 2482
  2869.  
  2870. 1. 0002031: Automatic indentation does not inform plugins about line changed
  2871.  
  2872. drkns 22.02.2012 16:58:37 +0200 - build 2481
  2873.  
  2874. 1. Inner rearrangement.
  2875.  
  2876. zg 21.02.2012 19:51:28 +0200 - build 2480
  2877.  
  2878. 1. 0001972: ShiftHome and editor.sel(0,2)
  2879.  
  2880. 2. macro editing dialog is provided with history for sequence and description.
  2881.  
  2882. zg 21.02.2012 16:14:47 +0200 - build 2479
  2883.  
  2884. 1. FSSF_EDITOR is added. with "WordDiv" one can get the system's list of separators.
  2885.    ACTL_GETSYSWORDDIV will be deleted in the nearest future.
  2886.  
  2887. zg 21.02.2012 04:40:45 +0200 - build 2478
  2888.  
  2889. 1. continuation of 2328. now the names of the settings match those in DB.
  2890.    FSSF_SYSTEM and FSSF_PANEL are added.
  2891.    one can examine what is available by now in config.cpp::CFG.
  2892.    ACTL_GETSYSTEMSETTINGS, ACTL_GETPANELSETTINGS, ACTL_GETINTERFACESETTINGS, ACTL_GETCONFIRMATIONS,
  2893.    ACTL_GETPLUGINMAXREADDATA and ACTL_GETDIALOGSETTINGS will be deleted in the nearest future.
  2894.  
  2895. w17 20.02.2012 23:34:49 +0400 build - 2477
  2896.  
  2897. 1. Calling convention mismatch (yet another typo?)
  2898.  
  2899. drkns 20.02.2012 10:42:54 +0200 - build 2476
  2900.  
  2901. 1. Another typo.
  2902.  
  2903. drkns 20.02.2012 03:15:12 +0200 - build 2475
  2904.  
  2905. 1. A typo in 2474.
  2906.  
  2907. drkns 20.02.2012 02:17:59 +0200 - build 2474
  2908.  
  2909. 1. Rolling back 2470.2 so far - there are some issues.
  2910.  
  2911. drkns 19.02.2012 21:52:01 +0200 - build 2473
  2912.  
  2913. 1. And one more time.
  2914.  
  2915. drkns 19.02.2012 21:49:02 +0200 - build 2472
  2916.  
  2917. 1. Correction of 2470.
  2918.  
  2919. drkns 19.02.2012 21:18:57 +0200 - build 2471
  2920.  
  2921. 1. Mantis#0002028: Editor Search [All] - the menu treats ampersands as hotkeys
  2922.  
  2923. drkns 19.02.2012 20:23:52 +0200 - build 2470
  2924.  
  2925. 1. All functions provided to plugins are gathered now in plugapi/pluginA, rather than scattered all over the sources.
  2926.  
  2927. 2. Ibid - added a "protection" of calling from secondary threads to where it is disallowed.
  2928.  
  2929. svs 19.02.2012 14:51:36 +0400 - build 2469
  2930.  
  2931. 1. Mantis#0002026: after clip(1,""), clipboard is not cleared
  2932.  
  2933. zg 17.02.2012 20:42:35 +0200 - build 2468
  2934.  
  2935. 1. correction of 2460.1.
  2936.  
  2937. drkns 17.02.2012 19:36:26 +0200 - build 2467
  2938.  
  2939. 1. Correct handling of situation of "plugin trying to unload itself".
  2940.  
  2941. svs 17.02.2012 15:18:14 +0400 - build 2466
  2942.  
  2943. 1. $TextFooBar is not an error, although $FooBar is.
  2944.  
  2945.    The show-stopper is macro.cpp::KeyNameMacroToKey(). StrCmpNI is unnecessary there, StrCmpI is enough
  2946.  
  2947. drkns 17.02.2012 11:05:50 +0200 - build 2465
  2948.  
  2949. 1. Correction of 2463.
  2950.  
  2951. svs 17.02.2012 09:38:04 +0400 - build 2464
  2952.  
  2953. 1. Macro: env function got 2 optional parameters:
  2954.    S=Env(S[,Mode[,Value]])
  2955.      S - the name of an environment variable
  2956.      Mode:
  2957.         0 - get
  2958.         1 - set
  2959.      Value - the value
  2960.  
  2961.    For Mode=1, the previous value of S variable is returned
  2962.  
  2963.    Examples:
  2964.      1. Get the value of the environment variable Foo
  2965.         Env("Foo")
  2966.         Env("Foo",0)
  2967.         Env("Foo",0,whatever)
  2968.         Env("Foo",,whatever)
  2969.      2. Set the value of the environment variable Foo to "bar"
  2970.         Env("Foo",1,"Bar")
  2971.      3. Remove the environment variable Foo
  2972.         Env("Foo",1)
  2973.         Env("Foo",1,"")
  2974.      4. Set the value of the environment variable Foo to "0"
  2975.         Env("Foo",1,"0")
  2976.         Env("Foo",1,0)
  2977.  
  2978. drkns 16.02.2012 13:11:18 +0200 - build 2463
  2979.  
  2980. 1. Clearer representation of colors and file highlighting in xml.
  2981.  
  2982. zg 16.02.2012 04:04:19 +0200 - build 2462
  2983.  
  2984. 1. Now AnalyseW returns HANDLE. if the plugin does not accept the file, INVALID_HANDLE_VALUE must be returned. any other value tells FAR that the file is accepted.
  2985.    if eventually the plugin gets OpenW(OPEN_ANALYSE,...) then OpenAnalyseInfo.Handle will be equal to the value returned by AnalyseW.
  2986.    else CloseAnalyseW is passed, where CloseAnalyseInfo.Handle is also equal to the value returned by AnalyseW.
  2987.    plugins making use of AnalyseW will work incorrectly.
  2988.  
  2989. drkns 15.02.2012 22:28:03 +0200 - build 2461
  2990.  
  2991. 1. Colors configuration moved from generalconfig.db to colors.db.
  2992.  
  2993. zg 15.02.2012 04:49:56 +0200 - build 2460
  2994.  
  2995. 1. reworking of macro functions. now all parameters are optional and there's an unlimited count of parameters.
  2996.    excessive parameters are calculated but unused.
  2997.  
  2998. 2. callplugin can accept any number of parameters. OpenMacroInfo is changed. Count is the count of passed parameters.
  2999.    Values is a pointer to the array of parameters values.
  3000.    plugins making use of OPEN_FROMMACRO will work incorrectly.
  3001.  
  3002. drkns 14.02.2012 13:19:07 +0200 - build 2459
  3003.  
  3004. 1. Another correction of 2452.1.
  3005.  
  3006. zg 14.02.2012 03:46:37 +0200 - build 2458
  3007.  
  3008. 1. OPEN_FROMMACRO_MASK and OPEN_FROMMACROSTRING are removed. macro area identifier in least significant word is removed, there's MCTL_GETAREA for that.
  3009.    OPEN_FROMMACRO got new meaning.
  3010.    OpenInfo.Data receives a pointer to OpenMacroInfo. accordingly, one can distinguish situation without a parameter from passing a floating point number.
  3011.    plugins making use of OPEN_FROMMACRO will work incorrectly.
  3012.  
  3013. zg 14.02.2012 01:32:13 +0200 - build 2457
  3014.  
  3015. 1. gcc warnings.
  3016.  
  3017. drkns 13.02.2012 23:14:58 +0200 - build 2456
  3018.  
  3019. 1. Continuation of 2455.
  3020.  
  3021. drkns 13.02.2012 19:45:37 +0200 - build 2455
  3022.  
  3023. 1. Correction of white space displaying.
  3024.  
  3025. drkns 13.02.2012 18:35:36 +0200 - build 2454
  3026.  
  3027. 1. Correction of 2452.1
  3028.  
  3029. drkns 13.02.2012 15:34:21 +0200 - build 2453
  3030.  
  3031. 1. Eliminating printf-style format strings in language files.
  3032.    Now there are "insertions" instead: %1, %2, %3 etc.
  3033.    Insertions can be changed places (for languages with another word order in sentences).
  3034.  
  3035. 2. "Search for all occurrences" in the editor does search from the beginning of a file.
  3036.  
  3037. drkns 12.02.2012 19:34:30 +0200 - build 2452
  3038.  
  3039. 1. The search dialog in editor is provided with "All" button - search for all occurrences.
  3040.  
  3041. 2. TechInfo #18 (EditorF7Rules) is now 0 by default.
  3042.  
  3043. 3. Ctrl-A ("select all") combination is available in input lines.
  3044.  
  3045. zg 12.02.2012 15:26:20 +0200 - build 2451
  3046.  
  3047. 1. correction of 2443.
  3048.  
  3049. drkns 11.02.2012 20:13:59 +0200 - build 2450
  3050.  
  3051. 1. A couple of typos in 2449.
  3052.  
  3053. zg 11.02.2012 15:12:15 +0200 - build 2449
  3054.  
  3055. 1. DM_GETDLGITEM returns the history and mask name copies, instead of the reference to inner data.
  3056.  
  3057. 2. DM_SETDLGITEMSHORT does not set the history name and the mask.
  3058.  
  3059. 3. DM_GETDLGITEMSHORT does not return the history name and the mask.
  3060.  
  3061. 4. DN_EDITCHANGE/DN_DRAWDLGITEM accepts the copy of dialog item information in Param2.
  3062.  
  3063. zg 09.02.2012 21:01:34 +0200 - build 2448
  3064.  
  3065. 1. experimental: ECTL_INSERTTEXT is aware of '\n'. the line is added taking "Auto indent" setting into account, as opposed to '\r'.
  3066.  
  3067. drkns 09.02.2012 16:45:52 +0200 - build 2447
  3068.  
  3069. 1. In 2432, empty files copying was broken.
  3070.  
  3071. 2. Mantis#0002017: FAR does not display the contents of WM "common folders"
  3072.  
  3073. 3. Restoring the command line after CtrlG.
  3074.  
  3075. drkns 08.02.2012 20:15:12 +0200 - build 2446
  3076.  
  3077. 1. Correction of plugins unloading.
  3078.  
  3079. drkns 08.02.2012 18:45:54 +0200 - build 2445
  3080.  
  3081. 1. Correction of plugins unloading.
  3082.  
  3083. drkns 08.02.2012 16:43:20 +0200 - build 2444
  3084.  
  3085. 1. Correction of plugins unloading.
  3086.  
  3087. zg 08.02.2012 02:03:12 +0200 - build 2443
  3088.  
  3089. 1. In the case of plugin statically importing dll located in %FARHOME%, %FARHOME% absent in %PATH% and FAR launched from another folder, the plugin was not loaded.
  3090.  
  3091. zg 07.02.2012 02:49:54 +0200 - build 2442
  3092.  
  3093. 1. correction of 2439.1 and 2439.2 for the wrapper.
  3094.  
  3095. 2. ProcessViewerEvent and ProcessEditorEvent of ANSI plugins are passed only those events that exist in FAR 1.
  3096.  
  3097. zg 07.02.2012 01:20:05 +0200 - build 2441
  3098.  
  3099. 1. continuation of 2435. the screen was not always redrawn.
  3100.  
  3101. zg 06.02.2012 23:05:23 +0200 - build 2440
  3102.  
  3103. 1. correction of 2439.1 and 2439.2.
  3104.  
  3105. zg 06.02.2012 22:39:15 +0200 - build 2439
  3106.  
  3107. 1. ProcessEditorEventInfo is appended with EditorID field.
  3108.    accordingly, EE_GOTFOCUS, EE_KILLFOCUS and EE_CLOSE have Param equal to NULL.
  3109.    plugins using these events will work incorrectly.
  3110.  
  3111. 2. Γ ProcessViewerEventInfo is appended with ViewerID field.
  3112.    accordingly VE_GOTFOCUS, VE_KILLFOCUS and VE_CLOSE have Param equal to NULL.
  3113.    plugins using these events will work incorrectly.
  3114.  
  3115. 3. correction of 2438.
  3116.  
  3117. zg 06.02.2012 21:16:55 +0200 - build 2438
  3118.  
  3119. 1. EE_CHANGE event is added for the editor. It is sent when text is changed in the editor. Param is the pointer to EditorChange.
  3120.    EditorChange.Type - the type of the event: the line has changed, added or removed.
  3121.    EditorChange.StringNumber - the number of changed/added/removed line.
  3122.    EditorControl called from this event returns FALSE.
  3123.  
  3124. drkns 06.02.2012 15:56:52 +0200 - build 2437
  3125.  
  3126. 1. Correction of 2428.
  3127.  
  3128. 2. "[ ] Clear R/O attribute from CD files" option is removed, the attribute is always reset. FSS_CLEARROATTRIBUTE is removed too.
  3129.  
  3130. w17 06.02.2012 16:23:04 +0400 - build 2436
  3131.  
  3132. 1. debug build recovered
  3133.  
  3134. 2. cosmetic
  3135.  
  3136. zg 06.02.2012 01:56:06 +0200 - build 2435
  3137.  
  3138. 1. EEREDRAW_CHANGE and EEREDRAW_LINE events are removed. EEREDRAW_ALL is always sent.
  3139.  
  3140. drkns 04.02.2012 23:56:49 +0200 - build 2434
  3141.  
  3142. 1. More stuff on crashes when unloading plugins.
  3143.  
  3144. drkns 04.02.2012 17:37:35 +0200 - build 2433
  3145.  
  3146. 1. As it turned out, plugin unloading on exception always crashed FAR.
  3147.    On the side, crashes at unloading plugins opened on a panel must have been fixed.
  3148.  
  3149. 2. Mantis#0002011: Cannot open a shared client volume in a terminal session.
  3150.  
  3151. drkns 03.02.2012 21:43:07 +0200 - build 2432
  3152.  
  3153. 1. "Correct" wiping of sparse files - allocated parts are the only ones wiped.
  3154.  
  3155. 2. In connection with #1, - simplification of similar code in the copier. It needs checking whether nothing is broken :)
  3156.  
  3157. w17 02.02.2012 12:44:18 +0400 - build 2431
  3158.  
  3159. 1. Continuation of Mantis#1953
  3160.  
  3161. 2. Fixed 'set /?'
  3162.  
  3163. drkns 01.02.2012 20:20:46 +0200 - build 2430
  3164.  
  3165. 1. In 2427, EOL glyphs were misplaced.
  3166.  
  3167. 2. Warnings.
  3168.  
  3169. zg 01.02.2012 12:58:16 +0200 - build 2429
  3170.  
  3171. 1. rollback of 2427.1 because ACTL_GETWINDOWINFO and WindowInfo.Id already exist.
  3172.  
  3173. drkns 31.01.2012 22:22:18 +0200 - build 2428
  3174.  
  3175. 1. Correct console mode is forced after plugin functions calls.
  3176.  
  3177. drkns 31.01.2012 13:32:28 +0200 - build 2427
  3178.  
  3179. 1. Mantis#0001179: API needed for obtaining the handle of the current dialog.
  3180.    ACTL_GETCURRENTWINDOW command is added. If a dialog is opened then its handle is returned, 0 otherwise.
  3181.  
  3182. 2. "[ ] Show white space" checkbox in editor settings is 3-state now: [?] - show spaces, tabulation and EOF, [x] - show also EOL.
  3183.    In API - EOPT_SHOWLINEBREAK, ESPT_SHOWWHITESPACE(1|2)
  3184.  
  3185. w17 28.01.2012 23:07:20 +0400 - build 2426
  3186.  
  3187. 1. Mantis#2000 - XML Error (0,0) -- half step back
  3188.  
  3189. t-rex 28.01.2012 19:03:49 +0200 - build 2425
  3190.  
  3191. 1. PCTL_FINDPLUGIN with PFM_MODULENAME can work with relative paths now.
  3192.  
  3193. drkns 27.01.2012 22:21:21 +0200 - build 2424
  3194.  
  3195. 1. Correction of PCTL_GETPLUGININFORMATION.
  3196.  
  3197. drkns 27.01.2012 19:46:03 +0200 - build 2423
  3198.  
  3199. 1. Mantis#0002002: Far3 cannot enter folders on CD-ROM discs.
  3200.  
  3201. drkns 27.01.2012 17:01:23 +0200 - build 2422
  3202.  
  3203. 1. Mantis#0002005: Network shares are inaccessible.
  3204.  
  3205. svs 27.01.2012 18:17:51 +0400 - build 2421
  3206.  
  3207. 1. Removing dependency of plugin.hpp and frame.hpp (WTYPE_* and MODALTYPE_*)
  3208.  
  3209. 2. Mantis#0001999: Delegate FileSizeToStr() function to plugins
  3210.    FSF is appended with FormatFileSize() function
  3211.    (analogous to Size2Str in macros)
  3212.  
  3213.    size_t WINAPI FormatFileSize(unsigned __int64 Size, int Width, FARFORMATFILESIZEFLAGS Flags, wchar_t *Dest, size_t DestSize);
  3214.  
  3215.    Here:
  3216.      Size       - formatting size
  3217.      Width      - required width. -1 - "as much as possible". negative value allows left indentation
  3218.      Flags      - one of the following values defined in FARFORMATFILESIZEFLAGS:
  3219.          FFFS_COMMAS            Insert the separator between thousands
  3220.          FFFS_FLOATSIZE         Show file size Windows Explorer style (i.e. 999 bytes are shown as 999, while 1000 bytes are shown as 0.97 K)
  3221.          FFFS_SHOWBYTESINDEX    Show B,K,M,G,T,P,E suffixes
  3222.          FFFS_ECONOMIC          Economy mode, a space before file size suffix is not shown (i.e. 0.97K)
  3223.          FFFS_THOUSAND          Use 1000 divisor instead of 1024
  3224.          FFFS_MINSIZEINDEX      Minimal index allowed at formatting
  3225.                                 The index is specified in the least significant byte and can take values 0, 1, 2 or 3 (K,M,G,T),
  3226.                                 For example, 1 - "size is at least in megabytes"
  3227.      Dest       - destination buffer
  3228.      DestSize   - how many characters "fits" in Dest
  3229.  
  3230.    The function returns the size (with trailing 0) of the resulting string.
  3231.    Set Dest = nullptr or DestSize = 0 to get the required size.
  3232.  
  3233. drkns 27.01.2012 15:01:22 +0200 - build 2420
  3234.  
  3235. 1. Mantis#0002000: Far.exe /export creates a file with 0A lines separator.
  3236.  
  3237. drkns 27.01.2012 09:58:17 +0200 - build 2419
  3238.  
  3239. 1. PCTL_[FORCED]LOADPLUGIN now return the handle of a loaded plugin or 0 on error, as before.
  3240.  
  3241. svs 27.01.2012 09:15:50 +0400 - build 2418
  3242.  
  3243. 1. Macro: a new macrofunction for number formatting (for example, the size of a file) - on Mantis#0001999
  3244.  
  3245.     S=Size2Str(Size,Flags[,Width])
  3246.  
  3247.    here:
  3248.  
  3249.     Size  - what has to be formatted
  3250.     Flags - formatting options
  3251.             0x0010000000000000 - S2S_SHOWBYTESINDEX
  3252.                                  Show suffixes:
  3253.                                     B - for bytes (also without a suffix)
  3254.                                     K - for kilobytes
  3255.                                     M - for megabytes
  3256.                                     G - for gigabytes
  3257.                                     T - for terabytes
  3258.                                     P - for petabytes
  3259.                                     E - for exabytes
  3260.             0x0800000000000000 - S2S_COMMAS
  3261.                                  Insert thousands separator
  3262.                                  "Interface/FormatNumberSeparators" configuration value is used
  3263.                                  or Windows LOCALE_STHOUSAND & LOCALE_SDECIMAL if FormatNumberSeparators is unspecified.
  3264.             0x0080000000000000 - S2S_FLOATSIZE
  3265.                                  Show file size in Windows Explorer style
  3266.                                  (i.e. 999 bytes are shown as 999, while 1000 bytes are shown as 0.97 K)
  3267.             0x0040000000000000 - S2S_ECONOMIC
  3268.                                  Economy mode, a space before file size suffix is not shown (i.e. 0.97K)
  3269.             0x0400000000000000 - S2S_THOUSAND
  3270.                                  Use 1000 divisor instead of 1024
  3271.             0x0020000000000000 - S2S_MINSIZEINDEX
  3272.                                  Minimal index allowed at formatting
  3273.                                  For example, 0x0020000000000001 - "the size is at least in megabytes"
  3274.                                  It can take values 0, 1, 2 or 3 (K,M,G,T)
  3275.     Width - formatting width (unused if 0 or unspecified)
  3276.             negative values allow left indentation:
  3277.             Size2Str(123,0, 5) ==> '  123'
  3278.             Size2Str(123,0,-5) ==> '123  '
  3279.  
  3280. 2. Macro: a new function for text "formatting": StrWrap.
  3281.      Formatting a text to given width with the use of the separator (breaking to lines with left indentation).
  3282.  
  3283.      S=StrWrap(Text,Width[,Break[,Flags]])
  3284.  
  3285.    here:
  3286.  
  3287.      Text  - text to be formatted
  3288.      Width - width
  3289.      Break - separator ('\n' if empty or omitted)
  3290.      Flags - additional "formatting options
  3291.              0x1 - the line is always wrapped to given width even if there is a longer word
  3292.                   (in this cases, it is split into pieces).
  3293.  
  3294.    If flag 0x1 is unspecified and there is a long word then the word takes space longer than given Width.
  3295.  
  3296.    Examples:
  3297.       StrWrap("The example of a text split into several lines.", 6)
  3298.    returns:
  3299.        1234567
  3300.       +------+
  3301.       |The
  3302.      >|example
  3303.       |of a
  3304.       |text
  3305.       |split
  3306.       |into
  3307.      >|several
  3308.       |lines.
  3309.       +------+
  3310.  
  3311.    adding a flag of 1
  3312.       StrWrap("The example of a text split into several lines.", 6,,1)
  3313.    returns:
  3314.        123456
  3315.       +------+
  3316.       |The
  3317.       |exampl
  3318.       |e of a
  3319.       |text
  3320.       |split
  3321.       |into
  3322.       |severa
  3323.       |l
  3324.       |lines.
  3325.       +------+
  3326.  
  3327.       StrWrap("The line containing a vvvvvvvveeeeeeeerrrrrrryyy long word", 9,,0x1)
  3328.    returns:
  3329.        123456789
  3330.       +---------+
  3331.       |The line
  3332.       |containin
  3333.       |g a
  3334.       |vvvvvvvve
  3335.       |eeeeeeerr
  3336.       |rrrrryyy
  3337.       |long
  3338.       |word
  3339.       +---------+
  3340.  
  3341.  
  3342. drkns 26.01.2012 23:03:50 +0200 - build 2417
  3343.  
  3344. 1. Support for detection and switching off virtual CDs in Windows 8.
  3345.  
  3346. drkns 26.01.2012 19:37:11 +0200 - build 2416
  3347.  
  3348. 1. Mantis#0002001: Incorrect displaying of path to virtual volume file in drive selection dialog.
  3349.  
  3350. drkns 26.01.2012 19:11:04 +0200 - build 2415
  3351.  
  3352. 1. On Mantis#01914:
  3353.  
  3354.      PCTL_GETPLUGINS: get the plugins' handles.
  3355.      Param2 - pointer to the buffer, Param1 - the size of the buffer.
  3356.      Passing 0 as Param1 or Param2 returns required size.
  3357.  
  3358. 2. Warnings.
  3359.  
  3360. drkns 26.01.2012 16:11:41 +0200 - build 2414
  3361.  
  3362. 1. On Mantis#01914:
  3363.  
  3364.      PCTL_FINDPLUGIN: returns the plugin's handle by name (Param2==PFM_MODULENAME) or GUID (Param2==PFM_GUID).
  3365.  
  3366.      PCTL_GETPLUGININFORMATION - obtain plugin's summary.
  3367.      Handle - the plugin's handle obtained with PCTL_FINDPLUGIN.
  3368.      Param1 - the size of the buffer receiving information.
  3369.      Param2 - buffer containing FarGetPluginInformation structure at its beginning.
  3370.  
  3371. 2. PCTL_UNLOADPLUGIN is changed - now Handle must be passed a handle received with PCTL_FINDPLUGIN, Param1 and Param2 are ignored.
  3372.  
  3373. drkns 26.01.2012 09:46:46 +0200 - build 2413
  3374.  
  3375. 1. Getting EMenu be callable to from disk menu.
  3376.  
  3377. 2. Warnings.
  3378.  
  3379. drkns 25.01.2012 09:57:40 +0200 - build 2412
  3380.  
  3381. 1. Wrong formatting of "short" and "named" date in panel modes.
  3382.  
  3383. drkns 24.01.2012 19:42:05 +0200 - build 2411
  3384.  
  3385. 1. The identifiers of plugins known to FAR (so far, those are Network and EMenu) are stored in DB and can be changed if needed.
  3386.  
  3387. drkns 22.01.2012 14:19:41 +0200 - build 2410
  3388.  
  3389. 1. Correction of 2381.
  3390.  
  3391. svs 21.01.2012 13:43:11 +0400 - build 2409
  3392.  
  3393. 1. Mantis#0001998: MCTL_ADDMACRO is broken
  3394.    (from Maximus)
  3395.  
  3396. drkns 19.01.2012 21:09:33 +0200 - build 2408
  3397.  
  3398. 1. Angle brackets (<>) around "Up", "Folder", "Symlink", "Junction" list items moved to the language files.
  3399.  
  3400. drkns 19.01.2012 12:58:47 +0200 - build 2407
  3401.  
  3402. 1. Mantis#0001995: During file editing some data was lost.
  3403.  
  3404. 2. Correction of 2405.
  3405.  
  3406. svs 19.01.2012 13:52:00 +0400 - build 2406
  3407.  
  3408. 1. Macro: KMFLAGS_SAVEMACRO fag is added.
  3409.    If the flag is specified then a macro added with MCTL_ADDMACRO command is stored in the storage (in DB).
  3410.    Note that the storage does not contain the ecomponents of MacroAddMacro structure: Callback and Id.
  3411.  
  3412. drkns 19.01.2012 09:07:54 +0200 - build 2405
  3413.  
  3414. 1. closeconsolerule is gone.
  3415.  
  3416. t-rex 18.01.2012 21:35:50 +0200 - build 2404
  3417.  
  3418. 1. And some more refactoring in configdb.
  3419.  
  3420. t-rex 18.01.2012 17:34:22 +0200 - build 2403
  3421.  
  3422. 1. Making the same hotkeys for RegExp in editor and viewer search dialogs.
  3423.  
  3424. drkns 17.01.2012 23:24:42 +0200 - build 2402
  3425.  
  3426. 1. Refactoring of configdb.
  3427.  
  3428. t-rex 17.01.2012 23:07:03 +0200 - build 2401
  3429.  
  3430. 1. Plugins can store their settings in localprofile too.
  3431.    SettingsControl(SCTL_CREATE, PSL_LOCAL)
  3432.  
  3433. 2. shortcuts settings moved to localprofile.
  3434.    Copy shortcuts.db from %FARPROFILE% to %FARLOCALPROFILE%.
  3435.  
  3436. svs 17.01.2012 16:16:32 +0400 - build 2400
  3437.  
  3438. 1. Mantis#0001988: EF_CREATENEW does not work
  3439.  
  3440. svs 17.01.2012 12:09:27 +0400 - build 2399
  3441.  
  3442. 1. Mantins#0001992: Crash on F4 in F11/AltShiftF9 if all item strings are filtered out
  3443.    (from Maximus)
  3444.  
  3445. zg 17.01.2012 03:18:47 +0200 - build 2398
  3446.  
  3447. 1. 0001990: DE-locale: cannot press *.
  3448.  
  3449. drkns 17.01.2012 00:54:25 +0200 - build 2397
  3450.  
  3451. 1. Warnings.
  3452.  
  3453. drkns 17.01.2012 00:19:46 +0200 - build 2396
  3454.  
  3455. 1. sqlite 3.7.10.
  3456.  
  3457. zg 16.01.2012 23:44:52 +0200 - build 2395
  3458.  
  3459. 1. 0001991: Parameters of AnalyzeW. OpenInfo->Data for OPEN_ANALYSE contains a pointer for AnalyseInfo.
  3460.  
  3461. 2. In gcc build, sqlite.c moved to the beginning so that C files are compiled before C++ ones.
  3462.    It gives compile speedup when 'make -j' is used.
  3463.  
  3464. drkns 16.01.2012 19:08:55 +0200 - build 2394
  3465.  
  3466. 1. History didn't work in macros.
  3467.  
  3468. svs 16.01.2012 11:30:20 +0400 - build 2393
  3469.  
  3470. 1. Correction of Mantis#0001972
  3471.  
  3472. svs 15.01.2012 21:51:12 +0400 - build 2392
  3473.  
  3474. 1. Mantis#0001989: Add Description field to Macro Settings dialog
  3475.  
  3476. drkns 15.01.2012 19:42:10 +0200 - build 2391
  3477.  
  3478. 1. Folder shortcuts can be named.
  3479.  
  3480. drkns 15.01.2012 19:16:05 +0200 - build 2390
  3481.  
  3482. 1. In some cases, folder shortcuts were not stored.
  3483.  
  3484. t-rex 15.01.2012 17:28:01 +0200 - build 2389
  3485.  
  3486. 1. And 2384 once more. Now an empty line is shown in the list too.
  3487.  
  3488. 2. ClearType configuration is on by default.
  3489.  
  3490. drkns 15.01.2012 17:18:52 +0200 - build 2388
  3491.  
  3492. 1. Mouse wheel did not work in plugin menus.
  3493.  
  3494. t-rex 15.01.2012 13:53:19 +0200 - build 2387
  3495.  
  3496. 1. Gosh, another error in 2384.
  3497.  
  3498. t-rex 15.01.2012 13:42:54 +0200 - build 2386
  3499.  
  3500. 1. More "consequences" of Mantis#1801 - http://forum.farmanager.com/viewtopic.php?p=88686#p88686.
  3501.  
  3502. 2. Also, some unused code is removed.
  3503.  
  3504. t-rex 15.01.2012 13:09:07 +0200 - build 2385
  3505.  
  3506. 1. Error in 2384.
  3507.  
  3508. t-rex 15.01.2012 12:53:32 +0200 - build 2384
  3509.  
  3510. 1. Dialogs history remembers an empty last item.
  3511.  
  3512. drkns 15.01.2012 11:31:09 +0200 - build 2383
  3513.  
  3514. 1. Calling EMenu on [Shift]RightClick in a tree.
  3515.  
  3516. drkns 15.01.2012 11:07:08 +0200 - build 2382
  3517.  
  3518. 1. Continuation of 2381: calling emenu in panels and on [Shift]Apps.
  3519.  
  3520. t-rex 15.01.2012 00:18:34 +0200 - build 2381
  3521.  
  3522. 1. On RighClick or ShiftRightClick, the EMenu plugin is automatically called for a file in panels.
  3523.    On other combinations like CtrlRightClick there is selection as before.
  3524.  
  3525. drkns 14.01.2012 19:30:10 +0200 - build 2380
  3526.  
  3527. 1. Fixing 2377.1 :)
  3528.  
  3529. 2. MacroAddMacro structure is placed in more optimal way in x64.
  3530.  
  3531. t-rex 14.01.2012 12:53:19 +0200 - build 2379
  3532.  
  3533. 1. Mantis#1985: Incorrect memory calculation for MCTL_GETLASTERROR.
  3534.  
  3535. t-rex 14.01.2012 11:37:20 +0200 - build 2378
  3536.  
  3537. 1. Not all needed StructSize were filled in the wrapper.
  3538.  
  3539. t-rex 13.01.2012 20:17:07 +0200 - build 2377
  3540.  
  3541. 1. Making "set | command" and "set > file" be passed to comspec.
  3542.  
  3543. 2. Only first macro in xml was imported.
  3544.  
  3545. t-rex 13.01.2012 19:20:54 +0200 - build 2376
  3546.  
  3547. 1. A minor change in API:
  3548.    MacroCheckMacroText is removed, MSSC_CHECK expects MacroSendMacroText.
  3549.    And a new command, MCTL_GETLASTERROR ->  Param1=size, Param2=MacroParseResult*.
  3550.    Needed size is returned.
  3551.  
  3552. 2. Due to 1, potential heap corruption in the wrapper is fixed.
  3553.  
  3554. svs 13.01.2012 17:47:47 +0400 - build 2375
  3555.  
  3556. 1. Get InfoList safe from the case when a plugin calls Info.PanelControl(FCTL_REDRAWPANEL) from
  3557.    ProcessViewerEventW in response to VE_READ which causes stack overflow :-(
  3558.    The scheme is following.
  3559.    VE_READ is fairly passed to the plugin once, but because InfoPanel is constantly recreating the viewer (if diz file exists),
  3560.    then multiple VE_READ appears with all those consequences.
  3561.  
  3562. w17 13.01.2012 17:45:10 +0400 - build 2374
  3563.  
  3564. 1. gcc build recovered
  3565.  
  3566. drkns 13.01.2012 14:24:42 +0200 - build 2373
  3567.  
  3568. 1. Adding some StructSize checks here and there.
  3569.  
  3570. svs 13.01.2012 16:18:16 +0400 - build 2372
  3571.  
  3572. 1. Mantis#0001982: Get FAR settings in a macro: Far.Cfg.Get
  3573.    Macro: added
  3574.     a function allowing to get common settings...
  3575.       V=Far.Cfg.Get(Key,Name)
  3576.     macro constant
  3577.       Far.Cfg.Err = 0, there was no errors after Far.Cfg.Get call.
  3578.                   = 1, an error (key or name don't exist or an internal error)
  3579.  
  3580.    So far, not all values can be obtained using Far.Cfg.Get(), config.cpp has to be redone.
  3581.  
  3582. 2. Again on "batteries" (see b.2297)
  3583.    Info panel automatic update is added in the case if it is visible and displaying of power state is on and visible.
  3584.    Automatic update on charge amount per cent is available in Vista and upper.
  3585.  
  3586. 3. SysLog is slightly updated
  3587.  
  3588. t-rex 12.01.2012 20:22:49 +0200 - build 2371
  3589.  
  3590. 1. Correction of 2368.
  3591.  
  3592. drkns 12.01.2012 20:04:46 +0200 - build 2370
  3593.  
  3594. 1. Correction of 2369.
  3595.  
  3596. drkns 12.01.2012 19:00:38 +0200 - build 2369
  3597.  
  3598. 1. Fix "far /? > file" and "far > file".
  3599.  
  3600. svs 12.01.2012 18:09:11 +0400 - build 2368
  3601.  
  3602. 1. Import diagnostics (constant, variable, macro)
  3603.    For example,
  3604.  
  3605.       Constant (5,13): <name> is empty or not found
  3606.  
  3607. svs 12.01.2012 16:26:01 +0400 - build 2367
  3608.  
  3609. 1. Mantis#0001655: Incorrect error message at macro parsing.
  3610.    Achtung: Don't forget that strings in macros are C-style.
  3611.            This means FAR expect control character after '\'.
  3612.            Also remember to use verbatim strings for paths
  3613.            (with '@' character before opening double quote) or duplicate '\'.
  3614.  
  3615.      Error  : panel.setpath(0,"HKEY_CURRENT_USER\Software")
  3616.      Correct: panel.setpath(0,"HKEY_CURRENT_USER\\Software")
  3617.      Correct: panel.setpath(0,@"HKEY_CURRENT_USER\Software")
  3618.  
  3619. drkns 11.01.2012 22:46:51 +0200 - build 2366
  3620.  
  3621. 1. After elevation, ntstatus is received from a child process together with lasterror.
  3622.  
  3623. t-rex 11.01.2012 22:25:49 +0200 - build 2365
  3624.  
  3625. 1. RegExp: \/ was not searched (if / was exactly the last character in the search line).
  3626.  
  3627. drkns 11.01.2012 21:50:32 +0200 - build 2364
  3628.  
  3629. 1. A couple of things in Message:
  3630.    - for messages with MSG_ERRORTYPE, F3 can show an additional error information ( win32 error code and text, nt status code and text)
  3631.    - on CtrlC the message content is copied into clipboard (header + lines + buttons) as for winapi MessageBox.
  3632.  
  3633. 2. Ibid: text replacement is removed for some types of errors.
  3634.  
  3635. t-rex 11.01.2012 21:53:39 +0200 - build 2363
  3636.  
  3637. 1. No 'action's accepted. Something common for all the import has to be invented.
  3638.    Empty-means-deletion is simplest and most logical, drop any other variants.
  3639.    For vars, consts and macro there's the 'text' tag now, it may be CDATA, if it's absent
  3640.    then deletion takes place.
  3641.      <variable name="%NAME%" type="%TYPE%"><text>%VALUE%</text></variable>
  3642.      <constant name="%NAME%" type="%TYPE%"><text>%VALUE%</text></constant>
  3643.      <macro area="%AREA%" key="%KEY%"><text>%SEQUENCE%</text></macro>
  3644.  
  3645. svs 11.01.2012 22:17:46 +0400 - build 2362
  3646.  
  3647. 1. Mantis#0001949: Macro call with AutoCompletion on
  3648.    Change in API!!!
  3649.  
  3650.    struct MacroAddMacro is appended with the Area field
  3651.    Now MCTL_ADDMACRO can add into areas other than 'common'
  3652.  
  3653. 2. In xml, "macro" element is renamed to "macros"
  3654.    http://forum.farmanager.com/viewtopic.php?p=88391#p88391
  3655.  
  3656. 3. Import/Export of macro variables, constants and sequences.
  3657.    action = "add|delete|ignore" is added
  3658.      <variable name="%NAME%" type="%TYPE%" action="%ACTION%">%VALUE%</variable>
  3659.      <constant name="%NAME%" type="%TYPE%" action="%ACTION%">%VALUE%</constant>
  3660.    if action is not given, "add" is implied
  3661.    "ignore" - the object is skipped at importing
  3662.    "delete" - the object is deleted from DB at importing
  3663.    %VALUE% may be CDATA
  3664.  
  3665. 4. The beginning of diagnostics in import.
  3666.    So far in macros - detection of an error cancels importing of macros into the database.
  3667.  
  3668. 5. Correction of TranslateKeyToVK.
  3669.    Internal INTERNAL_KEY_BASE_2 are translated to
  3670.    MENU_EVENT, FOCUS_EVENT and WINDOW_BUFFER_SIZE_EVENT
  3671.  
  3672. svs 11.01.2012 11:35:08 +0400 - build 2361
  3673.  
  3674. 1. Mantis#0001915: Indication of errors in macros at eval
  3675.    Macro: eval(,3) checks the macro sequence and returns a string value:
  3676.       1) an empty string - no errors
  3677.       2) 4 strings separated with '\n' explaining the error:
  3678.          1: line and position in the string (for example <Line 1, Pos 1>
  3679.          2: error message text (for example <Unrecognized keyword 'foo'>)
  3680.          3: the erroneous sequence snippet (for example <"foo">)
  3681.          4: arrow - the character with code \x2191
  3682.  
  3683.    msgbox with flag 8 (left align) is recommended for displaying the lines
  3684.      msgbox(,eval("blahblahblah",3),8)
  3685.  
  3686. 2. Some replacement of BOOL to bool
  3687.  
  3688. t-rex 11.01.2012 01:32:22 +0200 - build 2360
  3689.  
  3690. 1. Mantis#1968: Do not save settings if unchanged.
  3691.    Now it's only generalconfig.db which is always written.
  3692.  
  3693. drkns 10.01.2012 16:41:31 +0200 - build 2359
  3694.  
  3695. 1. Correction of 2327.
  3696.  
  3697. svs 10.01.2012 15:51:05 +0400 - build 2358
  3698.  
  3699. 1. Mantis#0001923: Crash at attempt of filter (CtrlI) editing after filter applied (CtrlAltF)
  3700.    (from Maximus)
  3701.  
  3702. 2. Mantis#0001921: Unreal lags in ECTL_ADDCOLOR
  3703.    (from Maximus)
  3704.  
  3705. 3. Mantis#0001917: Far crash with CurPos called for DI_LISTBOX
  3706.    (from Maximus)
  3707.  
  3708. svs 10.01.2012 15:31:57 +0400 - build 2357
  3709.  
  3710. 1. Mantis#0001945: Cannot move vertical block with the end of the line
  3711.    CurLine->GetSelection(...) is unapplicable to vertical blocks :-)
  3712.  
  3713. svs 10.01.2012 15:12:03 +0400 - build 2356
  3714.  
  3715. 1. Mantis#0001198: Bugs in Editor.Set
  3716.    Bugs in 12-th ("Word separators") and 16-th ("Allow editing files opened for writing") options.
  3717.  
  3718. svs 10.01.2012 12:58:46 +0400 - build 2355
  3719.  
  3720. 1. Mantis#0001972: ShiftHome and editor.sel(0,2)
  3721.    Returning ShiftHome behaviour as it had been before 1.7x build 1541.
  3722.    Now ShiftHome does not reset selection if the cursor is positioned to the beginning of the line.
  3723.  
  3724. 2. Macro: editor.sel(0,3) returned values from 0 (must be 1)
  3725.  
  3726. drkns 09.01.2012 17:14:54 +0200 - build 2354
  3727.  
  3728. 1. Mantis#0001975: FAR3 user menu eats hotkeys
  3729.  
  3730. w17 09.01.2012 17:15:14 +0400 build - 2353
  3731.  
  3732. 1. Mantis#1723,1927: CPU load when idle on VM
  3733.    (originated by sezal)
  3734.  
  3735. svs 07.01.2012 22:34:28 +0400 - build 2352
  3736.  
  3737. 1. Macro: Shell.AutoCompletion did not work, returning Dialog.AutoCompletion all the way
  3738.  
  3739. t-rex 07.01.2012 13:43:07 +0200 - build 2351
  3740.  
  3741. 1. Minor corrections of history.
  3742.  
  3743. w17 03.01.2012 23:23:11 +0400 build - 2350
  3744.  
  3745. 1. Mantis#1964: Viewer cannot find a text in UTF8 file
  3746.    This is not related to UTF-8, just a bug in text search
  3747.  
  3748. w17 03.01.2012 22:13:00 +0400 build - 2349
  3749.  
  3750. 1. Mantis#1966: Error in search displaying.
  3751.  
  3752. drkns 02.01.2012 22:26:12 +0200 - build 2348
  3753.  
  3754. 1. In 2214, mouse wheel handling in menu was broken.
  3755.  
  3756. 2. Warnings.
  3757.  
  3758. 3. Lng generator v1.3.
  3759.  
  3760. drkns 02.01.2012 15:48:46 +0200 - build 2347
  3761.  
  3762. 1. FSF.InputBox's int DestLength is replaced with size_t DestSize.
  3763.  
  3764. svs 31.12.2011 12:30:32 +0400 - build 2346
  3765.  
  3766. 1. Mantis#0001959: Error loading macros via MCTL_ADDMACRO
  3767.  
  3768. zg 31.12.2011 01:12:13 +0200 - build 2345
  3769.  
  3770. 1. infinite recursion when calling from GetOpenPluginInfo, for example, opening an archive with Multiarc.
  3771.  
  3772. t-rex 30.12.2011 14:25:35 +0200 - build 2344
  3773.  
  3774. 1. Mantis#1965: "A+" regular expression does not work.
  3775.    It didn't work just for capital letters.
  3776.  
  3777. 2. Debug build failure.
  3778.  
  3779. zg 30.12.2011 03:46:41 +0200 - build 2343
  3780.  
  3781. All native plugins that use FCTL_SETPANELDIR/FCTL_GETPANELDIR do not work.
  3782.  
  3783. 1. FCTL_GETPANELDIR->FCTL_GETPANELDIRECTORY. Param1 is the size of Param2. Param2 is a pointer to FarPanelDirectory.
  3784.    the result is the required size.
  3785.  
  3786. 2. FCTL_SETPANELDIR->FCTL_SETPANELDIRECTORY. Param1 is 0. Param2 is a pointer to FarPanelDirectory.
  3787.    non-zero value is returned if successful.
  3788.  
  3789. drkns 30.12.2011 00:54:46 +0200 - build 2342
  3790.  
  3791. 1. Alternative solution of 2335.1.
  3792.  
  3793. drkns 29.12.2011 19:43:12 +0200 - build 2341
  3794.  
  3795. 1. You've got the idea.
  3796.  
  3797. drkns 28.12.2011 13:15:35 +0200 - build 2340
  3798.  
  3799. 1. Fixing the broken.
  3800.  
  3801. drkns 27.12.2011 23:38:44 +0200 - build 2339
  3802.  
  3803. 1. Fixing the broken.
  3804.  
  3805. drkns 27.12.2011 21:24:05 +0200 - build 2338
  3806.  
  3807. 1. Summarizing http://forum.farmanager.com/viewtopic.php?t=5390, return History.Disable().
  3808.  
  3809. drkns 27.12.2011 16:03:21 +0200 - build 2337
  3810.  
  3811. 1. Mantis#0001961: Cannot open CentOS-5.4 network share
  3812.  
  3813. drkns 27.12.2011 11:19:34 +0200 - build 2336
  3814.  
  3815. 1. Fixing the broken.
  3816.  
  3817. drkns 26.12.2011 23:56:59 +0200 - build 2335
  3818.  
  3819. 1. Another bug in the copier. I'm curious of what will fail this time.
  3820.  
  3821. 2. Stripping trailing space characters in sources.
  3822.  
  3823. t-rex 26.12.2011 17:00:10 +0200 - build 2334
  3824.  
  3825. 1. Mantis#1957: Associations choice menu.
  3826.    Only descriptions are shown (if any), descriptions are not truncated by length in edit menu.
  3827.  
  3828. 2. xml -> farconfig
  3829.  
  3830. drkns 26.12.2011 16:31:23 +0200 - build 2333
  3831.  
  3832. 1. Corrections in InfoPanel.
  3833.  
  3834. zg 26.12.2011 14:47:18 +0200 - build 2332
  3835.  
  3836. 1. System.Executor\ExcludeCmds malfunction.
  3837.  
  3838. t-rex 25.12.2011 23:41:38 +0200 - build 2331
  3839.  
  3840. 1. No, we'd better return the old input mode, it has ever been that.
  3841.  
  3842. t-rex 25.12.2011 23:32:34 +0200 - build 2330
  3843.  
  3844. 1. Out of 2324, a bug showed up: console mode does not recover for output handles after external console apps start.
  3845.    Some apps zero them, which leads to hilarious bugs when next console programs are run.
  3846.    Also, more correct mode is set for the input handle, just in case.
  3847.  
  3848. drkns 25.12.2011 19:28:52 +0200 - build 2329
  3849.  
  3850. 1. QuickView: allocated size is correctly calculated for several hard links inside the directory. Experimental.
  3851.  
  3852. zg 25.12.2011 14:48:29 +0200 - build 2328
  3853.  
  3854. 1. experimental obtaining of confirmation settings via SettingsControl(...,SCTL_GET,...).
  3855.    Root - FSSF_CONFIRMATIONS, Name - L"CopyOverwrite", L"MoveOverwrite" etc.
  3856.  
  3857. drkns 25.12.2011 14:17:13 +0200 - build 2327
  3858.  
  3859. 1. "packed size" replaced with more correct "allocated size".
  3860. 2. In connection with #1, the changes in QuickView: real size == allocated size, the MFT stored files size is taken correctly.
  3861.  
  3862. zg 25.12.2011 13:43:10 +0200 - build 2326
  3863.  
  3864. 1. experimental obtaining of dialogs history via SettingsControl. it is similar to other types of history,
  3865.    except that the root is requested in this way:
  3866.      FarSettingsValue value={0,L"NewFolder"};
  3867.      root=Info.SettingsControl(Settings,SCTL_OPENSUBKEY,0,&value);
  3868.  
  3869. drkns 24.12.2011 23:50:51 +0200 - build 2325
  3870.  
  3871. 1. Mistype in 2324.
  3872.  
  3873. drkns 24.12.2011 21:39:08 +0200 - build 2324
  3874.  
  3875. 1. Mantis#0001953 - the 2nd attempt.
  3876.  
  3877. drkns 24.12.2011 19:34:24 +0200 - build 2323
  3878.  
  3879. 1. For "out of the box" plugins, Far 1/2 compatible default hotkeys are set in drive menu (once).
  3880.  
  3881. t-rex 24.12.2011 19:15:47 +0200 - build 2322
  3882.  
  3883. 1. Mantis#1955: Editing of macros.
  3884.  
  3885. drkns 24.12.2011 19:03:54 +0200 - build 2321
  3886.  
  3887. 1. GlobalInfo structure excessive zeroing (Mantis#0001956).
  3888.  
  3889. drkns 24.12.2011 18:53:03 +0200 - build 2320
  3890.  
  3891. 1. Rollback of Mantis#0001953.
  3892.  
  3893. svs 24.12.2011 20:18:35 +0400 - build 2319
  3894.  
  3895. 1. Mantis#0001953: cmd.exe excessive call
  3896.    (from Maximus)
  3897.  
  3898. svs 24.12.2011 19:22:19 +0400 - build 2318
  3899.  
  3900. 1. Corrections of several places that have seemed unacceptable to the analyzer...
  3901.  
  3902. 2. set USE_ANALYZE=1 switches the analyzer on (adds /analyze).
  3903.  
  3904. 3. Mantis#0001951: Incorrect InputRecord in DN_CONTROLINPUT event
  3905.    Correction: Bug: "Ctrl+A means CtrlShift+A"
  3906.  
  3907. svs 24.12.2011 15:33:15 +0400 - build 2317
  3908.  
  3909. 1. Mantis#0001951: Incorrect InputRecord in DN_CONTROLINPUT event
  3910.  
  3911. drkns 24.12.2011 12:59:03 +0200 - build 2316
  3912.  
  3913. 1. Mantis#0001954: copying a directory to "admin" folder fails
  3914.  
  3915. t-rex 24.12.2011 11:50:29 +0200 - build 2315
  3916.  
  3917. 1. BOOL -> bool in several places.
  3918.  
  3919. 2. Let's make vc10wrapper.cpp usable in plugins without copying.
  3920.  
  3921. drkns 23.12.2011 23:43:51 +0200 - build 2314
  3922.  
  3923. 1. vc10.asm redesign - <En|De>codePointer are replaced with stubs only if they are missing in OS.
  3924.  
  3925. t-rex 23.12.2011 12:49:15 +0200 - build 2313
  3926.  
  3927. 1. Mantis#1201: Far 2 does not open an URL.
  3928.  
  3929. 2. BOOL -> bool in several inner functions.
  3930.  
  3931. t-rex 23.12.2011 10:12:31 +0200 - build 2312
  3932.  
  3933. 1. Mantis#1952: Safe removal with Shift-Del does not work.
  3934.  
  3935. svs 22.12.2011 23:55:28 +0400 - build 2311
  3936.  
  3937. 1. Mantis#0001949: Macro call with AutoCompletion switched on
  3938.     1. Fixing <akey(1,0) returns a "smiley" instead of ShiftEnter>
  3939.     2. Removing "AutoCompletion" section, adding 2 others: "Shell.AutoCompletion" and "Dialog.AutoCompletion".
  3940.  
  3941. t-rex 22.12.2011 18:20:50 +0200 - build 2310
  3942.  
  3943. 1. RCtrl and RAlt were passed incorrectly in ANSI plugins panel.
  3944.  
  3945. w17 22.12.2011 16:50:49 +0400 build - 2309
  3946.  
  3947. 1. mistype in string constructor
  3948.  
  3949. svs 22.12.2011 16:29:40 +0400 - build 2308
  3950.  
  3951. 1. InfoPanel: Ctrl-digit combinations are removed.
  3952.    Define them with macros using Ctrl-F12 menu
  3953.  
  3954. drkns 22.12.2011 13:37:44 +0200 - build 2307
  3955.  
  3956. 1. More on info panel.
  3957.  
  3958. drkns 22.12.2011 11:04:18 +0200 - build 2306
  3959.  
  3960. 1. Correction of displaying of common size at copying.
  3961.  
  3962. 2. InfoPanel: computer info (if available), user info (if available), user access level (guest/user/admin).
  3963.  
  3964. t-rex 21.12.2011 21:24:04 +0200 - build 2305
  3965.  
  3966. 1. A couple of minor issues.
  3967.  
  3968. drkns 21.12.2011 20:58:55 +0200 - build 2304
  3969.  
  3970. 1. One more correction regarding to skipping of "." and ".." reading a directory.
  3971.  
  3972. drkns 21.12.2011 20:33:19 +0200 - build 2303
  3973.  
  3974. 1. Inner functions are partly refactored from 'const wchar_t*' to 'const string&' because string.CPtr() is already passed almost everywhere.
  3975.    This should reduce wcslen usage etc.
  3976.  
  3977. 2. Elevation works in encryption/decryption.
  3978.  
  3979. w17 21.12.2011 17:12:54 +0400 build - 2302
  3980.  
  3981. 1. 0001950: Erroneous switching to Dump mode on Unicode files
  3982.  
  3983. w17 15.12.2011 22:40:32 +0400 build - 2301
  3984.  
  3985. 1. Mantis #1235: Incorrect Shift-Del functioning on storage devices with more than 1 partition
  3986.    (from Arty)
  3987.  
  3988. svs 15.12.2011 21:39:07 +0400 - build 2300
  3989.  
  3990. 1. Correction of build 2297
  3991.  
  3992. w17 15.12.2011 19:04:57 +0400 build - 2299
  3993.  
  3994. 1. Mantis #1944 - fix
  3995.  
  3996. drkns 14.12.2011 13:20:46 +0200 - build 2298
  3997.  
  3998. 1. Mantis#0001944: FAR crashes at creation a symbolic link to a file or a directory
  3999.  
  4000. svs 13.12.2011 21:39:00 +0400 - build 2297
  4001.  
  4002. 1. Mantis#0001943: Correction of some flaws in Message function
  4003.    (from shmuel)
  4004.  
  4005. 2. InfoPanel:
  4006.    - sections can be hidden (Ctrl0..Ctrl9 or via Ctrl-F12 menu)
  4007.    - (experimental) "Power Info" section is added - the power state (shown via settings)
  4008.    - changes in help
  4009.  
  4010. zg 13.12.2011 17:39:38 +0200 - build 2296
  4011.  
  4012. 1. rollback of 2286 b-f.
  4013.  
  4014. drkns 12.12.2011 15:20:01 +0200 - build 2295
  4015.  
  4016. 1. Mantis#0001461: In Drive Menu, ShiftEnter on CD/DVD drive without a disc causes a black screen
  4017.  
  4018. w17 09.12.2011 14:37:30 +0400 build - 2294
  4019.  
  4020. 1. Mantis #1151: Incorrect destination path after choosing "Retry" when copying a folder with files to a Flash drive
  4021.  
  4022. w17 09.12.2011 07:13:09 +0400 build - 2293
  4023.  
  4024. 1. Mantis #1937 - Editor RCtrl+Alt+...
  4025.  
  4026. svs 08.12.2011 21:40:53 +0400 - build 2292
  4027.  
  4028. 1. Mantis#0001940: Builtin macro editor
  4029.    Place "Change" button between "Yes" and "No".
  4030.  
  4031. svs 08.12.2011 19:59:48 +0400 - build 2291
  4032.  
  4033. 1. Mantis#0001940: Builtin macro editor
  4034.    On deletion, the "Change" button appears, invoking the macro settings dialog.
  4035.  
  4036. 2. macros.db is redone.
  4037.    Instead of plugin_functions table, there's "functions", likewise in XML, 'plugin' is replaced with 'function'.
  4038.  
  4039.    The previous database must be deleted (export then import to keep data).
  4040.  
  4041. w17 08.12.2011 12:26:58 +0400 build - 2290
  4042.  
  4043. 1. #1938: After ECTL_DELETESTRING, blocks in the editor cease working
  4044.  
  4045. w17 08.12.2011 00:07:18 +0400 build - 2289
  4046.  
  4047. 1. Mantis #514 - continuation
  4048.    console buffer scrolling is functional if the current mode is neither the editor nor the viewer. ScrollLock is not checked.
  4049.  
  4050. w17 07.12.2011 23:53:06 +0400 build - 2288
  4051.  
  4052. 1. Mantis #1939 Viewer - searching progress state in the taskbar
  4053.  
  4054. svs 07.12.2011 16:15:27 +0400 - build 2287
  4055.  
  4056. 1. On importing to DB, a macro sequence is stripped all leading and trailing space characters.
  4057.  
  4058. 2. macros.db is redone.
  4059.    constants & variables are appended with 'type' field - the type of 'value' field contents.
  4060.    This is a string value, it can be one of the following ones:
  4061.  
  4062.     "unknown"  - undefined
  4063.     "integer"  - (__int64)
  4064.     "text"     - string
  4065.     "real"     - floating-point (double)
  4066.  
  4067.    'value' is still stored as a string, it is converted to a given type at startup.
  4068.    if 'type' differs from those listed, it is considered as a string in the core.
  4069.    If the type is specified as "unknown" in DB then the value is previously converted into "integer" (not regarding to errors) and forcingly assigned the vtUnknown type.
  4070.  
  4071.    Examples in XML:
  4072.  
  4073.         <constants>
  4074.             <constant name="ACTIVEPANEL" value="0" type="integer"/>
  4075.             <constant name="PI" value="3.14159265358979323846" type="real"/>
  4076.         </constants>
  4077.         <variables>
  4078.             <variable name="%%PI" value="3.14" type="text"/>
  4079.         </variables>
  4080.  
  4081.  
  4082.    The previous database must be deleted (export then import to keep data).
  4083.  
  4084.    TODO: error diagnostics at import!
  4085.  
  4086. w17 07.12.2011 12:59:31 +0400 build - 2286
  4087.  
  4088. 1. Mantis #514 - block selection in editor.
  4089.    Changes:
  4090.    a) scrolling of console buffer for 'far /w' is functional only with ScrollLock on
  4091.    b) Ctrl-Shift/Alt-Up/Down == Shift/Alt-Up/Down
  4092.    c) Copying to clipboard does not reset selection
  4093.    d) Per-line wrapping for [Ctrl-]Shift-Left/Right
  4094.    e) Cursor moving with Ctrl-Shift/Alt-Left/Right is same as with Ctrl-Left/Right except special cases -- 'anchor' crossing resets the selection at first;
  4095.       moving beyond the line to the left through the end of the line
  4096.    f) Beyond the line, Ctrl-Alt-Right == Alt-Right == move 1 position to the right
  4097.  
  4098. drkns 07.12.2011 08:16:57 +0200 - build 2285
  4099.  
  4100. 1. Correction of 2284.
  4101.  
  4102. svs 06.12.2011 16:13:24 +0400 - build 2284
  4103.  
  4104. 1. New macros.db format.
  4105.    'area', 'key' and 'flags' fields are now stored as a text
  4106.    (in order to avoid future problems caused by changing them inside Far)
  4107.  
  4108.    The previous database must be deleted (export then import to keep data).
  4109.  
  4110. drkns 05.12.2011 18:56:56 +0200 - build 2283
  4111.  
  4112. 1. More on Mantis#0001221.
  4113.  
  4114. drkns 05.12.2011 17:05:29 +0200 - build 2282
  4115.  
  4116. 1. Mantis#0001935: when importing from xml, variables are placed into constants section
  4117.  
  4118. 1. More on Mantis#0001221.
  4119.  
  4120. drkns 05.12.2011 13:21:32 +0200 - build 2281
  4121.  
  4122. 1. Changes of macro description format in xml. The new one is: <macro area="%AREA%" key="%KEY%" flags="%FLAGS%" description="%DESC%">%SEQUENCE%</macro>
  4123.  
  4124. drkns 04.12.2011 15:46:27 +0200 - build 2280
  4125.  
  4126. 1. Macros can be deleted when importing xml. This is done by leaving 'sequence' attribute empty or unspecified.
  4127.  
  4128. drkns 04.12.2011 00:49:21 +0200 - build 2279
  4129.  
  4130. 1. Continuation of 2278.
  4131.  
  4132. drkns 04.12.2011 00:11:58 +0200 - build 2278
  4133.  
  4134. 1. Mantis#0001933: macro settings are not restored with far.exe /import
  4135.  
  4136. drkns 03.12.2011 19:38:39 +0200 - build 2277
  4137.  
  4138. 1. Mantis#0001221: hard link coloring in panels
  4139.  
  4140. 2. Mantis#0001932: cannot delete a macro
  4141.  
  4142. drkns 03.12.2011 01:01:16 +0200 - build 2276
  4143.  
  4144. 1. Correction of 2274.1.
  4145.  
  4146. w17 03.12.2011 02:30:31 +0400 - build 2275
  4147.  
  4148. 1. fixing gcc 64 build
  4149.  
  4150. drkns 02.12.2011 22:08:21 +0200 - build 2274
  4151.  
  4152. 1. It's finally done, Far does not store settings in the registry.
  4153.   - Mantis#0001840: Macro && DB. Something could go wrong, be careful.
  4154.  
  4155. 2. AltEnter (+modifiers) is available is OS's which do not support hardware fullscreen mode.
  4156.  
  4157. drkns 30.11.2011 21:41:38 +0200 - build 2273
  4158.  
  4159. 1. Plugin settings databases got descriptions.
  4160.  
  4161. drkns 27.11.2011 23:32:27 +0200 - build 2272
  4162.  
  4163. 1. Incorrect handling of the packed size obtaining error.
  4164.  
  4165. 2. Support for privilege elevation when obtaining the packed size.
  4166.  
  4167. w17 24.11.2011 00:13:34 +0400 build - 2271
  4168.  
  4169. 1. Mantis #1925, #1326: Editor replace string selection fix.
  4170.  
  4171. drkns 19.11.2011 23:35:25 +0200 - build 2270
  4172.  
  4173. 1. Incorrect processing of FMSG_MB_* flags in the wrapper.
  4174.  
  4175. w17 17.11.2011 02:55:35 +0400 build - 2269
  4176.  
  4177. 1. Continuation of 2268
  4178.  
  4179. w17 16.11.2011 13:43:39 +0400 build - 2268
  4180.  
  4181. 1. Common code is taken out of makefile_gcc in order to use it for building plugins.
  4182.  
  4183. drkns 13.11.2011 00:51:23 +0200 - build 2267
  4184.  
  4185. 1. Using SetUnhandledExceptionFilter.
  4186.  
  4187. drkns 10.11.2011 16:28:04 +0200 - build 2266
  4188.  
  4189. 1. The default file highlighting was not applied if highlight.db was opened in memory.
  4190.  
  4191. svs 10.11.2011 12:29:47 +0400 - build 2265
  4192.  
  4193. 1. Mantis#0001198: Bugs in Editor.Set
  4194.    The following options have become RW for Editor.Set(): 8, 12, 13, 14, 17, 18
  4195.  
  4196. 2. Mantis#0001912: The macrofunction to assign the input focus to the dialog item which had been focused before the current one.
  4197.    Additions:
  4198.     1. Dlg.PrevPos - previous focused item number (in addition to Dlg.CurPos)
  4199.     2. N=Dlg.SetFocus([ID]) - set the focus to the item with number ID
  4200.        If ID is not given, it returns the focused item number
  4201.        Return:
  4202.          -1 - inner error or the function is called outside a dialog
  4203.           0 - an attempt to position to an unfocused item
  4204.          >0 - previous focused item number
  4205.  
  4206. svs 09.11.2011 06:42:02 +0400 - build 2264
  4207.  
  4208. 1. SQLite 3.7.9
  4209.  
  4210. 2. Correction of build 2246
  4211.  
  4212. w17 07.11.2011 22:30:08 +0400 build - 2263
  4213.  
  4214. 1. HOSTTYPE is Windows by default, Cygwin != Unix
  4215.  
  4216. drkns 07.11.2011 09:41:27 +0200
  4217.  
  4218. 1. HOSTTYPE is Windows by default.
  4219.  
  4220. w17 07.11.2011 11:30:15 +0400 build - 2262
  4221.  
  4222. 1. 2252 - Vstudio build repaired
  4223.  
  4224. w17 07.11.2011 03:58:15 +0400 build - 2261
  4225.  
  4226. 1. 2252 one more time - the return of -O3
  4227.  
  4228. w17 05.11.2011 01:02:42 +0400 build - 2260
  4229.  
  4230. 1. gcc #pragma for 4.6 only
  4231.  
  4232. w17 04.11.2011 21:49:00 +0400 build - 2259
  4233.  
  4234. 1. Again, a fix for 2252 - msys mingw fix
  4235.  
  4236. w17 04.11.2011 20:09:02 +0400 build - 2258
  4237.  
  4238. 1. A fix for 2257.2 (__GNUC_MINOR__)
  4239.  
  4240. w17 04.11.2011 20:05:17 +0400 build - 2257
  4241.  
  4242. 1. Correction of 2252.2
  4243.  
  4244. 2. nullptr for gcc < 4.6.1
  4245.  
  4246. drkns 04.11.2011 14:10:46 +0200 - build 2256
  4247.  
  4248. 1. An attempt of UnicodeString speeding up with the use of a stack buffer.
  4249.  
  4250. 2. Minor things.
  4251.  
  4252. w17 04.11.2011 14:53:20 +0400 build - 2255
  4253.  
  4254. 1. Correction of 2252.2
  4255.  
  4256. w17 04.11.2011 14:14:30 +0400 build - 2254
  4257.  
  4258. 1. Correction of 2252.2
  4259.  
  4260. w17 04.11.2011 14:10:35 +0400 build - 2253
  4261.  
  4262. 1. Correction of 2252.1
  4263.  
  4264. w17 04.11.2011 11:14:20 +0400 build - 2252
  4265.  
  4266. MinGW gcc build
  4267.    The following ones are supposed to be functional:
  4268.     Windows builds with tdm-gcc 32/64, including far32 build with tdm64;
  4269.     Cygwin/Linux builds with MinGW 32/64 cross compiler, 32-32 and 64-64 only;
  4270.  
  4271.    The checked ones are MinGW 4.5.2 (gcc header file must be edited), 4.6.1, 4.6.2
  4272.  
  4273.    ACHTUNG!
  4274.    -mno-cygwin flag is removed, MinGW does not need it, cygwin gcc does not support it since 1.7.6
  4275.  
  4276. drkns 31.10.2011 13:24:03 +0200 - build 2251
  4277.  
  4278. 1. Correction of 2224.1.
  4279.  
  4280. drkns 27.10.2011 13:08:21 +0300 - build 2250
  4281.  
  4282. 1. Mantis#0001918: FAR crash on "Standard association" choice
  4283.  
  4284. drkns 25.10.2011 20:14:28 +0200
  4285.  
  4286. 1. Far.exe.ini -> Far.exe.example.ini
  4287.  
  4288. w17 25.10.2011 17:09:29 +0400 build - 2249
  4289.  
  4290. 1. Viewer - errors are fixed, scroll bar drawing is normalized.
  4291.  
  4292. 2. Viewer - Simplification of previous mode saving logic in Goto dialog (AltF8)
  4293.  
  4294. drkns 24.10.2011 15:07:04 +0300 - build 2248
  4295.  
  4296. 1. Continuation of 2247.1.
  4297.  
  4298. drkns 24.10.2011 12:05:37 +0300 - build 2247
  4299.  
  4300. 1. Mantis#0001916: Far silent crash on sqlite format incompatibility.
  4301.    Now "at incompatibility" we try old database backup and create a correct one, if this also fails, the base is opened in memory.
  4302.  
  4303. zg 24.10.2011 00:38:08 +0200 - build 2246
  4304.  
  4305. 1. human readable names for structures and their fields connected with DN_GETVALUE.
  4306.  
  4307. 2. FarSettingsHistoryPlugin.->FarSettingsHistory.PluginId.
  4308.  
  4309. 3. FARMACROVARTYPE is numbered from 0.
  4310.  
  4311. zg 23.10.2011 21:11:21 +0200 - build 2245
  4312.  
  4313. 1. when replacing "folder shorcuts" from plugin's one to real path, not all fields were cleared.
  4314.  
  4315. zg 23.10.2011 20:56:26 +0200 - build 2244
  4316.  
  4317. 1. obtain information on "folder shorcuts" in the same manner as for histories.
  4318.  
  4319. zg 23.10.2011 19:47:51 +0200 - build 2243
  4320.  
  4321. 1. additional parameters are returned for histories.
  4322.  
  4323. zg 22.10.2011 23:54:52 +0200 - build 2242
  4324.  
  4325. 1. alignment of data returned by FCTL_GET*PANELITEM.
  4326.  
  4327. zg 22.10.2011 03:52:53 +0200 - build 2241
  4328.  
  4329. 1. correction of 2240.2 for capital letters.
  4330.  
  4331. zg 22.10.2011 03:17:46 +0200 - build 2240
  4332.  
  4333. 1. input of RAlt+character was broken in 2127.
  4334.  
  4335. 2. ibid, CtrlRAlt started adding to characters typed in with RAlt.
  4336.  
  4337. 3. KEY_CTRLALTSHIFTPRESS does not arrive when RAlt or RCtrl is pressed.
  4338.  
  4339. zg 21.10.2011 23:56:07 +0200 - build 2239
  4340.  
  4341. 1. SavePluginFoldersHistory option is removed.
  4342.  
  4343. 2. plugins are always added to history and if a plugin behaves correctly then jump from history is available.
  4344.    old history.db must be deleted.
  4345.  
  4346. 3. fix for a crash when jumping from inside a file with a folder shortcut into another file processed with the same plugin.
  4347.  
  4348. zg 21.10.2011 09:36:48 +0200 - build 2238
  4349.  
  4350. 1. Folder Shortcuts stores Guid for plugins, not a module name.
  4351.  
  4352. zg 20.10.2011 17:25:55 +0200 - build 2237
  4353.  
  4354. 1. correction of 2232.1. return time in UTC and the lock flag.
  4355.  
  4356. zg 20.10.2011 15:58:27 +0200 - build 2236
  4357.  
  4358. 1. tdm64-gcc build: make DIRBIT=64 -f makefile_gcc.
  4359.  
  4360. drkns 20.10.2011 14:15:52 +0300 - build 2235
  4361.  
  4362. 1. Before codepage change, conversion correctness check is performed.
  4363.  
  4364. drkns 20.10.2011 09:40:46 +0300 - build 2234
  4365.  
  4366. 1. If codepage change in editor has messed up the text, do not remember the codepage.
  4367.  
  4368. w17 20.10.2011 09:49:18 +0400 build - 2233
  4369.  
  4370. 1. Makeup for #1905
  4371.  
  4372. zg 20.10.2011 01:33:55 +0200 - build 2232
  4373.  
  4374. 1. experimental obtaining of FAR settings via SettingsControl. History only so far.
  4375.    id must be set to FarGuid, the command is SCTL_ENUM, Root must be set to one of
  4376.    FARSETTINGS_SUBFOLDERS values.
  4377.  
  4378. w17 19.10.2011 22:36:30 +0400 build - 2231
  4379.  
  4380. 1. Mantis #1905 again
  4381.  
  4382. zg 19.10.2011 17:15:15 +0200 - build 2230
  4383.  
  4384. 1. DM_ADDHISTORY crashed for created but not shown dialog.
  4385.  
  4386. w17 19.10.2011 18:02:30 +0400 build - 2229
  4387.  
  4388. 1. 1905: viewer dump mode
  4389.  
  4390. zg 19.10.2011 14:50:58 +0200 - build 2228
  4391.  
  4392. 1. wrapper: correction of DM_LISTGETDATA and DM_LISTSETDATA.
  4393.  
  4394. drkns 19.10.2011 08:39:52 +0300 - build 2227
  4395.  
  4396. 1. [x] Clock in viewer and editor
  4397.  
  4398. drkns 18.10.2011 19:17:20 +0200 - build 2226
  4399.  
  4400. 1. Waiting cancellation possibility for "far /v -".
  4401.  
  4402. drkns 18.10.2011 19:03:32 +0200 - build 2225
  4403.  
  4404. 1. Correction of 2224.1.
  4405.  
  4406. drkns 18.10.2011 14:33:06 +0300 - build 2224
  4407.  
  4408. 1. Now synchronous I/O operations can be interrupted (hello goes to Network plugin). Ctrl-Break.
  4409.  
  4410. w17 16.10.2011 12:39:32 +0400 build - 2223
  4411.  
  4412. 1. Mantis#1791: "Cannot find the file" on F5 after Ctrl+Tab from a file saved in editor
  4413.  
  4414. drkns 14.10.2011 18:30:56 +0200 - build 2222
  4415.  
  4416. 1. "Inactivity time" option no longer exists.
  4417.  
  4418. w17 14.10.2011 18:01:33 +0400 - build 2221
  4419.  
  4420. 1. Mantis#1823: Viewer auto-update on flash drives
  4421.  
  4422. svs 13.10.2011 17:44:03 +0400 - build 2220
  4423.  
  4424. 1. Mantis#0001882: Enable "hooking" of Dlg.GetValue and ItemCount/CurPos macrofunctions in dialogs.
  4425.  
  4426.    Correction of DN_GETVALUE
  4427.  
  4428.    ACHTUNG!
  4429.       Indices in macros start with 1, opposed to 0 in API.
  4430.  
  4431.    In macros: dlg.getvalue(Index,TypeInf)
  4432.  
  4433.      If (Index > 0  && Index <= DlgItemCount)
  4434.      {
  4435.         see dlg.getvalue description (just consider that the plugin receives Index-1)
  4436.         /*
  4437.            DlgItemCount is got via dlggetvalueFunc(0,0)
  4438.         */
  4439.         It returns to the macro exactly what the plugin has returned.
  4440.         /*
  4441.           Here the plugin can return FMVT_INTEGER/FMVT_UNKNOWN or FMVT_DOUBLE or FMVT_STRING.
  4442.         */
  4443.      }
  4444.  
  4445.      If (Index > DlgItemCount)
  4446.      {
  4447.         1) the plugin receives (DN_GETVALUE,Index-1,{FMVT_INTEGER,TypeInf}) in its dialog procedure.
  4448.            /*
  4449.               FMVT_INTEGER - exactly, in order to simplify the description :-)
  4450.            */
  4451.         2) The macro receives exactly what the plugin has returned.
  4452.            /*
  4453.              Here the plugin can return FMVT_INTEGER/FMVT_UNKNOWN or FMVT_DOUBLE or FMVT_STRING.
  4454.            */
  4455.      }
  4456.  
  4457.      If (Index == 0) // this is about the dialog
  4458.      {
  4459.         If (TypeInf is 0 to 6)   // "6" - so far, may be expanded in the future :-)
  4460.         {
  4461.            see dlg.getvalue description (just consider that the plugin receives Index-1, i.e. -1)
  4462.            The macro receives exactly what the plugin has returned.
  4463.            /*
  4464.              Here the plugin can return FMVT_INTEGER/FMVT_UNKNOWN or FMVT_DOUBLE or FMVT_STRING.
  4465.            */
  4466.         }
  4467.         Else
  4468.         {
  4469.            the dialog procedure receives the value {FMVT_UNKNOWN, 0} (the plugin gets Index-1, i.e. -1)
  4470.         }
  4471.      }
  4472.  
  4473.      If (the current domain is not a dialog) or (Index < DlgItemCount and an inner error has taken place)
  4474.      {
  4475.         the plugin does not get DN_GETVALUE.
  4476.      }
  4477.  
  4478.  
  4479. svs 13.10.2011 15:23:12 +0400 - build 2219
  4480.  
  4481. 1. Mantis#0001595: Problems with mmode(1,0) in editor
  4482.     mmode(1,0) enables screen displaying.
  4483.     Nevertheless, in some cases it's been the case of the editor stay uncolored.
  4484.  
  4485.    Catching bugs so far ;-)
  4486.  
  4487. svs 12.10.2011 11:38:10 +0400 - build 2218
  4488.  
  4489. 1. Info panel was not updated after changes made in info panel settings dialog.
  4490.  
  4491. w17 11.10.2011 13:49:00 +0400 - build 2217
  4492.  
  4493. 1. Mantis#1901: Position saved on F6 switching (editor/viewer)
  4494.  
  4495. 2. Mantis#1766: viewer new version
  4496.    Removal of artifacts when searched text gets into WWrap area
  4497.  
  4498. svs 10.10.2011 17:21:48 +0400 - build 2216
  4499.  
  4500. 1. Mantis#0001832: FarNameToInputRecord / FarInputRecordToName  problem
  4501.    (from Maximus)
  4502.  
  4503. svs 09.10.2011 15:29:43 +0400 - build 2215
  4504.  
  4505. 1. Mantis#0001832: FarNameToInputRecord / FarInputRecordToName problem
  4506.    (from shmuel)
  4507.    "...broken input with Russian keyboard layout in a plugin..."
  4508.  
  4509. svs 06.10.2011 16:08:21 +0400 - build 2214
  4510.  
  4511. 1. Mantis#0001832: FarNameToInputRecord / FarInputRecordToName problem
  4512.    (from Maximus)
  4513.  
  4514. drkns 06.10.2011 13:33:04 +0200 - build 2213
  4515.  
  4516. 1. And more.
  4517.  
  4518. drkns 05.10.2011 16:46:24 +0200 - build 2212
  4519.  
  4520. 1. More on #1899.
  4521.  
  4522. svs 05.10.2011 11:40:27 +0400 - build 2211
  4523.  
  4524. 1. Mantis#0001899: Show information on plugin (GUID etc.) in F11/F4
  4525.    (from Maximus)
  4526.    F3 invokes a dialog containing technical information on the plugin.
  4527.  
  4528. svs 04.10.2011 10:07:48 +0400 - build 2210
  4529.  
  4530. 1. Mantis#0001766: Viewer new version
  4531.    (from 2useven10)
  4532.  
  4533. svs 03.10.2011 12:02:41 +0400 - build 2209
  4534.  
  4535. 1. Mantis#0001529: Incorrect action of setposidx macrofunction
  4536.  
  4537. 2. SQLite updated to "3.7.8"
  4538.  
  4539. 3. In the wake of "0001897: cannot build Far 3.0 with gcc" - "Include".
  4540.  
  4541. svs 01.10.2011 10:20:58 +0400 - build 2208
  4542.  
  4543. 1. Mantis#0001677: Set "starting" key code with MCMD_POSTMACROSTRING on macro start
  4544.  
  4545. svs 30.09.2011 15:09:04 +0400 - build 2207
  4546.  
  4547. 1. Mantis#0001898: bugs in editor drawing after macro finish
  4548.    (from Maximus)
  4549.  
  4550. svs 29.09.2011 09:49:28 +0400 - build 2206
  4551.  
  4552. 1. Mantis#0001766: Viewer new version
  4553.    (from 2useven10)
  4554.  
  4555. drkns 27.09.2011 21:38:14 +0200 - build 2205
  4556.  
  4557. 1. Mantis#0001894: Plugin list display inaccuracy.
  4558.  
  4559. drkns 26.09.2011 08:58:57 +0200 - build 2204
  4560.  
  4561. 1. Correction of types in plugin.hpp
  4562.  
  4563. drkns 25.09.2011 19:11:11 +0200 - build 2203
  4564.  
  4565. 1. FarListTitles.TitleLen => FarListTitles.TitleSize,
  4566.    FarListTitles.BottomLen => FarListTitles.BottomSize.
  4567.  
  4568. svs 23.09.2011 10:29:38 +0400 - build 2202
  4569.  
  4570. 1. Mantis#0001888: [A|P]Panel.Format
  4571.  
  4572. 2. Mantis#0001887: FCTL_GETPANELPREFIX
  4573.    Panel API: added FCTL_GETPANELPREFIX
  4574.  
  4575. drkns 22.09.2011 11:03:59 +0200 - build 2201
  4576.  
  4577. 1. Mantis#0001883: Spaces generated in editor when using numeric keypad.
  4578.  
  4579. drkns 20.09.2011 11:28:28 +0200 - build 2200
  4580.  
  4581. 1. Console color is restored after applications launch.
  4582.  
  4583. svs 19.09.2011 09:48:39 +0400 - build 2199
  4584.  
  4585. 1. Mantis#0001882: Enable "interception" of Dlg.GetValue and ItemCount/CurPos macrofunctions in dialogs.
  4586.  
  4587.    A new notification message for dialog procedures is added: DN_GETVALUE (=4118)
  4588.    DN_GETVALUE is sent to the dialog procedure each time when Dlg.GetValue(), ItemCount and CurPos occur in macros.
  4589.  
  4590.      Param1 = dialog item number
  4591.      Param2 = pointer to TFarGetValue structure (filled in)
  4592.  
  4593.      The plugin returns:
  4594.        0 - macro engine ignores it
  4595.        1 - Param2 contains modified data - macro engine takes the data.
  4596.  
  4597.      Here TFarGetValue is:
  4598.  
  4599.       struct FarMacroValue
  4600.       {
  4601.           enum FARMACROVARTYPE type;
  4602.           union
  4603.           {
  4604.               __int64  i;
  4605.               double   d;
  4606.               const wchar_t *s;
  4607.           } Value;
  4608.       };
  4609.  
  4610.      the type of the variable:
  4611.  
  4612.       enum FARMACROVARTYPE
  4613.       {
  4614.           FMVT_UNKNOWN                = -1,
  4615.           FMVT_INTEGER                = 0,
  4616.           FMVT_STRING                 = 1,
  4617.           FMVT_DOUBLE                 = 2,
  4618.       };
  4619.  
  4620.    Dlg.GetValue() call is done for any dialog item.
  4621.    ItemCount and CurPos - for ListBox, opened Combobox and usercontrol only.
  4622.    Macro engine "calculates" needed data at first, then asks the dialog procedure
  4623.    for confirmation "is it right? if it isn't then correct it". In case of positive answer (!= 0)
  4624.    it places data returned by the dialog procedure into the stack.
  4625.  
  4626. 2. Macro: For Dlg.GetValue(), Type = 11 is added for ListBox and opened Combobox:
  4627.     Number, "return list items number".
  4628.  
  4629. svs 13.09.2011 15:28:38 +0400 - build 2198
  4630.  
  4631. 1. Mantis#0001785: A problem with launch if the command line contains "="
  4632.    (from 2useven10)
  4633.  
  4634. svs 12.09.2011 14:35:48 +0400 - build 2197
  4635.  
  4636. 1. Mantis#0001873: Highlighted keys in Options - System settings
  4637.    (from Raistlin)
  4638.  
  4639. 2. Some corrections in lng (translation, hotkeys)
  4640.  
  4641. drkns 12.09.2011 13:23:34 +0200 - build 2196
  4642.  
  4643. 1. In some cases, console output could be lost partially after applications run.
  4644.  
  4645. svs 12.09.2011 09:46:52 +0400 - build 2195
  4646.  
  4647. 1. Mantis#0001766: Viewer new version
  4648.    (from 2useven10)
  4649.  
  4650.    "...started noticing the last viewer version incorrectly display
  4651.    first lines when '[x] Save view and edit history' is on.
  4652.    i'm watching it in changelog, i.e. watch the current revision, then
  4653.    do "svn up" in a few days, open changelog in viewer -
  4654.    first lines float all over the screen in some incomprehensible manner.
  4655.    After Home and reopen it settles down..."
  4656.  
  4657. svs 09.09.2011 17:32:26 +0400 - build 2194
  4658.  
  4659. 1. Mantis#0000698: Fast search improvement
  4660.    The first approximation. So far, it is not included into main compilation (until Mantis_698 define is specified)
  4661.    Fast search is implemented for all visible fields.
  4662.  
  4663. svs 05.09.2011 19:46:49 +0400 - build 2193
  4664.  
  4665. 1. Mantis#0001869: panel.select(0,1,2,clip(0)) does not mark files with names containing a comma
  4666.    <ACHTUNG>
  4667.  
  4668.       For Items string values in panel.select():
  4669.       Elements must be separated with Lf ("\n") or CrLf ("\r\n").
  4670.  
  4671.    </ACHTUNG>
  4672.  
  4673. svs 05.09.2011 19:05:38 +0400 - build 2192
  4674.  
  4675. 1. Mantis#0001871: Drawing bug in editor
  4676.  
  4677. drkns 05.09.2011 09:11:02 +0200 - build 2191
  4678.  
  4679. 1. A new flag in EDITORCOLORFLAGS: ECF_TABMARKCURRENT. It is similar to ECF_TAB1, but instead of first TAB character, the one matching to editor's cursor horizontal coordinate is colored.
  4680.  
  4681. 2. ECF_TAB1 is renamed to ECF_TABMARKFIRST.
  4682.  
  4683. zg 04.09.2011 14:40:56 +0200 - build 2190
  4684.  
  4685. 1. ACTL_WAITKEY: Param1=0, Param2 - pointer to INPUT_RECORD or NULL for any other key.
  4686.  
  4687. zg 03.09.2011 13:06:29 +0200 - build 2189
  4688.  
  4689. 1. FarMenuItem.AccelKey now has FarKey type.
  4690.  
  4691. svs 02.09.2011 09:26:36 +0300 - build 2188
  4692.  
  4693. 1. Correction of build 2187
  4694.  
  4695. svs 01.09.2011 22:03:43 +0300 - build 2187
  4696.  
  4697. 1. Mantis#0001743: Possibility of switching the history off
  4698.    prompt() - if non-empty `history` is given, then force history setting (at the time of calling this function).
  4699.  
  4700. svs 01.09.2011 17:34:54 +0300 - build 2186
  4701.  
  4702. 1. debug compilation minor issues
  4703.  
  4704. 2. Command line keys /clearcache, /export and /import are included in the help
  4705.  
  4706. drkns 01.09.2011 15:07:03 +0200
  4707.  
  4708. 1. Correction of 2185.2 - manual synchronization.
  4709.  
  4710. drkns 01.09.2011 14:15:09 +0200 - build 2185
  4711.  
  4712. 1. Include\DlgBuilder.hpp is now generated like other headers.
  4713.  
  4714. 2. On svn_tag_build.bat run a headers synchronization attempt is done in ..\plugins\common\unicode too.
  4715.  
  4716. drkns 31.08.2011 15:55:08 +0200 - build 2184
  4717.  
  4718. 1. ECTL_PROCESSKEY is removed.
  4719.  
  4720. svs 30.08.2011 10:43:11 +0300 - build 2183
  4721.  
  4722. 1. Mantis#0001866: Make all prompt() parameters optional
  4723.    correction of build 2182
  4724.  
  4725. svs 30.08.2011 10:16:23 +0300 - build 2182
  4726.  
  4727. 1. Mantis#0001863: Omitted string as the parameter of a function
  4728.  
  4729.    !!!Highly experimental, tested on `prompt` and `msgbox` only!!!
  4730.  
  4731.    Now parameters can be skipped :-)
  4732.  
  4733.    For example,
  4734.      prompt("Title","Text",0x08,,"History")
  4735.    works the same way as
  4736.      prompt("Title","Text",0x08,"","History")
  4737.  
  4738. 2. Mantis#0001866: Make all prompt() parameters optional
  4739.  
  4740.  
  4741. svs 29.08.2011 14:39:57 +0300 - build 2181
  4742.  
  4743. 1. Mantis#0001864: Debug version crash when executng a written macro
  4744.  
  4745. 2. Mantis#0001856: bringing to common UserData
  4746.    (from samlyukov)
  4747.  
  4748. drkns 29.08.2011 08:42:09 +0200 - build 2180
  4749.  
  4750. 1. Correction of 2179.2.
  4751.  
  4752. drkns 28.08.2011 17:57:54 +0200 - build 2179
  4753.  
  4754. 1. Mantis#0001865: initialization of the colors array in dialog.cpp
  4755.  
  4756. 2. A couple of minor issues.
  4757.  
  4758. svs 28.08.2011 15:26:06 +0300 - build 2178
  4759.  
  4760. 1. Mantis#0001766: Viewer new version
  4761.    (from 2useven10)
  4762.    Automatic scroll optimization for Win7.
  4763.    The cache is not reset if the file is just growing.
  4764.    On XP, the effect is negligible.
  4765.  
  4766. 2. Mantis#0001846: Incorrect reaction to mouse click in F1
  4767.  
  4768. drkns 27.08.2011 16:40:43 +0200 - build 2177
  4769.  
  4770. 1. Warnings.
  4771.  
  4772. 2. The structures are redone again, now for x86 too.
  4773.  
  4774. drkns 27.08.2011 11:28:44 +0200 - build 2176
  4775.  
  4776. 1. Correction of 2175.1.
  4777.  
  4778. drkns 26.08.2011 16:54:08 +0200 - build 2175
  4779.  
  4780. 1. ClearStruct() and ClearArray() templates for zero filling structures and arrays, which set the correct size automatically.
  4781.    <ACHTUNG>Use them instead of memset.</ACHTUNG>
  4782.  
  4783. 2. The size was not always filled in PluginInfo.
  4784.  
  4785. zg 25.08.2011 23:22:28 +0200 - build 2174
  4786.  
  4787. 1. Mantis#0001864: Debug version crash on recorded macro run.
  4788.  
  4789. drkns 25.08.2011 22:47:06 +0200 - build 2173
  4790.  
  4791. 1. Warnings.
  4792.  
  4793. 2. Some structures are changed for more optimal layout in x64. The plugins must be rebuilt.
  4794.  
  4795. svs 25.08.2011 16:22:47 +0300 - build 2172
  4796.  
  4797. 1. Mantis#0001858: Return 0 on prompt() dialog close with Esc
  4798.  
  4799. svs 25.08.2011 16:01:01 +0300 - build 2171
  4800.  
  4801. 1. Keyboard engine being rewritten. The beginning.
  4802.  
  4803.    Macro::ProcessKey(int) -> Macro::ProcessEvent(FAR_INPUT_RECORD)
  4804.  
  4805.     struct FAR_INPUT_RECORD
  4806.     {
  4807.       DWORD IntKey;
  4808.       INPUT_RECORD Rec;
  4809.     };
  4810.     if IntKey == 0, then looking to Rec, else IntKey is containing KEY_
  4811.  
  4812. drkns 25.08.2011 11:48:38 +0200 - build 2170
  4813.  
  4814. 1. Mistype in 2169.
  4815.  
  4816. drkns 25.08.2011 11:36:00 +0200 - build 2169
  4817.  
  4818. 1. Mantis#0001862: Static analysis of the code.
  4819.  
  4820. svs 25.08.2011 11:32:30 +0300 - build 2168
  4821.  
  4822. 1. Mantis#0001861: "File selection" chapter
  4823.    (from Maximus)
  4824.    "File selection" is updated.
  4825.  
  4826. 2. Mantis#0001832: FarNameToInputRecord / FarInputRecordToName problem
  4827.    (from Maximus)
  4828.    Right CtrlShiftDot was broken in macro recording.
  4829.  
  4830. drkns 25.08.2011 10:05:45 +0200 - build 2167
  4831.  
  4832. 1. Mantis#0001833: File search is not thread safe.
  4833.  
  4834. drkns 25.08.2011 09:54:06 +0200 - build 2166
  4835.  
  4836. 1. Mantis#0001860: In CtrlL, text labels from plugin are drawn with the border color.
  4837.  
  4838. drkns 24.08.2011 23:47:55 +0200 - build 2165
  4839.  
  4840. 1. A critical section instead of a mutex in PluginSynchro.
  4841.  
  4842. 2. A couple of minor issues.
  4843.  
  4844. svs 24.08.2011 17:15:00 +0300 - build 2164
  4845.  
  4846. 1. FSF.FarNameToInputRecord returns TRUE even if a non-existing key name is passed, for example, "foobar".
  4847.  
  4848. zg 23.08.2011 22:43:26 +0200 - build 2163
  4849.  
  4850. 1. macros added with MCTL_ADDMACRO are always checked in the same order.
  4851.  
  4852. zg 23.08.2011 22:11:33 +0200 - build 2162
  4853.  
  4854. 1. MCTL_ADDMACRO: correction for several macros bound to the same key.
  4855.  
  4856. 2. correction of deallocation of memory occupied by macros on FAR exit.
  4857.  
  4858. svs 23.08.2011 21:49:44 +0300 - build 2161
  4859.  
  4860. 1. Mantis#0001858: Return 0 when closing the prompt() dialog with Esc
  4861.    - 0x01 flag is forced, i.e. prompt returns an empty string when Enter is hit on the empty input line
  4862.    - for Esc, numeric 0 is returned instead of a string (implemented in build 2160 :-)
  4863.  
  4864. zg 23.08.2011 19:43:46 +0200 - build 2160
  4865.  
  4866. 1. correction of 2159.3.
  4867.  
  4868. zg 23.08.2011 17:33:27 +0200 - build 2159
  4869.  
  4870. based on Mantis#0001486
  4871.  
  4872. 1. MacroControl first parameter is the plugin's GUID.
  4873.  
  4874. 2. MCTL_ADDMACRO: new API for adding a macro into "memory".
  4875.    Param1 - 0
  4876.    Param2 - MacroAddMacro pointer.
  4877.    MacroAddMacro:
  4878.      Flags - flags as in MCTL_SENDSTRING.
  4879.      AKey - key which the macro is bound to.
  4880.      SequenceText - the text of the macro.
  4881.      Description - the description of the macro.
  4882.      Id - an identifier which is unique throughout the plugin.
  4883.      Callback - a function called before the macro is run. the first parameter is the macro ID. it may check something and return TRUE, meaning whether to run the macro, or FALSE - not to run.
  4884.    all macros are added into the Common area.
  4885.  
  4886. 3. MCTL_DELMACRO delete a macro.
  4887.    Param1 - 0
  4888.    Param2 - Id of the macro.
  4889.  
  4890.  
  4891. drkns 23.08.2011 15:46:49 +0200 - build 2158
  4892.  
  4893. 1. In editor status line, the character index is displayed in addition to the column index.
  4894.  
  4895. 2. Now AltF8 in editor jumps to line/character instead of line/column.
  4896.  
  4897. drkns 23.08.2011 10:41:13 +0200 - build 2157
  4898.  
  4899. 1. Mistype in 2155.
  4900.  
  4901. 2. Correction of 2105 - Menu() second parameter was mandatory.
  4902.  
  4903. svs 22.08.2011 17:53:53 +0300 - build 2156
  4904.  
  4905. 1. Now all enum's in plugin.hpp contain explicit values of public constants (everything inside FAR_USE_INTERNALS is an exception).
  4906.  
  4907.    <ACHTUNG>
  4908.  
  4909.      Set explicit constant values when adding them into plugin.hpp!
  4910.  
  4911.    </ACHTUNG>
  4912.  
  4913.    PS.
  4914.      Now one can group the constants meaningfully in bounds of a single enum (for instance, in FARMESSAGE)
  4915.  
  4916. drkns 22.08.2011 14:04:40 +0200 - build 2155
  4917.  
  4918. 1. imports.?pp refactoring
  4919.  
  4920. 2. Other minor issues.
  4921.  
  4922. svs 22.08.2011 11:33:37 +0300 - build 2154
  4923.  
  4924. 1. Mantis#0001792: Add FAR Process ID to info panel and window header
  4925.  
  4926.    "%PID" variable is added to the header template (Options -> Interface settings -> Far window title addons) containing
  4927.    the process ID of Far Manager current instance.
  4928.  
  4929. 2. Macro: Far.PID variable is added, containing the process ID of Far Manager current instance.
  4930.  
  4931. drkns 17.08.2011 15:43:18 +0200 - build 2153
  4932.  
  4933. 1. Smart ARRAYSIZE() for gcc.
  4934.  
  4935. 2. C++0x warnings.
  4936.  
  4937. 3. makefile_gcc can work without msys.
  4938.  
  4939. svs 16.08.2011 14:08:31 +0300 - build 2152
  4940.  
  4941. 1. Mantis#0001843: Panel displaying error on menu.show
  4942.    (from DAtaMan)
  4943.  
  4944.      macro:post menu.Show("AAA\r\nBBB")
  4945.      while the menu is active, change something in the folder that is opened on the panel
  4946.      the panel is reread, updated and overwrites the menu partially (over the panel)
  4947.  
  4948. svs 16.08.2011 12:50:50 +0300 - build 2151
  4949.  
  4950. 1. Mantis#0001848: The macro area is corrupted after return from modal editor
  4951.  
  4952. svs 16.08.2011 11:17:45 +0300 - build 2150
  4953.  
  4954. 1. Mantis#0001852: Timer macro command
  4955.    (DAtaMan + svs)
  4956.    "Far.UpTime" variable is added - how much time (in milliseconds) the Far Manager instance has been running.
  4957.  
  4958. drkns 15.08.2011 14:46:13 +0200 - build 2149
  4959.  
  4960. 1. File highlighting storage format is changed. The old highlight.db must be deleted.
  4961.  
  4962. 2. A couple of corrections in processing of console closing.
  4963.  
  4964. drkns 14.08.2011 21:42:30 +0200 - build 2148
  4965.  
  4966. 1. Folder Shortcuts have got new default behavior.
  4967.  
  4968. drkns 14.08.2011 16:12:58 +0200 - build 2147
  4969.  
  4970. 1. Continuation of 908.1 - now it also works with gcc.
  4971.  
  4972. drkns 12.08.2011 18:55:54 +0200 - build 2146
  4973.  
  4974. 1. In 2127, folder shortcuts were broken.
  4975.  
  4976. drkns 12.08.2011 15:28:28 +0200 - build 2145
  4977.  
  4978. 1. A couple of new options in panel settings: "Highlight column separators", "Double global column separators".
  4979.  
  4980. svs 12.08.2011 09:36:55 +0300 - build 2144
  4981.  
  4982. 1. Mantis#0001849: Hotkeys do not work in user menu (F2)
  4983.    (from Maximus)
  4984.    Any hotkey causes one level up transition if the last (empty) item is selected in F2
  4985.  
  4986. svs 12.08.2011 09:32:28 +0300 - build 2143
  4987.  
  4988. 1. Mantis#0001766: Viewer new version
  4989.    (from 2useven10)
  4990.     Another correction for automatic scrolling.
  4991.     'Excessive' code has proved to be useful.
  4992.     Thanks to Dzirt2005 for diagnostics.
  4993.     The problem took part when batch file output was redirected to the file being viewed.
  4994.  
  4995. drkns 11.08.2011 16:06:20 +0200 - build 2142
  4996.  
  4997. 1. Mantis#0001851: "Transparent" flag does not work with default colors for markers in files highlighting.
  4998.  
  4999. drkns 11.08.2011 13:44:23 +0200 - build 2141
  5000.  
  5001. 1. Mantis#0001850: "Transparent" flag state is not saved for marking character in files highlighting.
  5002.  
  5003. 2. Warnings.
  5004.  
  5005. svs 09.08.2011 23:18:26 +0300 - build 2140
  5006.  
  5007. 1. Mantis#0001832: FarNameToInputRecord / FarInputRecordToName problem
  5008.    (from Maximus)
  5009.    "Left-side" macro was run in Common area instead of "right-side" one
  5010.  
  5011. drkns 08.08.2011 11:37:13 +0200 - build 2139
  5012.  
  5013. 1.Mantis#0001589: Displaying of file extension in panel column or "Align file extensions"
  5014.  
  5015. drkns 08.08.2011 10:51:58 +0200 - build 2138
  5016.  
  5017. 1. And more.
  5018.  
  5019. drkns 07.08.2011 00:19:21 +0200 - build 2137
  5020.  
  5021. 1. Another couple of corrections in color processing.
  5022.  
  5023. drkns 06.08.2011 15:58:22 +0200 - build 2136
  5024.  
  5025. 1. Correction of file highlighting load/save.
  5026.  
  5027. drkns 06.08.2011 13:02:39 +0200 - build 2135
  5028.  
  5029. 1. Dependencies & warnings.
  5030.  
  5031. drkns 06.08.2011 11:42:59 +0200 - build 2134
  5032.  
  5033. 1. Mantis#0001844: Exclusion masks do not work
  5034.  
  5035. drkns 05.08.2011 15:10:25 +0200 - build 2133
  5036.  
  5037. 1. Warnings.
  5038.  
  5039. svs 05.08.2011 12:08:57 +0300 - build 2132
  5040.  
  5041. 1. Mantis#0001832: FarNameToInputRecord / FarInputRecordToName problem
  5042.    (from Maximus)
  5043.    1. now it can also be bound to the right button
  5044.    2. some formatting
  5045.    3. unused KeyMacro::GetRecordSize is commented out with "#if 0"
  5046.  
  5047. drkns 05.08.2011 10:11:19 +0200 - build 2131
  5048.  
  5049. 1. Crash if there was no write access to databases with WAL Journaling Mode (plugin history/cache).
  5050.  
  5051. 2. Privilege elevation requests are suppressed on volume change.
  5052.  
  5053. drkns 04.08.2011 23:43:18 +0200 - build 2130
  5054.  
  5055. 1. FarColor.ForegroundColor and FarColor.BackgroundColor - COLORREF. If FCF_<F|B>G_4BIT  flag is not mentioned, then 0xAABBGGRR formatted color is expected.
  5056.  
  5057. 2. Generated headers (farcolor.hpp, plugin.hpp) are now compiled during build process (as ╤ and ╤++) in order to discover possible problems at an earlier stage.
  5058.  
  5059. drkns 04.08.2011 12:17:52 +0200 - build 2129
  5060.  
  5061. 1. And once more.
  5062.  
  5063. drkns 04.08.2011 09:17:17 +0200 - build 2128
  5064.  
  5065. 1. Correction of 2125.1.
  5066.  
  5067. svs 04.08.2011 02:55:52 +0300 - build 2127
  5068.  
  5069. 1. Mantis#0001832: FarNameToInputRecord / FarInputRecordToName problem
  5070.    (from Maximus)
  5071.    Next...
  5072.    - if "right-hand" combinations were not assigned to any reserved actions earlier then FAR acts on them as on "left-hand" ones.
  5073.    - RightCtrlLeftAlt+something are not processed in any special way (meaning Right->Left replacement).
  5074.    - In macros, as anywhere else, if nothing is assigned to "right-hand" combination, then handle it like the "left-hand" one.
  5075.  
  5076.    svs> 255 is changed to 65535
  5077.  
  5078. drkns 03.08.2011 23:57:15 +0200 - build 2126
  5079.  
  5080. 1. external rendering support:
  5081.    - the values of some FCF_ flags are changed;
  5082.    - console.dll -> extendedconsole.dll;
  5083.    - selected text in editor retains its extended attributes.
  5084.  
  5085. drkns 03.08.2011 12:12:12 +0200 - build 2125
  5086.  
  5087. 1. "Non-4 bit" colors are cast to standard console palette more or less adequately.
  5088.  
  5089. drkns 02.08.2011 21:00:36 +0200 - build 2124
  5090.  
  5091. 1. Mantis#0001603: Autocompletion in the middle of the line works incorrectly in dialogs
  5092.  
  5093. 2. All `Reserved` in plugin.hpp are pointer-sized.
  5094.  
  5095. drkns 02.08.2011 10:55:14 +0200 - build 2123
  5096.  
  5097. 1. Mantis#0001842: incorrect buffer read in Execute.cpp
  5098.  
  5099. svs 01.08.2011 15:43:24 +0300 - build 2122
  5100.  
  5101. 1. Mantis#0001832: FarNameToInputRecord / FarInputRecordToName problem
  5102.    (from Maximus + skirda)
  5103.    The next iteration...
  5104.  
  5105. drkns 01.08.2011 11:02:24 +0200 - build 2121
  5106.  
  5107. 1. Correction of extended color attributes handling in files highlighting.
  5108.  
  5109. drkns 31.07.2011 16:34:12 +0200 - build 2120
  5110.  
  5111. 1. Correction for default highlighting of files.
  5112.  
  5113. drkns 31.07.2011 16:23:27 +0200 - build 2119
  5114.  
  5115. 1. Correction of 2118.1.
  5116.  
  5117. drkns 31.07.2011 16:09:11 +0200 - build 2118
  5118.  
  5119. 1. Inner changes in color processing.
  5120.  
  5121. 2. Experimental support for external rendering of FAR window.
  5122.  
  5123. drkns 28.07.2011 19:46:22 +0200 - build 2117
  5124.  
  5125. 1. Wipe progress bar is now shown.
  5126.  
  5127. 2. Wrapper can be switched off at compile time.
  5128.  
  5129. drkns 25.07.2011 19:15:39 +0200 - build 2116
  5130.  
  5131. 1. DM_LISTSETMOUSEREACTION no longer exists. Desired list behavior is set with DIF_LISTTRACKMOUSE/DIF_LISTTRACKMOUSEINFOCUS flags at dialog creation.
  5132.    By default the flags are not set for new plugins (the list does not track the mouse), DIF_LISTTRACKMOUSE is set for ANSI plugins (track always).
  5133.  
  5134. svs 24.07.2011 10:17:29 +0300 - build 2115
  5135.  
  5136. 1. Mantis#0001751: Menu creation in a macro
  5137.    (from DAtaMan)
  5138.    + additional key combinations are added to Menu.Show:
  5139.       Ctrl-Multiply - inversion of selection
  5140.       Ctrl-A - adjust the height of the menu
  5141.    - if Esc was pressed, "0" was returned. Now it is the empty string (or 0 if the result is an index)
  5142.  
  5143. 2. Mantis#0001793: Enable macro interruption with CtrlBreak during "visual" functions
  5144.    (from Maximus)
  5145.    After next patching of macro interruption drawing was broken at mmode(1,0)
  5146.  
  5147. drkns 21.07.2011 21:28:51 +0200 - build 2114
  5148.  
  5149. 1. Correction of 2113.1.
  5150.  
  5151. drkns 21.07.2011 10:15:15 +0200 - build 2113
  5152.  
  5153. 1. Now Far processes `set <var>` command by itself.
  5154.  
  5155. drkns 20.07.2011 13:13:51 +0200 - build 2112
  5156.  
  5157. 1. More correct message about starting error for the case of comspec use.
  5158.  
  5159. drkns 12.07.2011 11:07:16 +0200 - build 2111
  5160.  
  5161. 1. Inner changes in color processing.
  5162.  
  5163. drkns 11.07.2011 21:29:12 +0200 - build 2110
  5164.  
  5165. 1. Continuation of 2109.
  5166.  
  5167. drkns 11.07.2011 20:59:48 +0200 - build 2109
  5168.  
  5169. 1. Refactoring of Edit / EditControl.
  5170.  
  5171. zg 10.07.2011 21:53:31 +0200 - build 2108
  5172.  
  5173. 1. correction of 2106.1. MacroSendMacroText.AKey type is INPUT_RECORD because the mouse buttons may be AKey too.
  5174.  
  5175. zg 10.07.2011 16:02:13 +0200 - build 2107
  5176.  
  5177. 1. a second parameter is added to PluginStartupInfo.InputBox, the GUID of the created dialog.
  5178.  
  5179. zg 10.07.2011 15:43:54 +0200 - build 2106
  5180.  
  5181. 1. MacroSendMacroText.AKey type is now FarKey.
  5182.  
  5183. zg 10.07.2011 03:08:53 +0200 - build 2105
  5184.  
  5185. 1. now menus also can have a GUID. accordingly, a second parameter is added, PluginStartupInfo.Menu - the GUID of the created menu.
  5186.  
  5187. 2. Menu.Info.Id state is added to the macro language, which is the string representation of the current menu ID.
  5188.  
  5189. 3. a second parameter is added to PluginStartupInfo.Message, the GUID of the created dialog.
  5190.  
  5191. drkns 09.07.2011 14:58:46 +0200 - build 2104
  5192.  
  5193. 1. Rollback of 1771.2.
  5194.  
  5195. drkns 09.07.2011 02:05:28 +0200
  5196.  
  5197. 1. farkeys.hpp is no longer in API. KEY_* constants are for inner use only.
  5198.  
  5199. zg 09.07.2011 01:10:01 +0200 - build 2103
  5200.  
  5201. 1. dropped FarInputRecordToKey and FarKeyToInputRecord.
  5202.  
  5203. 2. FarKeyToName is replaced with FarInputRecordToName.
  5204.  
  5205. 3. FarNameToKey is replaced with FarNameToInputRecord.
  5206.  
  5207. drkns 08.07.2011 12:40:30 +0200 - build 2102
  5208.  
  5209. 1. #0001830 once more.
  5210.  
  5211. drkns 07.07.2011 19:55:23 +0200 - build 2101
  5212.  
  5213. 1. Mantis#0001830: elevation on attempt to copy a file from network to nul
  5214.  
  5215. drkns 07.07.2011 12:31:47 +0200 - build 2100
  5216.  
  5217. 1. DM_SETHISTORY event did not work.
  5218.  
  5219. drkns 07.07.2011 10:43:36 +0200 - build 2099
  5220.  
  5221. 1. VMenu.UserData still reminds of itself.
  5222.  
  5223. drkns 04.07.2011 21:44:34 +0200 - build 2098
  5224.  
  5225. 1. Another portion of size_t in API.
  5226.  
  5227. drkns 04.07.2011 16:15:32 +0200 - build 2097
  5228.  
  5229. 1. Correction of 2090.2.
  5230.  
  5231. drkns 04.07.2011 13:49:58 +0200 - build 2096
  5232.  
  5233. 1. Correction of 2062.1. As a consequence, Mantis#0001824: Excessive elevation in Drive menu.
  5234.  
  5235. drkns 04.07.2011 08:26:08 +0200 - build 2095
  5236.  
  5237. 1. Mantis#0001672: visual bugs after dialog close and Autocompletion
  5238.  
  5239. drkns 03.07.2011 21:00:12 +0200 - build 2094
  5240.  
  5241. 1. Mantis#0001822: grabber is broken
  5242.  
  5243. drkns 02.07.2011 13:47:03 +0200 - build 2093
  5244.  
  5245. 1. Switching low-fragmentation heap on only wherre is is actual.
  5246.  
  5247. drkns 01.07.2011 22:03:37 +0200 - build 2092
  5248.  
  5249. 1. Mantis#0001820: Panel drawing error with OPIF_DISABLEHIGHLIGHTING
  5250.  
  5251. drkns 01.07.2011 13:08:33 +0200 - build 2091
  5252.  
  5253. 1. %FARPROFILE%, %FARLOCALPROFILE%.
  5254.  
  5255. drkns 01.07.2011 09:06:56 +0200 - build 2090
  5256.  
  5257. 1. Mantis#0001818: ANSI wrapper error.
  5258.  
  5259. 2. "personal plugins path" setting and TI#2 no longer exist, "personal" plugins are loaded from <profile>\plugins.
  5260.  
  5261. 3. Due to #2, plugins' *.db moved to <profile>\PluginsData.
  5262.  
  5263. 4. Local (UseSystemProfiles=0) path to settings storage is %farhome%\Profile by default.
  5264.  
  5265. 5. Bugs in filestr.
  5266.  
  5267. svs 30.06.2011 13:53:47 +0300 - build 2089
  5268.  
  5269. 1. Mantis#0001751: Menu creation in macro
  5270.    (from DAtaMan)
  5271.    bugfixes:
  5272.      - CtrlAdd/CtrlSubtract processing was broken
  5273.      - more correct empty lines parsing
  5274.      - with an empty Title, the caption was "0"
  5275.      + automatic numeration takes place after duplicates sorting/deletion
  5276.      + separators are skipped on duplicates sorting/deletion
  5277.  
  5278. 2. SQLite: updated to 3.7.7.1
  5279.    (http://www.sqlite.org/releaselog/3_7_7_1.html)
  5280.  
  5281. drkns 29.06.2011 11:26:35 +0200 - build 2088
  5282.  
  5283. 1. Some debugging junk in 2087.
  5284.  
  5285. drkns 29.06.2011 11:12:33 +0200 - build 2087
  5286.  
  5287. 1. Functional under win2k again.
  5288.  
  5289. drkns 29.06.2011 08:28:07 +0200 - build 2086
  5290.  
  5291. 1. Mantis#1801 consequences.
  5292.  
  5293. drkns 29.06.2011 00:43:46 +0200 - build 2085
  5294.  
  5295. 1. Mantis#0001816: Error in ANSI wrapper dialog colors.
  5296.  
  5297. drkns 28.06.2011 22:38:49 +0200 - build 2084
  5298.  
  5299. 1. Correction of 2080.1.
  5300.  
  5301. drkns 28.06.2011 22:09:23 +0200 - build 2083
  5302.  
  5303. 1. Correct GUID for Network plugin.
  5304.  
  5305. 2. Mantis#0001766: Viewer new version.
  5306.  
  5307. drkns 28.06.2011 17:43:08 +0200 - build 2082
  5308.  
  5309. 1. Parameters are changed in ClosePanelW, ConfigureW, ProcessDialogEventW, ProcessEditorEventW, ProcessPanelEventW, ProcessPanelInputW, ProcessSynchroEventW, ProcessViewerEventW.
  5310.  
  5311. drkns 28.06.2011 11:21:36 +0200 - build 2081
  5312.  
  5313. 1. Mantis#0001815: Error in ACTL_GETARRAYCOLOR
  5314.  
  5315. 2. Another gcc headers inadequacy.
  5316.  
  5317. 3. Rollback of 2079.2.
  5318.  
  5319. drkns 27.06.2011 15:23:38 +0200 - build 2080
  5320.  
  5321. 1. On elevation, basic and auxiliary processes are bound to one job object.
  5322.  
  5323. drkns 27.06.2011 11:59:49 +0200 - build 2079
  5324.  
  5325. 1. Mantis#0001809: Incorrect console scrolling on exit.
  5326.  
  5327. 2. Endless loop on tree creation for directories "." and "..".
  5328.  
  5329. drkns 25.06.2011 18:20:20 +0200 - build 2078
  5330.  
  5331. 1. Mantis#0001812: Editor highlighting is broken
  5332.  
  5333. drkns 24.06.2011 21:31:25 +0200 - build 2077
  5334.  
  5335. 1. Mantis#0001807: Freeze after CtrlAltPgUp/CtrlAltPgDn key press
  5336.  
  5337. drkns 23.06.2011 16:46:50 +0200 - build 2076
  5338.  
  5339. 1. Mantis#0001801: process full PluginPanelItem.FileName content in filter
  5340.  
  5341. 2. Mantis#0001805: Mistypes in English help file
  5342.  
  5343. 3. Mantis#0001806: Vertical blocks cannot be selected with CursorBeyondEOL switched off
  5344.  
  5345. 4. Mantis#0001807: Freeze after CtrlAltPgUp/CtrlAltPgDn key press
  5346.  
  5347. drkns 21.06.2011 21:51:58 +0200 - build 2075
  5348.  
  5349. 1. ACTL_GETSYSWORDDIV expects the buffer size in Param1.
  5350.  
  5351. 2. More changes on 2070.
  5352.  
  5353. drkns 21.06.2011 20:14:06 +0200 - build 2074
  5354.  
  5355. 1. And more.
  5356.  
  5357. drkns 21.06.2011 19:06:45 +0200 - build 2073
  5358.  
  5359. 1. And once more.
  5360.  
  5361. drkns 21.06.2011 14:17:17 +0200 - build 2072
  5362.  
  5363. 1. Correction of 2070.
  5364.  
  5365. drkns 21.06.2011 10:53:36 +0200 - build 2071
  5366.  
  5367. 1. Continuation of 2070.
  5368.    API uses FAR_CHAR_INFO instead of CHAR_INFO.
  5369.  
  5370. drkns 20.06.2011 23:22:12 +0200 - build 2070
  5371.  
  5372. 1. Hello rainbow: using FarColor everywhere inside.
  5373.    Changes in API:
  5374.    - FarColor* is passed as Param2 in DN_CTLCOLORDIALOG, it must be changed at once.
  5375.    - FarDialogItemColors* is passed as Param2 in DN_CTLCOLORDLGITEM, FarDialogItemColors.Colors must be changed as follows: Colors[0] == lwlb, Colors[1] == lwhb, Colors[2] == hwlb, Colors[3] == hwhb.
  5376.    - FarDialogItemColors* is passed as Param2 in DN_CTLCOLORDLGLIST, the rest is unchanged.
  5377.    - ACTL_GETCOLOR, ACTL_GETARRAYCOLOR, ACTL_SETARRAYCOLOR work with FarColor.
  5378.    - DIF_SETCOLOR no longer exists, the color must be given in the handler.
  5379.  
  5380.    Color storage format is changed, generalconfig.db and highlight.db must be deleted.
  5381.  
  5382. drkns 18.06.2011 20:39:57 +0200 - build 2069
  5383.  
  5384. 1. Mantis#0001800: CPU idle load.
  5385.  
  5386. drkns 17.06.2011 08:17:00 +0200 - build 2068
  5387.  
  5388. 1. Completion list separators have got captions now.
  5389.  
  5390. 2. Inner changes in color processing.
  5391.  
  5392. drkns 16.06.2011 19:44:44 +0200 - build 2067
  5393.  
  5394. 1. Dialog invocation after DM_CLOSE caused FAR crash.
  5395.  
  5396. 2. Directory read optimization.
  5397.  
  5398. 3. Corrections in plugin.hpp.
  5399.  
  5400. svs 10.06.2011 13:33:43 +0300 - build 2066
  5401.  
  5402. 1. Mantis#0001793: Enable interrupting of a macro with CtrlBreak during "visual" functions
  5403.    Another correction...
  5404.  
  5405. 2. Mantis#0001789: A function to control fast filtering in lists (CtrlAltF)
  5406.    (from Maximus)
  5407.    Macro functions are added:
  5408.      1) Perform filtering operations (CtrlAltF)
  5409.         N=Menu.Filter([Action[,Mode])
  5410.      2) Perform filter string operations (CtrlAltF)
  5411.         S=Menu.FilterStr([Action[,S]])
  5412.  
  5413. svs 07.06.2011 14:04:54 +0300 - build 2065
  5414.  
  5415. 1. Mantis#0001795: Add Plugin.Load, Plugin.Unload functions
  5416.    2 new macro functions:
  5417.       N=Plugin.Load(DllPath[,ForceLoad])   - load a plugin
  5418.       N=Plugin.Unload(DllPath)             - unload a plugin
  5419.       they return 1 if successful, 0 otherwise
  5420.  
  5421. svs 06.06.2011 18:08:55 +0300 - build 2064
  5422.  
  5423. 1. Mantis#0001793: Enable macro interrupting with CtrlBreak during "visual" functions
  5424.    While MsgBox, Prompt or Menu.Show are being shown, the macro cannot be interrupted with CtrlBreak.
  5425.  
  5426. t-rex 05.06.2011 21:47:13 +0200 - build 2063
  5427.  
  5428. 1. From Maximus: Mantis#1794: If CtrlAltF filtering removes all items from a list, then it is not redrawn.
  5429.  
  5430. drkns 03.06.2011 15:38:45 +0200 - build 2062
  5431.  
  5432. 1. Start of Windows Explorer with "." + ShiftEnter did not work at the root of a volume.
  5433.  
  5434. 2. Xlat settings are saved at exit to avoid detection of Russian keyboard layout at every run.
  5435.  
  5436. 3. Other makeup.
  5437.  
  5438. svs 03.06.2011 09:15:08 +0300 - build 2061
  5439.  
  5440. 1. Mantis#0001766: New viewer version
  5441.    (from 2useven10)
  5442.    long lines fix (fixed errors + MaxLineSize: Min=100, Def=10000, Max=100000)
  5443.  
  5444. 2. Mantis#0001790: Switch XLat on by default if Russian keyboard layout is installed in the system
  5445.    (from Maximus)
  5446.  
  5447. drkns 31.05.2011 18:23:46 +0200 - build 2060
  5448.  
  5449. 1. Mantis#0001787: ANSI wrapper error (ACTL_GETWINDOWINFO).
  5450.  
  5451. svs 28.05.2011 15:19:55 +0300 - build 2059
  5452.  
  5453. 1. Mantis#0001786: Problems with network drives connection
  5454.    (from Maximus)
  5455.  
  5456. svs 28.05.2011 10:56:14 +0300 - build 2058
  5457.  
  5458. 1. Mantis#0001782: Selection error when TABs are present
  5459.  
  5460. t-rex 28.05.2011 02:22:22 +0200 - build 2057
  5461.  
  5462. 1. Mantis#0001784: Plugin cache bugs (continued).
  5463.  
  5464. drkns 27.05.2011 09:34:24 +0200 - build 2056
  5465.  
  5466. 1. On new file creation, the codepage was set incorrectly.
  5467.  
  5468. drkns 27.05.2011 09:15:37 +0200 - build 2055
  5469.  
  5470. 1. Mantis#0001784: Plugin cache bugs
  5471.  
  5472. svs 26.05.2011 16:17:09 +0300 - build 2054
  5473.  
  5474. 1. In explanation of comments to Mantis#0001782.
  5475.    Macro: Prohibit block selection (Editor.Sel()) beyond the line if "[ ] Cursor beyond end of line"
  5476.    (attempt No.1)
  5477.  
  5478. 2. Mantis#0001766: Viewer new version
  5479.    (from 2useven10)
  5480.    About 30% of code is rewritten...
  5481.  
  5482.    Guts:
  5483.     - search is completely redone
  5484.     - caching of carriage returns is added
  5485.     - Unicode files are now as other ones (say no to size in characters!)
  5486.     - HexView is redone
  5487.     - search dialog is revised
  5488.  
  5489.    Functions:
  5490.     - regular expressions search is added (line-by-line both directions)
  5491.     - next search is always looped up to search start or direction change
  5492.     - possibility of variable maximal line length is added ("Viewer.MaxLineSize:TYPE_INTEGER" parameter)
  5493.        the minimal value is    80
  5494.        the default value is  2048
  5495.        the maximal value is 16384
  5496.     - an option is added ("Viewer.SearchEditFocus:TYPE_INTEGER"), allowing input field automatic focusing
  5497.       after search parameters change. By default it is switched off (=0)
  5498.  
  5499. drkns 26.05.2011 14:35:27 +0200 - build 2053
  5500.  
  5501. 1. Just in case, situation "UID obtained from cache does not match the one received from the plugin" is taken into account.
  5502.  
  5503. drkns 26.05.2011 14:11:16 +0200 - build 2052
  5504.  
  5505. 1. Correction of 2050.
  5506.  
  5507. drkns 26.05.2011 08:52:56 +0200 - build 2051
  5508.  
  5509. 1. More correct solution for M#1783.
  5510.  
  5511. drkns 25.05.2011 16:40:51 +0200 - build 2050
  5512.  
  5513. 1. Continuing the wrapper abstraction.
  5514.  
  5515. 2. Mantis#0001783: Garbage in console caption when copying files
  5516.  
  5517. drkns 25.05.2011 12:15:20 +0200 - build 2049
  5518.  
  5519. 1. Continuing the wrapper abstraction.
  5520.  
  5521. drkns 24.05.2011 23:49:08 +0200 - build 2048
  5522.  
  5523. 1. Continuation of 1978.
  5524.    - wrapper partial abstraction: PluginW is simply Plugin now, PluginA is inherited from it.
  5525.    - some more copy&paste is eliminated.
  5526.  
  5527. 2. Warnings.
  5528.  
  5529. drkns 23.05.2011 21:31:52 +0200 - build 2047
  5530.  
  5531. 1. Wrong dialogs centering in some cases.
  5532.  
  5533. svs 23.05.2011 16:38:21 +0300 - build 2046
  5534.  
  5535. 1. Mantis#0001755: Cannot change the focus in RadioButton click handler
  5536.    (from 2useven10)
  5537.  
  5538. 2. EF_DISABLESAVEPOS flag is added to API: do not save the position.
  5539.    also, EF_LOCKED flag is restored: lock editing on file open.
  5540.  
  5541. 3. Mantis#0001183: On Reload, codepage memorizing must take place before read
  5542.    (from 2useven10)
  5543.  
  5544. svs 23.05.2011 12:13:01 +0300 - build 2045
  5545.  
  5546. 1. Mantis#0001775: Shift-F4: Possibility of repeated automatic codepage detection at file open
  5547.    (from 2useven10)
  5548.  
  5549. zg 21.05.2011 20:32:05 +0200 - build 2044
  5550.  
  5551. 1. Storing of z-positions of color regions with equal priorities. but it is better to use the different ones.
  5552.  
  5553. 2. gcc warnings in sqlite.c.
  5554.  
  5555. t-rex 21.05.2011 13:06:02 +0200 - build 2043
  5556.  
  5557. 1. EDITOR_COLOR_ANSI_PRIORITY -> EDITOR_COLOR_NORMAL_PRIORITY
  5558.  
  5559. 2. Since Priority is unsigned then SortColors() must be corrected.
  5560.  
  5561. 3. sqlite 3.7.6.3
  5562.  
  5563. 4. tinyxml 2.6.2
  5564.  
  5565. drkns 21.05.2011 13:00:29 +0200 - build 2042
  5566.  
  5567. 1. Mantis#0001771: structure size in DM_GETDIALOGINFO is checked incorrectly
  5568.  
  5569. 2. Mantis#0001778: Display Title instead of ModuleName in plugin selection list
  5570.  
  5571. zg 20.05.2011 21:25:11 +0200 - build 2041
  5572.  
  5573. 1. Two fields are appended to EditorColor: Owner and Priority.
  5574.    Owner is the GUID of the color region owner.
  5575.    Priority is the color region's priority. the more is the value, the higher is the color region.
  5576. 2. deletion magic with ECTL_ADDCOLOR is removed. Now there are ECTL_DELCOLOR and EditorDeleteColor for that.
  5577.    only areas which owner equals to EditorDeleteColor.Owner are deleted.
  5578.  
  5579. svs 20.05.2011 17:44:06 +0300 - build 2040
  5580.  
  5581. 1. Mantis#0001774: Possibility of creation of codepages 'black list' for codepages autodetection
  5582.    (from 2useven10)
  5583.    A strNoAutoDetectCP text parameter is added to configuration, it can contain codepages to be excluded
  5584.    from UCD autodetection, separated with commas.
  5585.  
  5586.    the listed codepages are excluded from automatic detection with nsUniversalDetectorEx.
  5587.    unicode pages autodetection does not depend on it, therefore UTF-8 is detected even if
  5588.    65001 is listed here. If UniversalDetector returns a page from this list, it is replaced with
  5589.    the default ANSI or OEM, depending on settings.
  5590.  
  5591.    if strNoAutoDetectCP is:
  5592.      "" -- no UCD autodetection filtration (this is by default like now)
  5593.        "-1" -- only ACP, OEMCP and favorites are passed if Ctrl-H is on (otherwise there is no filtering)
  5594.      "cp1,cp2,..." -- the listed ones are rejected
  5595.  
  5596.    an example: "1250,1252,1253,1255,855,10005,28592,28595,28597,28598,38598,65001" - these
  5597.            codepages will be excluded from detection
  5598.  
  5599. 2. Mantis#0001768: testfolder(): incorrect return code for an empty directory
  5600.    ...another attempt :-(
  5601.  
  5602. drkns 20.05.2011 15:02:43 +0200 - build 2039
  5603.  
  5604. 1. At folder creation, it is possible to add its reparse point.
  5605.  
  5606. 2. A couple of minorities
  5607.  
  5608. svs 20.05.2011 11:13:13 +0300 - build 2038
  5609.  
  5610. 1. Mantis#0001776: automatic scrolling of the appended file was broken
  5611.    (from 2useven10)
  5612.  
  5613. 2. Mantis#0001736: akey(1,0)==akey(1,1) Far 3.0.1931 far2.0.1807
  5614.    Continuation of the saga.
  5615.  
  5616.      The macro on CtrlShifF1:
  5617.          msgbox(akey(1,0),akey(1,1))
  5618.          works fine:
  5619.          +- CtrlShiftF1 -+
  5620.          |  CtrlShiftF1  |
  5621.          although:
  5622.          CtrlO msgbox(akey(1,0),akey(1,1))
  5623.          works incorrectly (Shift modifier is lost) :
  5624.          +-- CtrlF1 ---+
  5625.          | CtrlShiftF1 |
  5626.          and if the macro looks like this:
  5627.          msgbox() msgbox(akey(1,0),akey(1,1))
  5628.          then there's no modifiers at all:
  5629.          +---- F1 -----+
  5630.          | CtrlShiftF1 |
  5631.  
  5632.          The macro on MsWheelDown:
  5633.          msgbox(Akey(0),MsWheelDown)
  5634.          +- 196609 -+
  5635.          |  131076  |
  5636.  
  5637.     Here, we create artificial environment for MsWheelXXX - let's use 4 positions after VK_F24 (they seem to be unused anyway)
  5638.  
  5639.      VK_F24+1 == KEY_MSWHEEL_DOWN
  5640.      VK_F24+2 == KEY_MSWHEEL_UP
  5641.      VK_F24+3 == KEY_MSWHEEL_LEFT
  5642.      VK_F24+4 == KEY_MSWHEEL_RIGHT
  5643.  
  5644.     (in case of problems it would be necessary to "move" these values to the wVirtualKeyCode's most significant byte, and set the least significant byte to FF)
  5645.  
  5646.     Reason: this is a mouse event, and we need a keyboard one. It has been changed before, but Rec was just a stub.
  5647.  
  5648.     Also, in all places where CalcKeyCode was used aside from GetInputRecord, now it is necessary to
  5649.     use ShieldCalcKeyCode. This function "protects" FarKeyboardState of "main process".
  5650.  
  5651. 3. Mantis#0001768: testfolder(): incorrect return code for an empty directory
  5652.    TSTFLD_ERROR is still returned for files
  5653.  
  5654.  
  5655. drkns 20.05.2011 09:07:19 +0200 - build 2037
  5656.  
  5657. 1. ExitInfo structure is passed to ExitFARW (for the future).
  5658.  
  5659. svs 19.05.2011 18:11:44 +0300 - build 2036
  5660.  
  5661. 1. Mantis#0001768: testfolder(): incorrect return code for an empty directory
  5662.  
  5663.    ACHTUNG!!!
  5664.  
  5665.    testfolder() function return codes have been changed:
  5666.  
  5667.        2 the folder is not empty
  5668.        1 the folder is empty
  5669.        0 the folder does not exist
  5670.       -1 access denied
  5671.       -2 an error (incorrect parameter or inner problems with memory allocation)
  5672.  
  5673.       If > 0 - it exists and is accessible
  5674.       If = 0 - it doesn't exist, but one can try to create it
  5675.       If < 0 - the function doesn't report anything encouraging
  5676.  
  5677. 2. Mantis#0001773: giving an opportunity of enabling AutoDetect menu item on Shift-F8
  5678.    addition to the editor
  5679.    (from 2useven10)
  5680.  
  5681. svs 19.05.2011 14:25:38 +0300 - build 2035
  5682.  
  5683. 1. Mantis#0001772: Minor makeup in CacheRead code and its use in the viewer
  5684.    minor code cleanup
  5685.    (from 2useven10)
  5686.  
  5687. svs 19.05.2011 14:07:17 +0300 - build 2034
  5688.  
  5689. 1. Mantis#0001773: giving an opportunity of enabling AutoDetect menu item on Shift-F8
  5690.    Just a parameter is added to make this usable (so far, this is available in the viewer only)
  5691.    (from 2useven10)
  5692.  
  5693. drkns 17.05.2011 23:00:00 +0200 - build 2033
  5694.  
  5695. 1. VMenu.UserData still recalls itself.
  5696.  
  5697. 2. ConsoleTitle refactoring.
  5698.  
  5699. drkns 16.05.2011 20:41:14 +0200 - build 2032
  5700.  
  5701. 1. Handle leak at virtual volumes detach.
  5702.  
  5703. 2. Mantis#0001769: Error in DM_EDITUNCHANGEDFLAG(id,-1)
  5704.  
  5705. t-rex 15.05.2011 20:10:24 +0200 - build 2031
  5706.  
  5707. 1. OpenW(OPEN_ANALYSE) may return -2 as before in OpenFilePluginW.
  5708.  
  5709. drkns 14.05.2011 18:06:52 +0200 - build 2030
  5710.  
  5711. 1. Crash at processing a filter in the history.
  5712.  
  5713. 2. GCC.
  5714.  
  5715. svs 14.05.2011 14:53:18 +0300 - build 2029
  5716.  
  5717. 1. Mantis#0001687: ProcessConsoleInput
  5718.    The next correction
  5719.  
  5720. 2. Macro: A bug in Editor.Sel() - TAB characters were not taken into account...
  5721.    (the report is from fardev@googlegroups.com newsgroup)
  5722.  
  5723. drkns 11.05.2011 20:49:34 +0200 - build 2028
  5724.  
  5725. 1. Some minor changes.
  5726.  
  5727. svs 11.05.2011 17:44:58 +0300 - build 2027
  5728.  
  5729. 1. ProcessEditorInputW - the parameter is changed:
  5730.     now this is a pointer to the structure
  5731.       struct ProcessEditorInputInfo
  5732.       {
  5733.         size_t StructSize;
  5734.         INPUT_RECORD Rec;
  5735.       };
  5736.  
  5737. 2. Renaming: ProcessKeyW -> ProcessPanelInputW
  5738.  
  5739. 3. and... the parameter is changed in ProcessPanelInputW:
  5740.     a pointer to the structure
  5741.       struct ProcessPanelInputInfo
  5742.       {
  5743.         size_t StructSize;
  5744.         INPUT_RECORD Rec;
  5745.       };
  5746.  
  5747. 4. Mantis#0001759: ProcessKeyW is called twice
  5748.    ...since now, for A-plugins only. Preprocessing, see Mantis#0001687
  5749.  
  5750. 5. Mantis#0001687: ProcessConsoleInput
  5751.    "At the beginning..."
  5752.    (the code is still "sealed" with MANTIS_0001687 #define)
  5753.  
  5754. 6. Mantis#0000466: Macro language extension with plugins
  5755.    "...continuation..."
  5756.    (the code is still "sealed" with MANTIS_0000466 #define)
  5757.  
  5758. 7. A minor addition in the form of DEFUSERFLAGS in makefile_vc file
  5759.    ...for purposes similar to 5 and 6.
  5760.  
  5761. svs 10.05.2011 09:29:07 +0300 - build 2026
  5762.  
  5763. 1. Mantis#0001760: FSF.FarInputRecordToKey modifies inner FAR variables
  5764.  
  5765. drkns 08.05.2011 16:37:54 +0200 - build 2025
  5766.  
  5767. 1. Mantis#0001622: Not a very nice look of the file search results window
  5768.  
  5769. 2. Mantis#0001763: Far 3.0 gcc build error (incorrect character case in an include)
  5770.  
  5771. 3. Another couple of minorities.
  5772.  
  5773. drkns 04.05.2011 12:24:24 +0200 - build 2024
  5774.  
  5775. 1. And more.
  5776.  
  5777. drkns 04.05.2011 12:06:23 +0200 - build 2023
  5778.  
  5779. 1. And once more.
  5780.  
  5781. drkns 04.05.2011 11:19:21 +0200 - build 2022
  5782.  
  5783. 1. Continuation of 2021.
  5784.  
  5785. drkns 04.05.2011 10:15:20 +0200 - build 2021
  5786.  
  5787. 1. VMenu.UserData again: DM_LISTGETDATA now always returns a pointer to data.
  5788.  
  5789. drkns 03.05.2011 15:27:09 +0200 - build 2020
  5790.  
  5791. 1. Correction of the previous build.
  5792.  
  5793. drkns 03.05.2011 12:41:45 +0200 - build 2019
  5794.  
  5795. 1. For FCTL_GETPANELITEM, FCTL_GETSELECTEDPANELITEM, FCTL_GETCURRENTPANELITEM, the FarGetPluginPanelItem structure must be passed as Param2:
  5796.  
  5797.    struct FarGetPluginPanelItem
  5798.    {
  5799.      size_t Size;
  5800.      PluginPanelItem* Item;
  5801.    };
  5802.  
  5803.    Item - a pointer to an input data buffer
  5804.    Size - the size of the buffer.
  5805.  
  5806.    The buffer will be written with data only if its size is big enough.
  5807.  
  5808.    The returned value: required buffer size.
  5809.  
  5810. 2. For DM_GETDLGITEM, the FarGetDialogItem structure must be passed as Param2. The principle is the same as for FCTL_GET*PANELITEM
  5811.  
  5812. drkns 30.04.2011 16:28:33 +0200 - build 2018
  5813.  
  5814. 1. warnings.
  5815.  
  5816. 2. makeup in BaseFormat.
  5817.  
  5818. drkns 29.04.2011 23:55:55 +0200 - build 2017
  5819.  
  5820. 1. G╤╤ warnings.
  5821.  
  5822. 2. A couple of minorities.
  5823.  
  5824. t-rex 29.04.2011 21:06:02 +0200 - build 2016
  5825.  
  5826. 1. Instead of SCTL_SUBKEY, there is SCTL_CREATESUBKEY now (open the existing one or create if none exist) and SCTL_OPENSUBKEY (open the existing one).
  5827.  
  5828. 2. Mantis#1757: SettingsControl(SCTL_CREATE) called from ExitFARW returns NULL.
  5829.  
  5830. t-rex 29.04.2011 03:57:23 +0200 - build 2015
  5831.  
  5832. 1. Each plugin's settings are stored in a separate base in %appdata%\Far Manager\Profile\Plugins.
  5833.    This eliminates the possibility of locking of the whole base with a buggy plugin.
  5834.    pluginsconfig.db may be removed.
  5835.  
  5836. 2. Export/import for 1.
  5837.  
  5838. t-rex 29.04.2011 00:42:27 +0200 - build 2014
  5839.  
  5840. 1. pluginhotkeys export/import. In common, the history is only left, but I still think that it does not need to.
  5841.  
  5842. 2. Far.exe /clearcache [Custom location for Far configuration files - overrides Far.exe.ini]
  5843.    Plugins cache cleaning.
  5844.  
  5845. t-rex 28.04.2011 21:44:56 +0200 - build 2013
  5846.  
  5847. 1. Useless code was forgotten.
  5848.  
  5849. t-rex 28.04.2011 21:33:34 +0200 - build 2012 future
  5850.  
  5851. 1. Import from XML for HierarchicalConfig.
  5852.  
  5853. 2. panelmodes settings moved to HierarchicalConfig, old panelmodes.db is likely to be removed.
  5854.  
  5855. 3. A minor change in xml format - the main key is farconfig.
  5856.  
  5857. drkns 28.04.2011 14:16:24 +0200 - build 2011
  5858.  
  5859. 1. A couple of minorities on paths initialization.
  5860.  
  5861. drkns 28.04.2011 13:52:23 +0200 - build 2010
  5862.  
  5863. 1. For some reason, the copier did some magic like "if the filter is on then move files as copy + delete".
  5864.    It must have been fixed by now. Some testing is needed, just in case.
  5865.  
  5866. drkns 28.04.2011 08:51:32 +0200 - build 2009
  5867.  
  5868. 1. Unicode support in xml file names.
  5869.  
  5870. t-rex 28.04.2011 02:08:28 +0200 - build 2008
  5871.  
  5872. 1. Incorrect creation of xml with non-English file name.
  5873.  
  5874. t-rex 28.04.2011 01:57:57 +0200 - build 2007
  5875.  
  5876. 1. HierarchicalConfig bases export capability (import will be done later).
  5877.    I.e. pluginsconfig, filters, highlight, shortcuts.
  5878.  
  5879. t-rex 27.04.2011 23:34:03 +0200 - build 2006
  5880.  
  5881. 1. Associations export/import capability.
  5882.    Before the import, all current associations are deleted (if "associations" tag exists in xml).
  5883.  
  5884. t-rex 27.04.2011 21:16:21 +0200 - build 2005
  5885.  
  5886. 1. Moved db/xml dependent code from main.cpp to configdb.cpp.
  5887.  
  5888. t-rex 27.04.2011 20:35:54 +0200 - build 2004
  5889.  
  5890. 1. Far.exe /export <out.xml> [Custom location for Far configuration files - overrides Far.exe.ini]
  5891.    Far.exe /import <in.xml> [Custom location for Far configuration files - overrides Far.exe.ini]
  5892.    So far, it works for generalconfig only.
  5893.  
  5894. drkns 27.04.2011 15:48:21 +0200 - build 2003
  5895.  
  5896. 1. ucd, sqlite and tinyxml build is redone.
  5897.  
  5898. t-rex 27.04.2011 14:35:14 +0200 - build 2002
  5899.  
  5900. 1. Continuing playing with xml.
  5901.  
  5902. drkns 27.04.2011 11:36:52 +0200 - build 2001
  5903.  
  5904. 1. Plugin which exported ProcessDialogEvent and created dialogs in SetStartupInfo caused far recursion.
  5905.  
  5906. svs 27.04.2011 10:11:51 +0300 - build 2000
  5907.  
  5908.    Millennium! :-)
  5909.  
  5910. 1. Mantis#0001751: Menu creation in a macro
  5911.  
  5912. t-rex 27.04.2011 01:40:51 +0200 - build 1999
  5913.  
  5914. 1. Initial stage of xml settings import/export implementation.
  5915.    tinyxml is added to the project.
  5916.  
  5917. t-rex 26.04.2011 22:54:14 +0200 - build 1998
  5918.  
  5919. 1. Minor changes in plugin settings API.
  5920.    SCTL_SET doesn't accept FST_SUBKEY any more because this is meaningless and it is done by SCTL_SUBKEY.
  5921.  
  5922. 2. For the documentation - SCTL_SET with FST_STRING defines a description to a key if FarSettingsItem.Name==NULL.
  5923.    It does not work if Root==0 because the description is set by FAR in this case (it is the name of the plugin).
  5924.  
  5925. t-rex 26.04.2011 00:40:52 +0200 - build 1997
  5926.  
  5927. 1. Minor changes in plugin settings API.
  5928.    For SCTL_DELETE, if FarSettingsValue.Value==NULL then FarSettingsValue.Root key is deleted.
  5929.    Otherwise, Value only is deleted (even when a key with the same name exists).
  5930.  
  5931. t-rex 25.04.2011 22:36:30 +0200 - build 1996
  5932.  
  5933. 1. An addition in DlgBuilder.
  5934.  
  5935. t-rex 25.04.2011 21:26:05 +0200 - build 1995
  5936.  
  5937. 1. Additions in DlgBuilder.
  5938.  
  5939. drkns 24.04.2011 13:38:27 +0200 - build 1994
  5940.  
  5941. 1. Once again, the epic about VMenu.UserData.
  5942.  
  5943. t-rex 24.04.2011 04:06:00 +0200 - build 1993
  5944.  
  5945. 1. Forum: FAR crashes at exit with F10.
  5946.  
  5947. 2. Forum: crash at an attempt to call anything from the user menu.
  5948.    Continuing the saga of VMenu.UserData.
  5949.  
  5950. 3. UserProfileDir default value was incorrect.
  5951.  
  5952. t-rex 23.04.2011 12:10:43 +0200 - build 1992
  5953.  
  5954. 1. For the future, "System.Exception.FarEvent.svc" setting is renamed to "System.Exception.FarEventSvc".
  5955.  
  5956. t-rex 23.04.2011 02:04:07 +0200 - build 1991
  5957.  
  5958. 1. Unused code is removed.
  5959.  
  5960. t-rex 23.04.2011 00:44:55 +0200 - build 1990
  5961.  
  5962. 1. Done, FAR looks for nothing but macros in the registry now.
  5963.    The settings have moved again, now they are here:
  5964.    %APPDATA%\Far Manager\Profile
  5965.    %LOCALAPPDATA%\Far Manager\Profile
  5966.  
  5967. 2. /u is not actual now - it now affects only ANSI plugins (well, also macros so far).
  5968.  
  5969. 3. /s key for manual specification of a folder containing the configuration (the folder will be created if it does not exist).
  5970.  
  5971. 4. New parameters in Far.exe.ini:
  5972.    UseSystemProfiles=2
  5973.    UserProfileDir
  5974.    TemplatePluginsPath
  5975.    DefaultLanguage
  5976.  
  5977. 5. Various fixes in help.
  5978.  
  5979. t-rex 22.04.2011 19:39:06 +0200 - build 1989
  5980.  
  5981. 1. poscache in sqlite is done. it is cleared with the same method as the history.
  5982.    In common, detaching from the registry is completed, what has been left is a decision what to do with macros.
  5983.    Who will take it?
  5984.  
  5985. drkns 22.04.2011 16:16:16 +0200 - build 1988
  5986.  
  5987. 1. ACTL_GETCOLOR, ACTL_SETCURRENTWINDOW, ACTL_SETPROGRESSSTATE, ACTL_WAITKEY use Param1.
  5988.  
  5989. drkns 22.04.2011 15:44:44 +0200 - build 1987
  5990.  
  5991. 1. All *Control functions now return INT_PTR.
  5992.  
  5993. 2. Param2 is now void* everywhere.
  5994.  
  5995. 3. gcc warnings.
  5996.  
  5997. t-rex 22.04.2011 15:11:26 +0200
  5998.  
  5999. 1. Help topic about user menu is updated.
  6000.  
  6001. 2. Help topic about filters is added.
  6002.  
  6003. drkns 22.04.2011 08:37:22 +0200 - build 1986
  6004.  
  6005. 1. Continuing 1982.1.
  6006.  
  6007. t-rex 22.04.2011 03:24:23 +0200 - build 1985
  6008.  
  6009. 1. Old history items deletion takes part at the exit from FAR only.
  6010.  
  6011. 2. Deletion is now organized with the following method (without configuration so far):
  6012.    everything older than 90 days is removed, but only if the number of items is more than 1000.
  6013.  
  6014. 3. Separation by days could show the same day twice.
  6015.  
  6016. drkns 21.04.2011 21:21:21 +0200 - build 1984
  6017.  
  6018. 1. Mantis#0001100: AltShiftIns on .. copies path with the trailing backslash into the clipboard
  6019.  
  6020. svs 21.04.2011 20:50:39 +0300 - build 1983
  6021.  
  6022. 1. Mantis#0001751: Menu creation in macro
  6023.    A macrofunction is added, Menu.Show()
  6024.      S=Menu.Show(Items[,Title[,Flags[,FindOrFilter[,X[,Y]]]]])
  6025.    see the Encyclopedia for the description.
  6026.  
  6027. drkns 21.04.2011 16:44:21 +0200 - build 1982
  6028.  
  6029. 1. History items selection did not work in x64, and maybe something else, because the problem was deeper.
  6030.  
  6031. 2. Histories are displayes with separation by days.
  6032.  
  6033. 3. Some more minorities.
  6034.  
  6035. t-rex 21.04.2011 03:19:32 +0200 - build 1981
  6036.  
  6037. 1. Warnings etc.
  6038.  
  6039. t-rex 21.04.2011 01:56:16 +0200 - build 1980
  6040.  
  6041. 1. poscache in sqlite, it will be stored along with the history, 50% completed, does not work yet.
  6042.  
  6043. t-rex 20.04.2011 21:14:08 +0200 - build 1979
  6044.  
  6045. 1. The history is now located in %LOCALAPPDATA% by default (no configuration yet).
  6046.  
  6047. 2. PRAGMA journal_mode = WAL; for plugins cache and history this has a very positive effect on performance.
  6048.  
  6049. drkns 20.04.2011 15:56:22 +0200 - build 1978
  6050.  
  6051. 1. Refactoring of plugin classes. Duplicating code is removed.
  6052.  
  6053. t-rex 20.04.2011 01:47:43 +0200 - build 1977
  6054.  
  6055. 1. History stored in sqlite is done in common, CtrlE/CtlX/CtrlEnd must be functional.
  6056.    So far the history is stored for 90 days, all unlocked records older than 90 days are removed automatically.
  6057.  
  6058. t-rex 19.04.2011 22:51:10 +0200 - build 1976
  6059.  
  6060. 1. $N -> ?N in sqlite statements for the history.
  6061.  
  6062. t-rex 19.04.2011 22:45:21 +0200 - build 1975
  6063.  
  6064. 1. The history is now in sqlite - about 80% is ready.
  6065.    - unified history for all open FAR sessions - work with history goes through the database only, the history is not stored in memory
  6066.    - if the history is off the it isn't processed at all (it was processed in current FAR session)
  6067.    - CtrlE/CtlX/CtrlEnd etc still do not work.
  6068.    - so far the last 90 days of history are stored, unlocked records older than 90 days are removed automatically
  6069.  
  6070.    Please test, especially the performance at large history (especially in dialogs).
  6071.  
  6072. drkns 19.04.2011 16:35:53 +0200 - build 1974
  6073.  
  6074. 1. Visual bug in folder shortcuts.
  6075.  
  6076. 2. Correction of current character code display in editor status line.
  6077.  
  6078. 3. FormatString and FormatScreen classes can format output in oct and hex.
  6079.  
  6080. t-rex 19.04.2011 03:40:18 +0200 - build 1973
  6081.  
  6082. 1. folder shortcuts in sqlite.
  6083.  
  6084. t-rex 19.04.2011 01:09:36 +0200 - build 1972 - Hag Sameach!
  6085.  
  6086. 1. filters and highligh in sqlite (pluginsconfig.db must be removed again).
  6087.  
  6088. t-rex 18.04.2011 21:19:35 +0200 - build 1971
  6089.  
  6090. 1. Using MSG_NOPLUGINS for plugin loading error message to avoid possible problems as in 1969.
  6091.  
  6092. t-rex 18.04.2011 16:52:37 +0200 - build 1970
  6093.  
  6094. 1. pluginsconfig.db schema is altered, the old file must be deleted.
  6095.  
  6096. 2. Improvement in memory usage configdb::Enum of database service functions.
  6097.  
  6098. t-rex 18.04.2011 13:38:58 +0200 - build 1969
  6099.  
  6100. 1. If a plugin could not be loaded at the moment of ProcessDialogEventW then infinite recursion took place.
  6101.  
  6102. t-rex 18.04.2011 12:57:18 +0200 - build 1968
  6103.  
  6104. 1. A minor bug in GlobalUserMenuDir initialization.
  6105.  
  6106. drkns 17.04.2011 23:26:31 +0200 - build 1967
  6107.  
  6108. 1. far.exe.ini in unicode.
  6109.  
  6110. 2. pluginscache.db moved to %localappdata%.
  6111.  
  6112. t-rex 17.04.2011 22:47:56 +0200 - build 1966
  6113.  
  6114. 1. Forum: User menu: when a hotkey is pressed, the selected menu item is invoked instead of the item to which the key is assigned.
  6115.  
  6116. drkns 17.04.2011 20:42:03 +0200 - build 1965
  6117.  
  6118. 1. Unicode files viewer worked incorrectly.
  6119.  
  6120. 2. Crash at file read in be-unicode.
  6121.  
  6122. 3. The #pragma push/pop wrapper around sqlite.? in order to not to watch warnings and not to fix them on each update.
  6123.  
  6124. t-rex 17.04.2011 19:42:24 +0200 - build 1964
  6125.  
  6126. 1. UserMenu is untied from the registry. This is how it works now:
  6127.    - local menu: FarMenu.ini in the current folder (as it was before)
  6128.    - user menu: FarMenu.ini in the profile folder (was in the registry)
  6129.    - globel menu: FarMenu.ini in %FARHOME% (or in a folder defined in Far.exe.ini::Global:GlobalUserMenuDir) (almost as before)
  6130.  
  6131.    Nothing seems to be broken, test it please.
  6132.  
  6133. 2. File::Close() did not reset the position pointer.
  6134.  
  6135. 3. Debug build fail is fixed.
  6136.  
  6137. 4. Added Far.exe.ini to the project.
  6138.  
  6139. t-rex 16.04.2011 22:58:48 +0200 - build 1963
  6140.  
  6141. 1. PanelModes in sqlite and minor modification of PanelViewSettings in addition.
  6142.    What is left: history, filters, positions, highlight, shortcuts.
  6143.    probably we have to store usermenu as a text file in %appdata% and not bother about that.
  6144.    macros - the solution from MacroLib plugin is better, isn't it?
  6145.  
  6146. t-rex 16.04.2011 14:46:55 +0200 - build 1962
  6147.  
  6148. 1. PluginCache in sqlite: done. Old plugincache.db must be deleted.
  6149.  
  6150. t-rex 16.04.2011 01:15:31 +0200 - build 1961
  6151.  
  6152. 1. PluginHotKeys in sqlite: done.
  6153.  
  6154. 2. PluginCache in sqlite - database structure is done; also, a couple of queries (~30%).
  6155.  
  6156. t-rex 15.04.2011 21:45:01 +0200 - build 1960
  6157.  
  6158. 1. The initial stage of PluginCache and PluginHotKeys moving to sqlite (it does not work so far).
  6159.  
  6160. 2. Bugs in menus invoked via the wrapper.
  6161.  
  6162. svs 15.04.2011 10:06:10 +0300 - build 1959
  6163.  
  6164. 1. Macro: history.disable is renamed to history.enable.
  6165.    This means that:
  6166.     1. histories are off when macro is started
  6167.     2. the bit mask has an effect on histories forced switching-on
  6168.  
  6169. t-rex 15.04.2011 03:28:35 +0200 - build 1958
  6170.  
  6171. 1. From 2useven10: Partial remake of viewer's internals, numerous bugs are fixed.
  6172.  
  6173. 2. Update sqlite to 3.7.6.1.
  6174.  
  6175. 3. NULL -> nullptr in a couple of places.
  6176.  
  6177. drkns 12.04.2011 21:26:28 +0200 - build 1957
  6178.  
  6179. 1. Rollback of 1956.
  6180.  
  6181. drkns 12.04.2011 19:00:53 +0200 - build 1956
  6182.  
  6183. 1. No need to type "cd" or "chdir" for entering a folder.
  6184.  
  6185. drkns 12.04.2011 00:14:07 +0200 - build 1955
  6186.  
  6187. 1. A couple of corrections on folder shortcuts.
  6188.  
  6189. drkns 11.04.2011 14:42:32 +0200 - build 1954
  6190.  
  6191. 1. Codepage autodetection in editor and viewer is on by default.
  6192.  
  6193. drkns 11.04.2011 14:42:32 +0200 - build 1953
  6194.  
  6195. 1. Plugin panel excessive update on exit from editor without saving.
  6196.  
  6197. t-rex 11.04.2011 05:02:11 +0200 - build 1952
  6198.  
  6199. 1. Associations in sqlite are completed, the old associations.db must be removed.
  6200.  
  6201. svs 10.04.2011 00:19:01 +0300 - build 1951
  6202.  
  6203. 1. Mantis#0001742.
  6204.    From DAtaMan
  6205.      One more correction.
  6206.      Now FMatch function returns:
  6207.       1 - the string matches the mask
  6208.       0 - the string does not match the mask
  6209.      -1 - incorrect mask (error in regular expression)
  6210.  
  6211. drkns 08.04.2011 13:47:00 +0200 - build 1950
  6212.  
  6213. 1. Color selection dialog is available to plugins.
  6214.  
  6215. drkns 08.04.2011 12:17:31 +0200 - build 1949
  6216.  
  6217. 1. Mantis#0001746: Quick elements removal from autocompletion list
  6218.  
  6219. 2. One more correction of 1930.
  6220.  
  6221. 3. A few minor issues.
  6222.  
  6223. drkns 06.04.2011 21:34:29 +0200 - build 1948
  6224.  
  6225. 1. reinterpret_cast -> static_cast where it is possible.
  6226.  
  6227. drkns 06.04.2011 13:24:53 +0200 - build 1947
  6228.  
  6229. 1. Strings containing \0 were copied to clipboard incorrectly.
  6230.  
  6231. 2. Error in VMenu::<G|S>etUserData.
  6232.  
  6233. svs 06.04.2011 13:43:53 +0300 - build 1946
  6234.  
  6235. 1. Correction of Mantis#0001741
  6236.    From: DAtaMan
  6237.    Bugfix on 1942 - Alt-combinations did not work in macros
  6238.  
  6239. 2. Mantis#0001743: History disable option
  6240.      A macrofunction is added to control appending items to history while the current macro is running.
  6241.      At macro start all kinds of history are enabled.
  6242.  
  6243.      N=history.disable([State])
  6244.  
  6245.      Here State is a bit mask:
  6246.        bit 0 - cmd history
  6247.        bit 1 - folder histroy
  6248.        bit 2 - view/edit history
  6249.        bit 3 - dialog history
  6250.        if the corresponding bit is set to 1, the appropriate history is disabled
  6251.        State = -1 - disable all history types
  6252.  
  6253.      The function returns the previous mask.
  6254.      If the parameter is omitted then it returns the current mask.
  6255.  
  6256.      TODO: Clarification is needed on "only while the macro is being played" statement!
  6257.  
  6258. 3. Mantis#0001681: panel.setpath() does not work with plugins
  6259.    Relative paths - within current FS's bounds
  6260.    Absolute paths (C:\ \\Server\share) close plugin panel (if that was the plugin panel)
  6261.  
  6262. 4. Macro: CmpName (from Mantis#0001742) renamed to FMatch
  6263.    From: DAtaMan
  6264.  
  6265.      N=FMatch(S, Mask)
  6266.  
  6267.  
  6268. t-rex 06.04.2011 01:51:53 +0200 - build 1945
  6269.  
  6270. 1. associations in sqlite - 90% complete (swap and creation of a new one under the cursor are not completed yet).
  6271.  
  6272. drkns 05.04.2011 17:02:32 +0200 - build 1944
  6273.  
  6274. 1. Minor refactoring of dialog engine.
  6275.  
  6276. drkns 05.04.2011 11:54:24 +0200 - build 1943
  6277.  
  6278. 1. Correction of completion algorithm.
  6279.  
  6280. svs 05.04.2011 09:48:10 +0300 - build 1942
  6281.  
  6282. 1. Mantis#0001742: CmpName macrofunction - matching the text against the mask
  6283.    From: DAtaMan
  6284.     Quite often it is needed to figure out in macros whether a text matches a mask.
  6285.     The suggested patch implements CmpName macrofunction.
  6286.     The syntax follows:
  6287.     N=CmpName(Mask,S[,SkipPath])
  6288.     The function is case insensitive.
  6289.  
  6290.     Examples:
  6291.     cmpname("*far*", "far manager") == 1
  6292.     cmpname("a.txt", @"c:\a.txt", 0) == 1
  6293.     cmpname("a.txt", @"c:\a.txt", 0) == 0
  6294.     cmpname("a.txt", @"c:\a.txt", 1) == 1
  6295.  
  6296. 2. Mantis#0001741: Additional keys for selected screen area manipulation
  6297.    From: DAtaMan
  6298.     A possible use case for FAR is running it on a computer without a mouse.
  6299.     The patch is suggested for more convenient grabber use.
  6300.     Additions:
  6301.       Alt-Shift-<cursor keys> increase/decrease the selected area.
  6302.       Alt-<cursor keys> move the selected area.
  6303.       Ctrl-A selects the whole screen area.
  6304.  
  6305. drkns 03.04.2011 20:46:44 +0200 - build 1941
  6306.  
  6307. 1. Continuation of 1940.
  6308.  
  6309. drkns 03.04.2011 20:46:44 +0200 - build 1940
  6310.  
  6311. 1. An element appended to input field history with DM_ADDHISTORY was not accessible in completion list.
  6312.  
  6313. drkns 03.04.2011 20:46:44 +0200 - build 1939
  6314.  
  6315. 1. Mantis#0000502: apiCreateFile rights for the Viewer.
  6316.  
  6317. 2. A few trivial fixes.
  6318.  
  6319. svs 31.03.2011 13:43:54 +0300 - build 1938
  6320.  
  6321. 1. Mantis#0001736: akey(1,0)==akey(1,1)
  6322.  
  6323.    "...akey(?,Type):
  6324.      Type=0 - before it had always returned the key I pressed = which called the binding macro,
  6325.      Type=1 - the key assigned to the macro called by macro sequence,
  6326.      now Type always returns the key which the last macro is assigned to..."
  6327.  
  6328.    It was broken in build 1805 (although it was written clearly - "testing is needed" :-))
  6329.  
  6330. drkns 31.03.2011 12:12:12 +0200 - build 1937
  6331.  
  6332. 1. FormatString and NTPath classes are based on UnicodeString.
  6333.  
  6334. 2. Continuing printf elimination.
  6335.  
  6336. svs 28.03.2011 19:19:10 +0300 - build 1936
  6337.  
  6338. 1. Mantis#0001718: The absence of ECF_TAB1 does not always work correctly
  6339.    Correction taking the last TAB character into account.
  6340.  
  6341. drkns 28.03.2011 15:58:34 +0200 - build 1935
  6342.  
  6343. 1. VC code analysis warnings.
  6344.  
  6345. t-rex 27.03.2011 22:19:24 +0200 - build 1934
  6346.  
  6347. 1. Initial stage of moving associations to sqlite (associations.db, doesn't work yet!).
  6348.  
  6349. 2. UnicodeString::Equal() -> IsSubStrAt() to avoid disorder.
  6350.  
  6351. 3. From 2useven10: Mantis#1043: viewing a file on network share causes 40kB/s network spam of QUERY_PATH_INFO SMB requests.
  6352.    requests frequency is hardcoded for now - once per second for DRIVE_REMOTE
  6353.  
  6354. 4. From 2useven10: Mantis#796: Viewer and End key behaviour.
  6355.  
  6356. 5. From 2useven10: fixes for physical drives viewing and for hex viewer.
  6357.  
  6358. drkns 26.03.2011 19:41:35 +0200 - build 1933
  6359.  
  6360. 1. Correction of 1930.1.
  6361.  
  6362. drkns 25.03.2011 19:03:05 +0200 - build 1932
  6363.  
  6364. 1. x64 warnings.
  6365.  
  6366. 2. Mantis#0001735: incorrect displayiog of volume name in info panel if UNC path is used
  6367.  
  6368. drkns 24.03.2011 10:59:59 +0200 - build 1931
  6369.  
  6370. 1. Types correction.
  6371.  
  6372. drkns 23.03.2011 17:00:00 +0200 - build 1930
  6373.  
  6374. 1. Now settings are guaranteed to be saved when the console is closed with [x] button.
  6375.  
  6376. drkns 23.03.2011 10:52:38 +0200 - build 1929
  6377.  
  6378. 1. Mantis#0001661: Debug version crashes at regexp search.
  6379.  
  6380. t-rex 23.03.2011 01:18:18 +0200 - build 1928
  6381.  
  6382. 1. Again, changes in DB schema (old ones must be deleted). "type" field is removed because sqlite can determine the type anyway.
  6383.  
  6384. 2. Wrapper classes around sqlite for code simplification.
  6385.  
  6386. 3. From 2useven10: Fix for 1925.1
  6387.  
  6388. drkns 22.03.2011 17:04:11 +0200 - build 1927
  6389.  
  6390. 1. In 1911, the shortcuts with environment variables didn't work.
  6391.  
  6392. drkns 22.03.2011 15:55:16 +0200 - build 1926
  6393.  
  6394. 1. For the future: Opt.LocalProfilePath == "%LOCALAPPDATA%\Far Manager\Profiles\<Default|ProfileName>".
  6395.  
  6396. t-rex 22.03.2011 00:04:16 +0200 - build 1925
  6397.  
  6398. 1. From 2useven10: Hex view for UTF-8.
  6399.  
  6400. 2. From Maximus: Mantis#1731: "Cannot find the file" error after exit from TempPanel.
  6401.  
  6402. t-rex 21.03.2011 22:53:37 +0200 - build 1924
  6403.  
  6404. 1. Disabling "PRAGMA synchronous = OFF;", using transactions.
  6405.  
  6406. 2. Each plugin has now its own connection to configuration DB, and everything goes inside one transaction from CREATE to FREE.
  6407.    I.e. the data is actually written at FREE only.
  6408.  
  6409. drkns 21.03.2011 22:16:11 +0200 - build 1923
  6410.  
  6411. 1. Another paths remake.
  6412.    Now everything is stored in either "%APPDATA%\Far Manager\Profiles\<Default|ProfileName>" or "%FARHOME%\UserData\Profiles\<Default|ProfileName>".
  6413.    This is switched in Far.exe.ini\General\UseSystemProfiles, 1|0.
  6414.  
  6415. drkns 21.03.2011 16:17:18 +0200 - build 1922
  6416.  
  6417. 1. Correction of 1921:
  6418.    /u specifies the profile only.
  6419.    /s[<path>] specifies the path to profiles. If "path" is relative, it is relative to "%FARHOME%". An empty one means "%FARHOME%\Profiles".
  6420.  
  6421. drkns 21.03.2011 11:11:11 +0200 - build 1921
  6422.  
  6423. 1. update vcxproj.
  6424.  
  6425. 2. sqlite warnings.
  6426.  
  6427. 3. w32api-3.17 (or higher) required for gcc build.
  6428.  
  6429. 4. The profile storage principle is changed:
  6430.    Default path to profiles: "%APPDATA%\Far Manager\Profiles"
  6431.    Default profile: "Default"
  6432.    Thus, settings are here by default: "%APPDATA%\Far Manager\Profiles\Default"
  6433.  
  6434.    Path to profiles can be redefined in file "%FARHOME%\Far.exe.ini":
  6435.    Section: Profiles
  6436.    Parameter: BasePath
  6437.    Value: new path to profiles. If the path is relative then it is meant to be relative to %FARHOME%.
  6438.  
  6439.    /u key gets "username" parameter to be considered as the path to the profile.
  6440.    If the path is relative then it is meant to be relative to "%APPDATA%\Far Manager\Profiles" or to the path specified in "Far.exe.ini".
  6441.    If the path is absolute then it is absolute :)
  6442.  
  6443.    Examples:
  6444.      "far.exe" - profile in "%APPDATA%\Far Manager\Profiles\Default" (or in "<BasePath>\Default")
  6445.      "far.exe /u foo" - profile in "%APPDATA%\Far Manager\Profiles\foo" (or in "<BasePath>\foo")
  6446.      "far.exe /u d:\bar" - profile in "d:\bar"
  6447.  
  6448. t-rex 20.03.2011 23:20:31 +0200 - build 1920
  6449.  
  6450. 1. generalconfig.db schema is changed for inner convenience (generalconfig.db must be deleted).
  6451.  
  6452. 2. All common settings moved to generalconfig.db.
  6453.    Now the turn is for history, associations, filters, positions, highlight, hotkeys, macros, pluginscache, shortcuts, usermenu, panelmodes.
  6454.  
  6455. t-rex 20.03.2011 19:16:44 +0200 - build 1919
  6456.  
  6457. 1. Debug target build failure.
  6458.  
  6459. t-rex 20.03.2011 18:23:03 +0200 - build 1918
  6460.  
  6461. 1. sqlite code moved to configdb.cpp
  6462.  
  6463. 2. using sqlite3_clear_bindings() for correctness.
  6464.  
  6465. 3. GeneralConfig is appended with BEGIN/END TRANSACTION to speed up sequential insertions.
  6466.  
  6467. 4. for "outer space", DB access abstract classes are made to avoid sqlite3.h and other stuff be included everywhere.
  6468.  
  6469. 5. a kind of singleton for DB access inner classes.
  6470.  
  6471. 6. precompiled headers are disconnected from plugin.hpp, it was pointless because it used to change too often.
  6472.  
  6473. t-rex 20.03.2011 02:45:34 +0200 - build 1917
  6474.  
  6475. 1. Transfer of settings to sqlite is started.
  6476.    Common settings have been partially moved.
  6477.    %appdata%\Far Manager\generalconfig.db
  6478.  
  6479. 2. PRAGMA synchronous = 0; for better sqlite performance.
  6480.  
  6481. t-rex 19.03.2011 21:35:56 +0200 - build 1916
  6482.  
  6483. 1. "Old" plugin settings API is back.
  6484.  
  6485. 2. DB schema and code are changed to support tree-like structure of plugins settings according to API.
  6486.  
  6487. t-rex 19.03.2011 17:59:17 +0200 - build 1915
  6488.  
  6489. 1. Starting to use sqlite database instead of the registry, plugins settings only for now.
  6490.    The data is stored in %appdata%\Far Manager\pluginsconfig.db
  6491.    sqlite source is included in FAR for now, then we'll see if it is reasonable to move it to dll.
  6492.  
  6493. 2. Plugins settings API is slightly changed, "subkey" and "root" notions are removed.
  6494.    It is recommended to assign names like xxx.yyy, xxx.zzz to settings if any kind of tree-like structure is needed,
  6495.    for the moment when a visual editor appears.
  6496.  
  6497. 3. Warnings.
  6498.  
  6499. zeroes 18.03.2011 16:22:17 +200 - build 1914
  6500.  
  6501. 1. Correction of the type of a variable
  6502.  
  6503. svs 18.03.2011 16:51:39 +0300 - build 1913
  6504.  
  6505. 1. Macro: Keybar.Show() function is added
  6506.  
  6507.      N=KeyBar.Show([N])
  6508.  
  6509.         0 - get state
  6510.             ret: 0 - hide, 1 - show, -1 - KeyBar not found
  6511.         1 - show
  6512.         2 - hide
  6513.         3 - swap
  6514.         ret: prev mode or -1 - KeyBar not found
  6515.  
  6516.    "KeyBar found" in panels, editor and viewer. And only if the area is current.
  6517.    In other areas (including the help area) -1 is returned.
  6518.  
  6519.    For example, Esc in panels
  6520.       CtrlO $if (APanel.Visible && PPanel.Visible) KeyBar.Show(1) $else KeyBar.Show(2) $end
  6521.    if panels are hidden, hide the keybar too.
  6522.  
  6523. 2. Combo box selection was broken in macro keys assignment dialog.
  6524.  
  6525. drkns 18.03.2011 10:06:22 +0200 - build 1912
  6526.  
  6527. 1. Correction of 1911.
  6528.  
  6529. drkns 18.03.2011 09:05:21 +0200 - build 1911
  6530.  
  6531. 1. In Folder Shortcuts, assignment of several types to one shortcut is supported (Ctrl-Alt-<0-9> in panels or ShiftIns in menu).
  6532.  
  6533. drkns 17.03.2011 21:31:28 +0200 - build 1910
  6534.  
  6535. 1. Correction of types in plugin api.
  6536.  
  6537. svs 17.03.2011 17:55:16 +0300 - build 1909
  6538.  
  6539. 1. Mantis#0001733: XLat() macrofunction must not switch current keyboard layout.
  6540.  
  6541.    The function is granted with a second parameter - optional flags, and does not depend on TechInfo#10.
  6542.  
  6543.      S=xlat(S[,Flags])
  6544.  
  6545.      flags
  6546.        XLAT_SWITCHKEYBLAYOUT  = 1
  6547.        XLAT_SWITCHKEYBBEEP    = 2
  6548.        XLAT_USEKEYBLAYOUTNAME = 4
  6549.  
  6550.    print(xlat("Qwerty"))
  6551.    outputs "╔÷≤Ωσφ" and herewith:
  6552.      * keyboard layout is not switched
  6553.      * there's no sound
  6554.      * values "00000409", "00000419" etc. from "HKCU\Software\Far2\XLat" branch are not used
  6555.  
  6556.    print(xlat("Qwerty",6))
  6557.    outputs "╔÷≤Ωσφ" and herewith:
  6558.      * keyboard layout is not switched
  6559.      * there's a beep (sound)
  6560.      * values "00000409", "00000419" etc. from "HKCU\Software\Far2\XLat" branch are used
  6561.  
  6562.  
  6563.    $XLat macrocommand still depends on TechInfo#10
  6564.  
  6565. drkns 14.03.2011 11:11:11 +0200 - build 1908
  6566.  
  6567. 1. PluginHotkeys is now in GUID\GUID format.
  6568.  
  6569. 2. Commands, viewer/editor, folder, dialog histories moved to History subkey.
  6570.  
  6571. drkns 10.03.2011 20:54:46 +0200 - build 1907
  6572.  
  6573. 1. Error loading plugins from cache.
  6574.  
  6575. drkns 11.03.2011 14:12:42 +0200 - build 1906
  6576.  
  6577. 1. Plugin version format is changed, now this is a structure. You can specify additional information there: alpha, beta, rc, release.
  6578.  
  6579. 2. ACTL_GETFARVERSION now always returns TRUE, it is also renamed to ACTL_GETFARMANAGERVERSION to prevent mistakes.
  6580.  
  6581. 3. plugin.hpp is pure C compatible again.
  6582.  
  6583. drkns 10.03.2011 16:22:44 +0200 - build 1905
  6584.  
  6585. 1. Warnings, optimization.
  6586.  
  6587. drkns 10.03.2011 12:10:12 +0200 - build 1904
  6588.  
  6589. 1. File::<G|S>etPointer optimization. As a consequence:
  6590.     Mantis#0001668: CachedRead and CacheWrite classes are quite ineffective in performance terms.
  6591.     Mantis#0001431: 100% CPU load while page scrolling in viewer
  6592.  
  6593. svs 09.03.2011 08:15:51 +0300 - build 1903
  6594.  
  6595. 1. Mantis#0000786: Incorrect output of UTF-8 encoded files content in viewer after positioning at search results
  6596.    from 2useven10
  6597.  
  6598. drkns 08.03.2011 09:23:34 +0200 - build 1902
  6599.  
  6600. 1. Correction of 1892.1.
  6601.  
  6602. drkns 07.03.2011 21:45:33 +0200 - build 1901
  6603.  
  6604. 1. Correction of 1899.2.
  6605.  
  6606. drkns 07.03.2011 14:43:32 +0200 - build 1900
  6607.  
  6608. 1. All buttons in Message() were "default".
  6609.  
  6610. drkns 07.03.2011 13:35:35 +0200 - build 1899
  6611.  
  6612. 1. OpenPanelW -> OpenW.
  6613.  
  6614. 2. CompareW, DeleteFilesW, FreeFindDataW, FreeVirtualFindDataW, GetFilesW, GetFindDataW, GetOpenPanelInfoW, GetVirtualFindDataW, MakeDirectoryW, OpenW, ProcessHostFileW, ProcessMacroFuncW, PutFilesW, SetDirectoryW, SetFindListW functions take a structure as a parameter.
  6615.  
  6616. 3. Wrapper corrections.
  6617.  
  6618. zg 07.03.2011 12:29:13 +0200 - build 1898
  6619.  
  6620. 1. FarColor structure is added.
  6621.  
  6622. 2. FARCOLORFLAGS is renamed to FARSETCOLORFLAGS.
  6623.  
  6624. 3. ECF_TAB1 moved to EditorColor.Flags.
  6625.  
  6626. 4. EditorColor.Color type is now FarColor.
  6627.  
  6628. zg 01.03.2011 11:12:03 +0200 - build 1897
  6629.  
  6630. 1. Regular expressions replacement used to crash on empty parentheses.
  6631.  
  6632. drkns 28.02.2011 14:27:07 +0200 - build 1896
  6633.  
  6634. 1. Plugins\<PluginGUID> keys contain PluginTitle as Default, for those manual editing fans.
  6635.  
  6636. drkns 27.02.2011 23:33:05 +0200 - build 1895
  6637.  
  6638. 1. Correction of debug versions of delete[] and delete.
  6639.  
  6640. drkns 27.02.2011 13:26:39 +0200 - build 1894
  6641.  
  6642. 1. Plugin settings are now stored at Plugins\<PluginGUID> instead of Plugins\<PluginTitle>.
  6643.  
  6644. drkns 24.02.2011 21:04:51 +0200 - build 1893
  6645.  
  6646. 1. Warnings.
  6647.  
  6648. drkns 24.02.2011 20:34:19 +0200 - build 1892
  6649.  
  6650. 1. Some correction on launcher functionality.
  6651.  
  6652. drkns 24.02.2011 17:09:22 +0200
  6653.  
  6654. 1. Makeup.
  6655.  
  6656. drkns 24.02.2011 16:48:26 +0200 - build 1891
  6657.  
  6658. 1. OpenFilePluginW = AnalyseW + OpenPanelW.
  6659.    OpenPluginW = OpenPanelW
  6660.    ClosePluginW = ClosePanelW
  6661.    GetOpenPluginInfoW = GetOpenPanelInfoW
  6662.    OpenPluginInfo = OpenPanelInfo
  6663.    FCTL_CLOSEPLUGIN = FCTL_CLOSEPANEL
  6664.  
  6665. zg 24.02.2011 02:48:54 +0200 - build 1890
  6666.  
  6667. 1. Plugins with PF_PRELOAD flag were not loaded correctly if they had already been in the cache.
  6668.  
  6669. 2. SCTL_CREATE did not return an error in the case of incorrect GUID.
  6670.  
  6671. drkns 23.02.2011 20:34:14 +0200 - build 1889
  6672.  
  6673. 1. VC level 4 warnings.
  6674.  
  6675. 1. Rollback of 1781.2
  6676.  
  6677. drkns 21.02.2011 09:36:32 +0200 - build 1888
  6678.  
  6679. 1. gcc warnings & O3 optimization.
  6680.  
  6681. zg 20.02.2011 19:22:59 +0200 - build 1887
  6682.  
  6683. 1. correction of SettingsControl(...,SCTL_SET,...): if Type equals to FST_SUBKEY then a key "Name" is created.
  6684.  
  6685. 2. correction of 1886.
  6686.  
  6687. zg 20.02.2011 19:00:26 +0200 - build 1886
  6688.  
  6689. 1. SettingsControl:
  6690.  
  6691.    SCTL_DELETE            - delete subkey or value.
  6692.                             hHandle - HANDLE returned by SCTL_CREATE.
  6693.                             Param2 - pointer to FarSettingsValue.
  6694.                             Root - descriptor of a key containing the thing being deleted.
  6695.                             Value - the name of a subkey or a value to delete.
  6696.  
  6697. drkns 20.02.2011 16:53:10 +0200 - build 1885
  6698.  
  6699. 1. And more.
  6700.  
  6701. drkns 20.02.2011 16:36:47 +0200 - build 1884
  6702.  
  6703. 1. Correction of types in plugin.hpp.
  6704.  
  6705. 2. gcc warnings.
  6706.  
  6707. svs 19.02.2011 10:26:53 +0300 - build 1883
  6708.  
  6709. 1. Correction of build 1880
  6710.  
  6711. svs 18.02.2011 15:36:25 +0300 - build 1882
  6712.  
  6713. 1. Correction of build 1880
  6714.  
  6715. drkns 18.02.2011 13:50:12 +0200 - build 1881
  6716.  
  6717. 1. Mantis#0001714: Error at the attempt of leaving to shares list via "..".
  6718.  
  6719. 2. Mantis#0001716: Ctrl+C in panels does not copy files to clipboard.
  6720.  
  6721. svs 18.02.2011 11:10:57 +0300 - build 1880
  6722.  
  6723. 1. Mantis#0001482: <!Macro:Vars!> and <!Macro:Consts!> output improvement
  6724.    Now these (and similar) construcctions in help take information from
  6725.    memory only (not from the registry).
  6726.    At the moment, there's a little drawback - the list is unsorted.
  6727.  
  6728. drkns 18.02.2011 09:21:21 +0200 - build 1879
  6729.  
  6730. 1. In 1810, renaming to "*.ext" was broken.
  6731.  
  6732. drkns 17.02.2011 17:03:03 +0200 - build 1878
  6733.  
  6734. 1. Bugs in wrapper.
  6735.  
  6736. drkns 17.02.2011 14:39:39 +0200 - build 1877
  6737.  
  6738. 1. gcc.
  6739.  
  6740. drkns 17.02.2011 12:35:35 +0200 - build 1876
  6741.  
  6742. 1. Correction of types in plugin.hpp.
  6743.  
  6744. 2. Bugs in wrapper.
  6745.  
  6746. drkns 16.02.2011 21:03:11 +0200 - build 1875
  6747.  
  6748. 1. Techinfo #48 is removed.
  6749.  
  6750. drkns 16.02.2011 19:57:08 +0200 - build 1874
  6751.  
  6752. 1. Correction of types in plugin.hpp.
  6753.  
  6754. drkns 16.02.2011 17:00:00 +0200 - build 1873
  6755.  
  6756. 1. Correction of types in plugin.hpp.
  6757.  
  6758. 2. vc build.
  6759.  
  6760. 3. warnings.
  6761.  
  6762. zg 16.02.2011 12:32:54 +0200 - build 1872
  6763.  
  6764. 1. SettingsControl:
  6765.  
  6766.    SCTL_ENUM              - get the list of subkeys and values.
  6767.                             hHandle - HANDLE returned by SCTL_CREATE.
  6768.                             Param2 - pointer to FarSettingsEnum.
  6769.                             Root - subkey descriptor where to get information from.
  6770.                             Count - the number of returned elements.
  6771.                             Items - elements.
  6772.  
  6773. zg 16.02.2011 02:23:03 +0200 - build 1871
  6774.  
  6775. 1. Settings storage API:
  6776.  
  6777.    int WINAPI SettingsControl(HANDLE hHandle, int Command, int Param1, INT_PTR Param2)
  6778.  
  6779.    Command:
  6780.  
  6781.    SCTL_CREATE            - hHandle - INVALID_HANDLE_VALUE.
  6782.                             Param2 - FarSettingsCreate, in - plugin's GUID, out - settings handle.
  6783.                             Return FALSE if failed.
  6784.    SCTL_FREE              - hHandle - HANDLE returned by SCTL_CREATE.
  6785.    SCTL_SET               - hHandle - HANDLE returned by SCTL_CREATE.
  6786.                             Param2 - pointer to FarSettingsItem.
  6787.                             Root - specifies the place for settings storage. 0 - root for the plugin. subkeys are made with SCTL_SUBKEY.
  6788.                             Name - the name of the stored value.
  6789.                             Type - type.
  6790.                             Value - the value itself.
  6791.    SCTL_GET               - hHandle - HANDLE returned by SCTL_CREATE.
  6792.                             Param2 - pointer to FarSettingsItem.
  6793.                             Value is filled in by FAR, the rest is done by the plugin.
  6794.    SCTL_SUBKEY            - hHandle - HANDLE returned by SCTL_CREATE.
  6795.                             Param2 - pointer to FarSettingsValue.
  6796.                             return the descriptor of a subkey named as "Value" for a subkey with "Root" descriptor.
  6797.  
  6798. 2. PluginStartupInfo.RootKey field is removed.
  6799.  
  6800. t-rex 16.02.2011 01:00:45 +0200 - build 1870
  6801.  
  6802. 1. Miscellaneous additions and corrections in DialogBuilder.
  6803.  
  6804. t-rex 14.02.2011 21:28:51 +0200 - build 1869
  6805.  
  6806. 1. DialogBuilder: DIF_3STATE, DlgProc and UserParam support, one may omit a separator before Ok/Cancel.
  6807.  
  6808. 2. DialogBuilder: DI_SINGLEBOX support is reworked.
  6809.  
  6810. drkns 13.02.2011 21:56:25 +0200 - build 1868
  6811.  
  6812. 1. Warnings.
  6813.  
  6814. zg 13.02.2011 21:25:20 +0200 - build 1867
  6815.  
  6816. 1. plugin.hpp is pure C compatible again.
  6817.  
  6818. 2. all API flags are 64 bit wide.
  6819.  
  6820. 3. correction of 1866.3: the type of StructSize is size_t.
  6821.  
  6822. zg 13.02.2011 15:29:55 +0200 - build 1866
  6823.  
  6824. 1. DN_CLOSE is not equal to DM_CLOSE anymore.
  6825.  
  6826. 2. DM_CLOSE always returned TRUE.
  6827.  
  6828. 3. StructSize in API structures is unsigned everywhere.
  6829.  
  6830. zg 13.02.2011 11:01:58 +0200 - build 1865
  6831.  
  6832. 1. disk menu plugin hotkeys were not read.
  6833.  
  6834. drkns 13.02.2011 00:39:44 +0200 - build 1864
  6835.  
  6836. 1. debug build is fixed.
  6837.  
  6838. 2. ACTL_GETPOLICIES is removed.
  6839.  
  6840. zg 12.02.2011 23:57:50 +0200 - build 1863
  6841.  
  6842. 1. "StructSize" field is added to PanelMode.
  6843.  
  6844. 2. FullScreen, DetailedStatus, AlignExtensions and CaseConversion fields are removed from PanelMode. Instead, Flags field is added with appropriate flags.
  6845.  
  6846. 3. "Reserved" field is removed from PanelMode.
  6847.  
  6848. zg 12.02.2011 20:10:48 +0200 - build 1862
  6849.  
  6850. 1. FarKey structure is added. FarKey.VirtualKeyCode is similar to KEY_EVENT_RECORD.wVirtualKeyCode. FarKey.ControlKeyState is similar to KEY_EVENT_RECORD.dwControlKeyState.
  6851.  
  6852. 2. BreakKeys Menu parameter is now a pointer to FarKey array.
  6853.  
  6854. 3. the type of KeyBarLabel.Key is FarKey.
  6855.  
  6856. drkns 12.02.2011 18:01:44 +0200 - build 1861
  6857.  
  6858. 1. Fix for an ancient bug related to DefDlgProc for ANSI plugins.
  6859.  
  6860. zg 11.02.2011 18:45:24 +0200 - build 1860
  6861.  
  6862. 1. ACTL_GETSHORTWINDOWINFO is removed for its meaninglessness.
  6863.  
  6864. 2. thread-safe ACTL_GETWINDOWTYPE call. Param points to WindowType. TRUE is returned in case of success, FALSE otherwise.
  6865.  
  6866. zg 11.02.2011 17:01:22 +0200 - build 1859
  6867.  
  6868. 1. DN_MOUSEEVENT is renamed to DN_INPUT. Param2 points to INPUT_RECORD. in future, passing of events other than mouse events is planned, therefore EventType checking is strongly recommended.
  6869.  
  6870. 2. DN_KEY and DN_MOUSECLICK are combined to DN_CONTROLINPUT. Param2 points to INPUT_RECORD. in future, passing of other events is planned.
  6871.  
  6872. 3. DM_KEY is no more equal to DN_KEY.
  6873.  
  6874. t-rex 11.02.2011 13:04:02 +0200 - build 1858
  6875.  
  6876. 1. DialogBuilder is now capable of DI_SINGLEBOX with automatic elements grouping.
  6877.  
  6878. 2. DialogBuilder is now capable of DI_FIXEDIT with text mask.
  6879.  
  6880. svs 11.02.2011 10:27:51 +0300 - build 1857
  6881.  
  6882. 1. Mantis#0001482: Improvement of <!Macro:Vars!> and <!Macro:Consts!> output
  6883.  
  6884. t-rex 11.02.2011 01:56:20 +0200 - build 1856
  6885.  
  6886. 1. ANSI code cleanup in DialogBuilder.
  6887.  
  6888. 2. A couple makeup trivia in code.
  6889.  
  6890. drkns 11.02.2011 00:14:23 +0200 - build 1855
  6891.  
  6892. 1. Mantis#0001713: Access to "." and ".." folders on non-NTFS volumes.
  6893.    Now "." and ".." can be entered by UNC-paths, listed etc.
  6894.  
  6895. 2. VC warnings.
  6896.  
  6897. zg 11.02.2011 00:03:05 +0200 - build 1854
  6898.  
  6899. 1. rollback of 1853.
  6900.  
  6901. 2. correction of 1852, -1 for the current editor/viewer.
  6902.  
  6903. t-rex 10.02.2011 22:59:45 +0200 - build 1853
  6904.  
  6905. 1. For 1852 to work, Viewer/EditorID in FAR must start from 1, not from 0.
  6906.  
  6907. t-rex 10.02.2011 20:15:23 +0200 - build 1852
  6908.  
  6909. 1. Correction of 1851:
  6910.      int WINAPI EditorControl(int EditorID, int Command, int Param1, INT_PTR Param2);
  6911.      int WINAPI ViewerControl(int ViewerID, int Command, int Param1, INT_PTR Param2);
  6912.  
  6913.    ID instead of HANDLE, 0 for the current editor/viewer.
  6914.  
  6915. 2. One could not call Viewer/EditorControl from panels for ID!=0.
  6916.  
  6917. svs 10.02.2011 18:26:54 +0300 - build 1851
  6918.  
  6919. 1. Rearrangement of EditorControl, ViewerControl and RegExpControl.
  6920.    Now it looks like this:
  6921.      int WINAPI EditorControl(HANDLE hHandle, int Command, int Param1, INT_PTR Param2);
  6922.      int WINAPI ViewerControl(HANDLE hHandle, int Command, int Param1, INT_PTR Param2);
  6923.      int WINAPI RegExpControl(HANDLE hHandle, int Command, int Param1, INT_PTR Param2);
  6924.  
  6925.    For editor/viewer, if hHandle == INVALID_HANDLE_VALUE - the current editor/viewer (1.7x wrapper works with the current one)
  6926.    Otherwise, the value from EditorInfo::EditorID is taken as a handle.
  6927.  
  6928.    Param1 is unused so far.
  6929.  
  6930.    Inner EditorControl and ViewerControl implementations (in classes) still remain unchanged.
  6931.  
  6932. zg 10.02.2011 14:25:07 +0200 - build 1850
  6933.  
  6934. 1. OPM_PGDN is added. it is passed to OpenFilePluginW if PgDn has been pressed on a file.
  6935.  
  6936. 2. OPEN_DISKMENU->OPEN_LEFTDISKMENU. OPEN_RIGHTDISKMENU is added.
  6937.  
  6938. svs 10.02.2011 12:01:19 +0300 - build 1849
  6939.  
  6940. 1. Rearrangement of "ACTL_KEYMACRO".
  6941.  
  6942.    * removed: ACTL_KEYMACRO, FARMACROCOMMAND, struct ActlKeyMacro
  6943.    * added: MacroControl, MACRO_CONTROL_COMMANDS, FARMACROSENDSTRINGCOMMAND, struct MacroSendMacroText, struct MacroCheckMacroText
  6944.  
  6945.    New API look:
  6946.    int Info.MacroControl(HANDLE hHandle,int Command,int Param1,INT_PTR Param2)
  6947.     hHandle = 0
  6948.     Command:
  6949.        MCTL_LOADALL
  6950.          Param1=0
  6951.          Param2=0
  6952.          Return=0|1
  6953.        MCTL_SAVEALL
  6954.          Param1=0
  6955.          Param2=0
  6956.          Return=0|1
  6957.        MCTL_SENDSTRING
  6958.          Param1:
  6959.            MSSC_POST
  6960.              Param2=MacroSendMacroText*
  6961.              Return=0|1
  6962.            MSSC_EXEC (a stub so far, unused)
  6963.              Param2=MacroSendMacroText*
  6964.              Return=0|1
  6965.            MSSC_CHECK
  6966.              Param2=MacroCheckMacroText* (Text)
  6967.              Return=0|1 in Param2=MacroCheckMacroText* (Check)
  6968.        MCTL_GETSTATE
  6969.          Param1=0
  6970.          Param2=0
  6971.          Return=FARMACROSTATE
  6972.        MCTL_GETAREA
  6973.          Param1=0
  6974.          Param2=0
  6975.          Return=FARMACROAREA
  6976.  
  6977.  
  6978. zg 10.02.2011 02:16:46 +0200 - build 1848
  6979.  
  6980. 1. correction of 1846.2.
  6981.  
  6982. zg 10.02.2011 01:52:02 +0200 - build 1847
  6983.  
  6984. 1. dialog plugins are prohibited for the dialog on plugin/FAR version mismatch.
  6985.  
  6986. 2. FMSG_LEFTALIGN was malfunctional.
  6987.  
  6988. zg 10.02.2011 01:00:03 +0200 - build 1846
  6989.  
  6990. 1. DN_KEY processing in built-in dialogs is corrected.
  6991.  
  6992. 2. MAKEFARVERSION: now the version is in the upper word, the build is in the lower word.
  6993.  
  6994. 3. PluginMenuItem: Guid is replaced with Guids.
  6995.  
  6996. zg 09.02.2011 20:25:20 +0200 - build 1845
  6997.  
  6998. 1. FarDialogItem.Param.ListPos is removed.
  6999.  
  7000. svs 09.02.2011 18:51:58 +0300 - build 1844
  7001.  
  7002. 1. ActlKeyMacro: StructSize is added.
  7003.  
  7004. 2. ACTL_POSTKEYSEQUENCE is removed (the analog is ACTL_KEYMACRO).
  7005.    FARKEYSEQUENCEFLAGS is renamed to FARKEYMACROFLAGS (also, KSFLAGS_* -> KMFLAGS_* ).
  7006.    struct KeySequence is removed.
  7007.  
  7008. 3. Rearrangement of struct KeyBarTitles (part 1)
  7009.  
  7010.      struct KeyBarLabel
  7011.      {
  7012.         DWORD Key;
  7013.         const wchar *Text;
  7014.         const wchar *LongText;
  7015.      };
  7016.      struct KeyBarTitles
  7017.      {
  7018.         int CountLabels;
  7019.         struct KeyBarLabel *Labels;
  7020.      };
  7021.  
  7022. zg 09.02.2011 15:19:00 +0200 - build 1843
  7023.  
  7024. 1. Correction of 1842.1: GetPluginDirList, Menu, Message, InputBox, AdvControl, DialogInit, GetMsg sometimes worked wrong in SetStartupInfoW and GetPluginInfoW.
  7025.  
  7026. zg 09.02.2011 03:42:44 +0200 - build 1842
  7027.  
  7028. 1. in GetPluginDirList, Menu, Message, InputBox, AdvControl, DialogInit, GetMsg, one must pass a pointer to plugin's GUID instead of ModuleNumber.
  7029.    Thereafter, ModuleNumber is also removed from PluginStartupInfo.
  7030.  
  7031. 2. in ConfigureW, OpenPluginW and DialogInit, GUID is replaced to a pointer to GUID.
  7032.  
  7033. zg 09.02.2011 00:36:50 +0200 - build 1841
  7034.  
  7035. 1. If suddenly FAR discovers a few plugins with identical GUIDs, only first one is loaded.
  7036.  
  7037. 2. Plugin search by GUID is sped up.
  7038.  
  7039. drkns 08.02.2011 21:48:00 +0200 - build 1840
  7040.  
  7041. 1. DIF_INTERNALFOCUS & DIF_DEFAULT are removed.
  7042.  
  7043. 2. plugin.hpp is redone a little.
  7044.  
  7045. zg 08.02.2011 19:39:28 +0200 - build 1839
  7046.  
  7047. 1. flags were read incorrectly from plugin cache.
  7048.  
  7049. drkns 08.02.2011 16:52:23 +0200 - build 1838
  7050.  
  7051. 1. VC warnings.
  7052.  
  7053. zg 08.02.2011 14:57:17 +0200 - build 1837
  7054.  
  7055. 1. correction of 1836.1.
  7056.  
  7057. 2. FarDialogItem.UserParam is used as a value linked with dialog element (it is returned via DM_GETITEMDATA).
  7058.  
  7059. zg 08.02.2011 13:54:18 +0200 - build 1836
  7060.  
  7061. 1. FarDialogItem: Focus&DefaultButton are removed. Instead, there are DIF_FOCUS&DIF_DEFAULTBUTTON flags.
  7062.  
  7063. 2. FarDialogItem: History&Mask are moved outside an union.
  7064.  
  7065. 3. FarDialogItem: Flags is now 64 bit wide.
  7066.  
  7067. 4. UserParam is added to FarDialogItem, unused yet.
  7068.  
  7069. svs 08.02.2011 11:41:03 +0300 - build 1835
  7070.  
  7071. 1. OpenPluginInfo::Reserved is removed,
  7072.    OpenPluginInfo::FreeSize is added (unsigned __int64)
  7073.  
  7074. 2. OPIF_USEFREESIZE flag is added - "OpenPluginInfo::FreeSize component contains data"
  7075.    (or "when the flag is absent then FreeSize field is not relevant")
  7076.    That is, not any plugin provides "free space" notion (for example, Network or ImpEx)
  7077.  
  7078. t-rex 08.02.2011 01:29:17 +0200 - build 1834
  7079.  
  7080. 1. PluginNumber in InputBox (like everywhere) to let FAR know where help topics must be opened from (a very old bug).
  7081.  
  7082. 2. Historical stuff is removed from plugin.hpp: DM_SETREDRAW=DM_REDRAW and DM_SETTEXTLENGTH=DM_SETMAXTEXTLENGTH.
  7083.  
  7084. zg 08.02.2011 00:40:42 +0200 - build 1833
  7085.  
  7086. 1. implementation of CallPlugin&FindPlugin for GUIDs.
  7087.  
  7088. drkns 07.02.2011 23:12:53 +0200 - build 1832
  7089.  
  7090. 1. Mistype in 1831.
  7091.  
  7092. drkns 07.02.2011 21:12:08 +0200 - build 1831
  7093.  
  7094. 1. API:
  7095.    - A new export: void GetGlobalInfoW(GlobalInfo* Info), where:
  7096.  
  7097.    struct GlobalInfo
  7098.    {
  7099.     int StructSize;              // size
  7100.     DWORD MinFarVersion;         // minimal required Far version
  7101.     DWORD Version;               // plugin's version (in same form)
  7102.     GUID Guid;                   // plugin's GUID
  7103.     const wchar_t *Title;        // plugin's common name
  7104.     const wchar_t *Description;  // description/comment/additional
  7105.     const wchar_t *Author;       // plugin's author
  7106.   };
  7107.  
  7108.   A plugin must export GetGlobalInfoW.
  7109.   All fields must be filled in.
  7110.   The function is called once.
  7111.  
  7112. 2. SysID is removed.
  7113.  
  7114. zg 07.02.2011 12:41:30 +0200 - build 1830
  7115.  
  7116. 1. a new parameter in DialogInit: dialog's GUID.
  7117.  
  7118. 2. a new field in DialogInfo: Owner. It contains the GUID of the plugin that has invoked the dialog.
  7119.  
  7120. 3. DN_GETDIALOGINFO is removed for its uselessness.
  7121.  
  7122. drkns 06.02.2011 16:24:19 +0200 - build 1829
  7123.  
  7124. 1. Importing settings from Far2.
  7125.  
  7126. drkns 06.02.2011 14:05:06 +0200 - build 1828
  7127.  
  7128. 1. xor and other according tricks are removed from copyright line.
  7129.  
  7130. 2. The registry key is now "Far Manager".
  7131.  
  7132. drkns 06.02.2011 13:11:59 +0200 - build 1827
  7133.  
  7134. 1. Plugins hotkeys in drives menu did not work.
  7135.  
  7136. 2. Plugins in drives menu can be sorted by hotkeys (F9).
  7137.  
  7138. drkns 06.02.2011 12:11:59 +0200 - build 1826
  7139.  
  7140. 1. Info.CmpName is removed.
  7141.  
  7142. 2. OPIF_USESORTGROUPS -> OPIF_DISABLESORTGROUPS, OPIF_USEHIGHLIGHTING -> OPIF_DISABLEHIGHLIGHTING.
  7143.  
  7144. t-rex 05.02.2011 23:19:46 +0200
  7145.  
  7146. 1. FAR version is now 3.0
  7147.  
  7148. drkns 05.02.2011 15:30:10 +0200 - build 1825
  7149.  
  7150. 1. LONG_PTR -> INT_PTR.
  7151.  
  7152. 2. OPIF_USEFILTER -> !OPIF_DISABLEFILTER.
  7153.  
  7154. 3. FCTL_GETCMDLINESELECTEDTEXT is removed.
  7155.  
  7156. 4. FarMenuItem and FMENU_USEEXT are removed, FarMenuItemEx is now FarMenuItem.
  7157.  
  7158. drkns 04.02.2011 23:53:23 +0200 - build 1824
  7159.  
  7160. 1. x64 debug build was malfunctional.
  7161.  
  7162. 2. Warning.
  7163.  
  7164. zg 04.02.2011 23:36:52 +0200 - build 1823
  7165.  
  7166. 1. "Id" is added to WindowInfo. is acts as a handle for a dialog, and as Id for editor/viewer.
  7167.  
  7168. 2. Modified&Current are removed from WindowInfo. Flags and WIF_MODIFIED&WIF_CURRENT are the replacement.
  7169.  
  7170. zg 04.02.2011 21:50:22 +0200 - build 1822
  7171.  
  7172. 1. correction of 1820 for NumEnter.
  7173.  
  7174. 2. gcc warnings.
  7175.  
  7176. drkns 04.02.2011 16:50:21 +0200 - build 1821
  7177.  
  7178. 1. FAR_FIND_DATA is removed, the content is moved to PluginPanelItem. Also, ChangeTime is added there.
  7179.  
  7180. svs 04.02.2011 17:43:54 +0300 - build
  7181.  
  7182. 1. Pay attention to the phrase "#ifdef FAR_USE_INTERNALS"!
  7183.    Is has got a pair: "#endif // END FAR_USE_INTERNALS"
  7184.    It is processed with a script!
  7185.  
  7186. svs 04.02.2011 16:39:35 +0300 - build 1820
  7187.  
  7188. 1. Solving troubles with keyboard.
  7189.    a) Ctrl. Ctrl. Ins (not on numpad) - we see Num0 instead of Ins
  7190.    b) TranslateKeyToVK function has become smarter - catching bugs :-)
  7191.  
  7192. yjh 04.02.2011 15:29:20 +0300 - build 1819
  7193.  
  7194. 1. 64bit warnings
  7195.  
  7196. drkns 04.02.2011 14:15:16 +0200 - build 1818
  7197.  
  7198. 1. Alignment for x86 is now 8 bytes too.
  7199.  
  7200. drkns 04.02.2011 00:37:26 +0200 - build 1817
  7201.  
  7202. 1. Bells and whistles: proper copyright character "⌐" instead of "(╤)".
  7203.  
  7204. zg 03.02.2011 18:27:43 +0200 - build 1816
  7205.  
  7206. 1. DN_KEY, DN_HOTKEY take a reference to INPUT_RECORD array as Param2.
  7207.  
  7208. 2. DM_KEY takes a reference to INPUT_RECORD array as Param2.
  7209.  
  7210. zg 03.02.2011 16:05:25 +0200 - build 1815
  7211.  
  7212. 1. FAR_PKF_FLAGS is removed.
  7213.  
  7214. 2. PKF_PREPROCESS support is removed.
  7215.  
  7216. zg 03.02.2011 15:12:44 +0200 - build 1814
  7217.  
  7218. 1. INPUT_RECORD appears in ProcessKeyW.
  7219.  
  7220. 2. FSF is appended with FarKeyToInputRecord.
  7221.  
  7222. drkns 03.02.2011 14:25:22 +0200 - build 1813
  7223.  
  7224. 1. Corrections in setattr and fileowner.
  7225.  
  7226. 2. macrocompuler.?pp -> macrocompiler.?pp
  7227.  
  7228. zg 03.02.2011 13:05:54 +0200 - build 1812
  7229.  
  7230. 1. PanelInfo is appended with StructSize, OwnerGuid, PluginHandle.
  7231.    For plugin panels, OwnerGuid equals to plugin's GUID, PluginHandle equals to value returned by the plugin from Open[File]Plugin.
  7232.    For real panels, OwnerGuid equals to FarGuid, PluginHandle equals to INVALID_HANDLE_VALUE.
  7233.  
  7234. 2. PanelInfo: Plugin, Visible, Focus and ShortNames are removed. Instead, there are PFLAGS_PLUGIN, PFLAGS_VISIBLE, PFLAGS_FOCUS and PFLAGS_ALTERNATIVENAMES.
  7235.  
  7236. 3. PanelInfo.Flags is now 64 bit wide.
  7237.  
  7238. svs 03.02.2011 13:34:09 +0300 - build 1811
  7239.  
  7240. 1. syntax.?pp are renamed to macrocompiler.?pp
  7241.  
  7242. 2. Mantis#0001696: "len" function "crashes" FAR sometimes
  7243.    TVar::toString() returns nullptr
  7244.  
  7245. 3. Mantis#0001697: Access to Custom column from panel.item function
  7246.    (from DAtaMan)
  7247.    Index 22 is added, is equals to Custom column value
  7248.  
  7249. 4. Macro: "substr got rid of 3rd parameter default value of -1"
  7250.    TVar is appended with vtUnknown type (analogous to vtInteger, contains 0)
  7251.  
  7252. 5. ActlKeyMacro structure has grown, according to #5
  7253.    (http://forum.farmanager.com/viewtopic.php?p=58432#p58432).
  7254.  
  7255. drkns 03.02.2011 10:07:07 +0200 - build 1810
  7256.  
  7257. 1. Mantis#0001698: Error in copied files number calculation code.
  7258.    Also, total files number was calculated incorrectly at multiple files copying.
  7259.  
  7260. 2. #error in headers.hpp is for release build only.
  7261.  
  7262. drkns 03.02.2011 09:12:32 +0200 - build 1809
  7263.  
  7264. 1. Fix for vc-build + warnings.
  7265.  
  7266. zg 03.02.2011 04:11:18 +0200 - build 1808
  7267.  
  7268. Global API changes have started. All Unicode plugins for previous builds are incompatible with new versions.
  7269. Until all planned API changes are done, headers.hpp contains #error.
  7270.  
  7271. 1. Plugin's GUID is added to PluginInfo.
  7272.  
  7273. 2. GUID is added to PluginInfo for each menu line. The GUID is passed to OpenPluginW and ConfigureW. It must be unique throughout the menu.
  7274.  
  7275. 3. New parameter in PluginInfo: PluginTitle, the plugin's common name.
  7276.  
  7277. 4. PluginInfo's Flags field is now 64 bit.
  7278.  
  7279. 5. GetMinFarVersionW is removed, there is MinFarVersion in PluginInfo instead.
  7280.  
  7281. drkns 02.02.2011 08:36:12 +0200 - build 1807
  7282.  
  7283. 1. Correction of 1804.1.
  7284.  
  7285. svs 01.02.2011 18:10:02 +0300 - build 1806
  7286.  
  7287. 1. Mantis#0001418: VMenu reaction to RClick is same as in dialogs
  7288.  
  7289. 2. A section is added to help files, containing lists of installed macros.
  7290.  
  7291. svs 01.02.2011 16:07:38 +0300 - build 1805
  7292.  
  7293. 1. Mantis#0001690: FDLG_NODTITLE - do not change console caption to dialog caption
  7294.    (from samlyukov)
  7295.    Instead of suggested FDLG_NODTITLE, a FDLG_KEEPCONSOLETITLE dialog flag is added,
  7296.    which lets switch off the console header change to 0-th dialog element.
  7297.  
  7298. 2. Macro: correction of build #1791
  7299.  
  7300. 3. Mantis#0001684: FileList:GetCurName crash at network folder read
  7301.    (from Maximus)
  7302.    The cause is ProcessSynchroEvent call from CheckForEscSilent, while the plugin is calling ACTL_GETWINDOWINFO.
  7303.    FAR hasn't finished directory read, thus CurFile is greater than FileCount.
  7304.    Which leads to the crash.
  7305.  
  7306. 4. Mantis#0001677: At macro launch, set "launching" key code with MCMD_POSTMACROSTRING
  7307.    Troubles with AKey...
  7308.    It needs testing!
  7309.  
  7310. 5. Mantis#0001480: Expand substr() to let it return substring from the end of string
  7311.      if start  >= 0 then the result is a substring at the "start" position from the beginning of the string.
  7312.      if start  <  0 then the result is a substring at the "start" position from the end of the string.
  7313.      if length >  0 then the returned substring consists of maximum "length" characters from "start"
  7314.      if length <  0 then the returned substring starts from "start" and misses "length" characters from the end of the string.
  7315.  
  7316.      an empty string is returned:
  7317.        if length = 0
  7318.        if ... (clarify!)
  7319.  
  7320.  
  7321. drkns 01.02.2011 14:02:14 +0200 - build 1804
  7322.  
  7323. 1. "In all non-removable drives"/"In all local drives" search mode also counts unmounted drives.
  7324.  
  7325. 2. Mantis#0001693: Incorrect settings in File descriptions dialog
  7326.  
  7327. drkns 29.01.2011 12:31:15 +0200 - build 1803
  7328.  
  7329. 1. Correction of alternative streams search in folders.
  7330.  
  7331. svs 27.01.2011 13:30:39 +0300 - build 1802
  7332.  
  7333. 1. Macro: Correction of return code for callplugin
  7334.    callplugin function returns 0 if the called plugin does not exist or it has returned 0.
  7335.    In other cases, the function returns a non-zero value.
  7336.  
  7337. svs 25.01.2011 18:35:03 +0300 - build 1801
  7338.  
  7339. 1. Macro: Correction of return code for callplugin
  7340.  
  7341. svs 25.01.2011 16:53:18 +0300 - build 1800
  7342.  
  7343. 1. Mantis#0001673: Add OPEN_FROMMACROSTRING flag to existing OPEN_FROMMACRO
  7344.    Testing...
  7345.  
  7346.    <ACHTUNG>
  7347.  
  7348.      Note for OpenPluginW:
  7349.        If OPEN_FROMMACRO flag is set in OpenFrom parameter, then values in least significant word
  7350.        contain the ID of the current macro area defined in FARMACROAREA, not an identifier from
  7351.        OPENPLUGIN_OPENFROM enumeration.
  7352.  
  7353.    </ACHTUNG>
  7354.  
  7355.  
  7356. 2. Mantis#0001677: Provide "launching" key code when running a macro with MCMD_POSTMACROSTRING
  7357.    ActlKeyMacro::Param::PlainText structure is appended with "AKey" field.
  7358.  
  7359. drkns 23.01.2011 13:02:35 +0200 - build 1799
  7360.  
  7361. 1. Error in FCTL_SETSORTMODE.
  7362.  
  7363. 2. #0001670 once more.
  7364.  
  7365. drkns 22.01.2011 18:31:13 +0200 - build 1798
  7366.  
  7367. 1. #0001670 once more.
  7368.  
  7369. drkns 20.01.2011 20:18:54 +0200 - build 1797
  7370.  
  7371. 1. Correction of "read"/"modification" access rights separation in apiCreateFile.
  7372.  
  7373. drkns 20.01.2011 00:52:42 +0200 - build 1796
  7374.  
  7375. 1. Links copying/moving did not work in several cases.
  7376.  
  7377. drkns 19.01.2011 21:21:30 +0200 - build 1795
  7378.  
  7379. 1. Some more elevation-related paranoia:
  7380.      - pipe name = GUID;
  7381.      - PID check.
  7382.  
  7383. drkns 18.01.2011 14:47:00 +0200 - build 1794
  7384.  
  7385. 1. Ibid:
  7386.      - correction of 1793;
  7387.      - paranoia mode on: Named pipe is now available for privileged processes only.
  7388.  
  7389. drkns 18.01.2011 00:53:26 +0200 - build 1793
  7390.  
  7391. 1. Changes in elevation, see Mantis#0001670.
  7392.  
  7393. drkns 17.01.2011 13:27:27 +0200 - build 1792
  7394.  
  7395. 1. Mantis#0001667: can't paste hex numbers
  7396.  
  7397. svs 16.01.2011 18:02:14 +0300 - build 1791
  7398.  
  7399. 1. Mantis#0001660: XOR operation for boolean expressions
  7400.    "^^" conditional operation is added - XOR, exclusive OR
  7401.  
  7402. drkns 16.01.2011 00:20:57 +0200 - build 1790
  7403.  
  7404. 1. "[x] File processing (OpenFilePlugin)" switch in plugin manager settings is now 3-positional:
  7405.      [ ] - don't show menu;
  7406.      [?] - show menu everywhere but cases "enter an archive with Enter" and "search in archives";
  7407.      [x] - show menu everywhere.
  7408.  
  7409. 2. GCC warnings.
  7410.  
  7411. svs 14.01.2011 17:39:03 +0300 - build 1789
  7412.  
  7413. 1. Mantis#0001631: addition in PluginsControl() - PCTL_FORCEDLOADPLUGIN
  7414.    (from: samlyukov)
  7415.    Addition to API: PCTL_FORCEDLOADPLUGIN loads plugin directly into memory instead of cache, which allows
  7416.                   custom plugins use at inter-plugin interaction.
  7417.  
  7418. svs 14.01.2011 17:11:42 +0300 - build 1788
  7419.  
  7420. 1. Macro: correction for iif regarding the check whether the argument is a string (see build 1786 #3)
  7421.  
  7422. 2. Macro: correction for $if(string) regarding the check whether the operand is a string (see build 1786 #3)
  7423.  
  7424. drkns 13.01.2011 22:33:26 +0200 - build 1787
  7425.  
  7426. 1. Launcher inofficial testing mode - "do not flash with panels when launching non-console applications".
  7427.    The mode is on if System\Executor\SilentExternal=dword:1.
  7428.  
  7429. svs 13.01.2011 11:43:12 +0300 - build 1786
  7430.  
  7431. 1. Mantis#0001655: Incorrect error message at macro parsing
  7432.  
  7433. 2. Mantis#0001642: Incorrect error position is returned at macro sequence check
  7434.  
  7435. 3. Macro: changes in conditions checking behavior for $if/$while
  7436.    String in condition is checked for emptiness.
  7437.  
  7438.      %a="";
  7439.      $if (%a) is not executed $else is executed $end
  7440.      $if ("") is not executed $else is executed $end
  7441.  
  7442.      %a="anything, including 0";
  7443.      $if (%a) is executed $else is not executed $end
  7444.      $if ("anything") is executed $else is not executed $end
  7445.      $if ("0") is executed $else is not executed $end
  7446.  
  7447.    + slightly reduce the code size :-)
  7448.  
  7449. 4. Macro: Scr.Scroll function introduced in build 1773 is renamed to Window.Scroll
  7450.  
  7451. 5. Mantis#0001656: Debug version crashes in TruncStr
  7452.  
  7453. drkns 12.01.2011 16:15:14 +0200 - build 1785
  7454.  
  7455. 1. And even more.
  7456.  
  7457. drkns 12.01.2011 13:14:15 +0200 - build 1784
  7458.  
  7459. 1. Another pair of corrections in launcher.
  7460.  
  7461. drkns 11.01.2011 21:49:13 +0200 - build 1783
  7462.  
  7463. 1. Correction of 1782.2.
  7464.  
  7465. drkns 11.01.2011 21:38:40 +0200 - build 1782
  7466.  
  7467. 1. /rc key is removed - original console state is always restored.
  7468.  
  7469. 2. Support for commands run with privileges escalation (aka "Run as administrator") in panels, command line and history. The hotkey is CtrlAltEnter.
  7470.  
  7471. 3. Changes in launcher because of #2. Everything seems to work, nevertheless be careful.
  7472.  
  7473. drkns 10.01.2011 21:27:48 +0200 - build 1781
  7474.  
  7475. 1. Displaying of number of processed files in copy dialog is back.
  7476.  
  7477. 2. Common copy process indicator now works during moving within single volume too.
  7478.  
  7479. drkns 10.01.2011 14:20:32 +0200 - build 1780
  7480.  
  7481. 1. Some optimization: if there is no plugins exporting OpenFilePlugin/Analyse, then no excessive actions (file open/read/close)
  7482.    is done at attempt to "enter" the file.
  7483.  
  7484. 2. A couple of trivia.
  7485.  
  7486. drkns 09.01.2011 12:50:26 +0200 - build 1779
  7487.  
  7488. 1. When an incorrect date was intentionally set, it could be replaced with a random value.
  7489.  
  7490. 2. More correct 2-digit years interpretation.
  7491.  
  7492. drkns 08.01.2011 22:48:50 +0200 - build 1778
  7493.  
  7494. 1. Fixed: Launch attempt was ignored for files of type unknown to OS.
  7495.  
  7496. drkns 07.01.2011 22:34:21 +0200 - build 1777
  7497.  
  7498. 1. Mantis#0001644: Crash after "Cannot load language data".
  7499.  
  7500. drkns 05.01.2011 19:21:38 +0200 - build 1776
  7501.  
  7502. 1. Correction of 1775.
  7503.  
  7504. drkns 05.01.2011 10:50:10 +0200 - build 1775
  7505.  
  7506. 1. Mantis#0001640: Strings must be backed up between DialogInit and DialogFree calls
  7507.    Now FAR makes the inner copies of FarDialogItem.History and FarDialogItem.Mask, there's no need to store them in a plugin.
  7508.  
  7509. drkns 02.01.2011 12:57:22 +0200 - build 1774
  7510.  
  7511. 1. Correction of yyyy-MM-dd formatted dates output.
  7512.  
  7513. 2. interf.cpp is cleaned a little bit.
  7514.  
  7515. svs 29.12.2010 16:09:28 +0300 - build 1773
  7516.  
  7517. 1. Mantis#0001538: Panel refreshing at some macro commands execution
  7518.  
  7519. 2. Macro: a function is added N=Scr.Scroll(Lines[,Axis])
  7520.       Lines - positive number - forward (down/right), negative - back (up/left).
  7521.       Axis - optional parameter, 0 - vertical (default), 1 - horizontal.
  7522.  
  7523.       The function returns 0 on scrolling failure (for example, Lines was equal to 0), else 1
  7524.  
  7525. drkns 29.12.2010 11:30:42 +0200 - build 1772
  7526.  
  7527. 1. In 1741, SharePoint shares support was broken.
  7528.    It seems that Microsoft ignores its own API.
  7529.  
  7530. drkns 28.12.2010 12:55:27 +0200 - build 1771
  7531.  
  7532. 1. 1763 is continued - years are displayed without leading zero.
  7533.  
  7534. 2. Changes in DIF_MASKEDIT: Del/BS do not shift the remaining text.
  7535.  
  7536. 3. At the time of PrepareDiskPath() execution, Elevation is disabled.
  7537.  
  7538. svs 28.12.2010 09:49:18 +0300 - build 1770
  7539.  
  7540. 1. Correction of build 1769
  7541.  
  7542. 2. Mantis#0001594: FAR being launched in editor or viewer mode loads macros for UserMenu
  7543.    The user menu is temporarily disabled in these modes...
  7544.  
  7545. 3. Mantis#0001614: Line-by-line scrolling in "far.exe /w" mode
  7546.    (from DAtaMan)
  7547.    Console buffer line-by-line scrolling with Ctrl-Alt-Up/Down keys
  7548.  
  7549.    <ACHTUNG>
  7550.  
  7551.      After "scroll" macrofunction appear (http://forum.farmanager.com/viewtopic.php?f=15&t=5409),
  7552.      any keys processing for screen buffer scrolling will be removed from manager.
  7553.  
  7554.    </ACHTUNG>
  7555.  
  7556. 4. "&Hidden" and "C&hange time:" hotkeys duplicates in SetAttr dialog.
  7557.    "Change time:" is bound to "g".
  7558.  
  7559. svs 27.12.2010 12:45:54 +0300 - build 1769
  7560.  
  7561. 1. Mantis#0001634: Sometimes panel.item function returns an empty description for a file
  7562.    (from DAtaMan)
  7563.    panel.item(0,0,11) returns an empty value if descriptions mode is off or no CtrlZ was invoked
  7564.  
  7565. drkns 24.12.2010 10:37:23 +0200 - build 1768
  7566.  
  7567. 1. 1764 is continued - write timestamp is also taken from the source.
  7568.  
  7569. zg 20.12.2010 13:46:31 +0200 - build 1767
  7570.  
  7571. 1. Forum:
  7572.    type `macro:post panel.setpath(1, "C:/")' in command line (to change passive panel path)
  7573.    and press F5 Enter on any file or folder in active panel.
  7574.    This results in "Can not find the file" error.
  7575.  
  7576. drkns 19.12.2010 23:49:18 +0200 - build 1766
  7577.  
  7578. 1. Correction of 1763.
  7579.  
  7580. svs 19.12.2010 22:52:53 +0300 - build 1765
  7581.  
  7582. 1. Mantis#0001623: A new command in FARMACROCOMMAND - MCMD_GETAREA - Get current macro area
  7583.    (from Yegor)
  7584.  
  7585. drkns 18.12.2010 20:59:54 +0200 - build 1764
  7586.  
  7587. 1. When "[x] Copy contents of symbolic links" is on, source size is displayed for symlinks in overwrite confirmation dialog.
  7588.  
  7589. drkns 18.12.2010 18:20:53 +0200 - build 1763
  7590.  
  7591. 1. Correction of 1762.1 for "Year-Month-Day"-formatted dates.
  7592.  
  7593. drkns 17.12.2010 18:58:27 +0200 - build 1762
  7594.  
  7595. 1. There were rumors about incorrect displaying of 5-digit years in the file attributes dialog.
  7596.  
  7597. drkns 15.12.2010 22:05:28 +0200 - build 1761
  7598.  
  7599. 1. Dialogs are not centered on console resize.
  7600.  
  7601. drkns 14.12.2010 16:13:10 +0200 - build 1760
  7602.  
  7603. 1. Correction of 1757.4.
  7604.  
  7605. drkns 13.12.2010 18:12:58 +0200 - build 1759
  7606.  
  7607. 1. Rollback of 1756.
  7608.  
  7609. drkns 12.12.2010 20:01:39 +0200 - build 1758
  7610.  
  7611. 1. Correction of 1757.2.
  7612.  
  7613. drkns 12.12.2010 19:43:37 +0200 - build 1757
  7614.  
  7615. 1. Mantis#0001618: Numeric sort in other columns too.
  7616.  
  7617. 2. "Case sensitivity" of sorting is now the property of the panel itself, not its mode (similar to numeric sort).
  7618.    The appropriate option moved from panel mode configuration dialog to "Sort by" menu.
  7619.  
  7620. 3. PFLAGS_CASESENSITIVESORT and FCTL_SETCASESENSITIVESORT are added to API.
  7621.  
  7622. 4. Checking of malloc()/free(), new/delete, new[]/delete[] pairs is added to debug build for catching bugs like "int* a=new int[10]; delete a;"
  7623.  
  7624. drkns 12.12.2010 14:30:26 +0200 - build 1756
  7625.  
  7626. 1. Some mouse events were not passed to the editor.
  7627.  
  7628. chupakabra 11.12.2010 16:02:00 +0200 - build 1755
  7629.  
  7630. 1. Too much memory allocated in Editor::Block2Text (up to the size of the whole file).
  7631.  
  7632. drkns 10.12.2010 22:36:15 +0200 - build 1754
  7633.  
  7634. 1. Correction of FindFirstStream inner implementation.
  7635.  
  7636. drkns 10.12.2010 20:02:21 +0200 - build 1753
  7637.  
  7638. 1. "[x] Automatic update of environment variables" -> "[ ] Automatic update of environment variables".
  7639.  
  7640. 2. Correction of console::Write().
  7641.  
  7642. drkns 10.12.2010 10:51:32 +0200 - build 1752
  7643.  
  7644. 1. "[x] Automatic update of environment variables".
  7645.  
  7646. t-rex 10.12.2010 00:06:20 +0200 - build 1751
  7647.  
  7648. 1. Ctrl-Ins does not copy files to clipboard anymore, now this is bound to Ctrl-C.
  7649.    Ctrl-C - Copy marked files to clipboard (not taking command line state into account).
  7650.  
  7651. drkns 08.12.2010 23:50:39 +0200 - build 1750
  7652.  
  7653. 1. Attributes dialog's option "[ ] Process subfolder" is hidden for files.
  7654.  
  7655. 2. "[ Panel ]" button blocking is broken in search results if appropriate plugins are missing.
  7656.  
  7657. drkns 08.12.2010 19:07:03 +0200 - build 1749
  7658.  
  7659. 1. Forum: "Show selected first" item in sort mode choose menu is actually "Show directories first", and the last item does not work at all, even the checkbox is not set.
  7660.  
  7661. 2. Forum: Bug at "C:\Documents and Setting\All Users" folder open
  7662.  
  7663. 3. Forum: Far crashes if Ctrl+Shift+End is pressed in input field of fixed size (for example, Options - Editor settings - Tab size)
  7664.  
  7665. drkns 07.12.2010 18:09:12 +0200 - build 1748
  7666.  
  7667. 1. Handle leak in previous build.
  7668.  
  7669. drkns 07.12.2010 12:41:41 +0200 - build 1747
  7670.  
  7671. 1. Mantis#0001615: A possibility to open path in panels that doesn't exist on volume or in network
  7672.  
  7673. drkns 07.12.2010 11:29:41 +0200 - build 1746
  7674.  
  7675. 1. Correction of 1741.
  7676.  
  7677. drkns 07.12.2010 08:45:22 +0200 - build 1745
  7678.  
  7679. 1. Another couple of trivia.
  7680.  
  7681. drkns 07.12.2010 01:02:52 +0200 - build 1744
  7682.  
  7683. 1. Mantis#0001408: Paste into autocompleted field leaves the text "grayed" sometimes.
  7684.  
  7685. drkns 07.12.2010 00:04:33 +0200 - build 1743
  7686.  
  7687. 1. Mantis#0001612: Possibility to set current time in file attributes change dialog
  7688.  
  7689. drkns 06.12.2010 20:09:35 +0200 - build 1742
  7690.  
  7691. 1. When Far 1.x local menu files are read, former divider formatting is taken into account.
  7692.  
  7693. drkns 06.12.2010 19:42:33 +0200 - build 1741
  7694.  
  7695. 1. "Change Time" support.
  7696.    Unlike "Last Write Time", it is updated at any manipulations with the file, not only at file contents change.
  7697.  
  7698. 2. Correction of hlf/lng - "Modification time" -> "Last write time".
  7699.  
  7700. 3. Simple global protection from memory shortage: at unsuccessful allocation, instead of crash, execution is stopped with repeat or resume capability.
  7701.  
  7702. 4. gcc warnings.
  7703.  
  7704. drkns 04.12.2010 11:11:27 +0200 - build 1740
  7705.  
  7706. 1. From Tim Sobolev: correction of editor window caption.
  7707.  
  7708. 2. Correction of 1738.2.
  7709.  
  7710. svs 03.12.2010 17:01:42 +0300 - build 1739
  7711.  
  7712. 1. From Alexey Samlyukov: far.exe /w mode is appended with keys: Ctrl-Alt-Home/End scroll the window to the beginning/end of the buffer
  7713.  
  7714. drkns 02.12.2010 20:06:35 +0200 - build 1738
  7715.  
  7716. 1. Mantis#0001608: A minor bug at codepage duplicates search
  7717.  
  7718. 2. Types correction.
  7719.  
  7720. drkns 01.12.2010 16:08:46 +0200 - build 1737
  7721.  
  7722. 1. Correction of 1729.1.
  7723.  
  7724. drkns 26.11.2010 23:25:10 +0200 - build 1736
  7725.  
  7726. 1. Incorrect processing of ';'-separated masks list containing "%pathext%".
  7727.  
  7728. drkns 26.11.2010 20:44:41 +0200 - build 1735
  7729.  
  7730. 1. Mantis#0001591: Addition to FileFilterControl: Custom filters
  7731.  
  7732. 2. Hiding useless elements in link creation dialog.
  7733.  
  7734. yjh 26.11.2010 11:00:23 +0300 - build 1734
  7735.  
  7736. 1. Fixed error in 1732
  7737.  
  7738. drkns 25.11.2010 21:15:37 +0200 - build 1733
  7739.  
  7740. 1. From Alexey Samlyukov: PFLAGS_USECRC32/OPIF_USECRC32 flags define explicitly that the plugin fills in its panel elements' CRC32 field.
  7741.  
  7742. drkns 25.11.2010 15:07:10 +0200 - build 1732
  7743.  
  7744. 1. Correction of 1730.1 - In Windows 7 and higher, there is a single "App Paths".
  7745.  
  7746. drkns 25.11.2010 13:52:52 +0200 - build 1731
  7747.  
  7748. 1. "[x] use additional privileges" option didn't work
  7749.  
  7750. yjh 25.11.2010 14:50:16 +0300 - build 1730
  7751.  
  7752. 1. In win64, 'App Paths' registry key must be accessed in "two versions", for
  7753.    32- and 64-bit processes (they differ :)
  7754.  
  7755. drkns 25.11.2010 10:30:48 +0200 - build 1729
  7756.  
  7757. 1. At rename/move, "[ ] Process multiple destinations" option is off and unused.
  7758.  
  7759. yjh 25.11.2010 08:55:14 +0300 - build 1728
  7760.  
  7761. 1. ulink's def file was committed in its "debug" form
  7762.  
  7763. yjh 25.11.2010 04:42:51 +0300 - build 1727
  7764.  
  7765. 1. vc10.asm is redesigned to take a little less space :).
  7766.  
  7767. 2. At the case of linking with ulink, vc10 is not used - instead,
  7768.    these 2 routines are done in "delayload" mode and "substituted" only in
  7769.    situation when they have not imported.
  7770.      The difference in behavior has 3 causes: this variant is more correct,
  7771.    ulink forbids "direct usage" of names' __imp_ prefixes (this is a rare
  7772.    exotics, although such mistakes do happen), and finally, ms-link doesn't
  7773.    support partial delay load.
  7774.  
  7775. drkns 23.11.2010 20:39:55 +0200 - build 1726
  7776.  
  7777. 1. From Alexey Samlyukov: malfunctional FreePluginDirList.
  7778.  
  7779. 2. From Alexey Samlyukov: GetPluginDirList can process the passive panel.
  7780.  
  7781. drkns 22.11.2010 22:20:00 +0200 - build 1725
  7782.  
  7783. 1. Minimal system requirements for VC2010 build are now 2k SP4 + KB816542, instead of XP SP3.
  7784.  
  7785. drkns 22.11.2010 14:27:37 +0200 - build 1724
  7786.  
  7787. 1. Mantis#0001600: No entry in 'C:\Users\<User>\Application Data'
  7788.  
  7789. 2. A couple of trivia.
  7790.  
  7791. drkns 17.11.2010 00:12:50 +0200 - build 1723
  7792.  
  7793. 1. Mistype in 1722.
  7794.  
  7795. drkns 16.11.2010 19:14:24 +0200 - build 1722
  7796.  
  7797. 1. file to its SFN rename support is removed from copier - its implementation leads to bugs at ordinary renaming.
  7798.  
  7799. 2. Attempt of renaming to the same name is now considered successful and doesn't cause "Cannot copy the file onto itself" error.
  7800.  
  7801. 3. Correct character case of SFN is shown in panels.
  7802.  
  7803. 4. At users' request - FarRecursiveSearch does not search on SFN.
  7804.  
  7805. 5. Optimization of several api* wrappers.
  7806.  
  7807. drkns 15.11.2010 13:47:00 +0200 - build 1721
  7808.  
  7809. 1. Forum: "Problem when writing a macro".
  7810.  
  7811. t-rex 12.11.2010 21:32:19 +0200 - build 1720
  7812.  
  7813. 1. Mantis#1527: Selected items in input history do not stay at the top of drop-down list
  7814.    and can get removed when outdated.
  7815.  
  7816. drkns 12.11.2010 19:39:44 +0200 - build 1719
  7817.  
  7818. 1. Correction of 1718.
  7819.  
  7820. drkns 12.11.2010 13:47:00 +0200 - build 1718
  7821.  
  7822. 1. Mantis#0001587: far:goto "c:\long path" was broken
  7823.  
  7824. drkns 12.11.2010 07:53:51 +0200 - build 1717
  7825.  
  7826. 1. Correction of 1715.3.
  7827.  
  7828. drkns 11.11.2010 11:11:11 +0200 - build 1716
  7829.  
  7830. 1. Sequel of 1715.3. w32api minimal version for gcc is now 3.15.
  7831.  
  7832. drkns 10.11.2010 20:50:52 +0200 - build 1715
  7833.  
  7834. 1. Correction of text in links creation dialog
  7835.  
  7836. 2. Mantis#0000329: Change default colors for Unchanged text
  7837.    Also, selection in command line is now cyan, instead of gray, for uniformity.
  7838.  
  7839. 3. Removed junk from headers.hpp.
  7840.  
  7841. ts 09.11.2010 22:43:29 +0200 - build 1714
  7842.  
  7843. 1. Macro: BM.back() is now given functionality implemented earlier with BM.prev()
  7844.    BM.prev() only returns to previous bookmark, as expected.
  7845.  
  7846. svs 08.11.2010 18:07:58 +0300 - build 1713
  7847.  
  7848. 1. Macro: BM.first() and BM.last() are removed because of functional redundancy...
  7849.  
  7850.    <ACHTUNG>
  7851.  
  7852.      BM.first must be replaced with BM.goto(1)
  7853.      BM.last  must be replaced with BM.goto(BM.stat(0))
  7854.  
  7855.    </ACHTUNG>
  7856.  
  7857. 2. Macro: fix of Menu.XXX malfunction in dialogs with lists.
  7858.  
  7859. drkns 08.11.2010 16:10:32 +0200 - build 1712
  7860.  
  7861. 1. Circumvention of old Windows' stupid bug:
  7862.    ExpandEnvironmentStringsW(L"%__CD__%", NULL, 0); construction caused AV in ntdll:RtlExpandEnvironmentStrings_U.
  7863.    In addition, some optimization.
  7864.  
  7865. ts 06.11.2010 20:45:04 +0200 - build 1711
  7866.  
  7867. 1. Correction of 1710.
  7868.  
  7869. svs 05.11.2010 16:50:49 +0300 - build 1710
  7870.  
  7871. 1. Macro: addition to bookmarks (from: Tim Sobolev)
  7872.     N=BM.first() - go to first bookmark
  7873.     N=BM.last() - go to last bookmark
  7874.     N=BM.goto([pos]) - go to bookmark with index given (pos=0 or unspecified --> the current one)
  7875.     N=BM.push() - store current position as a bookmark at the top of bookmarks stack
  7876.     N=BM.pop() - restore current position from a bookmark at the top of the stack and remove the bookmark
  7877.  
  7878.   Addition to BM.stat(I) - for I=1 the index of the current bookmark is returned (-1 if there is no bookmarks)
  7879.  
  7880.   Note for BM.add() and BM.prev()
  7881.  
  7882.   If the sequence of BM.add() and BM.prev() has been called, the following actions take part:
  7883.  
  7884.   a) If editor's current position matches the position saved with BM.add(),
  7885.   then go to bookmark previously created with BM.add().
  7886.   b) If editor's current position does not match the position saved with BM.add(),
  7887.   then save the current position and go to bookmark created with BM.add().
  7888.  
  7889. drkns 03.11.2010 10:15:20 +0200 - build 1709
  7890.  
  7891. 1. Correction of 1708.
  7892.  
  7893. drkns 31.10.2010 22:24:07 +0200 - build 1708
  7894.  
  7895. 1. Experimental:
  7896.    - completion can append paths in the middle of the command line ("cd c:\wi").
  7897.  
  7898. drkns 30.10.2010 20:37:40 +0200 - build 1707
  7899.  
  7900. 1. Copying of symlinks with "read only" attribute did not work.
  7901.  
  7902. drkns 28.10.2010 16:48:32 +0200 - build 1706
  7903.  
  7904. 1. Mantis#0001559: "Cannot find the file" error on folder change from folders history
  7905.  
  7906. svs 27.10.2010 13:23:28 +0300 - build 1705
  7907.  
  7908. 1. Macro: correction of Selected, Bof, Eof, Empty behavior.
  7909.    Now they meet the specification.
  7910.  
  7911. zg 27.10.2010 12:47:55 +0200 - build 1704
  7912.  
  7913. 1. gcc build.
  7914.  
  7915. svs 26.10.2010 12:25:02 +0300 - build 1703
  7916.  
  7917. 1. The first iteration of Mantis#0000466. It is wrapped temporarily in PROCPLUGINMACROFUNC (unavailable in a regular build)
  7918.  
  7919. 2. Code exchange between macro.cpp and syntax.cpp
  7920.    An inner entity is introduced: "registration of a function".
  7921.  
  7922. drkns 26.10.2010 00:45:47 +0200 - build 1702
  7923.  
  7924. 1. At users' wish, the rollback is rolled back.
  7925.    Privileges option is restored and it is off by default.
  7926.  
  7927. drkns 25.10.2010 21:39:28 +0200 - build 1701
  7928.  
  7929. 1. Rollback of 1699.
  7930.  
  7931. drkns 25.10.2010 11:56:14 +0200 - build 1700
  7932.  
  7933. 1. VCTL_GETINFO returned incorrect value of ViewerInfo::WindowSizeY.
  7934.  
  7935. drkns 24.10.2010 20:35:03 +0200 - build 1699
  7936.  
  7937. 1. A separate option for controlling of extra privileges use.
  7938.  
  7939. drkns 23.10.2010 00:21:14 +0200 - build 1698
  7940.  
  7941. 1. At the following .BAT file launch:
  7942.  
  7943. @echo off
  7944. cls
  7945. echo 1
  7946. echo 2
  7947. echo 3
  7948.  
  7949. the first two items were not displayed.
  7950.  
  7951. drkns 21.10.2010 11:57:27 +0200 - build 1697
  7952.  
  7953. 1. Symlink wipe led to damaged target file.
  7954.  
  7955. drkns 20.10.2010 11:42:42 +0200 - build 1696
  7956.  
  7957. 1. Privileges elevation dialogs enabling/disabling is implemented in UI.
  7958.  
  7959. drkns 20.10.2010 10:45:45 +0200 - build 1695
  7960.  
  7961. 1. Mantis#0001557: Incorrect displaying of symlink attributes
  7962.  
  7963. 2. Incorrect displaying of attributes dialog when the element is a hardlink and a symbolic link at the same time.
  7964.  
  7965. drkns 15.10.2010 13:23:23 +0200 - build 1694
  7966.  
  7967. 1. PluginInfo::DiskMenuNumbers -> PluginInfo::Reserved0.
  7968.  
  7969. drkns 15.10.2010 09:22:33 +0200 - build 1693
  7970.  
  7971. 1. Correction of 1692.
  7972.  
  7973. drkns 14.10.2010 20:01:32 +0200 - build 1692
  7974.  
  7975. 1. Experimental:
  7976.    - plugin hotkeys in drive selection menu are now set by user with F4, not by plugins.
  7977.    - hotkey can be a digit or any other Unicode character.
  7978.  
  7979. drkns 06.10.2010 19:59:59 +0200
  7980.  
  7981. 1. ASLR.
  7982.  
  7983. drkns 03.10.2010 14:28:31 +0200 - build 1691
  7984.  
  7985. 1. Correction of 1683.
  7986.  
  7987. drkns 03.10.2010 00:28:13 +0200 - build 1690
  7988.  
  7989. 1. Error in processing of SetFilePointerEx "elevation-aware" version.
  7990.  
  7991. drkns 02.10.2010 23:36:23 +0200 - build 1689
  7992.  
  7993. 1. Mantis#0001525: Copy folders with symbolic links (to other folders) inside
  7994.  
  7995. t-rex 01.10.2010 20:30:56 +0200 - build 1688
  7996.  
  7997. 1. Mantis#1522: Excessive slash in panel caption.
  7998.    The bug has slightly another nature. Of course, we can process (delete) these slashes but this is pointless,
  7999.    and the bug is exactly about some of them have been deleted.
  8000.  
  8001. t-rex 01.10.2010 08:21:10 +0200 - build 1687
  8002.  
  8003. 1. Mantis#1520: crash on cd %tmp%
  8004.    Heap corruption in PrepareDiskPath(). Ibid, slight optimization is done.
  8005.  
  8006. t-rex 01.10.2010 04:17:16 +0200 - build 1686
  8007.  
  8008. 1. In case of "preloaded" plugin requiring newer FAR (GetMinFarVersion), a loading error message was shown twice.
  8009.  
  8010. chupakabra 30.09.2010 21:33:00 +0200 - build 1685
  8011.  
  8012. 1. Fix for 1684
  8013.  
  8014. chupakabra 30.09.2010 21:16:00 +0200 - build 1684
  8015.  
  8016. 1. Mantis#0001514: Incorrect ConvertPath(CPM_REAL, ...) functionality on DFS
  8017.    Simple processing of network paths is added to internalNtQueryGetFinalPathNameByHandle().
  8018.  
  8019. drkns 28.09.2010 13:47:00 +0200 - build 1683
  8020.  
  8021. 1. Editor hotkey F4 which performs "exit", similar to viewer.
  8022.  
  8023. 2. A couple of things regarding to elevation.
  8024.  
  8025. svs 27.09.2010 16:59:30 +0300 - build 1682
  8026.  
  8027. 1. Mantis#0001512: auto-starting macros did not work
  8028.  
  8029. 2. Macro: mmode(2) - returns information (macro area and flags) on starting conditions
  8030.    for "this" macro sequence (being executed).
  8031.    The lower byte of the return code is the macro area index from which the macro has started:
  8032.  
  8033.          0 - Other           -  Text copying mode from screen, vertical menus
  8034.          1 - Shell           -  File panels
  8035.          2 - Viewer          -  Inner viewer
  8036.          3 - Editor          -  Editor
  8037.          4 - Dialog          -  Dialogs
  8038.          5 - Search          -  Quick search in panels
  8039.          6 - Disks           -  Drive selection menu
  8040.          7 - MainMenu        -  Main menu
  8041.          8 - Menu            -  Other menus
  8042.          9 - Help            -  Help system
  8043.         10 - Info            -  Info panel
  8044.         11 - QView           -  Quick view panel
  8045.         12 - Tree            -  Folder tree panel
  8046.         13 - FindFolder      -  Folder search
  8047.         14 - UserMenu        -  User menu
  8048.         15 - AutoCompletion  -  AutoCompletion list
  8049.        255 - Common          -  Common area
  8050.  
  8051.     Other values are the start conditions flags (including some service flags)
  8052.  
  8053.        Start conditions:
  8054.          0x00000200 - do NOT pass keys to plugins while recording/playing a macro
  8055.          0x00000800 - the macro is started at FAR start
  8056.          0x00001000 - run if the command line is empty
  8057.          0x00002000 - run if the command line is not empty
  8058.          0x00004000 - run if selection is present in editor
  8059.          0x00008000 - run if no selection is present in editor
  8060.          0x00010000 - active:  run if selection is present
  8061.          0x00020000 - passive: run if selection is present
  8062.          0x00040000 - active:  run if no selection is present
  8063.          0x00080000 - passive: run if no selection is present
  8064.          0x00100000 - active:  run if there is a plugin panel
  8065.          0x00200000 - passive: run if there is a plugin panel
  8066.          0x00400000 - active:  run if there is a file panel
  8067.          0x00800000 - passive: run if there is a file panel
  8068.          0x01000000 - active:  run if current object is "file"
  8069.          0x02000000 - passive: run if current object is "file"
  8070.          0x04000000 - active:  run if current object is "directory"
  8071.          0x08000000 - passive: run if current object is "directory"
  8072.  
  8073.        Additional information:
  8074.          0x00000100 - suppress screen redraw while running the macro
  8075.          0x10000000 - multi-line text of the macro (REG_MULTI_SZ)
  8076.          0x40000000 - the macro must be saved when saving macros
  8077.          0x80000000 - the macro is switched off (macros marked with this flag are not run - neither from a keyboard, nor from eval())
  8078.  
  8079.        TODO: last 2 flags can be done without ReadOnly limitation
  8080.  
  8081.     Also, MACROFLAGS_MFLAGS values are rearranged, unused MFLAGS_REUSEMACRO is removed.
  8082.  
  8083. svs 23.09.2010 00:26:57 +0300 - build 1681
  8084.  
  8085. 1. Mantis#0001508: Far crash when executing a macro on a slowly refreshing panel
  8086.    During the call of macro function Panel.SetPos(), panel.SetPath() and Panel.SetPosIdx() the macros
  8087.    are frozen until the functions are done: on "big" directories (like network ones, with large amount
  8088.    of file objects and/or slow channels) these functions can display messages about file/folder data
  8089.    collecting process, with the possibility of cancellation on Esc.
  8090.  
  8091.    TODO: Now the code is appended with snippets which remove screen lock before work (and set it back
  8092.          after execution) - see them between tags <Lock?> and </Lock?>.
  8093.          This decision lets "see" the very message about data collecting process.
  8094.          Here is an "obscurity" - are the snippets really needed?
  8095.          * if they are, then a situation takes place for the case when the message has appeared and
  8096.            user has cancelled the scanning... an unfinished transaction
  8097.          * if they are not, then we have a contrary situation - for the macro, user sees
  8098.            non-responding Far (until directory scanning is done)
  8099.  
  8100. drkns 21.09.2010 20:38:32 +0200
  8101.  
  8102. 1. Another flaw in gcc headers.
  8103.  
  8104. warp 21.09.2010 00:30:00 +0100 build 1680
  8105.  
  8106. 1. Some unnecessary stuff got into the wrapper. Returned.
  8107.  
  8108. warp 21.09.2010 00:15:00 +0100 build 1679
  8109.  
  8110. 1. Experimental. The support of detection is added for BD-ROM (it was buggy), BD-RW, HDDVD, HDDVD-RW.
  8111.  
  8112. 2. Removed function which did drive type detection based on removable media format. This was a sort of black magic.
  8113.  
  8114. drkns 18.09.2010 19:11:51 +0200 - build 1678
  8115.  
  8116. 1. From svs:  on Mantis#0000928. "Modal" state in macros is also set in editor and viewer.
  8117.  
  8118. 2. From svs: incorrect menu positioning on CtrlF12.
  8119.  
  8120. 3. XLAT_USEKEYBLAYOUTNAME and XLAT_CONVERTALLCMDLINE flags are uncommented in plugin.hpp.
  8121.  
  8122. 4. x64 warnings.
  8123.  
  8124. svs 17.09.2010 17:13:31 +0300 - build 1677
  8125.  
  8126. 1. Mantis#0001502: Items selection in sorting modes menu (Ctrl-F12)
  8127.      #+# key switches to regular sorting.
  8128.      #-# key switches to reverse sorting.
  8129.      #*# key toggles the current sorting mode.
  8130.  
  8131. t-rex 17.09.2010 12:49:19 +0200 - build 1676
  8132.  
  8133. 1. oldfar::DM_GETTEXT incorrect handling if oldfar::FarDialogItemData.PtrLength==0.
  8134.    This behavior has to be removed from 2.0 API.
  8135.  
  8136. drkns 17.09.2010 10:53:53 +0200 - build 1675
  8137.  
  8138. 1. Error in files decryption logic when copying.
  8139.  
  8140. drkns 16.09.2010 20:12:34 +0200 - build 1674
  8141.  
  8142. 1. A correction of 1511: the editor caption stays changed for Unicode plugins only.
  8143.  
  8144. svs 16.09.2010 17:50:23 +0300 - build 1673
  8145.  
  8146. 1. Mantis#0001504: Provide an ability of emitting a sound dependent on a keyboard layout
  8147.    Functions (macro) are added:
  8148.     N=beep([N])
  8149.       Here, the parameter is (like in WinAPI MessageBeep function):
  8150.         MB_ICONASTERISK = 0x00000040
  8151.             Asterisk sound
  8152.         MB_ICONEXCLAMATION = 0x00000030
  8153.             Exclamation sound
  8154.         MB_ICONHAND = 0x00000010
  8155.             Critical error sound
  8156.         MB_ICONQUESTION = 0x00000020
  8157.             Question sound
  8158.         MB_OK = 0x0
  8159.             Standard sound
  8160.         SIMPLE_BEEP = 0xffffffff
  8161.             Built-in speaker
  8162.       Returned value is 1 or 0 (in case of failure)
  8163.  
  8164.     other bells and whistles to be done with plugins (after Mantis#0000466 "solution")
  8165.  
  8166.     N=kbdLayout([N])
  8167.       Dealing with keyboard layouts
  8168.       Parameter N:
  8169.         a) the value itself: 0x0409 or 0x0419 or...
  8170.         b) 1 - the next system one (round-robin)
  8171.         c) -1 - the previous system one (round-robin)
  8172.         d) 0 or unspecified - return the current layout.
  8173.  
  8174.       Returned value is 0 in case of an error or the previous layout (the current one if N=0)
  8175.       Errors: cannot define current layout name for the console or failed to get console window handle.
  8176.  
  8177.       When non-existing layout is specified the function returns the current layout without an error.
  8178.  
  8179.     For example,
  8180.       print(itoa(kbdLayout(0x421),16))
  8181.         If Russian layout is the current one, the function returns 4190419
  8182.       print(itoa(kbdLayout(),16))
  8183.         If Russian layout is the current one, the function returns 4190419
  8184.       print(itoa(kbdLayout(0x409),16))
  8185.         If Russian layout is the current one, the function returns 4190419 and switches to English layout
  8186.       print(itoa(kbdLayout(1),16))
  8187.         If Russian layout is the current one, the function returns 4190419 and cycles to the next layout
  8188.  
  8189. 2. Macro: $KbdSwitch macro command is removed
  8190.    <ACHTUNG>
  8191.  
  8192.      Replace $KbdSwitch with kbdLayout(1) in your macros
  8193.  
  8194.    </ACHTUNG>
  8195.  
  8196. 3. Mantis#0001423 - Get menu item state
  8197.    More specific on Checked state.
  8198.  
  8199.    Now Menu.ItemStatus() function returns a mark character (U+XXXX) in the high word of the result
  8200.    If flag 0x2 is set and the high word is 0, then Far uses its own character (0x221A)
  8201.    If flag 0x2 is set and the high word isn't 0, then Far uses the mark character from the high word
  8202.    If flag 0x2 is NOT set and the high word isn't 0, this means nothing
  8203.  
  8204. chupakabra 14.09.2010 21:33:00 +0200 - build 1672
  8205.  
  8206. 1. Mantis#0000840: Low-fragmentation Heap is on for CRT heap.
  8207.  
  8208. drkns 14.09.2010 09:58:33 +0200 - build 1671
  8209.  
  8210. 1. Metacharacters !?$history$(!.!)?! were handled incorrectly.
  8211.  
  8212. drkns 13.09.2010 11:30:02 +0200 - build 1670
  8213.  
  8214. 1. Correction of 1669 :)
  8215.  
  8216. drkns 13.09.2010 11:28:01 +0200 - build 1669
  8217.  
  8218. 1. A line was lost in imports.cpp
  8219.  
  8220. warp 10.09.2010 23:39:00 +0300 - build 1668
  8221.  
  8222. 1. Fix in ProcessName(PN_GENERATENAME), ProxyFTP must have been functional now with
  8223.    the use of a wrapper (the wrapper must have a corresponding version).
  8224.  
  8225. drkns 10.09.2010 19:45:44 +0200 - build 1667
  8226.  
  8227. 1. Mantis#0001497: EditorControl (ECTL_GETBOOKMARKS) works incorrectly.
  8228.  
  8229. 2. Mantis#0001498: Cursor is not hidden if the dialog is dragged beyond the screen borders.
  8230.  
  8231. drkns 09.09.2010 09:50:09 +0200 - build 1666
  8232.  
  8233. 1. Mantis#0001495: Error in search (AltF7) in %PATH%.
  8234.  
  8235. chupakabra 05.09.2010 14:33:00 +0200 - build 1665
  8236.  
  8237. 1. When PutFilesW()=1, the cursor is not set on directories.
  8238.  
  8239. chupakabra 02.09.2010 19:41:00 +0200 - build 1664
  8240.  
  8241. 1. Rollback of 1661.
  8242.  
  8243. drkns 31.08.2010 12:40:01 +0200 - build 1663
  8244.  
  8245. 1. setupapi.dll is ubiquitous, so we link it statically.
  8246.    Ibid: a few CM_* functions are replaced with recommended SetupDi* analogs.
  8247.  
  8248. 2. Correction of lng.
  8249.  
  8250. zg 30.08.2010 01:25:01 +0200 - build 1662
  8251.  
  8252. 1. A separate GUID is assigned to a move/rename dialog. Earlier, the copy dialog's GUID was used.
  8253.  
  8254. chupakabra 26.08.2010 22:54:00 +0200 - build 1661
  8255.  
  8256. 1. GetFilesW is always called with a full path given.
  8257.  
  8258. chupakabra 26.08.2010 22:22:00 +0200 - build 1660
  8259.  
  8260. 1. ACTL_PROGRESSNOTIFY - Far performs standard notification of operation completion (flashing button in taskbar).
  8261.  
  8262. drkns 26.08.2010 21:02:33 +0200 - build 1659
  8263.  
  8264. 1. Correction of DN_GETDIALOGINFO.
  8265.  
  8266. 2. Makeup in hotplug.cpp.
  8267.  
  8268. drkns 27.08.2010 09:50:32 +0200
  8269.  
  8270. 1. Spanish translation (lng file) from Mauro72.
  8271.  
  8272. svs 26.08.2010 07:50:23 +0300 - build
  8273.  
  8274. 1. Mantis#0000986: Far 2 API - pascal
  8275.    PluginW.pas is updated.
  8276.  
  8277. zg 25.08.2010 12:12:25 +0200 - build 1658
  8278.  
  8279. 1. GUIDs are assigned to the following dialogs:
  8280.    - r/o file rewrite query. The former GUID matched the regular rewrite dialog.
  8281.    - copy a file.
  8282.    - create a hard link.
  8283.  
  8284. svs 25.08.2010 12:40:09 +0300 - build 1657
  8285.  
  8286. 1. Panel API: FCTL_GETPANELFORMAT and FCTL_GETPANELHOSTFILE are added.
  8287.    (Mantis#0001472: Add FCTL_GETPANELFORMAT, FCTL_GETPANELHOSTFILE)
  8288.  
  8289. svs 25.08.2010 11:17:55 +0300 - build 1656
  8290.  
  8291. 1. Mantis#0001471: QuickView in plugin panel displays random info on folders
  8292.    Display of some folder properties is disabled for plugins (garbage was shown)
  8293.  
  8294. 2. The first stage of FolderShortcuts reconstruction
  8295.     - Functions GetShortcutFolder() and SaveFolderShortcut() don't know what a "key" is.
  8296.     - RCtrl[Shift]-0..9 processing algorithm is moved out of FileList::ProcessKey()
  8297.       into Panel class as ExecShortcutFolder() and SaveShortcutFolder() functions.
  8298.     - GetShortcutFolderSize() function is removed.
  8299.  
  8300. zg 24.08.2010 20:38:59 +0200 - build 1655
  8301.  
  8302. 1. GUIDs are assigned to the following dialogs:
  8303.    - open a file in editor.
  8304.    - save a file in editor.
  8305.    - create a folder.
  8306.    - set file attributes.
  8307.  
  8308. drkns 23.08.2010 19:54:28 +0200 - build 1654
  8309.  
  8310. 1. Autocompletion also works for paths like %env%\foo.
  8311.  
  8312. drkns 22.08.2010 08:30:54 +0200 - build 1653
  8313.  
  8314. 1. Virtual drives detection affects hard drives only.
  8315.  
  8316. svs 21.08.2010 23:18:55 +0300 - build 1652
  8317.  
  8318. 1. Macro: an "exact string" term is added (like "verbatim string" in C#).
  8319.    Exact string has @ symbol at the beginning and surrounded with double quotes.
  8320.    Escape-sequences are not processed in it, which allows usage of such a string where
  8321.    the sequence is formed with the use of metacharacters, for example, in UserMenu.
  8322.    Example: replace all '\' to '/' in a path:
  8323.     print(replace(@"!\!.!", @"\", ""))
  8324.    In order to include double quote character into an "exact string", use the character twice:
  8325.      @"""Word!"" in double quotes."
  8326.  
  8327. svs 21.08.2010 11:00:41 +0300 - build 1651
  8328.  
  8329. 1. Macro: mload() function did not work
  8330.  
  8331. zg 20.08.2010 18:10:13 +0200 - build 1650
  8332.  
  8333. 1. Mantins#0001469: Processing of right arrow keystroke is broken in Editor Word Completion.
  8334.  
  8335. drkns 20.08.2010 15:08:21 +0200 - build 1649
  8336.  
  8337. 1. Virtual drives can be detached at drive selection menu by pressing Del.
  8338.  
  8339. drkns 19.08.2010 23:07:06 +0200 - build 1648
  8340.  
  8341. 1. Somebody implemented a tricky optimization: get the path of temporary folder at start, save it in a variable and use it further.
  8342.    As a result, redefinition of the path did not affect the app.
  8343.  
  8344. drkns 19.08.2010 20:21:57 +0200 - build 1647
  8345.  
  8346. 1. Correction in 1646.
  8347.  
  8348. drkns 19.08.2010 19:36:20 +0200 - build 1646
  8349.  
  8350. 1. Virtual hard drives (VHD) are recognized in drive change menu. Optional is VHD container name displaying.
  8351.    Windows 7/Windows Server 2008 R2 and higher is needed.
  8352.  
  8353. 2. A few useless "IsProcessAssignMacroKey" and more triffles.
  8354.  
  8355. svs 19.08.2010 14:56:31 +0300 - build 1645
  8356.  
  8357. 1. Macro: a function is added N=mload(S)
  8358.      it reads variable S from the registry (Vars area).
  8359.      return: 1 - the variable exists and is read successfully.
  8360.              0 - the variable does not exist; a new variable is not created;
  8361.                  if the variable existed in memory but was deleted from the registry, then the value in memory is not changed.
  8362.      the function works with REG_SZ, REG_MULTI_SZ, REG_DWORD and REG_QWORD keys.
  8363.  
  8364. svs 18.08.2010 22:31:22 +0300 - build 1644
  8365.  
  8366. 1. Mantins#0001305: wish: Show some cols of Find window
  8367.    Columns configuration is located in "Find file advanced options" dialog ("Advanced" button in search window)
  8368.    Column types syntax is the same one as for panels.
  8369.    Differences and limitations are described at help page for "Find file advanced options" dialog.
  8370.  
  8371.    To be improved:
  8372.      1. Get the list prepare the output line (now the list is given a previously prepared line)
  8373.      2. after this, add 9 more view modes and remove the limitation on file name column ("always last")
  8374.      4. as a result, we can get dynamic switching of view modes with Ctrl-digit (as in panels)
  8375.  
  8376. 2. Meanwhile, a bug was found - garbage was shown in "G" column for "..".
  8377.  
  8378. 3. ViewSettingsToText() and TextToViewSettings() are not FileList class members anymore.
  8379.  
  8380. drkns 17.08.2010 20:15:03 +0200 - build 1643
  8381.  
  8382. 1. "Move to the recycle bin" dialog: confirmation button is labeled "move" (was: "delete").
  8383.  
  8384. drkns 16.08.2010 18:27:26 +0200 - build 1642
  8385.  
  8386. 1. Changes in OpenFilePlugin menu:
  8387.    - "Even if only one plugin found" depends on "Show standard association item";
  8388.    - separate setting for ShiftF1;
  8389.    - "standard association" item is not shown for ShiftF1.
  8390.  
  8391. drkns 09.08.2010 13:47:00 +0200 - build 1641
  8392.  
  8393. 1. Mantis#0001459: a problem with Drag and Drop files
  8394.  
  8395. 2. Correction in NTPath. Situations similar to M#0001458 must have been eliminated now.
  8396.    Also, paths like "C:\\\\\Dir1////Dir2" are ok.
  8397.  
  8398. 3. Console redraw and querying at catalog scanning is done like anywhere else - each 200 ms, not after each 64 files.
  8399.    Ibid.: removed useless message at scanning cancel.
  8400.  
  8401. drkns 09.08.2010 12:27:32 +0200 - build 1640
  8402.  
  8403. 1. Some code was left after debugging :)
  8404.  
  8405. drkns 07.08.2010 00:20:54 +0200 - build 1639
  8406.  
  8407. 1. Mantis#0001455: Very long delay when cancelling copy to a network volume.
  8408.  
  8409. drkns 05.08.2010 23:30:53 +0200 - build 1638
  8410.  
  8411. 1. Correction of 1633.2.
  8412.  
  8413. svs 05.08.2010 15:50:06 +0300 - build 1637
  8414.  
  8415. 1. Mantis#0001451: Oddities with MCMD_CHECKMACRO
  8416.    Hang at start for an "empty" macro:
  8417.      "Sequence"="\"\""
  8418.  
  8419. drkns 05.08.2010 14:15:16 +0200 - build 1636
  8420.  
  8421. 1. When < saving a file at the built-in editor | description file refreshing | local menu editing > alternative data streams are not lost.
  8422.  
  8423. 2. Mantis#0001443: Inconvenient reaction to mouse click in a search window.
  8424.  
  8425. 3. FindFirstFile -> FindFirstFileEx. In Windows 7/2008 R2, folder view speedup is possible.
  8426.  
  8427. svs 04.08.2010 11:45:04 +0300 - build 1635
  8428.  
  8429. 1. Mantis#0001451: Oddities with MCMD_CHECKMACRO
  8430.    Additions to UserDefinedList.
  8431.  
  8432. yjh 31.07.2010 07:09:58 +0300 - build 1634
  8433.  
  8434. 1. I don't know who's "fixed" BOOL to bool casting diagnostics after
  8435.    a ternary operation, but, as a result, both diagnostics has been left and
  8436.    the resulting construction has been malfunctional.
  8437.  
  8438. drkns 30.07.2010 23:47:23 +0200 - build 1633
  8439.  
  8440. 1. When copying directories, their alternative data streams are preserved now.
  8441.  
  8442. 2. Eliminated the logic "if we are copying a directory and a filter is on
  8443.   and no files match the filter, then we don't need that empty directory".
  8444.  
  8445. t-rex 30.07.2010 21:27:16 +0200 - build 1632
  8446.  
  8447. 1. From Max Moysyuk: additional edition for Mantis#1419: Very slow switching to local disk (AltF1/AltF2).
  8448.  
  8449. 2. GCC warnings.
  8450.  
  8451. drkns 29.07.2010 21:09:20 +0200 - build 1631
  8452.  
  8453. 1. Mantis#0001443: Inconvenient reaction to mouse click in a search window.
  8454.  
  8455. 2. Mantis#0001449: Drive change error message does not fit into a console.
  8456.  
  8457. 3. "Go to", "View" and "Panel" buttons in search dialog get blocked if nothing is found.
  8458.  
  8459. 4. "Filter" button in copy and search dialogs get blocked if "[ ] Use filter" option is off.
  8460.  
  8461. drkns 28.07.2010 10:00:00 +0200 - build 1630
  8462.  
  8463. 1. Changes in usermenu.
  8464.    - in order to be considered as a divider, an item must be assigned the "--" hotkey and any label.
  8465.    - "-" hotkey is functional now.
  8466.  
  8467. 2. The number of exclamations!!!111 in language files is slightly reduced.
  8468.  
  8469. drkns 27.07.2010 17:44:36 +0200 - build 1629
  8470.  
  8471. 1. Mantis#0001447: Freeze when positioning to a file after search
  8472.  
  8473. svs 27.07.2010 14:18:55 +0300 - build 1628
  8474.  
  8475. 1. Mantis#0001446: Date() returns 0
  8476.  
  8477. drkns 26.07.2010 21:21:04 +0200 - build 1627
  8478.  
  8479. 1. Symbolic links creation from restricted account was broken in 64-bit OS.
  8480.  
  8481. drkns 26.07.2010 13:33:33 +0200 - build 1626
  8482.  
  8483. 1. Command line autocompletion is not invoked anymore when CtrE/CtrlX/Up/Down/MsWheelUp/MsWheelDown is pressed.
  8484.  
  8485. 2. Mantis#0001443: Inconvenient reaction to mouse click in search window.
  8486.  
  8487. drkns 21.07.2010 16:41:47 +0200 - build 1625
  8488.  
  8489. 1. Mantis#0001438: Far 2.0.1624: Changes in editor behavior in comparison with 1623 (and before).
  8490.  
  8491. drkns 20.07.2010 22:08:47 +0200 - build 1624
  8492.  
  8493. 1. Mantis#0001437: Far 2.0.1623: Example of editor behavior change.
  8494.  
  8495. 2. Correction of 1609.2: CF_HDROP is used for "standard" CtrlIns only, <CtrlShift|CtrlAlt|AltShift>Ins keys just copy text.
  8496.  
  8497. drkns 20.07.2010 01:21:33 +0200 - build 1623
  8498.  
  8499. 1. A Stunning Generosity Show: ECTL_GETSTRING cyclic call is sped up dramatically,
  8500.    so ECTL_SETPOSITION + ECTL_GETSTRING(-1) trick is no longer needed.
  8501.  
  8502. t-rex 16.07.2010 20:13:36 +0200 - build 1622.
  8503.  
  8504. 1. "Show total copy progress indicator" on by default.
  8505.  
  8506. svs 16.07.2010 10:03:22 +0300 - build 1621
  8507.  
  8508. 1. The "ACHTUNG"s have started at macros (see comments on 1454 and 1455).
  8509.  
  8510.    * $Date command is removed
  8511.        replace it with print(Date(blablabla_or_nothing))
  8512.  
  8513.    * $MMode command is removed
  8514.        replace it with mmode(1,2)
  8515.  
  8516.    * IClip state is removed
  8517.        replace it with clip(5,-1) (notice that clip() returns 1 or 2)
  8518.  
  8519.    * $IClip command is removed
  8520.        replace it with clip(5,0) or just clip(5)
  8521.  
  8522.    * DisableOutput state is removed (not the macro flag!)
  8523.        replace it with mmode(1,-1) function call
  8524.  
  8525. drkns 15.07.2010 13:47:00 +0200 - build 1620
  8526.  
  8527. 1. Settings shake-up:
  8528.    "Plugin selection" dialog has grown into "Plugins manager", "Path for
  8529.    personal plugins" has also moved there and a couple of new options is added:
  8530.    "OEM plugins support" - old plugins on/off global switching;
  8531.    "Scan symbolic links" - load or don't load plugins at symbolic links.
  8532.  
  8533. 2. Specification of 1616.1.
  8534.  
  8535. drkns 15.07.2010 10:00:00 +0200 - build 1619
  8536.  
  8537. 1. x64.
  8538.  
  8539. drkns 15.07.2010 10:00:00 +0200 - build 1618
  8540.  
  8541. 1. ScreenBuf::MoveCursor() is optimized slightly.
  8542.  
  8543. drkns 14.07.2010 18:04:04 +0200 - build 1617
  8544.  
  8545. 1. Specification of console block read/write algorithm.
  8546.  
  8547. drkns 12.07.2010 19:38:29 +0200 - build 1616
  8548.  
  8549. 1. Drive selection error dialog functionality is extended, it is possible now
  8550.    to select another drive without leaving the dialog.
  8551.  
  8552. t-rex 12.07.2010 10:45:46 +0200 - build 1615
  8553.  
  8554. 1. Mantis#1432: gcc build problems.
  8555.  
  8556. svs 12.07.2010 10:44:28 +0300 - build 1614
  8557.  
  8558. 1. Mantis#0001412: F1 when viewing *.hlf
  8559.  
  8560. drkns 09.07.2010 13:04:33 +0200 - build 1613
  8561.  
  8562. 1. "faradminmode" variable was inherited from parent process.
  8563.  
  8564. t-rex 08.07.2010 20:10:14 +0200 - build 1612
  8565.  
  8566. 1. Fix of 1607 (http://forum.farmanager.com/viewtopic.php?p=65440#p65440).
  8567.  
  8568. t-rex 08.07.2010 19:29:44 +0200 - build 1611
  8569.  
  8570. 1. And once more, Mantis#1429: Incorrect work after launch as "... | far.exe /v -"
  8571.    apiCreateFile() adds flags (perhaps this has to be removed as it is not clear at all?),
  8572.    and CONIN$ can be opened with some special flags only.
  8573.  
  8574. drkns 06.07.2010 16:47:23 +0200 - build 1610
  8575.  
  8576. 1. More of 1609: CF_HDROP buffer content can be pasted in editor/text fields as a text.
  8577.  
  8578. drkns 06.07.2010 13:55:22 +0200 - build 1609
  8579.  
  8580. 1. A couple of bugs at attributes setup.
  8581.  
  8582. 2. Experimental: file names are copied from panel into clipboard in additional CF_HDROP format,
  8583.    which allows "paste" the files from clipboard to other applications (Explorer etc.).
  8584.    Reverse operation (copy "there" and paste "here") is not supported so far, buf everything's possible.
  8585.  
  8586. t-rex 08.07.2010 00:34:21 +0200 - build 1608
  8587.  
  8588. 1. From Max Moysyuk: Mantis#1419: Very slow switching to local disk (AltF1/AltF2)
  8589.  
  8590. t-rex 08.07.2010 00:12:29 +0200 - build 1607
  8591.  
  8592. 1. Mantis#1428: Crash when FCTL_SETNUMERICSORT is set.
  8593.  
  8594. drkns 06.07.2010 22:36:48 +0200 - build 1606
  8595.  
  8596. 1. CD drive was opened with read/write access at drive type detection, for some reason.
  8597.  
  8598. svs 06.07.2010 18:00:12 +0300 - build 1605
  8599.  
  8600. 1. Mantis#0000986: Far 2 API - pascal
  8601.    FarColorW.pas, FarKeysW.pas and PluginW.pas are updated.
  8602.  
  8603. 2. Mantis#0000968: waitkey() skips AltIns
  8604.  
  8605. drkns 05.07.2010 11:00:00 +0200 - build 1604
  8606.  
  8607. 1. Another "type" of symbolic links is available at link creation dialog,
  8608.    with no explicit notation whether it is a file or a directory.
  8609.    The necessary option is chosen automatically according to the attributes of
  8610.    referred object.
  8611.  
  8612. 2  FLINK_SYMLINK flag is available in FSF.MkLink, it enables automatic
  8613.    selection of symbolic link type.
  8614.  
  8615. drkns 02.07.2010 16:17:18 +0200 - build 1603
  8616.  
  8617. 1. Mantis#0001425: a bug at files highlighting settings reset
  8618.  
  8619. t-rex 02.07.2010 15:20:09 +0200 - build 1602
  8620.  
  8621. 1. "far /v -" was broken again.
  8622.  
  8623. svs 02.07.2010 11:22:10 +0300 - build 1601
  8624.  
  8625. 1. Mantis#0000926: Eval() sets DisableOutput=1
  8626.   KeyMacro::GetCurRecord() function returned wrong data (library code was taken instead of data from working macro)
  8627.  
  8628. 2. Mantis#0001423: Check the state of menu item
  8629.   N=Menu.ItemStatus([N]);
  8630.  
  8631.   Return the state of N-th menu item (N is 1-based), or current item if N==0 or unspecified.
  8632.  
  8633.   It works in absolute menu items space (not taking filters and other hiding mechanisms into consideration)
  8634.  
  8635.   The set of returned flags:
  8636.   0x00000001 - Selected
  8637.   0x00000002 - Checked
  8638.   0x00000004 - Separator
  8639.   0x00000008 - Disabled
  8640.   0x00000010 - Grayed
  8641.   0x00000020 - Hidden (by filter)
  8642.  
  8643.   0xFFFFFFFF - nonexistent/error (N is out of range)
  8644.  
  8645.   TODO (after Mantis#0001422 implementation):
  8646.   0x00000040 - Hotkey is present
  8647.   0x00000080 - Hotkey is manually specified by user
  8648.  
  8649. drkns 01.07.2010 22:20:00 +0200 - build 1600
  8650.  
  8651. 1. Mantis#0001420: Far Manager does not disable windows hibernate during copy(move).
  8652.  
  8653. t-rex 30.06.2010 21:21:26 +0200 - build 1599
  8654.  
  8655. 1. Another CacheRead shake-up (hope it's the last one),
  8656.   this fixed a lot of different mystic viewer large files search bugs in last builds.
  8657.  
  8658. svs 29.06.2010 15:01:56 +0300 - build 1598
  8659.  
  8660. 1. Mantis#0001416: waitkey(0,0) does not respond to mouse clicks with modifiers
  8661.  
  8662. 2. Macro: parsing error at functions with optional elements.
  8663.   "...spotted a msgbox(menu.value,gethotkey()) macro malfunction, menu.value returns nothing in such a combination..."
  8664.   (perhaps a specification is needed)
  8665.  
  8666. t-rex 27.06.2010 13:43:59 +0200 - build 1597
  8667.  
  8668. 1. Viewer search didn't work on large files in common.
  8669.  
  8670. 2. GCC warning.
  8671.  
  8672. t-rex 26.06.2010 21:03:19 +0200 - build 1596
  8673.  
  8674. 1. Grey+/- in viewer lead to unexpected result.
  8675.  
  8676. drkns 26.06.2010 16:28:50 +0200 - build 1595
  8677.  
  8678. 1. Launch from external view/edit commands history didn't work.
  8679.   It had been malfunctional for about 5 years already.
  8680.  
  8681. chupakabra 24.06.2010 14:34:00 +0200 - build 1594
  8682.  
  8683. 1. Forcing displaying of first processed file name at attributes setting
  8684.   (if not, an empty field is displayed when Compressed is set for a big file).
  8685.  
  8686. drkns 16.06.2010 13:47:00 +0200 - build 1593
  8687.  
  8688. 1. After 1583, viewer was slow on network files.
  8689.  
  8690. 2. Taskbar button flashes 5 times, not endlessly.
  8691.  
  8692. drkns 16.06.2010 11:21:12 +0200 - build 1592
  8693.  
  8694. 1. Faster File::Eof() implementation.
  8695.  
  8696. 2. A few bool's.
  8697.  
  8698. drkns 16.06.2010 18:56:32 +0200 - build 1591
  8699.  
  8700. 1. Mantis#0001409: Crash at folder deletion.
  8701.  
  8702. 2. A bug in help.
  8703.  
  8704. t-rex 15.06.2010 00:05:09 +0200 - build 1590
  8705.  
  8706. 1. Custom data sorting is added to CtrlF12 menu .
  8707.  
  8708. t-rex 14.06.2010 00:56:58 +0200 - build 1589
  8709.  
  8710. 1. Mantis#1405: C:\>cls stays on screen after issuing ôclsö.
  8711.  
  8712. t-rex 12.06.2010 19:14:06 +0200 - build 1588
  8713.  
  8714. 1. Experimental, unofficial and buggy, just to take a look, play and think:
  8715.   support for custom column (C0), filled by plugins, in non-plugin file panels
  8716. int WINAPI GetCustomDataW(const wchar_t *FilePath, wchar_t **CustomData)
  8717. void WINAPI FreeCustomDataW(wchar_t *CustomData)
  8718.   if multiple plugins return custom data for the same file, then "Plugin1 Plugin2 Plugin3" is shown.
  8719.  
  8720. 2. A language file error was shown when panel modes editing dialog was opened.
  8721.  
  8722. drkns 12.06.2010 08:58:26 +0200 - build 1587
  8723.  
  8724. 1. And once more.
  8725.  
  8726. drkns 12.06.2010 08:43:29 +0200 - build 1586
  8727.  
  8728. 1. Fix of 1584.2.
  8729.  
  8730. t-rex 11.06.2010 18:16:03 +0200 - build 1585
  8731.  
  8732. 1. Same as 1584.1 but for plugin panel refresh.
  8733.  
  8734. drkns 11.06.2010 13:47:00 +0200 - build 1584
  8735.  
  8736. 1. There was no filter activity check at panel refresh. With the check, now it's much faster.
  8737.  
  8738. 2. Some makeup.
  8739.  
  8740. drkns 09.06.2010 11:17:22 +0200 - build 1583
  8741.  
  8742. 1. Getting the viewer rid of FILE*.
  8743.   Privileges elevation must be functional now.
  8744.   View of \\.\physicaldrive0, \\.\cdrom0 etc. is temporarily broken.
  8745.  
  8746. t-rex 08.06.2010 22:44:13 +0200 - build 1582
  8747.  
  8748. 1. Same fix as in 1579.2 but for VBlock2Text().
  8749.  
  8750. drkns 07.06.2010 21:07:35 +0200 - build 1581
  8751.  
  8752. 1. FARUSER variable could be set even without /u key (it was inherited from parent process).
  8753.  
  8754. yjh 07.06.2010 15:41:36 +0300 - build 1580
  8755.  
  8756. 1. QuotedSymbols list is appended with oem(0xFF) ("soft-space") - this is required by standard console tools (copy/move/etc)
  8757.  
  8758. drkns 06.06.2010 22:01:56 +0200 - build 1579
  8759.  
  8760. 1. Specification of ACTL_GETFARRECT function.
  8761.  
  8762. 2. CtrlX at empty line added garbage to clipboard.
  8763.  
  8764. drkns 01.06.2010 14:12:22 +0200 - build 1578
  8765.  
  8766. 1. ô!=\ö metacharacter quoted strings for some purpose.
  8767.  
  8768. drkns 31.05.2010 22:40:13 +0200 - build 1577
  8769.  
  8770. 1. ôARRAYSIZEö macro instead of ôcountofö.
  8771.   Rationale: ARRAYSIZE is for arrays only, an attempt of placing a pointer there results in compilation error (not runtime error, as in case of sizeof/sizeof).
  8772.  
  8773. drkns 29.05.2010 13:08:42 +0200 - build 1576
  8774.  
  8775. 1. Panels were not redrawn after ShiftEnter on a folder.
  8776.  
  8777. 2. Specifications of 256- and 16-color variants of far.ico.
  8778.  
  8779. drkns 29.05.2010 12:14:02 +0200 - build 1575
  8780.  
  8781. 1. Another couple of minorities of the same subject.
  8782.  
  8783. drkns 28.05.2010 23:47:51 +0200 - build 1574
  8784.  
  8785. 1. More on launcher and redraw.
  8786.  
  8787. 2. Specification of 1564.2 - take into account that functions called by legacy plugins can be nested.
  8788.  
  8789. 3. When resizing FAR window in "/w" mode, console content is not erased.
  8790.   This is an experimental feature, tiny artifacts are possible etc.
  8791.  
  8792. drkns 25.05.2010 19:57:53 +0200 - build 1573
  8793.  
  8794. 1. ACTL_GETFARRECT - "correct" way of obtaining the coordinates of FAR "window" in console buffer;
  8795.   ACTL_GETCURSORPOS - getting cursor coordinates regarding to FAR "window";
  8796. ACTL_SETCURSORPOS - setting cursor coordinates regarding to FAR "window".
  8797.  
  8798. drkns 25.05.2010 07:37:52 +0200 - build 1572
  8799.  
  8800. 1. Continuation of 1568.
  8801.  
  8802. drkns 24.05.2010 22:45:41 +0200 - build 1571
  8803.  
  8804. 1. Mantis#0001393: Screen artifacts on application launch using a macro
  8805.  
  8806. drkns 24.05.2010 22:34:42 +0200 - build 1570
  8807.  
  8808. 1. Continuation of 1568.
  8809.  
  8810. t-rex 24.05.2010 09:19:39 +0200 - build 1569
  8811.  
  8812. 1. from Konstantin Stupnik: Mantis#1388: Regular expressions: incorrect value in group.
  8813.  
  8814. drkns 23.05.2010 23:23:23 +0200 - build 1568
  8815.  
  8816. 1. After 1564-1566, hidden problems with drawing in launcher were revealed.
  8817.  
  8818. drkns 23.05.2010 14:08:39 +0200 - build 1567
  8819.  
  8820. 1. Mantis#0001389: Crash if WindowMode=0 and ScreenBufferSize.Height=9999
  8821.   In theory, far must work now at any buffer size.
  8822.  
  8823. drkns 22.05.2010 22:45:48 +0200 - build 1566
  8824.  
  8825. 1. And some more.
  8826.  
  8827. drkns 22.05.2010 22:16:38 +0200 - build 1565
  8828.  
  8829. 1. Specifications of previous build.
  8830.  
  8831. drkns 22.05.2010 20:00:00 +0200 - build 1564
  8832.  
  8833. 1. Encapsulation of all used console functions.
  8834.   As a consequence, the following long awaited feature has become possible: Far can work in console window (not buffer) bounds.
  8835.   Set large buffer height and meditate over long console outputs. CtrlAlt scroll to corresponding direction.
  8836.  
  8837.    ACHTUNG! - this mode is guaranteed to break plugins which draw something in console directly or suppose naively that Far size is available via CONSOLE_SCREEN_BUFFER_INFO::dwSize.
  8838.  
  8839. 2. SetFileApisToANSI() is called after non-unicode plugins finish work.
  8840.  
  8841. t-rex 21.05.2010 18:25:32 +0200 - build 1563
  8842.  
  8843. 1. Mantis#1387: Freeze when processing User Menu at filename containing &.
  8844.  
  8845. 2. HiStrLen() incorrect work.
  8846.  
  8847. t-rex 20.05.2010 20:32:18 +0200
  8848.  
  8849. 1. Mantis#1386: gcc compilation error (incorrect case in header file name).
  8850.  
  8851. t-rex 19.05.2010 23:06:06 +0200 - build 1562
  8852.  
  8853. 1. PluginDialogBuilder for AddEditField() now requires output buffer size (in characters).
  8854.  
  8855. drkns 19.05.2010 20:09:11 +0200 - build 1561
  8856.  
  8857. 1. Mantis#0001384: Dim space character a little in Show Whitespace mode.
  8858.  
  8859. t-rex 19.05.2010 18:53:42 +0200 - build 1560
  8860.  
  8861. 1. GetSize() in UnicodeString for obtaining of inner buffer size.
  8862.  
  8863. 2. Optimization of ReplaceStrings().
  8864.  
  8865. 3. Deleted some junk.
  8866.  
  8867. t-rex 19.05.2010 15:57:31 +0200 - build 1559
  8868.  
  8869. 1. Forum: http://forum.farmanager.com/viewtopic.php?p=63127#p63127
  8870.   Crash in history, heap corruption in ReplaceStrings().
  8871.  
  8872. drkns 19.05.2010 12:50:22 +0200 - build 1558
  8873.  
  8874. 1. Specification of environment refreshing.
  8875.  
  8876. drkns 17.05.2010 20:06:14 +0200 - build 1557
  8877.  
  8878. 1. Specification of WM_SETTINGCHANGE processing.
  8879.  
  8880. drkns 15.05.2010 22:26:55 +0200 - build 1556
  8881.  
  8882. 1. Excessive activity in taskbar when copying with [x] Show total copy progress indicator.
  8883.  
  8884. t-rex 15.05.2010 16:10:31 +0200 - build 1555
  8885.  
  8886. 1. from Alexander Kornienko: Mantis#1383: Additions to Mantis#1224 (VBlock2Text)
  8887.  
  8888. t-rex 14.05.2010 16:56:29 +0200 - build 1554
  8889.  
  8890. 1. from Alexander Kornienko: Mantis#1224: copying big block of binary data causes big mem/cpu usage and heap thrashing.
  8891.   Same fix is needed in VBlock2Text().
  8892.  
  8893. 2. Potential memory leak in Block2Text() and VBlock2Text().
  8894.  
  8895. svs 14.05.2010 16:13:05 +0300 - build 1553
  8896.  
  8897. 1. Macro: S=Menu.GetValue([N]) function is added, which returns menu item text for given position (menu position is not changed).
  8898.   If N is not specified or equals to 0 then the action is similar to Menu.Value application
  8899.   For non-existing menu item, an empty string is returned.
  8900.  
  8901. zg 14.05.2010 02:18:32 +0200 - build 1552
  8902.  
  8903. 1. after 1444, Param1 <> SendDlgMessage(DM_GETFOCUS) in DN_GOTFOCUS.
  8904.  
  8905. 2. at experiment, DN_GOTFOCUS is got after selection set for elements DIF_SELECTONENTRY flag.
  8906.  
  8907. 3. gcc warning.
  8908.  
  8909. drkns 14.05.2010 01:55:38 +0200 - build 1551
  8910.  
  8911. 1. Mantis#0001380: problem with value setting in hours/minutes field in Filters -> Date/Time -> Relative
  8912.  
  8913. drkns 14.05.2010 00:07:38 +0200 - build 1550
  8914.  
  8915. 1. Excessive activity in taskbar when descriptions displaying is on.
  8916.  
  8917. drkns 13.05.2010 17:33:18 +0200 - build 1549
  8918.  
  8919. 1. Specification of previous build.
  8920.  
  8921. drkns 13.05.2010 15:47:47 +0200 - build 1548
  8922.  
  8923. 1. Now we've got a window messages processing loop.
  8924.   As a consequence, the following magic is available:
  8925.   - disk menu and hotplug devices list auto update when usb, cd/dvd etc. are added/removed;
  8926.   - environment variables auto update after change in OS settings.
  8927.  
  8928. svs 13.05.2010 16:03:14 +0300 - build 1547
  8929.  
  8930. 1. + CPM_NATIVE for FSF.ConvertPath()
  8931.   Return: full path with "\\?\" prefix
  8932.   (from drkns)
  8933.  
  8934. drkns 13.05.2010 00:21:42 +0200 - build 1546
  8935.  
  8936. 1. Event class: a wrapper on HANDLE/Event/WaitForSingleObject.
  8937.  
  8938. drkns 11.05.2010 22:53:26 +0200 - build 1545
  8939.  
  8940. 1. From Anton Sinitsin: "¿" in FarRus.lng.
  8941.  
  8942. 2. Documentation and build specifications.
  8943.  
  8944. drkns 11.05.2010 15:25:32 +0200 - build 1544
  8945.  
  8946. 1. Errors in vertical text drawing and dialog size calculation.
  8947.  
  8948. svs 11.05.2010 15:05:18 +0300 - build 1543
  8949.  
  8950. 1. Minor specifications on menu hotkeys...
  8951.   In addition to Upper/Lower, keyboard layout analysis is added (KeyToKeyLayout() call)
  8952.  
  8953. svs 11.05.2010 09:59:58 +0300 - build 1542
  8954.  
  8955. 1. Macro: Contents
  8956.  
  8957. [A|P]Panel.HostFile, [A|P]Panel.Prefix, [A|P]Panel.Path0, [A|P]Panel.Path,
  8958. [A|P]Panel.UNCPath, [A|P]Panel.Current, Editor.SelValue, Editor.Value, Help.FileName,
  8959. Help.Topic, Help.SelTopic, Viewer.FileName
  8960.  
  8961.   forced cast to "string", which lets to avoid the situation when 0 is returned for empty content.
  8962.  
  8963. svs 07.05.2010 16:24:45 +0300 - build 1541
  8964.  
  8965. 1. Help. From "Alexey Samlyukov"
  8966.  
  8967. 2. "@ElevationDlg" is added. this is a stub so far, to prevent error messages
  8968.  
  8969. drkns 06.05.2010 22:21:32 +0200 - build 1540
  8970.  
  8971. 1. Milliseconds were not diaplayed in filters by relative time.
  8972.  
  8973. 2. Forum: "Something strange has appeared at build 1539: a piece of frame remains in the corner after Ctrl-O".
  8974.  
  8975. drkns 05.05.2010 23:16:12 +0200 - build 1539
  8976.  
  8977. 1. Specification of 1536: for example, when issuing "macro:post F7", indicator disappeared only after any key press.
  8978.  
  8979. drkns 04.05.2010 23:42:49 +0200 - build 1538
  8980.  
  8981. 1. Privileges elevation didn't work in symlinks editing.
  8982.  
  8983. 2. Assembler listing generation is off for VC build by default. It is controlled by ASM_LISTING make flag.
  8984.  
  8985. t-rex 04.05.2010 13:53:24 +0200 - build 1537
  8986.  
  8987. 1. Somewhere in last builds, descriptions started to add '\0' before carriage return which caused different problems with 3rd party description-aware programs.
  8988.  
  8989. drkns 03.05.2010 12:45:16 +0200 - build 1536
  8990.  
  8991. 1. Problems with Mantis#1362: that "macro execution indication" caused regular screen refreshes.
  8992.   Also, 'P' is now green :)
  8993.  
  8994. t-rex 02.05.2010 21:46:41 +0200 - build 15351. Mantis#1288: Slow processing of network folders in owners view mode.
  8995.  
  8996. drkns 02.05.2010 19:13:38 +0200 - build 1534
  8997.  
  8998. 1. Size correction for DIF_CENTERGROUP
  8999.  
  9000. 2. Another couple of improvements of 1530.2.
  9001.  
  9002. 3. Mantis#0001356: ôCopyingö stays in caption after copying finish
  9003.  
  9004. drkns 30.04.2010 17:14:30 +0200 - build 1533
  9005.  
  9006. 1. Another couple of specifications in 1530.2.
  9007.  
  9008. svs 30.04.2010 13:20:57 +0300 - build 1532
  9009.  
  9010. 1. Mantis#0001362: Macro running indication in screen corner ('P').
  9011.  
  9012. drkns 30.04.2010 11:09:22 +0200 - build 1531
  9013.  
  9014. 2. Specification of 1530.2: DIF_DEFAULT and DIF_FOCUS are used in initialization (DialogDataEx), and elements (DialogItemEx) still use DefaultButton and Focus.
  9015.  
  9016. drkns 30.04.2010 01:01:01 +0200 - build 1530
  9017.  
  9018. 1. The color of default button can be set up.
  9019.  
  9020. 2. As a preparation to API breakup: DefaultButton field in dialog structures is now changed to DIF_DEFAULT, Focus is changed to DIF_FOCUS.
  9021.   This is related to internals only, plugins are not affected yet.
  9022.  
  9023. drkns 29.04.2010 11:38:38 +0200 - build 1529
  9024.  
  9025. 1. Bringing back empty description files deletion.
  9026.  
  9027. 2. Flag FMSG_DOWN has gone.
  9028.  
  9029. 3. Makeup in lng.
  9030.  
  9031. svs 29.04.2010 09:55:53 +0300 - build 1528
  9032.  
  9033. 1. Macro: eval function is provided with capability of programmatical call of macro bound to a hotkey.
  9034. http://forum.farmanager.com/viewtopic.php?f=15&t=5257
  9035.  
  9036.   To do this, one must:
  9037.   a) set the second parameter of the function to 2
  9038.   b) set the first parameter to a string of "Area/Key" format
  9039.   Here:
  9040.   "Area" is the area which we want to call macro from;
  9041.   "/" is a delimiter;
  9042.   "Key" is the name of the key.
  9043.   "Area/" can be omitted, in this case "Key" is searched in current active macro area,
  9044.   and if "Key" is not found, then the search is continued in Common area.
  9045.   To switch off the search in Common area (limit it with "this" area only),
  9046.   one must pass the dot character as "Area".
  9047.  
  9048.   In mode 2 the function returns
  9049.   -1 - error
  9050.   -2 - no macro on hotkey (or the macro is blocked)
  9051.   0 - Ok
  9052.  
  9053.   Examples.
  9054.   eval("Shell/CtrlP",2) - call a macro assigned to CtrlP in Shell area
  9055.   eval("CtrlP",2) - call a macro assigned to CtrlP in current macro area or in Common area if CtrlP is not found in current macro area
  9056.  eval("./CtrlP",2) - call a macro assigned to CtrlP in current macro area only
  9057.  eval("Shell/Alt/",2) - call a macro assigned to Alt/ in Shell area
  9058.  eval("Alt/",2) - call a macro assigned to Alt/ in current macro area or Common if Alt/ is not found in current macro area
  9059.  eval("./Alt/",2) - call a macro assigned to Alt/in current macro area only
  9060.  
  9061. drkns 28.04.2010 00:42:17 +0200 - build 1527
  9062.  
  9063. 1. For the sake of uniformity, now Message() always reserves space for message text even the text is absent.
  9064.  
  9065. drkns 27.04.2010 19:51:09 +0200 - build 1526
  9066.  
  9067. 1. Another couple of triffles.
  9068.  
  9069. drkns 27.04.2010 16:47:00 +0200 - build 1525
  9070.  
  9071. 1. More on FindFiles again.
  9072.  
  9073. chupakabra 27.04.2010 16:32:00 +0200
  9074.  
  9075. 1. makefile_vc: Platform=x64 for VS2010.
  9076.  
  9077. drkns 27.04.2010 15:47:00 +0200 - build 1524
  9078.  
  9079. 1. Yet another specification of Message().
  9080.  
  9081. 2. Changes in DIZ files writing.
  9082.  
  9083. 3. More on FindFiles.
  9084.  
  9085. drkns 26.04.2010 15:47:00 +0200 - build 1523
  9086.  
  9087. 1. Specification of dialogs size for Message() function.
  9088.  
  9089. 2. BOM codepage autodetection didn't work if the file contained nothing except BOM.
  9090.  
  9091. drkns 26.04.2010 00:14:16 +0200 - build 1522
  9092.  
  9093. 1. As an expansion of Mantis#0001096 - space symbols cutting is removed from another pair of places.
  9094.  
  9095. t-rex 25.04.2010 22:48:55 +0200 - build 1521
  9096.  
  9097. 1. Mantis#1316: Erroneous copying of vertical blocks into clipboard.
  9098.   Another inner refactoring of work with clipboard, usual functions are appended with a class, places where sequential clipboard operations are applied need to be rewritten with this class to make things in one transaction.
  9099.  
  9100. drkns 25.04.2010 22:38:17 +0200 - build 1520
  9101.  
  9102. 1. Specification of previous build.
  9103.  
  9104. drkns 25.04.2010 19:55:48 +0200 - build 1519
  9105.  
  9106. 1. Continuing 953 and 972. Search is reworked. Part three, a global one.
  9107.  
  9108. 2. Mantis#0001213: Incorrect console caption in file search dialog.
  9109.  
  9110. 3. Mantis#0001353: Privileges elevation dialog is hidden behind the search window.
  9111.  
  9112. 4. A new flag is available for DI_BUTTON: DIF_SETSHIELD, analogous to BCM_SETSHIELD.
  9113.  
  9114. 5. Mantis#0000315: Default buttons highlighting in dialogs.
  9115.  
  9116. 6. Mantis#0000647: Button styles in the dialogs.
  9117.  
  9118. 7. Mantis#0001217: !@! metacharacter doesn't work.
  9119.  
  9120. 8. Some triffles in privileges elevation system.
  9121.  
  9122. drkns 22.04.2010 21:11:09 +0200 - build 1518
  9123.  
  9124. 1. Specification of 1517.5: conversion error warning was displayed even when there was no need in it.
  9125.  
  9126. 2. Privilege elevation requests are separated logically into "read requests" and "modification requests" and can be switched on/off separately.
  9127.   There's no interface so far, the registry only.
  9128.  
  9129. drkns 21.04.2010 14:47:00 +0200 - build 1517
  9130.  
  9131. 1. Mantis#0001347: Remove dot in autocompletion.
  9132.   Items "." and ".." which are returned by FindFile sometimes are now thrown away at FindFile class level, not in a lot of different places.
  9133.   Code which uses FindFile must NOT assume these items presence and fight with them.
  9134.  
  9135. 2. A portion of warnings from VS2010 static analyzer.
  9136.  
  9137. 3. When creating folders like \1\2\3\4 the attempts were taken to create each item even if it had existed already.
  9138.  
  9139. 4. File search doesn't restore last access time.
  9140.  
  9141. 5. If text conversion errors took place while loading a file into the editor or while codepage switching, then an additional confirmation is requested on saving, + the messages are more verbose now.
  9142.  
  9143. svs 21.04.2010 10:18:10 +0300 - build 1516
  9144.  
  9145. 1. Specification of build 1515 - one char prefixes are ignored
  9146.  
  9147. svs 21.04.2010 09:34:16 +0300 - build 1515
  9148.  
  9149. 1. Mantis#0001338: Prefix in command line parameters (described in help)
  9150. from Maximus
  9151.  
  9152. t-rex 20.04.2010 23:56:06 +0200 - build 1514
  9153.  
  9154. 1. MinGW GCC 4.5.0 support.
  9155.  
  9156. 2. GCC warnings.
  9157.  
  9158. 3. Some makeup.
  9159.  
  9160. drkns 20.04.2010 00:33:57 +0200 - build 1513
  9161.  
  9162. 1. Specification of previous build.
  9163.  
  9164. drkns 19.04.2010 16:39:34 +0200 - build 1512
  9165.  
  9166. 1. Fix of 1371.2.
  9167.  
  9168. 2. Milliseconds are available in filters.
  9169.  
  9170. svs 19.04.2010 15:51:19 +0300 - build 1511
  9171.  
  9172. 1. Mantis#0001334: Let plugin change editor caption "forever"
  9173.   Now the editor's header set by plugin  (in status line, with ECTL_SETTITLE) isn't reset automatically
  9174.   after plugin stop its work (invoked with F11).
  9175.   Now plugins have to take care of editor's caption restoration by themselves (Info.EditorControl(ECTL_SETTITLE,NULL)).
  9176.  
  9177. drkns 19.04.2010 10:50:21 +0200 - build 1510
  9178.  
  9179. 1. Next portion of apiCreateFile/ReadFile/WriteFile/etc. replacement with more intelligent classes. As a consequence, privileges elevation request seems to be fixed in several other operations.
  9180.  
  9181. 2. When editing the user menu AltF4 wrote excessive byte order marks into temp file (one per each submenu instead one per file).
  9182.  
  9183. drkns 17.04.2010 11:44:42 +0200 - build 1509
  9184.  
  9185. 1. Mantis#0001348: Folder locking by a FAR process after privileges elevation.
  9186.  
  9187. drkns 17.04.2010 00:57:46 +0200 - build 1508
  9188.  
  9189. 1. The editor is cleaned from libc's remains and, as a consequence, it can request file opening/saving privileges.
  9190.  
  9191. 2. Changes of the same sort in user menu and descriptions.
  9192.  
  9193. svs 15.04.2010 14:34:28 +0300 - build 1507
  9194.  
  9195. 1. Mantis#0001346: Macros assigned to "`" and similar ones work with errors
  9196.  
  9197. drkns 15.04.2010 11:34:38 +0200 - build 1506
  9198.  
  9199. 1. In 1494, system copy feature with "[ ] Copy files opened for writing" was broken.
  9200.  
  9201. drkns 15.04.2010 11:05:12 +0200 - build 1505
  9202.  
  9203. 1. Specification of previous build.
  9204.  
  9205. drkns 15.04.2010 10:55:21 +0200 - build 1504
  9206.  
  9207. 1. If user has administrator rights already, we proceed without additional process launch.
  9208.  
  9209. svs 13.04.2010 23:15:33 +0300 - build 1503
  9210.  
  9211. 1. Macro: bug - crash on [A|P]Panel.HostFile call for non-plugin panel.
  9212.  
  9213. svs 13.04.2010 14:48:25 +0300 - build 1502
  9214.  
  9215. 1. Mantis#0001344: Crash on help links follow
  9216.   size_t rules :-(
  9217.   This fix removes the crash only.
  9218.   To "fix the errors" in help the parser has to be edited (which goes beyond the limits of this fix)
  9219.  
  9220. t-rex 13.04.2010 00:04:24 +0200 - build 1501
  9221.  
  9222. 1. StrLength(string) -> string.GetLength() in a couple of places.
  9223.  
  9224. drkns 12.04.2010 22:54:07 +0200 - build 1500
  9225.  
  9226. 1. More informative messages on necessary privilege elevation.
  9227.  
  9228. svs 12.04.2010 17:53:57 +0300 - build 1499
  9229.  
  9230. 1. The help froze on files with no empty line between sections   (for example, "Regular Expression Search and Replace, version 7.04")
  9231.  
  9232. drkns 12.04.2010 16:46:32 +0200 - build 1498
  9233.  
  9234. 1. Miscellaneous trivia on privileges elevation.
  9235.  
  9236. 2. CtrlEnd function in dialogs and command line is unified: round-robin items selection is borrowed from command line, selection of appended characters is taken from dialogs.
  9237.  
  9238. svs 12.04.2010 12:38:45 +0300 - build 1497
  9239.  
  9240. 1. Bug: [A|P]Panel.path0 doesn't return a path
  9241. http://forum.farmanager.com/viewtopic.php?p=61218#p61218
  9242.  
  9243. svs 12.04.2010 11:38:27 +0300 - build 1496
  9244.  
  9245. 1. Mantis#0000830: Incorrect movement calculation in Viewer::Up() function for UTF-8
  9246.  
  9247. chupakabra 11.04.2010 23:20:00 +0200 - build 1495
  9248.  
  9249. 1. A focus moving error is fixed, which appeared in 1444.
  9250.  
  9251. drkns 11.04.2010 02:23:13 +0200 - build 1494
  9252.  
  9253. 1. Privileges elevation:
  9254.   - the query happens only if it's needed (the access is denied via ACL), not for every ERROR_ACCESS_DENIED.
  9255.   - file time and ôcompressedö and ôsparseöattributes changing.
  9256.   - content search.
  9257.   - theoretically, own copy implementation must also work ("[ ] Use system copy routine"). It hasn't been tested thoroughly, be careful.
  9258.  
  9259. 2. Some API functions (CreateFile/ReadFile/WriteFile/...) are grouped logically into a separate class (File), it is preferable to use it further.
  9260.  
  9261. 3. CtrlEnd did not function in dialogs when autocompletion was off.
  9262.  
  9263. svs 09.04.2010 16:32:01 +0300 - build 1493
  9264.  
  9265. 1. Macro: [A|P]Panel.Path0 - path on real FS (before calling of plugins, which create their own panel)
  9266.   The states are similar [A|P]Panel.Path, but they contain the path on real FS.
  9267.   If real FS is on the panel, then
  9268. [A|P]Panel.Path == [A|P]Panel.Path0
  9269.   If this is a plugin's panel, then
  9270. [A|P]Panel.Path != [A|P]Panel.Path0
  9271.  
  9272. svs 09.04.2010 09:38:19 +0300 - build 1492
  9273.  
  9274. 1. Printing module is broken - current folder was not taken into account.
  9275.  
  9276. drkns 08.04.2010 15:30:25 +0200 - build 1491
  9277.  
  9278. 1. Mantis#0001337: Error when reading catalog content.
  9279.  
  9280. 2. Incorrect owner was displayed for ".." element in panels.
  9281.  
  9282. svs 08.04.2010 11:01:14 +0300 - build 1490
  9283.  
  9284. 1. Mantis#0000884: Help text is torn when the line is longer than 300 characters.
  9285.   Help is refactored into a strings array (TArray)
  9286.   Some black magic in TArray regards to sorting.
  9287.   Removing junk from help code.
  9288.  
  9289. drkns 08.04.2010 00:39:10 +0200 - build 1489
  9290.  
  9291. 1. Mantis#0001336: Error message when opening a catalog.
  9292.  
  9293. drkns 07.04.2010 14:04:32 +0200 - build 1488
  9294.  
  9295. 1. Specification of 1483.
  9296.  
  9297. svs 07.04.2010 13:10:41 +0300 - build 1487
  9298.  
  9299. 1. Mantis#0001335: Incorrect text resource usage
  9300.  
  9301. 2. Mantis#0001331: Macro function for status line manipulation
  9302.  
  9303. drkns 07.04.2010 11:46:46 +0200 - build 1486
  9304.  
  9305. 1. Prohibition of path conversion in some apiGetFindDataEx calls seems to be deprecated, so it is removed.
  9306.  
  9307. drkns 06.04.2010 20:02:46 +0200 - build 1485
  9308.  
  9309. 1. Specification of 1483.
  9310.  
  9311. svs 06.04.2010 13:41:39 +0300 - build 1484
  9312.  
  9313. 1. Macro: new function "N=Editor.SetTitle([Title])" sets caption in editor status bar
  9314.   It returns 1 - success, 0 - editor is not in focus.
  9315.   If the parameter is missing or equals to empty string, then the previous status line value is restored
  9316.  
  9317. drkns 06.04.2010 10:35:35 +0200 - build 1483
  9318.  
  9319. 1. Continuing 1468:
  9320.   The following actions can be done with admin privileges:
  9321.   - catalog view;
  9322.   - getting the attributes;
  9323.   - setting the owner.
  9324.  
  9325. svs 05.04.2010 18:18:38 +0300 - build 1482
  9326.  
  9327. 1. Specification of Mantis#0001323
  9328.  
  9329. 2. Macro: [A|P]Panel.path for plugin panel
  9330. http://forum.farmanager.com/viewtopic.php?f=15&t=5254
  9331.  
  9332. 3. Macro: [A|P]Panel.Prefix - returns none or prefix like plugins do
  9333.  
  9334. 4. Macro: [A|P]Panel.UNCPath returns (for plugin panel) prefix:[hostfile/]path
  9335.  
  9336. garry 03.04.2010 22:44:32 +0300 - build 1481
  9337.  
  9338. 1. After 1456, the output of codepages for ANSI plugins was broken (for example, FTP).
  9339.  
  9340. drkns 03.04.2010 19:30:12 +0200 - build 1480
  9341.  
  9342. 1. 1479.2: As it proved to be, gcc doesn't support forward enum declaration.
  9343.  
  9344. drkns 03.04.2010 11:23:56 +0200 - build 1479
  9345.  
  9346. 1. And once again, Mantis#0001321: DM_MOVEDIALOG: limited range of dialog moving.
  9347.  
  9348. 2. Makeup in adminmode.?pp
  9349.  
  9350. svs 03.04.2010 11:45:44 +0300 - build 1478
  9351.  
  9352. 1. Mantis#0000098: wrong messages when trying to create folder/file with prohibited symbols
  9353.  
  9354. zg 03.04.2010 02:26:08 +0200 - build 1477
  9355.  
  9356. 1. Mantis#0001329: Forward search with template = $.
  9357.  
  9358. zg 02.04.2010 11:42:58 +0200 - build 1476
  9359.  
  9360. 1. in connection with 1219, Ctrl-Shift-Numpad5 in panels is replaced with Ctrl-Alt-Numpad5.
  9361.  
  9362. svs 02.04.2010 10:29:40 +0300 - build 1475
  9363.  
  9364. 1. Mantis#0001323: gethotkey(0) returns next symbol ("4" instead of "3", "y" instead of "x")
  9365.  
  9366. drkns 01.04.2010 20:00:00 +0200 - build 1474
  9367.  
  9368. 1. Mantis#0001321: DM_MOVEDIALOG: limited range of dialog moving.
  9369.   For relative moving, the coordinates which are equal to -1 do not center the dialog anymore.
  9370.  
  9371. 2. More compact search dialog items placement.
  9372.  
  9373. drkns 01.04.2010 13:47:00 +0200 - build 1473
  9374.  
  9375. 1. Specification of 1472.2: distinguish symlink and junction;
  9376.  
  9377. 2. The creation of hard links can be done with admin privileges.
  9378.  
  9379. svs 01.04.2010 12:56:20 +0300 - build 1472
  9380.  
  9381. 1. Mantis#0001265: Buffer size and panel caption bug
  9382.   Specification of #2 ("When the console width is odd, the header of right panel is displayed incorrectly (at the left panel)")
  9383.  
  9384. 2. Mantis#0001327: Found links are displayed as folders in search window
  9385.  
  9386. zg 01.04.2010 03:12:18 +0200 - build 1471
  9387.  
  9388. 1. Mantis#0001322: Search and replace in editor skips empty lines.
  9389.  
  9390. drkns 31.03.2010 21:52:05 +0200 - build 1470
  9391.  
  9392. 1. Specification of 1468 - GetLastError() results could be lost.
  9393.  
  9394. drkns 31.03.2010 16:29:11 +0200 - build 1469
  9395.  
  9396. 1. Mantis#0001315: Links are shown as folders in tmp-panel.
  9397.  
  9398. 2. Mantis#0001321: DM_MOVEDIALOG: dialog limited moving range.
  9399.  
  9400. drkns 31.03.2010 15:24:32 +0200 - build 1468
  9401.  
  9402. 1. 1466 is continued:
  9403.   - deleting to recycle bin can be done with admin privileges;
  9404.   - progress bar, Cancel, etc. work while copying.
  9405.  
  9406. t-rex 31.03.2010 01:05:50 +0200 - build 1467
  9407.  
  9408. 1. Date fields in filter settings dialog switched their places to be more intuitive,
  9409.   until we create more comprehensible design of the dialog.
  9410.  
  9411. drkns 30.03.2010 15:44:02 +0200 - build 1466
  9412.  
  9413. 1. 1465 is continued:
  9414.   The following operations can be done with admin privileges:
  9415.   - files moving;
  9416.   - files copying;
  9417.   - reparse points copying/editing.
  9418.  
  9419. drkns 30.03.2010 00:44:57 +0200 - build 1465
  9420.  
  9421. 1. Basic support for privileges elevation when working under limited account.
  9422.  
  9423. The following operations can be done with admin privileges so far:
  9424.   - folders creation;
  9425.   - folders deletion;
  9426.   - files deletion;
  9427.   - attributes setting;
  9428.   - symbolic links creation.
  9429.  
  9430.   This list will keep growing.
  9431.  
  9432. zg 29.03.2010 04:01:39 +0200 - build 1464
  9433.  
  9434. 1. Mantis#0001302: When launched with command line parameter, FAR freezes on "black screen" until Enter is pressed.
  9435.  
  9436. zg 29.03.2010 03:37:49 +0200 - build 1463
  9437.  
  9438. 1. Mantis#0001310: Run the editor with absolute column given, not screen one (both from plugins and command line).
  9439.  
  9440. zg 29.03.2010 01:55:26 +0200 - build 1462
  9441.  
  9442. 1. Optimization of 1460. When creating a panel, ôshowö was done twice and sorting took place. although this was not needed.
  9443.  
  9444. 2. After 1448, in case of sorting by extension, when sorting by extension is off and folder option is off, the sorting  was unstable.
  9445.  
  9446. t-rex 28.03.2010 21:42:53 +0200 - build 1461
  9447.  
  9448. 1. Mantis#1314: Filters - Date/Time - Relative
  9449.  
  9450. chupakabra 27.03.2010 08:20:00 +0200 - build 1460
  9451.  
  9452. 1. Sorting did not run after FCTL_SETNUMERICSORT and FCTL_SETDIRECTORIESFIRST.
  9453.  
  9454. svs 27.03.2010 08:17:48 +0300 - build 1459
  9455.  
  9456. 1. Mantis#0001312: When cancelling the editing of the item, there's no need to refresh farmenu.ini
  9457. from Maximus
  9458.  
  9459. garry 26.03.2010 16:51:16 +0300 - build 1458
  9460.  
  9461. 1. Addition to 1456.
  9462.  
  9463. drkns 26.03.2010 14:58:23 +0200 - build 1457
  9464.  
  9465. 1. PgDn in search dialog could lead to stack overflow.
  9466.  
  9467. garry 26.03.2010 15:28:59 +0300 - build 1456
  9468.  
  9469. 1. A possibility of editing via codepage names interface is added (techinfo #80 is removed);
  9470.  
  9471. 2. At some contitions, cursor was positioned on wrong record in codepages menu (the menu had been fixed in some build and my boilerplate code in codepages menu started to interfere it);
  9472.  
  9473. 3. Codepages settings are added to main settings menu;
  9474.  
  9475. 4. For Russian language, interfering and missing hotkeys in settings menu are fixed.
  9476.  
  9477. svs 26.03.2010 11:57:54 +0300 - build 1455
  9478.  
  9479. 1. Bug: far /e filename ShiftEnter AltF9 --> trap.
  9480.  
  9481. 2. Macro: Clip(N,V) function is provided with the 5-th mode (first parameter) - work with clipboard modes.
  9482. N=5
  9483. V:
  9484.   -1 - what's being used? 1 - Windows clipboard, 2 - inner one
  9485.   0 - flip (analogous to $IClip)
  9486.   1 - switch to Windows clipboard
  9487.   2 - switch to inner clipboard
  9488.  
  9489.   Returns the previous value (1 - Windows clipboard, 2 - inner one)
  9490.  
  9491. 3.
  9492.  
  9493.    Fix your macros:
  9494.  
  9495.    a) $IClip shall be replaced with Clip(5,0) or Clip(5), because $IClip will be removed.
  9496.    b) IClip shall be replaced with Clip(5,-1) (notice that clip() returns 1 or 2), because IClip will be removed.
  9497.  
  9498.   2 mentioned "objects" will be removed... say, in 2 months :-)
  9499.  
  9500.  
  9501.  
  9502. svs 25.03.2010 18:38:53 +0300 - build 1454
  9503.  
  9504. 1. Macro: RCounter constant is added, it contains the current value of $Rep loop operator.
  9505.   It is visible in current $Rep (current loop, for nested $Rep), for example
  9506.  
  9507. RCounter = undefined
  9508. $rep(%i)
  9509. ...
  9510.   RCounter = value for loop "$rep(%i)"
  9511. ...
  9512. $rep(%j)
  9513. ...
  9514. RCounter = value for loop "$rep(%j)"
  9515. ...
  9516. $end
  9517. ...
  9518. RCounter = value for loop "$rep(%i)"
  9519. ...
  9520. $end
  9521. RCounter = undefined
  9522.  
  9523.   Outside the loop, the constant value is undefined/any/meaningless.
  9524.  
  9525. 2. Macro: "N=Print(Str)" function is added - display ôströ at cursor.
  9526.   This is the $Text's analog, but Str can be an expression.
  9527.   It always returns 1.
  9528.  
  9529. 3. Macro: "v = MMode(Action[,Value])" function is added - set/get modes for current macro.
  9530.   Analogous to $MMode, but mode  can be an expression.
  9531.   Action - what we want to change
  9532.   1 - screen lock mode ("DisableOutput")
  9533.   "MMode(1,-1)" is like "DisableOutput" state
  9534.   Value:
  9535. -1 - get (the function returns current value)
  9536. 0 - off (the function switches Action off and returns previous value)
  9537. 1 - on (the function switches Action on and returns previous value)
  9538. 2 - flip (the function toggles Action and returns previous value)
  9539.  
  9540.  
  9541. 4.
  9542.  
  9543.   Fix your macros:
  9544.  
  9545.  a) $Text has to be replaced with print() because $Text will be removed.
  9546.  b) $Date has to be replaced with print(Date(blablabla or empty)) because $Date will be removed.
  9547.  c) "$MMode 1" has to be replaced with "MMode(1,2)" because $MMode will be removed.
  9548.  d) "DisableOutput" state has to be replaced with "MMode(1,-1)" function call because "DisableOutput" state (not the macro flag!) will be removed.
  9549.  
  9550.   4 mentioned "objects" will be removed... say, in 2 months :-)
  9551.  
  9552.  
  9553.  
  9554. chupakabra 23.03.2010 00:51:00 +0200 - build 1453
  9555.  
  9556. 1. Numeric sorting function is rewritten.
  9557.  
  9558. drkns 22.03.2010 20:18:31 +0200 - build 1452
  9559.  
  9560. 1. ôlinksö from ômount pointsö distinction AI is removed in panel columns.
  9561. Alas, the performance degrades too much.
  9562.  
  9563. 2. ⌡64 warnings.
  9564.  
  9565. chupakabra 22.03.2010 04:03:00 +0200 - build 1451
  9566.  
  9567. 1. Fix for 1444.
  9568.  
  9569. chupakabra 22.03.2010 02:02:00 +0200 - build 1450
  9570.  
  9571. 1. Mantis#0001301: listbox was not redrawn after DM_LISTUPDATE.
  9572.  
  9573. t-rex 22.03.2010 00:27:43 +0200
  9574.  
  9575. 1. Correction of 1448.3.
  9576.  
  9577. chupakabra 21.03.2010 20:59:00 +0200 - build 1449
  9578.  
  9579. 1. full file name sorting mode error is fixed.
  9580.  
  9581. chupakabra 21.03.2010 20:43:00 +0200 - build 1448
  9582.  
  9583. 1. Option for displaying catalogs at the beginning of the list when sorting (Ctrl+F12).
  9584.  
  9585. 2. Plugin API: FCTL_SETDIRECTORIESFIRST, PFLAGS_DIRECTORIESFIRST, SM_NUMSTREAMS, SM_STREAMSSIZE, SM_FULLNAME.
  9586.  
  9587. 3. Dependencies are fixed in makefile.
  9588.  
  9589. chupakabra 21.03.2010 01:11:00 +0200 - build 1447
  9590.  
  9591. 1. Mantis#0001081: full file name sorting mode is capable of numeric sorting and sorting groups.
  9592.  
  9593. 2. Sorting: strings copying is replaced with calling compare functions with explicit indication of lengths of compared strings.
  9594.  
  9595. drkns 20.03.2010 09:26:41 +0200 - build 1446
  9596.  
  9597. 1. In 1443, QView was malfunctional.
  9598.  
  9599. chupakabra 20.03.2010 05:46:00 +0200 - build 1445
  9600.  
  9601. 1. Mantis#0001081: full file name (path) sorting mode.
  9602.  
  9603. chupakabra 20.03.2010 04:38:00 +0200 - build 1444
  9604.  
  9605. 1. Mantis#0001290: Incorrect processing of keys with DIF_NOFOCUS + DIF_BTNNOCLOSE style.
  9606.  
  9607. drkns 20.03.2010 00:42:00 +0200 - build 1443
  9608.  
  9609. 1. Mantis#0001309: Cancel does not work in ôapply attributesö dialog if incorrect owner is entered
  9610.  
  9611. 2. When invoking folder properties in some OS the file properties could appear for the file with the same name and extension from %pathext%.
  9612.  
  9613. 3. FCTL_GETCMDLINESELECTEDTEXT returned 1 symbol less than needed.
  9614.  
  9615. 4. Mass introduction of initialization lists.
  9616.  
  9617. 5. Some C++0x: introduction of nullptr. For VC2010 it is native, for others it is #define to NULL.
  9618.  
  9619. t-rex 19.03.2010 12:27:10 +0200 - build 1442
  9620.  
  9621. 1. Mantis#1308: Build fails in gcc due to incorrect #include (wrong character case).
  9622.  
  9623. svs 19.03.2010 11:56:32 +0300 - build 1441
  9624.  
  9625. 1. VK_OEM_102. Specification... 1440
  9626.  
  9627. svs 19.03.2010 11:38:51 +0300 - build 1440
  9628.  
  9629. 1. Processing of VK_OEM_102 is added under name "<>" or "\|" on RT 102-key kbd.
  9630.   Now it is '\'.
  9631.   The specification for AltGr- (Ctrl-Alt-), is needed ...maybe something else.
  9632.   T.S. Welcome!
  9633.  
  9634. chupakabra 19.03.2010 04:41:00 +0200 - build 1439
  9635.  
  9636. 1. Current directory synchronization is broken for plugins with OPIF_REALNAMES (from build 1157).
  9637.  
  9638. svs 18.03.2010 19:54:06 +0300 - build 1438
  9639.  
  9640. 1. Mantis#0001307: The result of panel.fexist function
  9641.   Now panel.fexist() returns: 0 - no such element, > 0 - position/index of file element on panel.
  9642. Filters are not taken into account!
  9643.  
  9644. svs 17.03.2010 16:42:40 +0300 - build 1437
  9645.  
  9646. 1. Macro: the specification of "Panel.Select()".
  9647.   Mode=2 and 3 are functional now. These modes can have  ';' ',' or '\r\n' as a divider.
  9648.   Example:
  9649. Panel.Select(1,1,2,clip(0))
  9650.   Select files on passive panel which names are contained in clipboard.
  9651.  
  9652. 2. FileList::SelectFiles now has an additional parameter (masks) and the function returns the number of processed elements (it is used in macros so far)
  9653.  
  9654. svs 16.03.2010 17:48:46 +0300 - build 1436
  9655.  
  9656. 1. Keys.hpp
  9657.   1) KEY_CTRLMASK is now 0xFFF00000
  9658.   2) KEY_LOCKSCREEN is removed
  9659.   3) KEY_KILLFOCUS, KEY_GOTFOCUS and KEY_CONSOLE_BUFFER_RESIZE are described
  9660.   4) expansion of KEY_MACRO_BASE range
  9661.  
  9662. 2. SysLog. A constructor is added
  9663. CleverSysLog(int Line,const wchar_t *Title);
  9664.  
  9665. 3. Macro: a prototype is added: "V=Panel.Select(panelType,Action[,Mode[,Items]])"
  9666. based on  http://forum.farmanager.com/viewtopic.php?f=15&t=5077
  9667. By now, it understands:
  9668. panelType - as usual: =0 - active panel, =1 - passive panel.
  9669. Action:
  9670.   0 - remove selection; return deselected elements count
  9671.   1 - select
  9672.   2 - invert selection
  9673.   3 - restore selection, analogous to Ctrl-M; return restored elements count
  9674. Mode:
  9675.   0 or absent - do Action for each element
  9676.   1 - Items is a number (index)
  9677. Items:
  9678.  for Mode==0 - ignored;
  9679.  for Mode==1:
  9680.   Items==0  or absent- do Action for current element
  9681.   Items>0 - do Action for the element with index Items
  9682.   The function returns elements count, on which Action is performed
  9683.   (info on current selected elements count is obtained via [A|P]Panel.SelCount as usual :-)
  9684.  
  9685.   The plans are to add Mode=2 and 3 (consider Items as strings - name or mask)
  9686.  
  9687. 4. Macro: [A|P]Panel.HostFile is added - empty string or plugin panel host file name.
  9688.  
  9689. drkns 10.03.2010 19:29:31 +0200 - build 1435
  9690.  
  9691. 1. Mantis#0001297: Storing environment strings in settings
  9692.  
  9693. 2. Mantis#0001300: Inherit VF_DISABLEHISTORY flag when switching to editor (F6) and vice versa
  9694.  
  9695. 3. Reparse points date/time was not set in subdireectories.
  9696.  
  9697. drkns 10.03.2010 14:20:17 +0300 - build 1434
  9698.  
  9699. 1. Continuation of 1425 - the owner is available for editing
  9700.  
  9701. 2. Mantis#1299: SavedDialogHistory: SearchText, ReplaceText
  9702.  
  9703. yjh 09.03.2010 15:52:16 +0300 - build 1433
  9704.  
  9705. 1. The default mask for archives including .tbz and .txz (new linux distros)
  9706.  
  9707. svs 03.03.2010 17:33:17 +0300 - build 1432
  9708.  
  9709. 1. CheckFolder() function is renamed to TestFolder(), the names of the return codes are changed accordingly.
  9710.  
  9711. 2. Macro: A new function: N=testfolder(S) - directory test, returns
  9712.   2 - non such one
  9713.   1 - not empty
  9714.   0 - empty
  9715.   -1 - no access
  9716.   -2 - error (incorrect parameters or out of memory for temporary buffers)
  9717.  
  9718.   Constants:
  9719. REGEDIT4
  9720.  
  9721. [HKEY_CURRENT_USER\Software\Far2\KeyMacros\Consts]
  9722. "TSTFLD_NOTFOUND"=dword:00000002
  9723. "TSTFLD_NOTEMPTY"=dword:00000001
  9724. "TSTFLD_EMPTY"=dword:00000000
  9725. "TSTFLD_NOTACCESS"=dword:FFFFFFFF
  9726. "TSTFLD_ERROR"=dword:FFFFFFFE
  9727.  
  9728. 3. Macro: some test additions in "machine".
  9729.  
  9730. drkns 02.03.2010 18:32:43 +0200 - build 1431
  9731.  
  9732. 1. An excessive callback in text pasting into input line.
  9733.  
  9734. drkns 01.03.2010 21:10:08 +0200 - build 1430
  9735.  
  9736. 1. Potential UB in attributes dialog.
  9737.  
  9738. svs 01.03.2010 19:00:24 +0300 - build 1429
  9739.  
  9740. 1. Mantis#0000981: Far crashes after calling a plugin via CallPlugin
  9741.  
  9742. 2. Macro: function `date' can be called without parameter, in this case the format string "%a %b %d %H:%M:%S %Z %Y" is used.
  9743.  
  9744. 3. Macro: "$Continue" is added for loops.
  9745.  
  9746. 4. A bug with shortcuts in editor/viewer:
  9747.   a) LCtrl- (where is unassigned shortcut) jumped to the very beginning of the file.
  9748.   b) Saving of shortcuts in registry was only possible if 0th element (RCtrl-0) was assigned .
  9749.  
  9750.   Here's the Achtung!
  9751.   Due to quite old bugs in registry, the content of shortcuts filled with zeros could be saved.
  9752.   Therefore, it is recommended to delete ShortXXX values in Editor\LastPositions and Viewer\LastPositions registry keys.
  9753. 5. For uniformity... the word ôViewerö is removed from Opt.ViOpt.SaveViewerPos and Opt.ViOpt.SaveViewerShortPos.
  9754.  
  9755. drkns 28.02.2010 11:29:36 +0200 - build 1428
  9756.  
  9757. 1. The histories of command line input, view, folder, dialogs and saved positions are expanded to 512 elements by default.
  9758.  
  9759. yjh 28.02.2010 04:42:01 +0300 - build 1427
  9760.  
  9761. 1. To 1424 - if you do largeaddressaware, do it for all linkers :)
  9762.  
  9763. drkns 28.02.2010 01:43:09 +0200 - build 1426
  9764.  
  9765. 1. Fix in 2nd statement in previous build, to get it work also in ancient OSes.
  9766.  
  9767. drkns 27.02.2010 23:30:38 +0200 - build 1425
  9768.  
  9769. 1. Addition to 1054.2: CtrlA/F4 in disk menu shows the built-in attributes dialog instead of the system one.
  9770.  
  9771. 2. The system volume attributes dialog can be invoked from the built-in one.
  9772.  
  9773. 3. Mantis#0000088: Add "File owner" field.
  9774.  
  9775. 4. Ibid, the attributes list is appended with "Reparse point".
  9776.  
  9777. drkns 27.02.2010 19:16:33 +0200 - build 1424
  9778.  
  9779. 1. Build with /largeaddressaware.
  9780.  
  9781. chupakabra 27.02.2010 07:51:00 +0200 - build 1423
  9782.  
  9783. 1. Mantis#0000840: Low-fragmentation Heap is switched on.
  9784.   http://msdn.microsoft.com/en-us/library/aa366750%28VS.85%29.aspx
  9785.  
  9786. drkns 27.02.2010 00:07:33 +0200 - build 1422
  9787.  
  9788. 1. "Lock editing of read-only files" option didn't work.
  9789.  
  9790. t-rex 26.02.2010 20:36:01 +0200 - build 1421
  9791.  
  9792. 1. No need to call apiGetVolumeNameForVolumeMountPoint() for reparse points which are not folders (possibly Mantis#1288).
  9793.  
  9794. 2. Warning in GCC.
  9795.  
  9796. drkns 24.02.2010 15:48:25 +0200 - build 1420
  9797.  
  9798. 1. Continuing elimination of printf.
  9799.  
  9800. 2. 32-bit FilePositionCache is no more, now there's a 64-bit one everywhere.
  9801.  
  9802. 3. TI#11 limitations are removed.
  9803.  
  9804. svs 22.02.2010 17:10:45 +0300 - build 1419
  9805.  
  9806. 1. Macro: specification of replace(). It enters an endless loop if Find is an empty string.
  9807.  
  9808. drkns 22.02.2010 15:49:34 +0200 - build 1418
  9809.  
  9810. 1. The continuation of previous build. Now probably the wolves will be fed and the sheep would remain intact - ô./..ö items are shown but buggy drivers don't go insane from checking.
  9811.  
  9812. t-rex 22.02.2010 13:53:43 +0200 - build 1417
  9813.  
  9814. 1. The whole "." and ".." checking stuff is removed.
  9815.   It caused different problems to normal users, and all this for the sake of
  9816.   someone's possibility to create these real directories on FAT.
  9817.   If you do create directories "." and "..", FAR won't show them.
  9818.  
  9819. drkns 21.02.2010 21:57:47 +0200 - build 1416
  9820.  
  9821. 1. A lancet was forgotten inside patient's abdomen in 1413 :)
  9822.  
  9823. zg 21.02.2010 13:10:12 +0200 - build 1415
  9824.  
  9825. 1. gcc didn't compile.
  9826.  
  9827. svs 20.02.2010 22:44:13 +0300 - build 1414
  9828.  
  9829. 1. Macro: bug: panel.setposidx(0,0,1) returns 0 if the selected file is last on panel
  9830.  
  9831. drkns 20.02.2010 20:24:44 +0200 - build 1413
  9832.  
  9833. 1. DETECT_ALT_ENTER mess is thrown away, now 80x25 autosetting works when switching into fullscreen mode.
  9834.  
  9835. 2. No more ACTL_CONSOLEMODE.
  9836.  
  9837. 3. ôWindowedö state is replaced with ôFullscreenö in macro language.
  9838.  
  9839. svs 19.02.2010 17:18:28 +0300 - build 1412
  9840.  
  9841. 1. Macro: Bug: [A|P]panel.Filter always returns 1, regardless of whether panel filter is on or off
  9842. 2. Macro: problems with eval()
  9843.  
  9844. 3. Macro: incorrect work of panel.setposidx()
  9845.   Now it works like this:
  9846.   Panel.SetPosIdx(0,0,0) - returns coordinates in file array taking the filter into consideration
  9847.   Panel.SetPosIdx(0,0,1) - returns coordinates in selected files virtual array taking the filter into consideration
  9848.  
  9849. 4. ôConfigö variables related to macros are grouped into one structure.
  9850.  
  9851. 5. Temporary rule is added: KeyMacros/CallPluginRules:dword (Mantis#1280)
  9852.   0 - block macros when invoking the plugin with calling the CallPlugin function, 1 - enable macros (achtung!)
  9853.    the default setting is 0 - block
  9854.    it is "temporary" to understand how necessary it is.
  9855.  
  9856. drkns 19.02.2010 13:47:00 +0200 - build 1411
  9857.  
  9858. 1. In 1410, copying to plugin panels was broken.
  9859.  
  9860. drkns 18.02.2010 23:03:00 +0200 - build 1410
  9861.  
  9862. 1. Crash if language files are not found.
  9863.  
  9864. 2. Crash while unloading a plugin while configuration menu is opened.
  9865.  
  9866. 3. Some more garbage is thrown away from copier.
  9867.  
  9868. 4. Exceptions: an opportunity is added to pass an exception to external debugger, miscellaneous junk is deleted.
  9869.  
  9870. t-rex 18.02.2010 21:28:44 +0200 - build 1409
  9871.  
  9872. 1. Makeup in previous build.
  9873.  
  9874. svs 18.02.2010 20:02:35 +0300 - build 1408
  9875.  
  9876. 1. Macro: Menu.Select doesn't work when the third parameter (Dir) is not equal to 0.
  9877. (how could it work if the direction wasn't taken into account at all :-))
  9878.  
  9879. svs 18.02.2010 14:33:53 +0300 - build 1407
  9880.  
  9881. 1. Mantis#0001286: Add mouse click state
  9882.   MsEventFlags constant is added, a bitset (see http://msdn.microsoft.com/en-us/library/ms684239%28VS.85%29.aspx):
  9883. DOUBLE_CLICK = 0x0002
  9884. The second click (button press) of a double-click occurred.
  9885. The first click is returned as a regular button-press event.
  9886. MOUSE_HWHEELED = 0x0008
  9887. The horizontal mouse wheel was moved.
  9888. MOUSE_MOVED = 0x0001
  9889. A change in mouse position occurred.
  9890. MOUSE_WHEELED = 0x0004
  9891. The vertical mouse wheel was moved.
  9892.  
  9893. 2. Macro: panel.setposidx()
  9894.   a) 3-rd optional parameter InSelection is added
  9895. N=Panel.SetPosIdx(panelType,Idx[,InSelection])
  9896.   if InSelection = 1, then Idx is an index in virtual array of selected visible files
  9897.   if InSelection = 0, then Idx is an index in virtual array of selected visible files
  9898.   b) now this fulction work only with selected files, considering applied panel filters.
  9899.   c) second parameter Idx:
  9900.   < 0 - "search" from the end to the beginning
  9901.   > 0 - "search" from the beginning to theend
  9902.   = 0 - ignore moving, just return the current position (considering the filter)
  9903.  
  9904. 3. Macro: boolean states [A|P]Panel.Filter are added: "the filter is switched on at active/passive panel"
  9905.  
  9906. 4. Macro: specification of 1401
  9907.  
  9908. 5. Added: virtual public Panel::FileInFilter(long idxItem) and Panel::IsSelected(long idxItem)
  9909.  
  9910. drkns 17.02.2010 22:22:31 +0200 - build 1406
  9911.  
  9912. 1. Continuation of #0001273. After1395, various ancient bugs started to disclose themselves.
  9913.  
  9914. garry 17.02.2010 18:00:27 +0300 - build 1405
  9915.  
  9916. 1. x64 compilation error in 1400.
  9917.  
  9918. svs 17.02.2010 17:49:19 +0300 - build 1404
  9919.  
  9920. 1. Macro: loading again.
  9921.   "...╤onsider some panel macro. Let's call MacroView and make an error in the macro.
  9922.   FAR reports the error, the macro doesn't work anymore, but all other macros except the panel ones cease functioning.
  9923.   If the error is in viewer/editor macro, then common macros stop working..."
  9924.  
  9925. 2. Mantis#0001283: Macros execution domain bug
  9926.   Let the manager always force CurrentFrame domain setting.
  9927.   Hmm... this ticket can happen again, but only for objects not derived from Frame.
  9928.  
  9929. drkns 16.02.2010 19:32:46 +0200 - build 1403
  9930.  
  9931. 1. Specification of FCTL_CLEARSELECTION functioning.
  9932.  
  9933. drkns 16.02.2010 13:47:00 +0300 - build 1402
  9934.  
  9935. 1. Mantis#0000942: far hangs at exit after using of proclist
  9936.  
  9937. 2. Mantis#0001273: Slow work and excessive network traffic when exploring network shares.
  9938.  
  9939. 3. FCTL_CLEARSELECTION command is added, it removes selection from panel element. Param1 is a selected element number (0<=Param1<PanelInfo.SelectedItemsNumber).
  9940.  
  9941. 4. A couple of trivia.
  9942.  
  9943. svs 16.02.2010 11:05:58 +0300 - build 1401
  9944.  
  9945. 1. Macro: Now erroneous macros are skipped, while other ones are loaded
  9946.  
  9947. 2. A little of PROJECT_DI_MEMOEDIT.
  9948.  
  9949. 3. editor.cpp: a commented code deleted (Editor::ReadFile())
  9950.  
  9951. garry 15.02.2010 17:37:17 +0300 - build 1400
  9952. 1. Crash when processing files with increasing size:
  9953.   1. Editor crashed when displaying progress bar for the file which size was increasing
  9954.   while opening;
  9955.   2. Viewer crashed when displaying progress bar while searching in the file which size was increasing
  9956.   while viewing.
  9957.  
  9958. t-rex 14.02.2010 00:48:27 +0200 - build 1399
  9959.  
  9960. 1. Mantis#1274: Incorrect panel filter functioning if folders only are selected.
  9961.   In common, there was a flaw in folders processing logic, similar bugs are fixed in search and selection.
  9962.  
  9963. zg 14.02.2010 00:12:02 +0200 - build 1398
  9964.  
  9965. 1. gcc didn't compile.
  9966.  
  9967. svs 12.02.2010 18:15:56 +0300 - build 1397
  9968.  
  9969. 1. Mantis#0001270: MCMD_LOADALL doesn't return an error when it takes place
  9970.  
  9971. drkns 11.02.2010 14:06:15 +0200 - build 1396
  9972.  
  9973. 1. Specification of BOM append logic when saving.
  9974.  
  9975. drkns 11.02.2010 13:47:00 +0200 - build 1395
  9976.  
  9977. 1. Since ConvertNameToReal doesn't use manual analysis of reparse point content, the limitation for network paths is removed.
  9978.  
  9979. 2. Attributes dialog allows for reparse point content editing for network paths too.
  9980.  
  9981. 3. Mantis#0000650: FAR doesn't allow to create symlink to root share.
  9982.  
  9983. svs 12.02.2010 14:15:21 +0300 - build 1394
  9984.  
  9985. 1. Incorrect functioning of Info.FSF->FarNameToKey
  9986. http://forum.farmanager.com/viewtopic.php?f=8&t=5058
  9987.  
  9988.   Function waits for a string matching the following specifications:
  9989.   1. Keys which are defined in structure keyboard.cpp::FKeys1[]
  9990.   2. Optional modifiers (Alt/RAlt/Ctrl/RCtrl/Shift) and one character, for example, AltD or CtrlC
  9991.   3. "Alt" (or RAlt) and 5 decimal digits (with leading zeros)
  9992.   4. "Spec" and 5 decimal digits (with leading zeros)
  9993.   5. "Oem" and 5 decimal digits (with leading zeros)
  9994.   6. Modifiers only (Alt/RAlt/Ctrl/RCtrl/Shift)
  9995.  
  9996. drkns 11.02.2010 23:52:09 +0200 - build 1393
  9997.  
  9998. 1. Mantis#0001271: Dialog: characters which cannot be correctly translated using the selected codepage.
  9999.  
  10000. 2. Line jump dialog (AltF8) in editor is translated to DialogBuilder.
  10001.  
  10002. svs 11.02.2010 22:26:57 +0300 - build 1392
  10003.  
  10004. 1. Mantis#0001268:Only first character is inserted into the dialogs filter.
  10005. Ctrl-V/Shift-Ins is added (for ôwe are in the filterö mode only)
  10006.  
  10007. svs 11.02.2010 21:57:33 +0300 - build 1391
  10008.  
  10009. 1. Mantis#0001268: Only first character is inserted into the dialogs filter, which is not surprising looking at the source code :-)
  10010.  
  10011. Also, here, in filter, as an experiment :-) the reaction on characher 0x8 (Bs) is added when processing $Text . Is it useful?
  10012.  
  10013. 2. Mantis#0001266: Far crashes when parsing a macro
  10014. I have forgot about double quotes... :-(
  10015. ULF_NOTUNQUOTES flag is added to UserDefinedList class.
  10016.  
  10017. drkns 11.02.2010 13:47:00 +0200 - build 1390
  10018.  
  10019. 1. Mantis#0001269: macro is not specified in message about incorrect macro at Far start.
  10020.  
  10021. 2. Excessive call of callback functions when replacing block in input line.
  10022.  
  10023. drkns 11.02.2010 01:15:24 +0200 - build 1389
  10024.  
  10025. 1. In 1381, right mouse clicks on functional keys line didn't work.
  10026.  
  10027. zg 10.02.2010 22:13:45 +0200 - build 1388
  10028.  
  10029. 1. Regexp: error in upper limit calculation in ranges given as \xyyyy.
  10030.  
  10031. drkns 10.02.2010 15:04:39 +0200 - build 1387
  10032.  
  10033. 1. Alt- processing in completion list.
  10034.  
  10035. svs 10.02.2010 12:55:31 +0300 - build 1386
  10036.  
  10037.  1. Warnings
  10038.  
  10039.  2. Macro: MCMD_CHECKMACRO - successful macro check code initialization.
  10040.  It is important that ActlKeyMacro.Param is an union and Param.PlainText.SequenceText is overwritten after processing of MCMD_CHECKMACRO, thus Far returns Param.MacroResult.*
  10041.  
  10042. drkns 10.02.2010 00:57:46 +0200 - build 1385
  10043.  
  10044.  1. Incorrect focus positioning in codepages menu.
  10045.  
  10046.  
  10047.  
  10048.  
  10049. zg 09.02.2010 17:59:01 +0200 - build 1384
  10050.  
  10051. 1. ESPT_SETBOM and EOPT_BOM are added to API.
  10052.  
  10053. 2. Additionally, the situation is fixed: file without BOM is opened in editor, then deleted and saved, and the result is file without BOM.
  10054.  
  10055. svs 09.02.2010 18:02:24 +0300 - build 1383
  10056.  
  10057. 1. Continuing MCMD_CHECKMACRO hacking.
  10058. - line and column start from 0 for plugins, as expected
  10059. - MPEC_EXPECTED is replaced with more readable MPEC_EXPECTED_TOKEN
  10060. - KSFLAGS_SILENTCHECK flag is added: when it is checked, Far does not show dialog.
  10061.  
  10062. drkns 09.02.2010 15:04:21 +0200 - build 1382
  10063.  
  10064. 1. Specifications of dialog elements coloring.
  10065.  
  10066. 2. Makeup in macro keys assignment dialog source code.
  10067.  
  10068. svs 09.02.2010 12:50:38 +0300 - build 1381
  10069.  
  10070. 1. Macro: macros on F1: "msgbox(akey(1))"
  10071. when pressed in panels, dialogs etc, in works adequately.
  10072. when pressed in menu, the result is the button which invoked the menu, not F1.
  10073.  
  10074. 2. MCMD_CHECKMACRO is ôpublishedö, it returns ActlKeyMacro.Param.MacroResult
  10075. struct
  10076. {
  10077. DWORD ErrCode; // error code (see FARMACROPARSEERRORCODE)
  10078. COORD ErrPos; // line and column where parser has found the error
  10079. const wchar_t *ErrSrc; // word that caused the error, it can be empty depending on the error code
  10080. } MacroResult;
  10081.  
  10082. 3. Mantis#0001266: Far crashes during macro parsing
  10083. I have forgot that UserDefinedList doesn't accept 1 value (one line macro in this case)
  10084. The stubs have been placed, but...
  10085. TODO: rewrite UserDefinedList to make it act as one-element array if needed.
  10086.  
  10087. drkns 09.02.2010 10:51:57 +0200 - build 1380
  10088.  
  10089. 1. Specification of mouse processing in dialogs.
  10090.  
  10091. drkns 09.02.2010 09:39:19 +0200 - build 1379
  10092.  
  10093. 1. Fix of 1378.2.
  10094.  
  10095. drkns 08.02.2010 19:07:17 +0200 - build 1378
  10096.  
  10097. 1. Continuation of 1367.
  10098.  
  10099. 2. Another pair of trivia.
  10100.  
  10101. svs 08.02.2010 17:26:40 +0300 - build 1377
  10102.  
  10103. 1. Macro: PANEL.ITEM alias is added for PANELITEM function (for uniformity in naming)
  10104.  
  10105. 2. Macro: parser specification.
  10106.  
  10107. 3. ULF_NOTTRIM flag is added to UserDefinedList - to preserve space symbols.
  10108.  
  10109. drkns 08.02.2010 16:03:25 +0200 - build 1376
  10110.  
  10111. 1. Specification of the trick introduced in 1205: window size is restored only if it had been decreased after getting the focus.
  10112.  
  10113. drkns 08.02.2010 11:18:56 +0200 - build 1375
  10114.  
  10115. 1. Mantis#0001264: show deletion progress percentage in caption.
  10116.  
  10117. 2. 'Skip all' choice didn't work in decryption confirmation dialog.
  10118.  
  10119. 3. Error in metacharacters processing.
  10120.  
  10121. drkns 06.02.2010 15:10:19 +0200 - build 1374
  10122.  
  10123. 1. Completion is switched off while FCTL_CMDLINE is processed.
  10124.  
  10125. drkns 05.02.2010 20:42:59 +0200 - build 1373
  10126.  
  10127. 1. Specification of plugin panel closing logic.
  10128.  
  10129. 2. Mantis#0001259: file panel is not redrawn after folder change.
  10130.  
  10131. drkns 04.02.2010 20:48:39 +0200 - build 1372
  10132.  
  10133. 1. User menu items deletion broken in 1369.
  10134.  
  10135. drkns 03.02.2010 21:23:01 +0200 - build 1371
  10136.  
  10137. 1. Middle mouse button works as Enter again in panels, help and menus.
  10138. Always. There's no option, because of macros.
  10139.  
  10140. 2. Mouse processing in help is changed a bit.
  10141.  
  10142. 3. xn are changed, now the third parameter is a destination size.
  10143.  
  10144. 4. Error in oldfar::ESPT_GETWORDDIV.
  10145.  
  10146. 5. gcc warning.
  10147.  
  10148. drkns 03.02.2010 15:08:26 +0200 - build 1370
  10149.  
  10150. 1. If element was selected from commands history, useless autocompletion was invoked.
  10151.  
  10152. 2. Deprecated BlockExtKey entries are removed.
  10153.  
  10154. 3. File search does not crash anymore on F11, also task list is now available there.
  10155.  
  10156. drkns 02.02.2010 20:36:50 +0200 - build 1369
  10157.  
  10158. 1. Fix for 1366.
  10159.  
  10160. 2. Getting rid of *printf.
  10161.  
  10162. chupakabra 02.02.2010 16:20:00 +0200 - build 1368
  10163.  
  10164. 1. Incorrect date display for folders on plugin panel.
  10165.  
  10166. drkns 01.02.2010 23:28:33 +0200 - build 1367
  10167.  
  10168. 1. Fix in 1366.
  10169.  
  10170. drkns 01.02.2010 21:44:16 +0200 - build 1366
  10171.  
  10172. 1. From Alexey Samlyukov: if hlf file contained ".Options" section, ".PluginContents" section wasn't processed.
  10173.  
  10174. 2. Input lines are provided with mouse selection capability. It has nothing to do with editor so far.
  10175.  
  10176. 3. Clickable arrow is drawn on the right side of command line, as in dialogs combobox.
  10177.  
  10178. drkns 31.01.2010 20:56:38 +0200 - build 1365
  10179.  
  10180. 1. Panels were not redrawn after filters switch on.
  10181.  
  10182. svs 31.01.2010 17:57:22 +0300 - build
  10183.  
  10184. 1. Mantis#0000986: Far 2 API - pascal
  10185.  
  10186. drkns 31.01.2010 16:37:49 +0200 - build 1364
  10187.  
  10188. 1. Plugin panels did not show elements packed size.
  10189.  
  10190. drkns 30.01.2010 20:09:48 +0200 - build 1363
  10191.  
  10192. 1. Mantis#0001257: File sharing violation when attempting to open Editor from Viewer.
  10193.  
  10194. drkns 29.01.2010 22:29:05 +0200 - build 1362
  10195.  
  10196. 1. After 597, panel elements sorting in plugins was broken.
  10197.  
  10198. drkns 29.01.2010 21:01:29 +0200 - build 1361
  10199.  
  10200. 1. Once more about macros and completion.
  10201.  
  10202. drkns 28.01.2010 18:47:28 +0200 - build 1360
  10203.  
  10204. 1. Panel plugins menu could be invoked with F11.
  10205.  
  10206. 2. To all macro addicts: autocompletion list now has its own range - "AutoCompletion".
  10207.  
  10208. svs 28.01.2010 16:45:53 +0300 - build 1359
  10209.  
  10210. 1. Macro: Incorrect AKey()/$AKey work.
  10211.  
  10212. drkns 28.01.2010 11:27:44 +0200 - build 1358
  10213.  
  10214. 1. Mantis#0001256: When text is entered in command line, PanelTabs plugin tabs are erased.
  10215.  
  10216. t-rex 27.01.2010 21:59:14 +0200 - build 1357
  10217.  
  10218. 1. Mantis#1255: ôfar /v -ö does not respond.
  10219.  
  10220. chupakabra 26.01.2010 19:57:00 +0200 - build 1356
  10221.  
  10222. 1. From Maximus: Mantis#0001117: Incorrect file selection with mouse button while scrolling.
  10223.  
  10224. chupakabra 26.01.2010 19:34:00 +0200 - build 1355
  10225.  
  10226. 1. FSF.GetDirList now returns full pathnames.
  10227.  
  10228. chupakabra 24.01.2010 18:15:00 +0200 - build 1354
  10229.  
  10230. 1. Mantis#0001251: Incorrect optical drive type display.
  10231.  
  10232. yole 23.01.2010 14:15:00 +0300 - build 1353
  10233.  
  10234. 1. In Alt-F1/Alt-F2 menu, F9 shows display modes configuration dialog, which is all Ctrl+digits together. Also, the menu is provided with help on available keys.
  10235.  
  10236. 2. CD-ROM type display is on by default.
  10237.  
  10238. svs 22.01.2010 17:15:01 +0300 - build 1352
  10239.  
  10240. 1. Mantis#0001201: In Far 2, go to URL does not work
  10241.  
  10242. 2. Specification in URL help (section "@PluginsReviews")
  10243.  
  10244. svs 22.01.2010 14:46:29 +0300 - build 1351
  10245.  
  10246. 1. Mantis#0001240: Outer editor is not started if its path contains spaces and prepended with ô@ö symbol.
  10247.  
  10248. drkns 22.01.2010 00:40:31 +0200 - build 1350
  10249.  
  10250. 1. A couple of autocompletion details.
  10251.  
  10252. chupakabra 20.01.2010 21:19:00 +0200 - build 1349
  10253.  
  10254. 1. Error in FarGetDirList, it caused non-working catalog contents copy in TmpPanel.
  10255.  
  10256. 2. ACTL_QUIT didn't work if a menu was open.
  10257.  
  10258. chupakabra 20.01.2010 08:05:00 +0200 - build 1348
  10259.  
  10260. 1. ACTL_QUIT - terminates Far.
  10261.  
  10262. chupakabra 20.01.2010 07:38:00 +0200 - build 1347
  10263.  
  10264. 1. On win2k, QueryDosDevice() gives an error when buffer size if large. apiQueryDosDevice() is added.
  10265.  
  10266. 2. UnicodeString::SubStr().
  10267.  
  10268. zg 19.01.2010 22:58:11 +0200 - build 1346
  10269.  
  10270. 1. "&" symbol is not displayed in completion.
  10271.  
  10272. svs 18.01.2010 10:26:51 +0300 - build
  10273.  
  10274. 1. Mantis#0001246: Build fails in gcc on Linux. Incorrect include in edit.cpp
  10275.  
  10276. svs 17.01.2010 21:26:17 +0300 - build 1345
  10277.  
  10278. 1. Mantis#0001242: Incorrect AKey$ work
  10279. $AKey now returns really pressed keys which caused the macro
  10280.  
  10281. 2. Mantis#0001239: Keypress returning with AKey considers the current layout
  10282. An optional akey() parameter is added
  10283. V=akey(Mode[,Type])
  10284. Mode = 0 - number
  10285. 1 - string
  10286. Type = 0 - returns really pressed keys which caused the macro
  10287. 1 - returns the hotkey which macro is assigned on.
  10288.  
  10289. yole 17.01.2010 00:20:00 +0300 - build 1344
  10290.  
  10291. 1. Learning to recognize BD-ROM drives in Alt-F1/Alt-F2.
  10292.  
  10293. yole 16.01.2010 18:50:00 +0300 - build 1343
  10294.  
  10295. 1. DialogBuilder supports two-column layout of controls.
  10296.  
  10297. 2. Moving viewer and editor configuration to DialogBuilder.
  10298.  
  10299. yole 16.01.2010 14:45:00 +0300 - build 1342
  10300.  
  10301. 1. Continuing DialogBuilder refactoring in order to use it in plugins.
  10302.  
  10303. 2. Number edit fields created with DialogBuilder are automatically provided with numbers-only mask.
  10304.  
  10305. drkns 16.01.2010 12:39:15 +0200 - build 1341
  10306.  
  10307. 1. Forum: "Bug in editor replace".
  10308. It appears to be lasting since #498.
  10309.  
  10310. drkns 16.01.2010 00:42:36 +0200 - build 1340
  10311.  
  10312. 1. #1338 is continued.
  10313.  
  10314. drkns 15.01.2010 07:57:05 +0200 - build 1339
  10315.  
  10316. 1. Querying the needed privileges incorrectly at symlinks creation.
  10317.  
  10318. drkns 14.01.2010 20:45:19 +0200 - build 1338
  10319.  
  10320. 1. regressions of #1337 are fixed.
  10321.  
  10322. drkns 13.01.2010 20:42:34 +0200 - build 1337
  10323.  
  10324. 1. Filenames ending with dot were shown incorrectly in panel modes with extensions alignment switched on.
  10325.  
  10326. 2. Refactoring. Copypaste related to completion is removed. Consequences are expected, so be careful.
  10327.  
  10328. 3. x64 warnings.
  10329.  
  10330. drkns 13.01.2010 19:22:50 +0200 - build 1336
  10331.  
  10332. 1. And TreeCmp again, more correct variant.
  10333.  
  10334. t-rex 12.01.2010 23:07:52 +0200 - build 1335
  10335.  
  10336. 1. FarDialogItem.Param.ListPos is now set centrally when any structure is ôgotö from Far.
  10337. Buggy plugins based on assumption that FarDialogItem.Param.ListItems is set will be broken.
  10338. These cases are asked to inform about, although this shouldn't hapen.
  10339.  
  10340. svs 12.01.2010 11:53:24 +0300 - build 1334
  10341.  
  10342. 1. Tree. Sorting function TreeCmp rollback to the previous revision (3917) (was in build #1295)
  10343.  
  10344. 2. Specifications in SysLog`s
  10345.  
  10346. drkns 11.01.2010 20:07:38 +0200 - build 1333
  10347.  
  10348. 1. Projects dependencies are fixed.
  10349.  
  10350. 2. DIF_EDITPATH/FIB_EDITPATH in api.
  10351.  
  10352. 3. Text in input lines sometimes appeared to be drawn to the left of X1 and was not displayed.
  10353.  
  10354. 4. Some makeup.
  10355.  
  10356. 5. Help specifications.
  10357.  
  10358. chupakabra 11.01.2010 02:28:00 +0200 - build 1332
  10359.  
  10360. 1. ôconstö in plugin api.
  10361.  
  10362. drkns 11.01.2010 01:19:27 +0200 - build 1331
  10363.  
  10364. 1. Mantis#0000848: Find Folder: incorrect ô*ö symbol handling.
  10365.  
  10366. t-rex 10.01.2010 23:55:43 +0200 - build 1330
  10367.  
  10368. 1. Getting rid of NM in plugin.hpp.
  10369.  
  10370. 2. GCC warning.
  10371.  
  10372. drkns 10.01.2010 23:39:29 +0200 - build 1329
  10373.  
  10374. 1. Forum: Find Folder: incorrect tree displaying in Far 2.
  10375.  
  10376. 2. x64 warnings.
  10377.  
  10378. 3. gcc build.
  10379.  
  10380. 4. Changes in completion.
  10381.  
  10382. yole 10.01.2010 18:50:00 +0300 - build 1328
  10383.  
  10384. 1. The beginning of DialogBuilder big refactoring, which allows one API for dialogs contruction both in FAR and plugins.
  10385.  
  10386. drkns 09.01.2010 14:17:27 +0200 - build 1327
  10387.  
  10388. 1. Rolling FarDialogItem.MaxLen back )
  10389.  
  10390. drkns 09.01.2010 13:51:28 +0200 - build 1326
  10391.  
  10392. 1. DWORD Reserved2 -> DWORD_PTR Reserved2.
  10393.  
  10394. drkns 09.01.2010 12:59:15 +0200 - build 1325
  10395.  
  10396. 1. FarDialogItem.MaxLen is replaced with DWORD Reserved2. Must be 0.
  10397.  
  10398. drkns 08.01.2010 22:51:39 +0200 - build 1324
  10399.  
  10400. 1. Logical extension of 1277 - synchronize CurrentDirectory only if non-Unicode plugins are present.
  10401.  
  10402. 2. DIF_NOTCVTUSERCONTROL is removed + some makeup in wrapper.
  10403.  
  10404. drkns 08.01.2010 18:00:43 +0200 - build 1323
  10405.  
  10406. 1. Mantis#0001238: Incorrect replacement highlighting in editor.
  10407.  
  10408. t-rex 08.01.2010 13:54:21 +0200 - build 1322
  10409.  
  10410. 1. vc compilation for 1321.
  10411.  
  10412. zg 08.01.2010 13:46:03 +0200 - build 1321
  10413.  
  10414. 1. Lost files in 1320.
  10415.  
  10416. zg 08.01.2010 13:30:56 +0200 - build 1320
  10417.  
  10418. 1. File rewrite dialog has GUID {9FBCB7E1-ACA2-475d-B40D-0F7365B632FF}.
  10419.  
  10420. drkns 08.01.2010 01:30:08 +0200 - build 1319
  10421.  
  10422. 1. Some more autocompletion + the beginning of configuration.
  10423.  
  10424. 2. All autoconfigured-in-build files are placed now in separate directory.
  10425.  
  10426. zg 07.01.2010 18:21:09 +0200 - build 1318
  10427.  
  10428. 1. LIF_USETEXTPTR and MIF_USETEXTPTR are removed.
  10429.  
  10430. zg 07.01.2010 17:44:21 +0200 - build 1317
  10431.  
  10432. 1. `const' in plugin api.
  10433.  
  10434. 2. GetComputerNameEx in gcc.
  10435.  
  10436. svs 07.01.2010 17:12:00 +0300 - build 1316
  10437.  
  10438. 1. Some changes in InfoList. Using absolute Y coordinates instead of relative ones.
  10439.  
  10440. 2. Specification for subst-volumes - the info had been shown from parent root.
  10441. Instead of strDriveRoot, gotten from GetPathRoot, we'll apply ExtractPathRoot(strCurDir), because GetPathRoot tries to unwind everything completely.
  10442.  
  10443. 3. InfoPanel settings are provided with "Computer name display format" option (which is described in help).
  10444. Now we should invent a sane name (according to the description) for these combobox items :-)
  10445.  
  10446. yole 07.01.2010 12:00:00 +0300 - build 1315
  10447.  
  10448. 1. Returning an option which has been lost when moving settings to dynamic dialogs.
  10449.  
  10450. 2. Dynamic dialogs build system is learned to work with comboboxes.
  10451. InfoPanel Settings dialog moved to new system.
  10452.  
  10453. drkns 07.01.2010 01:19:43 +0200 - build 1314
  10454.  
  10455. 1. And another couple of trivia.
  10456.  
  10457. drkns 07.01.2010 00:57:40 +0200 - build 1313
  10458.  
  10459. 1. Some more autocompletion.
  10460.  
  10461. zg 06.01.2010 22:36:35 +0200 - build 1312
  10462.  
  10463. 1. gcc warnings.
  10464.  
  10465. drkns 06.01.2010 18:54:47 +0200 - build 1311
  10466.  
  10467. 1. Changes in FSF.MkTemp - the function returns needed buffer size.
  10468.  
  10469. drkns 05.01.2010 20:52:04 +0200 - build 1310
  10470.  
  10471. 1. Forum: specification of "Already existing files" list behavior in copy dialog.
  10472.  
  10473. 2. As a consequence of #1: opened combobox is now fed with DN_LISTHOTKEY event.
  10474.  
  10475. 3. OPIF_FINDFOLDERS is removed for uselessness.
  10476.  
  10477. drkns 05.01.2010 19:50:30 +0200 - build 1309
  10478.  
  10479. 1. New actl commands: ACTL_SETPROGRESSSTATE, ACTL_SETPROGRESSVALUE, intended to control Far taskbar button.
  10480.  
  10481. 2. ACTL_GETWCHARMODE is removed for uselessness.
  10482.  
  10483. drkns 03.01.2010 21:37:53 +0200 - build 1308
  10484.  
  10485. 1. Other autocompletion stuff.
  10486.  
  10487. drkns 03.01.2010 18:36:49 +0200 - build 1307
  10488.  
  10489. 1. Changes/specifications on new autocompletion mode.
  10490.  
  10491. 2. Rollback of 1306 - false alarm )
  10492.  
  10493. drkns 03.01.2010 16:42:56 +0200 - build 1306
  10494.  
  10495. 1. FSF.ConvertPath didn't return needed buffer size.
  10496.  
  10497. drkns 02.01.2010 13:38:25 +0200 - build 1305
  10498.  
  10499. 1. Mantis#0001233: In editor, text being replaced is not highlighted.
  10500.  
  10501. svs 29.12.2009 15:10:25 +0300 - build 1304
  10502.  
  10503. 1. I was wrong about language-dependent %FARADMINMODE% :-)
  10504.  
  10505. Next iteration...
  10506.  
  10507. Now
  10508. %FARADMINMODE% is a number and equals to 1, if we are admin
  10509.  
  10510. cmdprompt has new '$@xx' (see MConfigCmdlinePromptFormatAdmin)
  10511. Here, 'xx' contains two symbols surrounding the word "Administrator"
  10512. For example, "$@{}$s$p$g" is displayed as "{Administrator} C:\>"
  10513.  
  10514. svs 29.12.2009 13:33:22 +0300 - build 1303
  10515.  
  10516. 1. Mantis#0001228: Macro Problem (wrong results in 'Index')
  10517. Additional parameters are introduced in macro functions
  10518. N=index(S1,S2[,Mode])
  10519. S=rindex(S1,S2[,Mode])
  10520. Result=replace(Str,Find,Replace[,Cnt[,Mode]])
  10521. Here Mode is:
  10522. 0 - case insensitive
  10523. 1 - case sensitive
  10524.  
  10525. 2. Macro: msave() for double type keeps its value as a string.
  10526.  
  10527. 3. If Far is in administrator mode, the environment variable FARADMINMODE is set, it equals to "(Administrator)" (see MConfigCmdlinePromptFormatAdmin)
  10528. One can make use of it in CmdPrompt.
  10529.  
  10530. drkns 29.12.2009 00:44:26 +0200 - build 1302
  10531.  
  10532. 1. Placing DIF_EDITPATH in dialogs where it is needed.
  10533.  
  10534. 2. Specifications of new append mode.
  10535.  
  10536. yole 29.12.2009 00:11:00 +0300 - build 1301
  10537.  
  10538. 1. Work on dynamic dialog system is in progress.
  10539. Support is added for separators, radio buttons, prefix text, history.
  10540. Translation for system settings, panel settigns, file description settings.
  10541.  
  10542. drkns 28.12.2009 19:10:00 +0200 - build 1300
  10543.  
  10544. 1. Experimenting with auto-completion again.
  10545. Now its behaviour is as close to the system one as possible, namely:
  10546. input is provided with autoexpanding list with suitable variants, shrinking as input proceeds.
  10547. I.e. nothing is substituted without user's control end everything is intuitively clear.
  10548. Hope this variant will suit everybody.
  10549.  
  10550. Sorry, no configuration interface so far. It will be done later.
  10551.  
  10552. P.S. As a bonus (and to match the system behaviour precisely) also primitive completion of file names is added at the same place. It works at the command line and dialog input lines with DIF_EDITPATH flag set.
  10553. At this moment, the flag is set in open and save dialogs only (ShiftF4/ShiftF2).
  10554.  
  10555. yole 26.12.2009 19:30:00 +0300 - build 1299
  10556.  
  10557. 1. Dynamic dialog creation system development is in progress.
  10558. Support is added for edit fields, static text, automation.
  10559. Another couple of settings dialogs is moved to the new system.
  10560.  
  10561. drkns 26.12.2009 16:14:42 +0200 - build 1298
  10562.  
  10563. 1. Specification of 1295.2.
  10564.  
  10565. yole 26.12.2009 16:20:00 +0300 - build 1297
  10566.  
  10567. 1. Stub for dynamic dialog creation system: DlgBuilder.cpp/hpp
  10568.  
  10569. 2. autocompletion blind mode on/off option.
  10570.  
  10571. yole 25.12.2009 23:32:10 +0300 - build 1296
  10572.  
  10573. 1. Blind mode for autocompletion (experimental):
  10574. http://bugs.farmanager.com/view.php?id=274
  10575.  
  10576. drkns 25.12.2009 19:24:01 +0200 - build 1295
  10577.  
  10578. 1. Restored the editor save error visualization.
  10579.  
  10580. 2. New hotkeys in panels: CtrlShift.
  10581. They change the current panel height.
  10582.  
  10583. 2. Mass deletion of constness cast-away in Local, LocalOEM and other places.
  10584.  
  10585. 3. Mass deletion of out-of-loop counters.
  10586.  
  10587. t-rex 25.12.2009 16:46:03 +0200 - build 1294
  10588.  
  10589. 1. Logical completion of 1246. Now plugins can detach Far window, and this is supposed to work.
  10590. I've noticed so far that MakeIt plugin is partially broken, I'll examine that.
  10591. It's interesting to know if someting else having non-standard output is also broken.
  10592.  
  10593. chupakabra 24.12.2009 23:37:00 +0200 - build 1293
  10594.  
  10595. 1. On Far startup, macro recording indicator could appear because KeyMacro::Recording wasn't initialized.
  10596.  
  10597. drkns 24.12.2009 21:33:21 +0200 - build 1292
  10598.  
  10599. 1. DList is removed from MacroState, till better times.
  10600.  
  10601. drkns 24.12.2009 17:53:01 +0200 - build 1291
  10602.  
  10603. 1. Mistype in 1290.
  10604.  
  10605. drkns 24.12.2009 01:51:44 +0200 - build 1290
  10606.  
  10607. 1. Getting rid of some more memcpy and memset.
  10608.  
  10609. 2. If plugin tried to change focus at the moment of combobox opening, the consequences were tragic.
  10610.  
  10611. drkns 23.12.2009 20:13:46 +0200 - build 1289
  10612.  
  10613. 1. Specifications of build 1287.
  10614.  
  10615. 2. Specifications in help.
  10616.  
  10617. t-rex 22.12.2009 22:21:07 +0200 - build 1288
  10618.  
  10619. 1. Mantis#1147: Error when launching \
  10620.  
  10621. 2. Some cleanup.
  10622.  
  10623. drkns 22.12.2009 21:23:23 +0200 - build 1287
  10624.  
  10625. 1. Using DList instead of list reimplementations in yet another few places.
  10626.  
  10627. 2. Some additions in DList.
  10628.  
  10629. drkns 18.12.2009 22:14:58 +0200 - build 1286
  10630.  
  10631. 1. Regular expressions: \x now supports up to four hexadecimal digits, in order to cover Unicode caracters.
  10632.  
  10633. 2. Selection in editor text replace was drawn over the text by hand for some reason.
  10634. If tab symbols got there, this casted a miracle.
  10635.  
  10636. 3. Help on "Far window title addons".
  10637.  
  10638. t-rex 18.12.2009 17:59:11 +0200 - build 1285
  10639.  
  10640. 1. At users' requests, an addition to 1282, if Mouse option is off in Far interface settings, then additional console mode ôquick editö isn't switched off if the shortcut/window setting is on.
  10641.  
  10642. drkns 17.12.2009 21:00:01 +0200 - build 1284
  10643.  
  10644. 1. New caption template %Platform (x86/x64/IA64), templates are now case-insensitive.
  10645.  
  10646. drkns 13.12.2009 22:22:11 +0200 - build 1283
  10647.  
  10648. 1. TI#48 had no influence on NumDel.
  10649.  
  10650. t-rex 13.12.2009 00:40:22 +0200 - build 1282
  10651.  
  10652. 1. The BAF from b1279#2 is back for a while, there are some problems without it, also there's no time to rewrite it completely so far. I should better not touch it.
  10653.  
  10654. 2. Additional console modes (quick edit/insert mode) are switched off while Far is running, but if they have been turned on when Far is started then they are back on for the time external programs run in Far window.
  10655.  
  10656. 3. Misc stuff.
  10657.  
  10658. drkns 12.12.2009 23:57:53 +0200 - build 1281
  10659.  
  10660. 1. Specification of the previous build.
  10661.  
  10662. drkns 12.12.2009 23:44:12 +0200 - build 1280
  10663.  
  10664. 1. Information panel:
  10665. - swap file status is now called with its proper name, instead of "virtual memory";
  10666. - added information on true virtual memory;
  10667. - added information on installed physical memory. It is functional in Vista and above.
  10668.  
  10669. 2. When ShiftF8 was pressed on ".." and there was a selection on the panel, an attempt to delete this item was made, with all consequences.
  10670.  
  10671. t-rex 07.12.2009 23:20:24 +0200 - build 1279
  10672.  
  10673. 1. Mantis#1157: .. - exit from temporary panel to previous one.
  10674.  
  10675. 2. A big ancient fail: OpenFilePlugin() didn't create a new panel, existing one was reused instead.
  10676.  
  10677. t-rex 07.12.2009 21:03:31 +0200 - build 1278
  10678.  
  10679. 1. Settle down current path syncronization and a pair of related things.
  10680. Also, access to inner strCurrentDirectory() should be wrapped with CriticalSection .
  10681.  
  10682. t-rex 07.12.2009 17:59:07 +0200 - build 1277
  10683.  
  10684. 1. Now we syncronize process' current directory with Far current folder, because since 1275 it has become totally unexpected which has caused another series of problems.
  10685. What could we do? Now everything seems to be ok, but since now it will be harder to find buggy plugins which get current path from Windows, not Far, because those will be equal except for "nonstandard" paths.
  10686. I think this should be done: remove ANSI plugins support at all. The problem is gone at once, and people get a high motivation for plugins porting.
  10687.  
  10688. t-rex 06.12.2009 23:01:16 +0200 - build 1276
  10689.  
  10690. 1. Misc.
  10691.  
  10692. t-rex 06.12.2009 20:52:04 +0200 - build 1275
  10693.  
  10694. 1. CurrentDirectoryGuard is removed, now there's only SynchronizeCurrentDirectory() without restoring, because frequent jumps of process' current directory here and there cause various problems with ANSI plugins invocation.
  10695.  
  10696. 2. Small corrections in plugin manager.
  10697.  
  10698. drkns 06.12.2009 11:14:26 +0200 - build 1274
  10699.  
  10700. 1. Incorrect mark symbol in menu.
  10701.  
  10702. drkns 05.12.2009 18:46:16 +0200 - build 1273
  10703.  
  10704. 1. As it suddenly became clear, those admin-in-caption tricks didn't work at all, because because the state of user's membership in admins group had been taken from astral plane.
  10705. Ibid: removed Windows version check (need to check how it works under NT<6) a couple of minor things. t-rex 05.12.2009 17:29:08 +0200 - build 1272
  10706.  
  10707. 1. Remakes in TitleAddons:
  10708. a. GUI option. Please always add it for new GUI features, say no to ôtechinfoö.
  10709. b. No spaces etc. are substituted anywhere, the string is inserted as-is.
  10710. c. All additions go after " - Far ", don't touch this piece.
  10711. d. Trailing spaces are removed if anybody wants to know.
  10712. e. Far version isn't changed while running, No need to read it continuously :)
  10713. f. The default string is now "%Ver.%Build %Admin".
  10714. g. Admin is now written in LNG without excessive symbols.
  10715.  
  10716. t-rex 05.12.2009 16:36:12 +0200 - build 1271
  10717.  
  10718. 1. Another remake in apiGetFinalPathNameByHandle() to do it nicer and more correct.
  10719.  
  10720. t-rex 05.12.2009 14:27:07 +0200 - build 1270
  10721.  
  10722. 1. Mantis#1202: Crash after Shift-F8 keypress in editor and viewer.
  10723. The bug has always existed, but it has manifested itself only now.
  10724.  
  10725. 2. Incorrect encodings sorting in Favorites.
  10726.  
  10727. 3. VMenu: SelectPos has to be corrected when adding a new item before selected one.
  10728.  
  10729. t-rex 05.12.2009 11:57:27 +0200 - build 1269
  10730.  
  10731. 1. VMenu: a small bug in DeleteItem().
  10732.  
  10733. t-rex 05.12.2009 10:53:56 +0200 - build 1268
  10734.  
  10735. 1. Continue ruining VMenu.
  10736.  
  10737. t-rex 05.12.2009 00:20:30 +0200 - build 1267
  10738.  
  10739. 1. Some more cleaning in global.hpp.
  10740.  
  10741. 2. Bugs in ConsoleTitle.
  10742.  
  10743. t-rex 04.12.2009 22:06:38 +0200 - build 1266
  10744.  
  10745. 1. Partial refactoring of VMenu class (menus, combos, listboxes) to gain convenience of new features adding.
  10746. Various bugs must have been fixed, especially those related to marking, hidden items, mouse etc.
  10747. Now the class is constantly watching for marks etc and can't be confused with outer actions.
  10748. Now it's easier to complete menu filter functionality.
  10749. Bugs are expected and even lots of them!
  10750.  
  10751. 2. Fixes in apiGetFinalPathNameByHandle() and its usage.
  10752.  
  10753. 3. debug couldn't be built.
  10754.  
  10755. svs 04.12.2009 19:09:57 +0300 - build 1265
  10756.  
  10757. 1. Inspired by "GKTem" sources (exactly, http://msdn.microsoft.com/en-us/library/aa376389%28VS.85%29.aspx) and "vkh" (adjustable caption), console header ending definition algorithm is added (earlier, the caption was hardcoded: " - Far").
  10758. a) addition to caption is a template;
  10759. b) addition is taken by Far from registry key Interface/TitleAddons:REG_SZ, " - Far%Ver%Admin" by default;
  10760. c) template characters understood by Far:
  10761. 1. %Ver - Far Manager current version, for example, " 2.0" - Far adds a space before version string;
  10762. 2. %Build - Far Manager current build, for example, " 1259" - Far adds a space before build string;
  10763. 3. %Admin - in Vista and later it is replaced with LNG file value, " (Administrator)" by default - Far does NOT add a space.
  10764.  
  10765. Developing this topic, we can add... "%Debug" template for maniacs ;-)
  10766.  
  10767. 2. SetFarTitle() function is moved from interf.?pp into ConsoleTitle class.
  10768.  
  10769. 3. Macro: addition in #1 "IsUserAdmin" - 1 or 0 - the name of the user whom Far is started under.
  10770. Here's misunderstanding (speaking about myself :-)... now there's IsUserAdmin and "(Administrator)" isn't displayed (for OS older than Vista)
  10771. It's possible that IsUserAdmin for these OSes must be 0, even if the current user is administrator.
  10772. So far, it is done exactly this way (see constitle.cpp::GetFarTitleAddons())
  10773.  
  10774. chupakabra 04.12.2009 17:32:00 +0200 - build 1264
  10775.  
  10776. 1. GetFinalPathNameByHandle() is wrapped into __try __except to prevent crash under Windows 7 + Ext2FSD.
  10777.  
  10778. t-rex 04.12.2009 10:53:20 +0200 - build 1263
  10779.  
  10780. 1. from Igor Braginskiy: for CD/CHDIR we "process" (ignore) /D,
  10781. the volume is changed anyway, therewith some people type this option in aliases or habitually.
  10782.  
  10783. 2. from Igor Braginskiy: excessive redraw in launcher.
  10784.  
  10785. 3. Security in EXE headers checking.
  10786.  
  10787. 4. Possible AV in "echo." processing.
  10788.  
  10789. 5. Some makeup.
  10790.  
  10791. chupakabra 04.12.2009 05:47:00 +0200 - build 1262
  10792.  
  10793. 1. Mantis#0000975: Filename column is displayed last in search results dialog.
  10794.  
  10795. 2. Horizontal VMenu scroll is fixed.
  10796.  
  10797. t-rex 02.12.2009 23:04:07 +0200 - build 1261
  10798.  
  10799. 1. Warning and near.
  10800.  
  10801. t-rex 02.12.2009 22:03:01 +0200 - build 1260
  10802.  
  10803. 1. Overdone a little in PathCanHoldRegularFile().
  10804.  
  10805. 2. Removed a couple of duplicate functions.
  10806.  
  10807. 3. Some makeup by the way.
  10808.  
  10809. zg 02.12.2009 00:10:59 +0200 - build 1259
  10810.  
  10811. 1. 1258 is being continued. Now the ôPackedö column contains real values.
  10812.  
  10813. zg 01.12.2009 23:21:54 +0200 - build 1258
  10814.  
  10815. 1. Mantis#0000916: Garbage in Detailed mode, ôPackedö column.
  10816.  
  10817. t-rex 01.12.2009 20:37:20 +0200 - build 1257
  10818.  
  10819. 1. Some style editing.
  10820.  
  10821. chupakabra 01.12.2009 08:08:00 +0200 - build 1256
  10822.  
  10823. 1. Mantis#0001104: When displaying a tree, no attempt is made to define the real root of the volume, instead the one contained in current path is used.
  10824.  
  10825. t-rex 01.12.2009 03:13:36 +0200 - build 1255
  10826.  
  10827. 1. All changes in code are related to style. Got sick of tabs and spaces mixed together etc.
  10828. The sources are processed in this way:
  10829. AStyle --style=ansi --indent=tab=4 --brackets=break --indent-classes --indent-switches --indent-namespaces --indent-preprocessor --break-blocks --delete-empty-lines --unpad-paren --keep-one-line-statements --keep-one-line-blocks
  10830. This is not ideal, but much better than before.
  10831.  
  10832. Thus, don't forget to use tabs in your code. The tab width is 4 spaces.
  10833. We have to pick a time for writing a sort of document on coding style.
  10834.  
  10835. t-rex 01.12.2009 00:37:09 +0200 - build 1254
  10836.  
  10837. 1. Some more cleaning in global.hpp.
  10838.  
  10839. 2. Using string.Clear() everywhere instead of string.SetLength(0) and string=L"" because this is faster and nicer.
  10840.  
  10841. 3. A couple of tiny optimizations in UnicodeString.
  10842.  
  10843. t-rex 30.11.2009 20:20:11 +0200 - build 1253
  10844.  
  10845. 1. After 1246-3, when closing a dialog DN_EDITCHANGE had started to be sent to all edits, which caused various bugs including Mantis#1192: Crash on filter creation.
  10846.  
  10847. 2. Mantis#1190: When using environment variables in edit fields the history is added both the variable and its value.
  10848. The bug is old but it has been revealed thanks to 1246-3.
  10849.  
  10850. svs 30.11.2009 12:10:30 +0300 - build 1252
  10851.  
  10852. 1. syslog.cpp breakdown...
  10853.  
  10854. t-rex 30.11.2009 09:23:05 +0200 - build 1251
  10855.  
  10856. 1. An accidental FarMenu.ini breakdown in 1248.
  10857.  
  10858. t-rex 29.11.2009 23:04:39 +0200 - build 1250
  10859.  
  10860. 1. Some more cleaning in global.hpp.
  10861.  
  10862. t-rex 29.11.2009 21:45:45 +0200 - build 1249
  10863.  
  10864. 1. clipboard service code correction.
  10865.  
  10866. t-rex 29.11.2009 20:33:41 +0200 - build 1248
  10867.  
  10868. 1. Mantis#1188: Slow (25 sec) network share entering from Network plugin.
  10869. The share list had been scanned for descript.ion file.
  10870.  
  10871. 2. Similar fix for usermenu. When F2 is pressed in share list then we don't look for FarMenu.ini there.
  10872.  
  10873. 3. Various changes.
  10874.  
  10875. drkns 29.11.2009 19:31:17 +0200 - build 1247
  10876.  
  10877. 1. As it proved to be, the editor had inserted signature in Unicode files independently of save dialog checkbox state.
  10878. And, what's interesting, long enough already.
  10879. It is also the cause of Mantis#0001079: [x] Add signature (BOM) option is always on.
  10880.  
  10881. 2. A couple of specifications in UTF-8 hex view "blocker".
  10882.  
  10883. 3. #2 of build 1237 is rolled back. This dialog is annoying indeed.
  10884.  
  10885. 4. When saving with ShiftF2, current position in ôCode pageö combobox had been taken somewhere from astral.
  10886.  
  10887. t-rex 29.11.2009 02:23:03 +0200
  10888.  
  10889. 1. NO_RELEASE_PDB flag for make.
  10890.  
  10891. t-rex 28.11.2009 21:57:13 +0200
  10892.  
  10893. 1. Added /Oy- in release to ôhelpö fexcept.
  10894.  
  10895. drkns 28.11.2009 21:55:50 +0200
  10896.  
  10897. 1. Projects sync with makefile.
  10898.  
  10899. t-rex 28.11.2009 15:11:26 +0200 - build 1245
  10900.  
  10901. 1. Some tiny optimizations in strmix.cpp concerning UnicodeString.
  10902.  
  10903. 2. gcc warnings.
  10904.  
  10905. drkns 28.11.2009 13:10:50 +0200
  10906.  
  10907. 1. Some more editions in makefile_vc: VC2008 is now default, target platform autodetection.
  10908.  
  10909. drkns 28.11.2009 02:53:22 +0200 - build 1244
  10910.  
  10911. 1. Various decorations in makefile_vc and, as a consequence, in code too.
  10912.  
  10913. t-rex 28.11.2009 02:18:44 +0200 - build 1243
  10914.  
  10915. 1. There has been some hurry in 1242, rolling back.
  10916.  
  10917. t-rex 28.11.2009 01:08:27 +0200 - build 1242
  10918.  
  10919. 1. Removed string length limitation in MenuFileToReg().
  10920.  
  10921. t-rex 28.11.2009 00:35:30 +0200 - build 1241
  10922.  
  10923. 1. Mantis#1180: Cannot update file description.
  10924. Descriptions in paths ending with dots etc.
  10925.  
  10926. chupakabra 27.11.2009 23:14:00 +0200 - build 1240
  10927.  
  10928. 1. Crash after commands like cd \\MAXW7.
  10929.  
  10930. t-rex 27.11.2009 21:52:52 +0200 - build 1239
  10931.  
  10932. 1. A minor change, just in case.
  10933.  
  10934. chupakabra 26.11.2009 18:35:00 +0200 - build 1238
  10935.  
  10936. 1. Mantis#0001176: RO attribute is not cleared when copying files from CD.
  10937.  
  10938. drkns 26.11.2009 11:10:35 +0200 - build 1237
  10939.  
  10940. 1. Mantis#0001175: Ctrl-Enter is processed incorrectly when doing autocompletion.
  10941.  
  10942. 2. When file is saved in editor with F2, if file hasn't existed before, the save dialog is displayed.
  10943.  
  10944. 3. Project & solution for Visual Studio 2010.
  10945.  
  10946. drkns 26.11.2009 02:15:04 +0200 - build 1236
  10947.  
  10948. 1. Editor is provided with optional TAB symbols and spaces visualization.
  10949. The settings are available for:
  10950. - interface - "[ ] Show white space";
  10951. - API - EOPT_SHOWWHITESPACE, ESPT_SHOWWHITESPACE;
  10952. - macros - Editor.Set(20,State).
  10953.  
  10954. drkns 25.11.2009 15:56:12 +0200 - build 1235
  10955.  
  10956. 1. Corrections in common deletion indicator.
  10957.  
  10958. t-rex 23.11.2009 20:26:00 +0200 - build 1234
  10959.  
  10960. 1. Experiment with the substitution of the whole line instead of autocompletion only, proved to be unsuccessful.
  10961.  
  10962. 2. Merged a couple of if's into one in ScreenBuf::Flush().
  10963.  
  10964. t-rex 22.11.2009 22:37:12 +0200 - build 1233
  10965.  
  10966. 1. More "optimized" functioning of Opt.ClearType.
  10967.  
  10968. drkns 22.11.2009 17:10:02 +0200 - build 1232
  10969.  
  10970. 1. Mantis#0001172: Access rights inheritance error when moving with the use of relative paths.
  10971.  
  10972. drkns 22.11.2009 09:18:07 +0200 - build 1231
  10973.  
  10974. 1. The specification of previous build.
  10975.  
  10976. drkns 22.11.2009 00:37:00 +0200 - build 1230
  10977.  
  10978. 1. Command line is provided with autocompletion like in dialogs.
  10979.  
  10980. 2. Added command line settings dialog.
  10981.  
  10982. 3. Options restyling: the beginning. Some options will be reset and have to be set again manually.
  10983.  
  10984. t-rex 21.11.2009 19:10:19 +0200 - build 1229
  10985.  
  10986. 1. Locked filter mode - CtrlAltL.
  10987. When the filter is locked, all keypresses except CtrlAltL and CtrlAltF go to menu's processing.
  10988.  
  10989. 2. Bug with cursor position in filter.
  10990.  
  10991. t-rex 21.11.2009 18:17:15 +0200 - build 1228
  10992.  
  10993. 1. Filter must process the keypresses before all others.
  10994.  
  10995. t-rex 21.11.2009 17:16:09 +0200 - build 1227
  10996.  
  10997. 1. Experimental feature, embedded filter in all menu, combos and listboxes.
  10998. The filter is switched on/off with CtrlAltF.
  10999. When it is on, it catches all characters>=32 and backspace.
  11000. With active filter, various bugs are guaranteed.
  11001.  
  11002. t-rex 21.11.2009 14:06:52 +0200 - build 1226
  11003.  
  11004. 1. Some more optimization and corrections in history.
  11005.  
  11006. svs 21.11.2009 11:52:06 +0300 - build 1225
  11007.  
  11008. 1. Macro: Specification in Editor.Pos() regarding to negative values...
  11009.  
  11010. 2. some text formatting :-)
  11011.  
  11012. t-rex 21.11.2009 01:59:20 +0200 - build 1224
  11013.  
  11014. 1. Autocompletion in dialogs is back.
  11015.  
  11016. chupakabra 20.11.2009 21:01:00 +0200 - build 1223
  11017.  
  11018. 1. Mantis#0001145: FAR crash when changing search result window size with Alt+F9.
  11019.  
  11020. chupakabra 20.11.2009 20:23:00 +0200 - build 1222
  11021.  
  11022. 1. Protection from recursive symlinks is rewritten.
  11023. FileIndex from GetFileInformationByHandle() isn't used anymore, because any buggy driver can write anything there, thus again there will be the situation when "explorer does copy and Far doesn't".
  11024. Instead, the comparison of paths obtained with ConvertNameToReal() is used.
  11025.  
  11026. 2. Added bool DeleteEndSlash(wchar_t*, bool).
  11027.  
  11028. 3. Added Object* TPointerArray::lastItem().
  11029.  
  11030. drkns 20.11.2009 20:13:22 +0200 - build 1221
  11031.  
  11032. 1. Malfunction of "wipe all" button when deleting files.
  11033.  
  11034. drkns 20.11.2009 15:01:43 +0200 - build 1220
  11035.  
  11036. 1. Continued 1219 - ShiftDecimal/NumDel.
  11037.  
  11038. zg 20.11.2009 14:06:57 +0200 - build 1219
  11039.  
  11040. 1. Forum: when NumLock is off, shift+numpad arrow keys act as arrows.
  11041.  
  11042. drkns 20.11.2009 13:35:56 +0200 - build 1218
  11043.  
  11044. 1. Options-Interface settings-[ ] Show total delete progress indicator.
  11045. FarInterfaceSettings->FIS_SHOWTOTALDELPROGRESSINDICATOR
  11046.  
  11047. t-rex 20.11.2009 12:42:59 +0200 - build 1217
  11048.  
  11049. 1. Yet another ancient bug in descriptions.
  11050.  
  11051. t-rex 20.11.2009 03:37:16 +0200 - build 1216
  11052.  
  11053. 1. Some more refactoring, fixed a few new bugs and a couple of old ones.
  11054.  
  11055. drkns 19.11.2009 22:44:27 +0200 - build 1214
  11056.  
  11057. 1. From forum: "Incorrect functioning of attributes dialog".
  11058.  
  11059. t-rex 19.11.2009 13:28:28 +0200 - build 1213
  11060.  
  11061. 1. Faster autofilling of history last item in dialogs.
  11062.  
  11063. chupakabra 18.11.2009 00:20:00 +0200 - build 1212
  11064.  
  11065. 1. Addition to build 1211.
  11066.  
  11067. chupakabra 17.11.2009 23:17:00 +0200 - build 1211
  11068.  
  11069. 1. GetVolumeNameForVolumeMountPointW() invocation in ConvertNameToReal() caused unexpected network activity if network drives were present.
  11070.  
  11071. t-rex 17.11.2009 22:22:04 +0200 - build 1210
  11072.  
  11073. 1. Stubs again, in order to avoid Windows bug which makes the launcher ôstuckö in Win7 telnet session.
  11074.  
  11075. drkns 17.11.2009 00:46:37 +0200 - build 1209
  11076.  
  11077. 1. 1207.1 specification.
  11078.  
  11079. t-rex 17.11.2009 00:07:50 +0200 - build 1208
  11080.  
  11081. 1. Achtung! Initial stage of dialog history reconstruction with purpose of common history class use.
  11082. Registry storage format has changed!
  11083. Whole current dialog history (old format) is ignored!!!!!!!
  11084. Autocompletion is not working so far.
  11085. Old dialog history in [HKEY_CURRENT_USER\Software\Far2\SavedDialogHistory] can be deleted (just to keep things clean).
  11086.  
  11087. drkns 16.11.2009 17:57:38 +0200 - build 1207
  11088.  
  11089. 1. 'Junction' to 'Volume' replacement didn't work always for mount points.
  11090.  
  11091. 3. Mantis#0001140: At win7, taskbar progress does not stop when the search is stopped by pressing [panel].
  11092.  
  11093. t-rex 16.11.2009 15:47:38 +0200 - build 1206
  11094.  
  11095. 1. Unicode in descriptions:
  11096. a. If description file has BOM then it is read in appropriate encoding.
  11097. b. If there's no BOM then it's assumed that description file is OEM or ANSI according to new setting "ANSI by default".
  11098. c. Description file is saved in either:
  11099. - OEM or ANSI, according to "ANSI by default".
  11100. - UTF8 + BOM if another new setting "Save in UTF8" is on.
  11101.  
  11102. Todo:
  11103. - Invent clearer names of these settings and write the help.
  11104. - Think whether it has a sense to save description files with same encoding which they had initially, if BOM had been present.
  11105.  
  11106. drkns + t-rex 15.11.2009 22:40:40 +0200 - build 1205
  11107.  
  11108. 1. Again: stubs intended to hide Windows bug which leads to scroll bars appear after maximized console window focus is lost (Win+L problem, well known since XP time, and similar miracles in Win7).
  11109.  
  11110. chupakabra 08.11.2009 09:09:00 +0200 - build 1204
  11111.  
  11112. 1. From Maximus: Mantis#0001163: Description is not displayed, although `Descript.ion' contains it.
  11113.  
  11114. 2. Ineffective code in VMenu.
  11115.  
  11116. chupakabra 08.11.2009 08:08:00 +0200 - build 1203
  11117.  
  11118. 1. VMenu::Show() didn't consider submenus.
  11119.  
  11120. garry 06.11.2009 11:18:34 +0300 - build 1202
  11121.  
  11122. 1. Problems with copy through WebDav: http://forum.farmanager.com/viewtopic.php?f=9&t=4626
  11123. (modified patch from Yegor).
  11124.  
  11125. chupakabra 05.11.2009 06:32:00 +0200 - build 1201
  11126.  
  11127. 1. Mantis#0001104: Crash after attempt to open tree panel for mount point.
  11128.  
  11129. t-rex 04.11.2009 17:16:24 +0200 - build 1200 (UTF-16 LE :)
  11130.  
  11131. 1. !?$<history>$<title>?<init>! - the name of the history contained garbage instead of `history'.
  11132.  
  11133. t-rex 04.11.2009 13:17:09 +0200 - build 1199
  11134.  
  11135. 1. Changes in ESPT_GETWORDDIV and EditorSetParameter.
  11136. It seems it has been the last place in API with fixed buffer size for data retrieval.
  11137. Now EditorSetParameter has the Size field (also, cParam renamed to wszParam), ESPT_GETWORDDIV requires Size equal to wszParam buffer size in characters;
  11138. when Size or wszParam is set to 0, EditorControl returns sufficient buffer size in characters.
  11139.  
  11140. Plugins which use ESPT_GETWORDDIV have to be fixed.
  11141.  
  11142. chupakabra 04.11.2009 13:09:00 +0200 - build 1198
  11143.  
  11144. 1. Mantis#0001158: AltF2 disk menu of wrong size at 80x25 window (broken in 1190).
  11145.  
  11146. t-rex 04.11.2009 00:46:54 +0200 - build 1197
  11147.  
  11148. 1. Let's torture UnicodeString a little bit more.
  11149.  
  11150. 2. Warning in gcc.
  11151.  
  11152. t-rex 03.11.2009 13:50:19 +0200 - build 1196
  11153.  
  11154. 1. F9->Options - incorrect work.
  11155.  
  11156. t-rex 03.11.2009 13:10:37 +0200 - build 1195
  11157.  
  11158. 1. More of Mantis#956: some plugins are marked with "A" in list. The help does not explain this.
  11159.  
  11160. 2. Wrong help topic for plugins menu is fixed.
  11161.  
  11162. t-rex 02.11.2009 15:12:55 +0200 - build 1194
  11163.  
  11164. 1. Mantis#1136: Far crashes on big amount of selected files when !& is used.
  11165. Now metacharacters are processed with dynamic buffers only.
  11166. It is checked whether metacharacters are sane, especially the complex ones which show dialogs.
  11167.  
  11168. svs 02.11.2009 15:03:32 +0300 - build 1193
  11169.  
  11170. 1. Mantis#0001155: trim() does not cut \r and \n at the beginning of line
  11171.  
  11172. 2. User name in InfoPanel can be configured (NameUserPrincipal by default).
  11173. Added info panel settings dialog.
  11174.  
  11175. HELP NEEDED for lng and hlf: a correct and clear description for each format.
  11176.  
  11177. zg 01.11.2009 16:52:52 +0200 - build 1192
  11178.  
  11179. 1. Mantis#0001144: Ctrl-G processes each selected file several times.
  11180.  
  11181. t-rex 31.10.2009 20:39:13 +0200 - build 1191
  11182.  
  11183. 1. Mantis#1148: ANSI plugins cause annoying lags in editor.
  11184. In ProcessEditor*, ProcessViewer* and ProcessDialog* calls we'll use common CurrentDirectoryGuard for the whole cycle of calls, and only if there are ANSI plugins with these functions exported.
  11185. In case of ProcessDialogEvent and ProcessEditorInput this won't help (because they are called too often), thus, it's recommended to avoid using plugins which export these functions.
  11186. Need some ideas about CurrentDirectoryGuard replacement.
  11187.  
  11188. chupakabra 30.10.2009 22:30:00 +0200 - build 1190
  11189.  
  11190. 1. Mantis#0001083: Incorrect VMenu redraw.
  11191.  
  11192. yjh 30.10.2009 03:07:09 +0300 - build 1189
  11193.  
  11194. 1. Junction points are marked 'Volume' in status line, instead of 'Junction',
  11195. this is more descriptive when links are displayed side by side with junction points
  11196.  
  11197. svs 29.10.2009 16:49:25 +0300 - build 1188
  11198.  
  11199. 1. Mantis#0001142: Smoooth horizontal scroll in editor
  11200. A new macro function is added "N=Editor.Pos(Op,What[,Where])" - Get/Set editor position.
  11201.  
  11202. Op: 0 - get, 1 - set
  11203. What:
  11204. 1 - CurLine
  11205. 2 - CurPos
  11206. 3 - CurTabPos
  11207. 4 - TopScreenLine
  11208. 5 - LeftPos
  11209. 6 - Overtype
  11210.  
  11211. Return: -1 - "don't know",
  11212. for "get": current value,
  11213. for "set": "ok" (1) or "fail" (0)
  11214.  
  11215. Example (when ScrollLock is on, Left/Right perform scroll)
  11216.  
  11217. REGEDIT4
  11218.  
  11219. [HKEY_CURRENT_USER\Software\far2\KeyMacros\Editor\Right]
  11220. "Sequence"="$if(FLock(2,-1) == 1) Editor.Pos(1,5,Editor.Pos(0,5)+1); $else Right $end"
  11221. "DisableOutput"=dword:00000001
  11222.  
  11223. [HKEY_CURRENT_USER\Software\far2\KeyMacros\Editor\Left]
  11224. "Sequence"="$if(FLock(2,-1) == 1) Editor.Pos(1,5,Editor.Pos(0,5)-1); $else Left $end"
  11225. "DisableOutput"=dword:00000001
  11226.  
  11227. 2. some space to tab replacements
  11228.  
  11229. t-rex 27.10.2009 18:04:07 +0200 - build 1187
  11230.  
  11231. 1. Finished Mantis#1087.
  11232.  
  11233. t-rex 27.10.2009 16:45:19 +0200 - 1186
  11234.  
  11235. 1. Mantis#1087: FCTL_SETPANELDIR does not return error (0) for nonexisting path.
  11236.  
  11237. 2. CodeBlocks project update from Morten MacFly.
  11238.  
  11239. zg 27.10.2009 14:29:01 +0200 - build 1185
  11240.  
  11241. 1. Editor status line displayed "Col" and current line at switched places.
  11242.  
  11243. t-rex 26.10.2009 15:17:44 +0200
  11244.  
  11245. 1. Now makefile_vc knows about VC10.
  11246.  
  11247. t-rex 26.10.2009 13:42:02 +0200
  11248.  
  11249. 1. Removed reminder about (?{name}pattern) from help because we don't support it.
  11250.  
  11251. 2. Added help on "ClearType friendly redraw".
  11252.  
  11253. yjh 26.10.2009 10:57:04 +0300 - build 1184
  11254.  
  11255. 1. Error in plugin.hpp - plugin sources can be pure C, not only .cpp.
  11256.  
  11257. chupakabra 26.10.2009 06:02:00 +0200 - build 1183
  11258.  
  11259. 1. Fixed processing of an empty input line in FSF.ConvertPath() and FSF.GetPathRoot().
  11260.  
  11261. t-rex 26.10.2009 00:45:52 +0200 - build 1182
  11262.  
  11263. 1. New interface setting: [ ] ClearType friendly redraw (can be slow)
  11264. It is off by default. It must solve all problems with Cleartype, and
  11265. maybe with Hebrew characters (in case of monotype font, of course).
  11266.  
  11267. t-rex 24.10.2009 23:39:28 +0200 - build 1181
  11268.  
  11269. 1. Somebody has forgot to set FSF.GetCurrentDirectory :)
  11270.  
  11271. drkns 24.10.2009 20:23:01 +0200 - build 1180
  11272.  
  11273. 1. As so called "current directory" doesn't always match the folder shown currently on panel, a specification is introduced:
  11274. - added FSF.GetCurrentDirectory that returns inner Far's "current directory";
  11275. - FCTL_GETCURRENTDIRECTORY is renamed to FCTL_GETPANELDIR to match the facts.
  11276.  
  11277. Plugins are not broken, but it would be better to review them and change FCTL_GETCURRENTDIRECTORY to FSF.GetCurrentDirectory if required.
  11278.  
  11279. drkns 23.10.2009 22:51:44 +0200 - build 1179
  11280.  
  11281. 1. Mantis#0001137: Deletion of directories with links.
  11282.  
  11283. t-rex 23.10.2009 12:34:50 +0200 - build 1178
  11284.  
  11285. 1. The stack size is restored, because the bug has been located in TmpPanel.
  11286.  
  11287. chupakabra 22.10.2009 22:16:00 +0200 - build 1177
  11288.  
  11289. 1. Stack size has increased (to prevent tmppanel crash after MAX_PATH to NT_MAX_PATH change)
  11290.  
  11291. drkns 21.10.2009 22:31:01 +0200 - build 1176
  11292.  
  11293. 1. Mantis#0001131: Excessive subfolders scan in symlink deletion
  11294.  
  11295. 2. Bug in folders rename by mask.
  11296.  
  11297. svs 21.10.2009 18:08:30 +0300 - build 1175
  11298.  
  11299. 1. Missing space between Fn and item in UserMenu.
  11300.  
  11301. drkns 20.10.2009 20:35:25 +0200 - build 1174
  11302.  
  11303. 1. The progress bar is shown while deleting.
  11304.  
  11305. 2. Mantis#0001112: Copy/move conflict (folder or file)
  11306.  
  11307. 3. If access to folder was denied, attempt to enter the folder returned wrong error code.
  11308.  
  11309. 4. ".." is not shown at the root of UNC-path.
  11310.  
  11311. 5. printf, type correction etc.
  11312.  
  11313. 6. Owner wasn't displayed for paths deeper than MAX_PATH.
  11314. In future, when passing file objects names into Windows API functions, use NTPath class, it appends properly formatted "curdir" to object.
  11315.  
  11316. 7. Folder encryprion didn't work.
  11317.  
  11318. svs 20.10.2009 17:03:59 +0300 - build 1173
  11319.  
  11320. 1. `Owner' is not shown in panels (Ctrl-8)
  11321. Added "curdir" to object which is being tested.
  11322.  
  11323. svs 19.10.2009 11:41:50 +0300 - build 1172
  11324.  
  11325. 1. Mantis#0001030: Unexpected change of attributes in file FARMENU.INI
  11326.  
  11327. chupakabra 18.10.2009 20:45:00 +0200 - build 1171
  11328.  
  11329. 1. Fixed the recursive symlinks check mechanism.
  11330.  
  11331. 2. ScanTree must not enter symlinks while deleting.
  11332.  
  11333. 3. Minor changes in ConvertNameToReal().
  11334.  
  11335. drkns 16.10.2009 06:24:11 +0200 - build 1170
  11336.  
  11337. 1. Forgotten debug code :)
  11338.  
  11339. drkns 16.10.2009 00:08:51 +0200 - build 1169
  11340.  
  11341. 1. Fix for 1167.
  11342.  
  11343. chupakabra 15.10.2009 23:47:00 +0200 - build 1168
  11344.  
  11345. 1. Mantis#0001094: Problem with deleting directories over the network.
  11346.  
  11347. drkns 15.10.2009 19:12:29 +0200 - build 1167
  11348.  
  11349. 1. Mantis#0001113: Filling the screen with '?' symbols.
  11350.  
  11351. 2. Continue `printf' removal from problematic places.
  11352.  
  11353. drkns 15.10.2009 00:46:56 +0200 - build 1166
  11354.  
  11355. 1. TechInfo #10, cheater options [Alt]EditorKey, [Alt]CmdLineKey, [Alt]DialogKey, [Alt]FastFindKey are removed .
  11356.  
  11357. Hotkeys for XLat are now assigned with fair macros, for example:
  11358. -------------------------------------------------------------
  11359. REGEDIT4
  11360.  
  11361. [HKEY_CURRENT_USER\Software\Far2\KeyMacros\Common\CtrlShiftX]
  11362. "Sequence"="$XLat"
  11363. -------------------------------------------------------------
  11364. AltR.reg, Apps.reg, CtrlR.reg, CtrlShiftX.reg in addons\XLat\Russian are rewritten with the use of macros.
  11365.  
  11366. drkns 14.10.2009 19:25:48 +0200 - build 1165
  11367.  
  11368. 1. Warnings (level 4).
  11369.  
  11370. 2. VirtualFindData for ANSI plugins.
  11371.  
  11372. drkns 13.10.2009 22:34:34 +0200 - build 1164
  11373.  
  11374. 1. Warnings.
  11375.  
  11376. drkns 13.10.2009 22:26:59 +0200 - build 1163
  11377.  
  11378. 1. Mantis#0000789: On Viewer open, panels are seen through text
  11379. Mantis#0000978: Some unprintable characters "eat" text when viewing in UTF-16
  11380.  
  11381. The cause is 0xffff (WEOF), *printf doesn't handle it and never will, thus a replacement is written: classes FormatString and FormatScreen.
  11382. They are capable of width, precision, align, strings and integers so far.
  11383. For viewer/editor this must be enough, other things will be done in future.
  11384.  
  11385. 2. Sometimes commands like "cd driveletter:" didn't work.
  11386.  
  11387. chupakabra 13.10.2009 03:00:00 +0200 - build 1162
  11388.  
  11389. 1. Addition to build 1161.
  11390.  
  11391. chupakabra 13.10.2009 02:14:00 +0200 - build 1161
  11392.  
  11393. 1. Fixed the behaviour of ConvertNameToReal() on volumes with no unique identifier.
  11394.  
  11395. drkns 11.10.2009 21:50:10 +0200 - build 1160
  11396.  
  11397. 1. PutFilesW now looks this way:
  11398. int WINAPI PutFilesW(
  11399.      HANDLE hPlugin,
  11400.      struct PluginPanelItem *PanelItem,
  11401.      int ItemsNumber,
  11402.      int Move,
  11403.      const wchar_t *SrcPath,
  11404.      int OpMode
  11405.    );
  11406. where SrcPath is the path to source where we get files.
  11407.  
  11408. Plugins which use PutFilesW have been broken as usual :)
  11409.  
  11410. 2. Mantis#0001090: Panel with forward slashes becomes "nonfunctional".
  11411.  
  11412. svs 07.10.2009 17:30:36 +0300 - build 1159
  11413.  
  11414. 1. Mantis#0001099: Find out if there is an element without a hotkey
  11415. N=checkhotkey(S[,N1])
  11416. return value:
  11417. -1 - wrong area
  11418. 0 - no elements
  11419. >0 - position of found element
  11420.  
  11421. Parameter #1 - position to start search from.
  11422. If S is an empty string, then the function returns -1, 0 or the index of position with missing hotkey.
  11423.  
  11424. svs 06.10.2009 20:51:50 +0300 - build 1158
  11425.  
  11426. 1. Macro: CheckHotkey() works in "Dialog" area.
  11427. If current element is ListBox or opened Combobox (opened History), then CheckHotkey() works with it.
  11428.  
  11429. chupakabra 05.10.2009 20:49:00 +0200 - build 1157
  11430.  
  11431. 1. Current directory updating for plugins with OPIF_REALNAMES.
  11432.  
  11433. svs 05.10.2009 17:12:13 +0300 - build 1156
  11434.  
  11435. 1. Mantis#0000956: some plugins are marked with letter "A"; nevertheless, help doesn't tell a word about this.
  11436. from igor_yudincev.
  11437.  
  11438. 2. Mantis#0001095: `Title' state (current object's header) is empty when called from panels
  11439.  
  11440. 3. Mantis#0001088: Paths in Far launch command line vs slash (\)
  11441.  
  11442. chupakabra 05.10.2009 12:36:00 +0200 - build 1155
  11443.  
  11444. 1. Fixed an issue with ConvertNameToReal() at dynamic volumes.
  11445.  
  11446. drkns 30.09.2009 20:43:48 +0200 - build 1154
  11447.  
  11448. 1. 1153.1 specification for the case of empty disk root directory.
  11449.  
  11450. drkns 29.09.2009 18:07:44 +0200 - build 1153
  11451.  
  11452. 1. apiSetCurrentDirectory always returned TRUE, even if target directory didn't exist.
  11453. As a consequence, there was a possibility to enter nonexisting folders.
  11454. Also, Mantis#0001078: FCTL_SETPANELDIR succeeds for nonexisting path erroneously.
  11455.  
  11456. 2. If titlebar is off in editor/viewer, there's no need to draw a clock.
  11457.  
  11458. 3. As hex-view in UTF8 doesn't work anyway, prohibit this combination at all, to stop the flood of boring bugreports.
  11459.  
  11460. 4. Some make-up: pass '*' into FindFirstFile, instead of '*.*'.
  11461.  
  11462. svs 29.09.2009 11:50:38 +0300 - build 1152
  11463.  
  11464. 1. Mantis#0001064: Error in string handling
  11465. Next specification of operations:
  11466. 1. string + string = string
  11467. 2. string + num = string
  11468. 3. num + string = string
  11469. 4. strnum + string = string
  11470. 5. string + strnum = string
  11471. 6. num + strnum = num
  11472. 7. strnum + num = num
  11473.  
  11474. i.e. (forcing conversion to string):
  11475. msgbox("1" + 0) ==> 1
  11476. msgbox(1 + "2") ==> 3
  11477. msgbox("foo1" + 0) ==> "foo10"
  11478. msgbox(string(1) + "2") ==> "12"
  11479. %i=1; msgbox("0" + string(%i)) ==> "01"
  11480. %i=1; msgbox(int("012ag") + %i) ==> 13
  11481. %i=1; msgbox(string(int("012ag")) + %i) ==> 13
  11482. %i=1; msgbox(string(int("012ag")) + string(%i)) ==> "121"
  11483.  
  11484. zg 28.09.2009 20:33:47 +0200 - build 1151
  11485.  
  11486. 1. Edit::WordDiv was set to the value Editor::WordDiv::m_pData::m_pData.
  11487. If plugin changed editor's WordDiv to greater value, the memory
  11488. was reallocated, and Edit::WordDiv pointed to nothing.
  11489.  
  11490. 2. In editor, when the clock was off and codepage was non-unicode, the parentheses in status string were cut.
  11491.  
  11492. 3. gcc warnings.
  11493.  
  11494. drkns 28.09.2009 20:02:46 +0200 - build 1150
  11495.  
  11496. 1. From Tim Sobolev: Mantis#0001074: It was impossible to create/edit/view file with name started with 2 or more '.'
  11497.  
  11498. svs 28.09.2009 20:59:21 +0300 - build 1149
  11499.  
  11500. 1. Mantis#0001070: XLat: keyboard layout switching when more than 2 layouts are available
  11501. Added [HKEY_CURRENT_USER\Software\Far2\XLat]"Layouts" - the string that contains enumeration of HKL of layouts to be "rolled", th delimiter is ';'
  11502. For ex., "Layouts"="04090409;04190419" (or "Layouts"="0409;0419")
  11503. If less than two are mentioned, then this behaviour is switched off, and layouts are switched like before.
  11504. Far reads first 10 values for "Layouts", others are ignored (I think this would be enough :-).
  11505.  
  11506. Also, the comment on rules is added (to stop looking for it :-)
  11507.  
  11508. 2. Mantis#0001064: Error in string handling
  11509. Macro: Here, if there's "string1 operation string2", then the result is string (for '+' it is concatenation, for others it is "string1")
  11510.  
  11511. 3. Macro: Five indices added for Editor.Set() (first parameter):
  11512. 15: Show scrollbar
  11513. 16: Allow editing files opened for writing
  11514. 17: Select found (in search)
  11515. 18: Regular expressions (in search)
  11516. 19: Pick up the word (in search)
  11517.  
  11518. drkns 27.09.2009 22:50:36 +0200 - build 1148
  11519.  
  11520. 1. Sometimes Far could crash if the console window was maximized at start.
  11521.  
  11522. 2. FSF.ConvertNameToReal doesn't exist anymore. However, there is FSF.ConvertPath(CONVERTPATHMODES Mode,const wchar_t *Src, wchar_t *Dest, int DestSize)
  11523. In Mode=CPM_REAL it works like ConvertNameToReal;
  11524. In Mode=CPM_FULL it works like ConvertNameToFull.
  11525.  
  11526. Achtung: use of GetFullPathNameW for relative to absolute path conversion is wrong after build #1145, use ConvertPath(CPM_FULL, ...) instead.
  11527.  
  11528. 3. gettable.?pp -> codepage.?pp
  11529.  
  11530. garry 27.09.2009 22:54:30 +0300 - build 1147
  11531.  
  11532. 1. Mantis#0001017 A more common solution is done, i.e. codepage support is checked in both editor and viewer, and not only at autodetection, but also at codepage retrieval from cache;
  11533.  
  11534. 2. A small refactoring connected with recode tables: function names and replacing Table -> CodePage;
  11535.  
  11536. 3. From now, const UnicodeString& UnicodeString::SetData(const UnicodeString &strCopy) does not crash Far when provided with NULL;
  11537.  
  11538. 4. TechInfo #80 (See build #1019).
  11539.  
  11540. drkns 27.09.2009 08:56:45 +0200 - build 1146
  11541.  
  11542. 1. Take into account that if prefix \\?\ is used in paths then Windows' AI which replaces '/' to '\' is switched off, so you have to do it yourself.
  11543.  
  11544. 2. At start, inner strCurrentDirectory is initialized with process' current directory, for those /e and /p to work.
  11545.  
  11546. drkns 27.09.2009 01:05:56 +0200 - build 1145
  11547.  
  11548. 1. From Tim Sobolev: own implementation of ConvertNameToFull.
  11549. GetFullPathName problems must have been fixed now: special names (nul, con etc.), points/spaces at the end of the names etc.
  11550.  
  11551. 2. From now, Far doesn't use SetCurrentDirectory in folder navigation.
  11552. The bonuses follow:
  11553. - walking on folders deeper than MAX_PATH;
  11554. - entering folders with trailing points, spaces and other nightmares;
  11555. - folder opened on panel is not blocked from outer deletion;
  11556. - et cetera.
  11557. Accordingly, bugs are expected to appear. Be careful.
  11558.  
  11559. For OEM plugins, though, the current directory is set before calling their exported functions, for compatibility.
  11560.  
  11561. For Unicode plugins nothing is set.
  11562. Thus, some careless plugins can malfunction somehow.
  11563. It's still not too late to repent and start using FCTL_GETCURRENTDIRECTORY.
  11564.  
  11565. svs 26.09.2009 19:07:24 +0300 - build
  11566.  
  11567. 1. Mantis#0000986: Far 2 API - pascal
  11568. from: max rusov
  11569. PluginW.pas: Added RegExp support
  11570.  
  11571. svs 26.09.2009 19:07:24 +0300 - build
  11572.  
  11573. 1. Mantis#0000986: Far 2 API - pascal
  11574. from: max rusov
  11575. PluginW.pas: Added RegExp support.
  11576.  
  11577. zg 26.09.2009 17:05:26 +0200 - build 1144
  11578.  
  11579. 1. Continue Mantis#0000921: Problems with ECTL_SAVEFILE.
  11580.  
  11581. 2. When `save as` at editor was invoked, the editor and console titles didn't
  11582. show new filename at once.
  11583.  
  11584. zg 26.09.2009 14:24:24 +0200 - build 1143
  11585.  
  11586. 1. Fix of #1136 for non-existing codepages.
  11587.  
  11588. zg 25.09.2009 22:59:27 +0200 - build 1142
  11589.  
  11590. 1. Mantis#0000921: Problems with ECTL_SAVEFILE.
  11591.  
  11592. svs 25.09.2009 18:00:55 +0300 - build 1141
  11593.  
  11594. 1. Mantis#0001068: Two "R" hotkeys in replace dialog.
  11595.  
  11596. 2. Mantis#0001063: List of all user-defined macros is added to built-in help.
  11597.  
  11598. 3. Mantis#0001066: [x] Pick up the word in editor
  11599.  
  11600. 4. Updated Help on RegExp`s.
  11601.  
  11602. zg 25.09.2009 16:25:35 +0200 - build 1140
  11603.  
  11604. 1. At replace with regexps, if parentheses are not found, they are replaced to an empty string.
  11605.  
  11606. zg 24.09.2009 23:52:29 +0200 - build 1139
  11607.  
  11608. 1. f6 in editor and viewer keeps current codepage.
  11609.  
  11610. zg 24.09.2009 23:40:59 +0200 - build 1138
  11611.  
  11612. 1. Now plugins in Viewer/Editor can set codepages.
  11613.  
  11614. zg 24.09.2009 22:19:38 +0200 - build 1137
  11615.  
  11616. 1. In regexp-enabled replace, one can refer from replace string to parentheses in search string: $0-$9,$A-$Z.
  11617. any other sequence $* is replaced with *.
  11618.  
  11619. 2. Replace confirmation dialog displays string actually found, instead of regexp.
  11620.  
  11621. zg 24.09.2009 21:02:09 +0200 - build 1136
  11622.  
  11623. 1. The simplest ESPT_CODEPAGE implementation.
  11624.  
  11625. zg 24.09.2009 19:03:28 +0200 - build 1135
  11626.  
  11627. 1. RegExp API
  11628.  
  11629. RegExpControl(HANDLE hHandle, int Command, LONG_PTR Param)
  11630.  
  11631. Command:
  11632.  
  11633. RECTL_CREATE - hHandle - 0.
  11634. Param - HANDLE*, that receives the regexp HANDLE.
  11635. On error returns FALSE and Param=INVALID_HANDLE_VALUE.
  11636. RECTL_FREE - hHandle - HANDLE returned by RECTL_CREATE.
  11637. RECTL_COMPILE - hHandle - HANDLE returned by RECTL_CREATE.
  11638. Param - pointer to regexp string.
  11639. RECTL_OPTIMIZE - hHandle - HANDLE returned by RECTL_CREATE.
  11640. RECTL_MATCHEX - hHandle - HANDLE returned by RECTL_CREATE.
  11641. Param - pointer to RegExpSearch.
  11642. RegExpSearch:
  11643. Text - string.
  11644. Position - string position.
  11645. Length - length of string.
  11646. Match - parentheses.
  11647. Count - number of parentheses.
  11648. Reserved - must be zero.
  11649. RECTL_SEARCHEX - hHandle - HANDLE returned by RECTL_CREATE.
  11650. Param - pointer to RegExpSearch.
  11651. RECTL_BRACKETSCOUNT - hHandle - HANDLE returned by RECTL_CREATE.
  11652.  
  11653. svs 22.09.2009 21:07:01 +0300 - build 1134
  11654.  
  11655. 1. Macro: Mantis#1064
  11656. msgbox("01") displays "1" in header, instead of "01".
  11657. The rest conforms the specification (see build 1127#6).
  11658.  
  11659. drkns 20.09.2009 23:50:53 +0200 - build 1133
  11660.  
  11661. 1. While copying/moving multiple files, if destination name has no trailing slash and destination itself doesn't exist, then Far shows an additional query, whether destination means folder or file.
  11662.  
  11663. zg 19.09.2009 01:53:37 +0200 - build 1132
  11664.  
  11665. 1. Macros which had been launched by plugin from ProcessSynchroEvent didn't run always.
  11666.  
  11667. chupakabra 17.09.2009 13:24:00 +0200 - build 1131
  11668.  
  11669. 1. An addition to build 1130.
  11670.  
  11671. svs 17.09.2009 12:40:39 +0300 - build 1130
  11672.  
  11673. 1. from Alexey Samlyukov:
  11674. UserMenu draws long submenu captions incorrectly (if they don't fit the screen)
  11675.  
  11676. chupakabra 14.09.2009 19:03:00 +0200 - build 1129
  11677.  
  11678. 1. SELF_TEST(code) macro, intended to automatic code testing. The code is launched when debug version starts.
  11679. Module pathmix is appended with testing procedure for some functions.
  11680.  
  11681. zg 15.09.2009 20:52:39 +0200 - build 1128
  11682.  
  11683. 1. gcc build.
  11684.  
  11685. 2. gcc warnings.
  11686.  
  11687. svs 15.09.2009 20:37:40 +0300 - build 1127
  11688.  
  11689. (lots of formatting - spaces to tabs)
  11690.  
  11691. 1. Macros are loaded after plugins (it is necessary for successive changes in macro engine)
  11692.  
  11693. 2. keys.hpp: KEY_MACRO_U_BASE - place is reserved for Mantis#18 and Mantis#466
  11694.  
  11695. 3. EnumRegValueEx() - added an argument: the type of enumerated value
  11696.  
  11697. 4. Macro: Menu.Value - contains current menu item text as it is displayed on screen (w/o &)
  11698.  
  11699. 5. Macro: added type double
  11700. Was __int64 and wchar_t*, now double is added. Actually, there's nothing to say more, but:
  11701. * fraction part divider is `.' (point);
  11702. * there's no functions like sin, cos, tan, etc. - this is for Mantis#0000466 and Mantis#0000018;
  11703. * the number occupies 8 bytes in memory;
  11704. * registry constants (branch "KeyMacro\Const") with REG_SZ type (according to (2) Far translates them to double on launch) this is lame (maybe it would be smart to store them as REG_BINARY);
  11705. * double-to-string translation follows the format "KeyMacro/CONVFMT:REG_SZ" (default is "%.6g")
  11706.  
  11707. 6. Macro: the specification of "operations".
  11708. Starting from definitions::
  11709. * Int - an integer number;
  11710. * Dbl - a floatiog-point number;
  11711. * StrInt - string, which can be fully translated to Int;
  11712. * StrDbl - string, which can be fully translated to Dbl;
  11713. * Str - any other string, actually, the set of chars.
  11714. According to these definitions, string to number translation and calculation of result takes place where possible. Below are tables showing the results of those operations:
  11715. +         |B.Int    B.Dbl  B.StrInt  B.StrDbl   B.Str
  11716. ----------+------+--------+---------+----------+------
  11717. A.Int     |Int      Dbl    Int       Dbl        Str
  11718. A.Dbl     |Dbl      Dbl    Dbl       Dbl        Str
  11719. A.StrInt  |Int      Dbl    Int       Dbl        Str
  11720. A.StrDbl  |Dbl      Dbl    Dbl       Dbl        Str
  11721. A.Str     |Str      Str    Str       Str        Str
  11722. Here Str means concatenation of two operands.
  11723.  
  11724. - * / %   |B.Int    B.Dbl  B.StrInt  B.StrDbl   B.Str
  11725. ----------+------+--------+---------+----------+------
  11726. A.Int     |Int      Dbl    Int       Dbl        A.Str
  11727. A.Dbl     |Dbl      Dbl    Dbl       Dbl        A.Str
  11728. A.StrInt  |Int      Dbl    Int       Dbl        A.Str
  11729. A.StrDbl  |Dbl      Dbl    Dbl       Dbl        A.Str
  11730. A.Str     |A.Str    A.Str  A.Str     A.Str      A.Str
  11731. Here A.Str means that the value of operand A is returned.
  11732.  
  11733. For binary operations, Dbl or StrDbl operands are translated to Int beforehand.
  11734.  
  11735. Op        |B.Int    B.Dbl  B.StrInt  B.StrDbl   B.Str
  11736. ----------+------+--------+---------+----------+------
  11737. A.Int     |Int      Int    Int       Int        A.Str
  11738. A.Dbl     |Int      Int    Int       Int        A.Str
  11739. A.StrInt  |Int      Int    Int       Int        A.Str
  11740. A.StrDbl  |Int      Int    Int       Int        A.Str
  11741. A.Str     |A.Str    A.Str  A.Str     A.Str      A.Str
  11742. Here "Op" is | & ^ << >>
  11743.  
  11744. In comparison operations (==, !=, <, <=, >, >=), the operands are translated (if possible) and compared.
  11745. In logical OR and AND the operands are compared as is, strings are not translated to StrInt and StrDbl, instead they are checked on non-emptiness.
  11746.  
  11747. 7. Macro: Editor.SelValue - the content, like Far puts block into clipboard (text block with crlf at line ends)
  11748.  
  11749. 8. Macro: function "Menu.Select" looks like "N=Menu.Select(S[,N[,Dir]])" - the 3rd parameter is added, the direction of search, Dir:
  11750.  
  11751. * 0 - from the beginning to the end of list;
  11752. * 1 - from the current position to the beginning;
  11753. * 2 - from the current position to the end of menu items list.
  11754.  
  11755. 9. Help understands macros <!Macro:Vars!> and <!Macro:Consts!>, look for `"// for <!Macro:Vars">' in lng files - this is the output format
  11756.  
  11757. 10. If Far is given keys /e or /v, the macros from the following regions are not loaded: Shell, Search, Disks, MainMenu, InfoPanel, QviewPanel, TreePanel, FindFolder
  11758.  
  11759. 11. Mantis#0001057: Far Manager version 1.75 build 2605, x86 Crash when choosing Alt+F1/Alt+F2 -> Process List
  11760. If plugin has nonsense in registry value StartPanelMode, then panel mode 0 is forced
  11761. (this hack is for a while, until static array is removed)
  11762.  
  11763. zg 15.09.2009 18:23:10 +0200 - build 1126
  11764.  
  11765. 1. Mantis#0001058: The range for character class doesn't work for Cyrillic characters
  11766. RegExp::Optimize cuts Unicode to first 256 characters.
  11767.  
  11768. drkns 14.09.2009 19:19:36 +0200 - build 1125
  11769.  
  11770. 1. The file attributes change could lead to crash.
  11771.  
  11772. chupakabra 14.09.2009 19:03:00 +0200 - build 1124
  11773.  
  11774. 1. Mantis#0001055 & Mantis#0001056: Problems with changing to root folder (Ctrl+\).
  11775.  
  11776. drkns 13.09.2009 23:57:35 +0200 - build 1123
  11777.  
  11778. 1. Applying `#pragma once' instead of `include guard'. This must improve the compilation time.
  11779.  
  11780. drkns 13.09.2009 20:12:26 +0200 - build 1122
  11781.  
  11782. 1. From forum: crashes if switching to filepanel using menu when infopanel/qview is opened.
  11783.  
  11784. t-rex 13.09.2009 14:49:26 +0200 - build 1121
  11785.  
  11786. 1. Somebody has switched off regexp in replace.
  11787.  
  11788. 2. Don't forget, include's are case sensitive in some OS'es.
  11789.  
  11790. drkns 13.09.2009 11:24:41 +0200 - build 1120
  11791.  
  11792. 1. Mantis#0001054: The disk free size is displayed incorrectly.
  11793.  
  11794. chupakabra 12.09.2009 22:53:00 +0200 - build 1119
  11795.  
  11796. 1. Changes in API: farConvertNameToReal() always returns required buffer size (similar to farGetPathRoot())
  11797.  
  11798. drkns 12.09.2009 19:04:40 +0200 - build 1118
  11799.  
  11800. 1. The next divide & conquer:
  11801. - ACHTUNG! - minimal supported sdk is now 7.0 for vc, w32api-3.13 for gcc;
  11802. - sdkpatches.hpp is divided into separate parts for vc and gcc;
  11803. - removed macro's i64() and ui64(), for vc is `ll'- and `ull'-capable too;
  11804. - __try and __except are replaced to macros in gcc only;
  11805. - removed some more junk from headers.hpp and pluginold.hpp
  11806.  
  11807. 2. Dialog class is made more lightweight.
  11808.  
  11809. 3. macro: itoa() failed on 64-bit numbers.
  11810.  
  11811. chupakabra 11.09.2009 01:51:00 +0200 - build 1117
  11812.  
  11813. 1. gcc build is corrected.
  11814.  
  11815. 2. makefile_gcc: debug version is not optimized; dependences are corrected (make -j worked incorrectly)
  11816.  
  11817. chupakabra 11.09.2009 01:02:00 +0200 - build 1116
  11818.  
  11819. 1. At plugin panel, search from root folder worked incorrectly.
  11820.  
  11821. 2. Added TRY EXCEPT to FindFiles::WriteDialogData().
  11822.  
  11823. 3. FindFile code is changed a bit for simplification.
  11824.  
  11825. drkns 10.09.2009 23:12:56 +0200 - build 1115
  11826.  
  11827. 1. scantree is appended with recursive links checking.
  11828.  
  11829. 2. Hard links creation didn't work in win2k.
  11830.  
  11831. 3. Mantis#0001049: Error in file search using %PATH%.
  11832.  
  11833. chupakabra 09.09.2009 16:47:00 +0200 - build 1114
  11834.  
  11835. 1. GetPathRoot() is implemented via ConvertNameToReal().
  11836.  
  11837. chupakabra 09.09.2009 06:30:00 +0200 - build 1113
  11838.  
  11839. 1. Mantis#0001039: the option "Del removes blocks in edit controls" wasn't stored.
  11840.  
  11841. chupakabra 09.09.2009 05:40:00 +0200 - build 1112
  11842.  
  11843. 1. Corrected gcc and x64 builds.
  11844.  
  11845. chupakabra 09.09.2009 05:01:00 +0200 - build 1111
  11846.  
  11847. 1. ConvertNameToReal() now uses NtQueryObject() on Windows XP.
  11848. Old code with symlinks crawling is completely deleted.
  11849.  
  11850. drkns 08.09.2009 22:18:01 +0200 - build 1110
  11851.  
  11852. 1. Creation of folder with name ending with point by F7 didn't work.
  11853.  
  11854. chupakabra 08.09.2009 21:54:00 +0200 - build 1109
  11855.  
  11856. 1. For ConvertNameToRealModern() it's we take into account that input path can exist partially.
  11857.  
  11858. 2. UnicodeString::Replace(): we assume that Data can point to data in the string itself.
  11859.  
  11860. 3. pathmix: a few more functions for path processing.
  11861.  
  11862. chupakabra 07.09.2009 18:25:00 +0200 - build 1108
  11863.  
  11864. 1. Mantis#0001037: hangup inside ConvertNameToReal().
  11865. From now, function GetFinalPathNameByHandle() is used if possible, instead of fuss around symlinks.
  11866.  
  11867. 2. Useful methods for UnicodeString: Replace, Insert, Remove, etc.
  11868.  
  11869. t-rex 06.09.2009 22:57:09 +0200 - build 1107
  11870.  
  11871. 1. Mantis#1038: Incorrect subdirectories location in tree panel.
  11872.  
  11873. chupakabra 05.09.2009 04:49:00 +0200 - build 1106
  11874.  
  11875. 1. VMenu: place for right horizontal scroller is reserved only if needed.
  11876. This solves an issue with plugins which count listbox widths as ("max string length" + 4).
  11877.  
  11878. zg 04.09.2009 16:44:34 +0200 - build 1105
  11879.  
  11880. 1. After 1103, search consumed two-fold CPU time amount.
  11881.  
  11882. t-rex 04.09.2009 00:16:00 +0200 - build 1104
  11883.  
  11884. Just in case:
  11885.  
  11886. 1. At editor search with ô[x] Select foundö, the cursor is set on the first letter of found text, like in search without the option; that's a common way, in general.
  11887. Thus, the problem with regexp search with this option is gone, also is removed an excessive piece of code with ugly AI, which in addition could cause miscellaneous problems.
  11888.  
  11889. drkns 03.09.2009 20:01:23 +0200 - build 1103
  11890.  
  11891. 1. In search by content, the status line shows percentage for the current file.
  11892. Also, its redraw interval is now equal to the rest of ones everywhere.
  11893.  
  11894. svs 03.09.2009 18:07:57 +0300 - build 1102
  11895.  
  11896. 1. Mantis#0000547 is corrected:
  11897. "...Open FarRus.hlf with F4,
  11898. F7, search for 3, then some other 3\d
  11899. and check [x] ôRegular expressionsö.
  11900. find it, press Shift+F7 - ok, it goes on searching.
  11901.  
  11902. Check [x] ôSelect foundö, the search goes ok at the first time, but Shift+F7 doesn't work..."
  11903.  
  11904. The problem code is commented out until examination; it marked with "CHECK!!!: for...".
  11905.  
  11906. chupakabra 03.09.2009 15:36:00 +0200 - build 1101
  11907.  
  11908. 1. Mantis#0001002: crash in VMenu when all elements are hidden.
  11909.  
  11910. 2. Added synchronization in VMenu::GetMaxLineWidth().
  11911.  
  11912. t-rex 31.08.2009 22:29:55 +0200 - build 1100
  11913.  
  11914. 1. We continue Mantis#1025, there has been yet another inner limitation on descript.ion record length.
  11915.  
  11916. drkns 31.08.2009 19:37:49 +0200 - build 1099
  11917.  
  11918. 1. Mantis#0001029: Unneeded repeated setting of attributes.
  11919. The funniest thing is that the "don't touch attributes/date/time if they weren't changed" logic has been present, but broken with IsFileWritable.
  11920.  
  11921. 2. In the same place, an exasperating flaw is removed: (sym)links date/time can now be changed.
  11922.  
  11923. 3. Milliseconds can be changed in time field.
  11924.  
  11925. 4. FILE_FLAG_BACKUP_SEMANTICS moved into apiCreateFile.
  11926.  
  11927. t-rex 29.08.2009 23:11:42 +0200 - build 1098
  11928.  
  11929. 1. The update of previous build.
  11930.  
  11931. drkns 29.08.2009 21:53:31 +0200 - build 1097
  11932.  
  11933. 1. Mantis#0001026: The ôSearchö button in viewer was broken.
  11934.  
  11935. drkns 29.08.2009 00:51:58 +0200 - build 1096
  11936.  
  11937. 1. A few memset's removed.
  11938.  
  11939. 2. Help files: codepage names at section ôFileSaveAsö.
  11940.  
  11941. chupakabra 28.08.2009 18:28:00 +0200 - build 1095
  11942.  
  11943. 1. FCTL_REDRAWPANEL could return FALSE in case of success
  11944.  
  11945. svs 28.08.2009 19:14:22 +0300 - build
  11946.  
  11947. 1. Help translation from Igor Yudincev
  11948.  
  11949. svs 28.08.2009 19:01:31 +0300 - build 1094
  11950.  
  11951. 1. Mantis#0001021: 'Select found' checkbox state is saved,
  11952.   same for "RegExp"
  11953.  
  11954. 2. Mantis#0000872: RegExp support in Editor and Viewer
  11955.   from Igor Yudincev
  11956.   By now, RegExp option in Replace dialog is inavailable (TBD)
  11957.   A comment is added to Edit::Search():
  11958. // Q: what's more important: dialog option or RegExp option?
  11959.  
  11960. ([x] ôCase sensitiveö and /regexp/i are meant)
  11961.  
  11962. 3. Same for RegExp option in viewer ù R/O so far (TBD)
  11963.  
  11964. 4. Help: "@RegExp. The beginning" - there's a chapter, it needs to be changed carefully as development proceeds.
  11965.   "RegExp" checkbox state is saved now, like in editor.
  11966.  
  11967.   ATTENTION! Everything described in "@RegExp" chapter doesn't work by now (nevertheless, it will!)
  11968.  
  11969. zg 28.08.2009 16:10:30 +0200 - build 1093
  11970.  
  11971. 1. Mantis#0001025: FAR v2.0.1091 (and v2.0.981) cuts records in descript.ion when F5 or F6, up to 260 characters.
  11972.  
  11973. 2. gcc warnings.
  11974.  
  11975. t-rex 27.08.2009 20:09:59 +0200
  11976.  
  11977. 1. Hungarian lng update from Far Hunor.
  11978.  
  11979. drkns 27.08.2009 19:54:05 +0200 - build 1092
  11980.  
  11981. 1. Now symlinks can be created in 2000/XP/2003 too.
  11982.   Of course, it doesn't mean they'll work there.
  11983.  
  11984. 2. Another addition to #0001012.
  11985.  
  11986. 3. In read-only file rewrite confirmation dialog, the button caption depends on operation(overwrite/append).
  11987.  
  11988. drkns 26.08.2009 20:02:15 +0200 - build 1091
  11989.  
  11990. 1. Mantis#0001019: The "Encrypted" attribute is set at folder copy/move.
  11991.  
  11992. 2. Mantis#0001012: "In 1090, sometimes during copy/move there's a feeling that the name of new copied file appears when old file progressbar is still at 100%."
  11993.  
  11994. drkns 25.08.2009 20:32:14 +0200 - build 1090
  11995.  
  11996. 1. Whole copying visualization is moved to (almost) separate class.
  11997.   Progressbar redraw and wrong filename displaying bugs must have disappeared (Mantis#0001012).
  11998.   Also, a bunch of garbage is removed from copier.
  11999.  
  12000. 2. As GetUserNameExW is used everywhere, let's reduce the code by linking it statically.
  12001.  
  12002. 3. Quick preview panel had been reread and redrawn on every cough.
  12003.  
  12004. 4. For file symlinks, "" is shown in panels at Size column.
  12005.  
  12006. 5. MkSymLink() moved to flink.cpp.
  12007.  
  12008. svs 25.08.2009 17:20:04 +0300 - build 1089
  12009.  
  12010. 1. Mantis#0000970: descript.ion change date does not change if there  were no changes
  12011.   from Maximus
  12012.  
  12013. svs 24.08.2009 19:15:12 +0300 - build 1088
  12014.  
  12015. 1. Info panel missed a space after FS type.
  12016.  
  12017. 2. "Memory" label overlayed panel border.
  12018.  
  12019. 3. Mantis#0000859: RFE: Show UserName@Domain on the information panel
  12020.   Let's use the 8-th type, "UserName@Domain" (for local user, or there are errors when receiving a user... it will be like now: "user")
  12021.   + some formatting in InfoList::DisplayObject()
  12022.  
  12023.   in the largest accounts, visualization form has to be assigned (dialog? techinfo?).
  12024.  
  12025. drkns 22.08.2009 00:44:39 +0200 - build 1087
  12026.  
  12027. 1. Attributes dialog shake-up. Downsizing, optimization, formatting, as usual.
  12028.    Bonuses:
  12029.    - a few tiny bugs are fixed;
  12030.    - reparse point editing possibility is added. Highly experimental.
  12031.  
  12032. 2. Corrections in reparse points creation.
  12033.  
  12034. 3. FAR_USE_INTERNALS are removed from wrapper.
  12035.  
  12036. 4. Progressbars redraw timeouts are now controlled with a single variable.
  12037.  
  12038. 5. Translation for "Standard association".
  12039.  
  12040. svs 19.08.2009 11:42:58 +0300 - build 1086
  12041.  
  12042. 1. Mantis#0000905: Changes in "eval"
  12043.    eval("",1) variant returns error 12 ("Zero-length macro")
  12044.    Considering empty macro sequences illegal.
  12045.  
  12046. svs 17.08.2009 12:26:34 +0300 - build
  12047.  
  12048. 1. Mantis#0000986: Far 2 API - pascal
  12049.     from: max rusov
  12050.       PluginW.pas: FAR_USE_INTERNALS are removed
  12051.  
  12052. drkns 16.08.2009 09:05:05 +0200 - build 1085
  12053.  
  12054. 1. gcc.
  12055.  
  12056. drkns 15.08.2009 20:13:55 +0200 - build 1084
  12057.  
  12058. 1. Corrections in previous build.
  12059.    pointer_array is replaced with TPointerArray.
  12060.  
  12061. drkns 14.08.2009 23:38:43 +0200 - build 1083
  12062.  
  12063. 1. Plugin selection for "SetFindList" and "prefix" is completed, more or less.
  12064.    Localization of settings dialog.
  12065.    All plugin selection menus are off by default.
  12066.  
  12067. svs 14.08.2009 11:51:50 +0300 - build
  12068.  
  12069. 1. Mantis#0000986: Far 2 API - pascal
  12070.     from: max rusov
  12071.       PluginW.pas: x64 support is added. Tested under FreePascal 2.3.1
  12072.  
  12073. t-rex 12.08.2009 12:01:41 +0200 - build 1082
  12074.  
  12075. 1. From Evgeny Zhirnov: Mantis#1006: Add "explicit" to UnicodeString::UnicodeString(size_t, size_t=0) constructor.
  12076.  
  12077. svs 11.08.2009 18:55:01 +0300 - build 1081
  12078.  
  12079. 1. Ctrl-Home/End on numeric keypad do not work.
  12080.    from: Alexey Samlyukov
  12081.  
  12082. drkns 09.08.2009 17:21:34 +0200 - build 1080
  12083.  
  12084. 1. If a single object was selected on panel and cursor was on "..", then PanelInfo.SelectedItemsNumber contained 0.
  12085.  
  12086.