forked from PaulSquires/WinFBE
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathchanges.txt
976 lines (838 loc) · 75.1 KB
/
changes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
Version 3.1.0 (June 4, 2023)
- Updated included FreeBasic Compiler to version 1.10 (located in toolchain: "FreeBASIC-1.10.0-winlibs-gcc-9.3.0").
Editor:
- Fixed "Quick Run" bug for non-Latin text (eg. Chinese) where editor text was not correctly converted to unicode text.
- Changed "Quick Run" to save to UTF-8 encoded file rather than UTF-16.
- Added recognize VAR keyword in parser for dimension variables in order to popup codetips (same behaviour as DIM and REDIM).
- Updated WinFBX library source files to the latest version per Jose Roca's Github.
Version 3.0.8 (January 17, 2023)
Editor:
- Updated the Scintilla DLL's to the latest version 5.3.2 (Dec 6, 2022).
- Modified the Scintilla & Lexilla DLL's to fix a long standing syntax coloring issue whereby code appearing after a pound sign character ("#") would not be syntax highlighted.
- Modified AutoCompletion to always insert the corresponding completion statement (eg. Next, End If, End Select, Wend...).
- Fixed bug in UnicodeToUtf8 conversion function that could corrupt some foriegn characters by removing trailing null characters. This impacted the output of visual designer *.design files.
- Fixed minor parser bug that would not complete the parse of an "end constructor" or "end destructor" correctly.
Version 3.0.7 (January 1, 2023)
Editor:
- Fixed issue causing full Windows Desktop refresh that could cause flicker in other applications whenever the left mouse button pressed in WinFBE.
Visual Designer:
- Fixed bug loading Form Design files containing foreign characters (for example Chinese language).
- Fixed bug saving text to visual designer *.DESIGN json files that contain embedded single quote character.
- Fixed logic related to "Display on Form" checkbox for Menu, ToolBar and StatusBar editor dialogs.
Version 3.0.6 (December 19, 2022)
Editor:
- Fixed parser bug causing duplicate events when TYPE/END TYPE structure exists inside visual designer Form file.
Version 3.0.5 (December 14, 2022)
Editor:
- Fixed duplicate events when loading Form file via MRU list or drag/drop into editor from outside of a Project.
- Fixed issue whereby files added to Project via MRU list or drag/drop would not show in the Explorer list.
Version 3.0.4 (December 13, 2022)
Editor:
- Fixed ENUM code parsing and autocomplete popup.
- Fixed DIM AS autocomplete popup not reducing popup list as word is being typed.
- Fixed regression whereby Ctrl+S Save (or SaveAs) with no open documents would crash the application.
Visual Designer:
- Added Button control propert (ImageAlign) to position an image within the button.
- Corrected issues with selected Button image properties properly being reflected for the button during design time.
- Form files would have their file encoding reset to ANSI on subsequent reloading of the project.
- New Projects created with a Visual Designer template would not have the new Form located in the Normal section of the Explorer treeview.
- Fixed regression. The popup code completion intellisense now correctly displays popup list for WinFormsX global variables "Colors" and "Application".
- Added MCS_DAYSTATE style for MonthCalendar allowing the user to correctly handle the MCN_GETDAYSTATE notification in their form's AllEvents handler.
Version 3.0.3 (November 24, 2022)
Editor:
- Fixed bug whereby SaveAs dialog would appear for Quick Run files.
Version 3.0.2 (November 23, 2022)
Editor:
- Fixed bug where WinFBE 64-bit only would GPF if currently loaded file is edited by an external editor causing WinFBE to reload the file.
- Fixed bug where focus would be lost from the Find textbox as the user typed a search word and a corresponding match was found.
- Fixed bug where an invalid startup position for the editor would be saved if WinFBE closed while it is minimized to the Windows Taskbar.
- Added new internal code parser that creates codetips and autocomplete popups.
- Fixed GPF for WinFBE 64-bit that was caused by some leftover array code from cache system that was removed from earlier BETA.
- In-memory parser database not cleared when the same Project loaded multiple times resulting in duplicate entries in the Functions list.
Visual Designer:
- MAJOR FILE FORMAT CHANGE: Form data separated from code file and is now saved to external file with *.design file extension.
- Existing visual designer files are saved with a "*.backup-before-upgrade" file extension prior to the new file format upgrade in case something goes wrong and the user needs revert to the older file.
- When selecting a control from the toolbox and then just clicking on a form (not "drawing" it), it creates a control with a height and width of 0. There are now default sizes for all controls that may be created too small.
- When double-clicking an event in the toolbox, automatically enable that event, create the placeholder (if needed) and switch to that event in the code view.
- When double-clicking a control in design view, automatically switch to the code view for the default event handler for that control (e.g.: the _Click handler if it's a button).
- Listview was not clearing columns/rows when a form is reused (e.g. via popup form).
- Added Listview property (HeaderThemed) to enable/disable theme drawing for the header portion of the Listview.
- The ability to set the default control font name and size for all new controls created for a project, rather than always defaulting to Segoe UI 9pt.
- Added Button control property (AllowFocusRect) to enable/disable drawing the rectangle around the button when it has focus. Only valid if Theme property is False.
- Added Button control property (TextForeColorHot) to set text color when mouse hovers over the button. Only valid if Theme property is False.
- Added Control property (Anchor) which allows you to specify layout resize/movement at design time (uses the WinFBX CLayout class behind the scenes).
- Added Anchor property for Forms.
- Added ChildFormParent property for Forms.
- Added check to prevent duplicate code output into the resource file for images with the same path and filename as this would cause a compile error.
- Added code to ensure that when saving Form data it is output to the JSON design file prior to any Controls on the form, otherwise a GPF may occur when loading.
- Added code that will update or add to existing SELECT CASE event structures in generated code for MENUS, STATUSBARS, and TOOLBARS.
- Added TextBox and RichEdit control property (MaxLength).
- Fixed display of Frame control text background color in both the visual designer and code generation.
- Added Button control property (MultiLine).
- Replaced existing fbJSON parser with the cJSON "C" based parser (32 and 64 bit DLL's).
Version 3.0.1 (June 6, 2022)
Editor:
- "Save All" was not correctly adding the saved file to the Explorer list.
- When closing all files sometimes not positioning editor to a dirty file that needed to be saved.
- Enable/Disable "Highlight current line" editor option would not honor the theme color.
- Toggling a Bookmark by clicking in the Bookmark margin would not visually update the Bookmarks list in the Explorer window.
- Changed the statusbar positions for Line/Col and Build Configuration.
- When a visual design Form is active, pressing TAB character would insert the TAB character into the underlying code editor.
- Corrected "Append loop variable to For/Next statement" in cases where the variable did not immediately have a space character after it.
Visual Designer:
- Several items in the Designer top menu were not being enabled/disabled correctly.
- Possible that Form files would not have their dirty flag correctly maintained if AutoSave was active.
- Adding an image to a TabControl tab header could cause a GPF resulting in WinFBE to crash.
Version 3.0.0 (May 24, 2022)
Editor:
- Complete re-write of main editor UI to have a look and feel more in line with modern code editors.
- Updated to Scintilla Version 5.1.5 (Dec 7, 2021). Also, switched to use Lexilla.dll with custom lexer called lexWinFBE that handles the FreeBasic lexing.
- All new Theme system. All colors (RGB) can be edited in external .theme files found in the \themes folder.
- Added Windows API keywords and syntax highlighting.
- New Bookmarks list that shows all bookmarks from all open (and closed) files. Easily navigate or clear bookmarks throughout all files.
- New option to save/restore "session". Allow reloading and showing of files active during most previous editor use. Will reload a project should a project had been active. Editor state (open windows, editing position, selected compiler, etc) is saved and restored.
- Added Environment option to automatically load the last used Session file when the editor starts. If the last Session saved was a Project, then the project will be loaded.
- New keyboard binding mapping allowing the user to choose their own keyboard shortcuts for various editor functions.
- New Auto Save functionality. When enabled, unsaved files will be periodically saved to temporary files. In the event of crash, these files will be ask to be used when the editor next attempts to load the crashed file.
- New Font option (Environment Options / Colors and Fonts) to allow for extra spacing between editor lines on screen.
- Re-worked portions of Code Folding to make it visually more appealing.
- Changed some default Code Folding keyboard shortcuts because "Alt" based shortcut would sometimes invoke Windows system functionality.
- Changed logic of "Toggle Current and All Below" folding to now work on fold levels inside a function that of greater depth than the fold level being toggle. Previously, this function only worked on base level fold points (basically, the sub/function line and all other sub/functions below it in the source code). This new logic makes it easier to fold/unfold code blocks from deep with a particular function making it somewhat more usable in practice than the old logic.
- Greatly increased the Font selector combobox (Environment Options / Colors and Fonts) so it should be easier now to pick fonts that have long descriptive names.
- Multiple code editor text selections is now enabled. Hold CTRL and highlight multiple areas of text.
- Editor will try to gracefully fallback amongst various monospaced fonts should the previously selected font in the config file no longer exist. This can occur, for example, if you switch to different computers without the same fonts installed, or you switch between Windows and Linux (Wine).
- Replace All actions are now batched allowing Ctrl+Z Undo to undo all of the changes made, not just the last one.
- Changed Replace keyboard short from Ctrl+R to Ctrl+H to be in line with the vast number of other editors that use the Ctrl+H shortcut.
- Added the forward slash ('/') key shortcut for commenting lines (in addition to the current 'B' key option).
- Removed the ancient Win32 api help file and the menu option to invoke it.
- Removed main editor Toolbar to be consistent with most other modern editors that have foregone the use of a dedicated toolbar.
- When files added to a Project, newly added *.BAS files are now treated as NORMAL rather than MODULE files.
- Tweaked "Check for Updates" to provide more reliable reporting in the event of failure to retrieve information from the server.
- Tweaked the F3 and Shift+F3 accelerator that will Find Next/Prev the last highlighted search text. It is now more consistent by not being reset to a different search term under some situations.
- Re-worked the Find/Replace popup dialog to be visually more appealing and to work better with keyboard. Added keyboard shortcuts for some find/replace actions (for example, Ctrl+Alt+Enter to Replace All).
- Added keyboard shortcut "CTRL+~" (ctrl+tilde) to allow you to move keyboard focus back to the active editing window. This is useful, for example, for jumping between the editing window and the Find/Replace dialog.
- Added keyboard shortcuts to move to next and move to previous compiler errors. This is a quick way to jump to and fix errors without having to use your mouse to double click the compiler error message in the Output window.
- Added "Explorer Categories" that allow user defined custom nodes to display in the Explorer window (only when used with an active Project).
- The Explorer window now allows for multiple nodes to be selected (via Ctrl or Shift) and to popup right-click menu to perform actions on the group of selected nodes (for example, to re-designate files to different FileTypes, etc).
- Code Fold points are now saved between Project and/or Sessions in the same manner as Bookmarks are treated.
- Disabled the functionality whereby if Find/Replace dialog is open and user switches to a different tab in the editor, then search highlights would automatically reposition the caret to the first found find text in the newly selected tab.
- Bookmark searches for Previous/Next Bookmark will now display in center of screen if Environment option "Position searches to middle of screen" is enabled.
- Find In Files corrected to properly process *.* files. In situations of *.* searches known binary formats are bypassed (eg. EXE, DLL, BMP, etc).
- Corrected issues whereby Replace All could fail to replace matching entries near the end of the edit buffer.
- Implemented Preserve Case option for Find/Replace. Currently, only supports preserve Full Upper Case or Full Lower Case preserve case replace.
- Added (-gen gas64) option for Build Configurations.
- Fixed bug whereby FindReplace window would not close when all other underlying code windows have been closed.
- Added ability to disable the default keyboard shortcut for each keyboard shortcut.
- Fixed issue whereby edit window would lose focus if pasting text while the Find/Replace dialog is active.
- Fixed SetCompilerPathsII user tool being generated for new default winfbe configuration files.
- Fixed "Convert to Mixed Case" keyboad shortcut from Ctrl+Alt+M to Ctrl+Alt+X.
- Added right click popup menus for cut/copy/paste for textboxes that were changed to RichEdit (Find/Replace/CompilerLog/Notes).
- Added popup tooltip for Function list that displays the function prototype. Easier now to differentiate between overloaded functions.
- Fixed selecting function with multiple overloads would incorrectly always position the editor to the first instance of that function.
- Added some bcrypt* Win32 api keywords to the default winapi_keywords.txt file.
- Fixed issue whereby deleting a User Tool would result in a ghost entry in the User Tool top menu until the program was restarted.
- Updated the SetCompilerSwitchesII user tool to the latest version.
Visual Designer:
- New control property hWindowToolTip which will retrieve the windows handle for any tooltip created for a control.
Version 2.2.0 (March 26, 2021)
- Previous upload for version 2.1.9 did not include GCC toolchain for 32-bit FBC. It is now included so you can use the -gen gcc compiler flag to create 32-bit programs.
Version 2.1.9 (March 25, 2021)
Editor:
- FreeBASIC Compiler v1.07.2 (with GCC 5.2). You can still use different backend toolchains via the SetCompilerPaths plugin.
- New Windows installer (winfbe_suite_setup.exe) create to help users who do not feel comfortable with standard compressed archive files. WinFBE is *not* designed to be installed into the Windows Program Files folder.
- Multiple find/replace selection highlights could occur if the user changed the active selection area after activating the Find/Replace dialog.
- Replace-dialog selection-highlight in code window out of sync with actual highlight (when 2nd+ selection performed).
- Find/Replace dialog active and pressing Ctrl+A to select all text in one of the find/replace textboxes would instead select all text in the current active code edit window.
- Split windows would not activate cold folding in both panes. Only one pane would respond to code folding margin margin clicks.
- SCEN_KILLFOCUS in WM_COMMAND was resetting the hWndActiveScintilla window to zero causing a situation whereby incorrect split pane could be used to display code from Sub/Functions selector combobox.
- Have noticed that with Code Folding enabled that file loading/parsing is somewhat slower. If you prefer faster document responsiveness maybe turn off the code folding option.
- Double periods ".." would appear within the default displayed filename in the 'Save As' dialog for new files being saved for the first time.
- Sample_Projects folder contained corrupted winfbe project files.
Visual Designer:
- MainMenu: MenuItem item in MenuItems collection would crash when retrieving text property value.
- TextBox: Removed the SelectionChanged event as that event is for RichEdit controls, not TextBoxes.
- Statusbar: Fixed not being able to fully delete the last remaining Statusbar Panel.
- Statusbar: Code generation error when Statusbar deleted from Form but Toolbar also exists.
- When an editable ToolBox property has focus, actions such as Select All and Cut would act on controls in the visual designer rather than on the text in the property itself.
- DateTimePicker: Within the visual designer now correctly displays the SelectedDate/SelectedTime. Code generation was always correct.
- ListBox: Corrected redraw/repaint issues of other controls on a Form when ListBox was empty.
- Image Manager: Form width is adjusted wider for non-English localizations.
- Image Manager: Filename edit button is now disabled if no valid image has been selected from the list of images.
- PictureBox: An invalid of empty image name will now clear any existing image from the control.
- Timer: Modified so that if the Interval property value is changed then the Timer will automatically get re-created with the new interval value
Version 2.1.8 (November 19, 2020)
Editor:
- Polish language file provided by Waldemar Pajak.
- Updated Italian language file provided by Massimiliano.
- For/Next loop variables were sometimes not being correctly identified when that option was enabled in Editor Options.
- Multiline comment blocks inside of sub/function blocks was not being parsed correctly causing sub/function definitions in the visual designer to be regenerated.
- The "Refresh" method would appear twice in the codetip popup menu for Forms.
- New Form files will default to .inc file extension if a project is active, otherwise the file extension will default to .bas.
Visual Designer:
- DateTimePicker control: font property not set correctly at run time.
- Menu Editor: added blank line to dropdown Shortcut key combobox so you can unselect any previously set shortcut key.
- PictureBox control: added property 'ImageFromFile' to be able to load images from disk.
- ListBox: backcolor of an empty list box was not being handled correctly.
Version 2.1.7 (May 31, 2020)
Editor:
- Added: Occurrences Highlighting. Editor will highlight words under the current cursor position (Visual Studio has this type of feature as well).
- Changed: Changed the default toolchain to: FreeBASIC-1.07.1-gcc-8.4
- Fixed: Performance issue with parsing document when about to show a popup Autocomplete list.
Visual Designer:
- Fixed: Listbox control not consistently updating display visually during add or remove.
Version 2.1.6 (May 17, 2020)
Editor:
- Fixed: Issue with subs/functions not displaying in Explorer treeview during project loading.
- Fixed: File/Open single source file (non-project related) would not display filename in Explorer treeview.
- Fixed: Leading chr(9) tab characters interfered with triggering Autocomplete for "this." or "this->".
- Fixed: Parser infinite loop when parsing DIM lines with { } variable initializers.
- Fixed: Compiling a visual designer Form file when a project was not active would fail if more than one file was open in the editor at the time of compiling.
- Fixed: A Utf8 to Unicode conversion error when outputting Form code.
- Fixed: Some elements from parsed code would not display in popup AutoComplete selection lists.
- Fixed: Run after Compile would fail if -x command line used specifying a relative path filename.
Visual Designer:
- Fixed: Form would flash on screen even if Visible = False.
Version 2.1.5 (May 8, 2020)
Editor:
- Changed: Running WinFBE for first time with no existing WinFBE.ini config file will automatically create entries for User Tools that exist in the Tools folder.
- Fixed: The 64 bit translation of the SCNotification type structure for Scintilla notifications was incorrect. This caused problems setting the flag for when code parsing should happen which in turn caused issues with Autocompete and displaying of Sub/Function names in the Explorer.
- Fixed: AutoInsert, AutoComplete, and CodeTips are disabled if current position is within a single or multiple line comment block.
- Fixed: Additional checks for ensuring subs/functions names correctly added to Explorer and popup F4 Function List when source code is modified. If AutoComplete is disabled, then Sub/Function will not appear until corresponding End Sub / End Function is typed.
Visual Designer:
- Fixed: Label hot coloring could sometimes not reset if the label immediately next to oroverlaps another control.
- Fixed: DateTimePicker control would not show correctly the FormatCustom visually at design time. Worked at run time only.
- Fixed: Changing DateTimePicker DateFormat property now destroys and recreates the window control in order to properly set the styles.
- Fixed: Form WindowState property not correctly setting Minimized/Maximized/Normal states.
- Fixed: Lassoing control(s) was not updating the Toolbox Property List with the correct active selected control.
Version 2.1.4 (April 26, 2020)
Editor:
- Changed: Updated David Robert's User Tools for SetCompilerPathsII, SetCompilerSwitchsII, and ArchSettings to the latest version.
- Fixed: WinFBE would not correctly save its startup size/position if the editor had been "Aero snapped" via a Windows docking action such as docking it to the left hand side of the screen via a Winkey+LeftArrow keypress.
- Fixed: Duplicate controls would result if reloading a Form file modified by an external program.
Visual Designer:
- Added: Keyboard shortcuts for cut/copy/paste now works for visual designer controls.
- Added: FormReady event for Forms that fires when the Form is ready for user interaction.
- Changed: Control ID identifiers for all controls on a Form now start at 9000 and increment +1 for each added control.
- Fixed: Controls with Image properties would not correctly show the actual image when the form is loaded into the editor.
- Fixed: Corrected regression whereby duplicate definition errors for Form file if it is also the MAIN code file.
- Fixed: Statusbar control identifier was hardcoded as 100 potentially causing conflict with CreateWindowEX controls that may be added by the user.
- Fixed: Statusbar Editor initially set colors needed a mouseover in order for the correct colors to display.
Version 2.1.3 (April 18, 2020)
Editor:
- Added: Character Autocompletion option (enabled by default) adapted from code located at: https://github.com/jacobslusser/ScintillaNET/wiki/Character-Autocompletion
- Added: New Auto Indentation sub option "Append loop variable to For/Next statement". (disabled by default)
Visual Designer:
- Fixed: Errors occuring in MAIN file for a visual designer project would cause "WinFBE_VD_MAIN.bas" to be loaded into the editor. The correct designated MAIN file is now loaded.
- Fixed: wfxTextBox.SelectionLength() was returning negative lengths.
Version 2.1.2 (April 16, 2020)
Editor:
- Added: An additional "Code Editor" page of "Environment Options" because the number of options had filled the first Code Editor page.
- Changed: Refactored the logic for displaying brace highlighting to be the same as used by ScintillaNET.
- Changed: Improved the visibility of brace highlighting by changing the alpha values of the highlight colors.
- Fixed: Turning off Brace matching would not uncolor any braces that were active at the time the option was changed.
Visual Designer:
- Fixed: Regression whereby new projects created via template not setting MAIN file and dispaying it in the correct Main Explorer treeview branch.
Version 2.1.1 (April 14, 2020)
Editor:
- Added: Brace highlight matching. Settings to enable/disable and to set colors for match and no match.
- Added: New Compiler setup option: "Disable successful compile sound".
- Added: Environment Options dialog now remembers last selected option and will display that option window on subsequent opens.
- Added: Shift+F7 as keyboard shortcut key for "Environment Options".
- Added: F6 Goto Definition will now find functions in class methods that are not prefixed with the "this" keyword.
- Added: Codetip popups will now find functions in class methods that are not prefixed with the "this" keyword.
- Changed: AutoInsert now correctly implements TABs for indentation if the editor option "Treat Tab as spaces" is unchecked.
- Fixed: Code Editor option called "Position searches to middle of screen" was not positioning in all envisioned scenarios.
- Fixed: The keyword "Chr" and "RTrim" were incorrectly mixed capitalized in the freebasic_keywords.txt settings file. Users will need to manually change that keyword to all lowercase "chr" and "rtrim" in order for keyword highlighting to be correct.
- Fixed: Corrected situation whereby non-project related notes could get reset when switching between non-project files and projects.
- Fixed: Logic error when saving project file names/paths to Most Recently Used list when the project resided on a drive different than the WinFBE application. This situation involved the incorrect application of the {CURDRIVE} parameter.
Visual Designer:
- Added: ToolBox window size and position is now saved and restored between sessions.
- Added: Error message displayed if using "Project Options" to add manifest and resource files but the WinFBE_manifest.xml and/or WinFB_resource.rc files are missing from WinFBE Settings folder.
- Fixed: Forms with BorderStyle property set to FormBorderStyle.SizeableToolWindow were incorrectly displayed in the visual designer.
- Fixed: Code generation error if last line of main code file does not have trailing CR/LF.
Version 2.1.0 (April 6, 2020)
Editor:
- Added: New caching system that should speed up large project loading. Parser database saved between sessions.
- Added: New Environment Option "Enable fast project cache" in support of the newly added project caching system that was added.
- Added: New WinFBE_Suite updates will no longer overwrite existing WinFBE.ini, user_snippets.ini, and freebasic_keywords.txt files.
- Added: Environment Settings / Code Editor option called "Position searches to middle of screen" to enable/disable positioning search found text to the middle of the screen.
- Added: Find in Files new options to restrict search to "Current Document, "All Open Documents, or "Current Project".
- Added: Two new buttons on Explorer. "New File" and "New Project".
- Changed: Find In Files dialog is now modeless.
- Changed: All file operations now use Streams (using CFileStream or CTextStream classes) to replace built in FB Get/Put commands.
- Fixed: In certain cases, (Get) or (Set) would be included in the autocomplete text being entered int othe editor after selection.
- Fixed: GPF when pressing F6 on a #Include statement to load that file into the editor.
- Fixed: Non-Project user entered Command Line parameters were not being passed to compiled EXE beng run.
- Fixed: Various screen flicker during File/Save or Compile operations.
- Fixed: Improved the screen updating time for Block Comment and Block UnComment on large files.
- Fixed: Find/Replace could change the name of a sub/function. The Explorer treeview and Functions combobox are now correctly updated in the code editor.
Visual Designer:
- Added: Image Manager ability to manually edit the filename rather than having to remove an invalid path image and re-add the correct path image.
- Changed: You no longer have to manually add #Include statements for your Form files in your main .bas file.
Version 2.0.9 (March 20, 2020)
Editor:
- Added: From anywhere on the current line pressing Ctrl+ENTER creates a new line immediately below the current line and positions the cursor to the start of that new line.
- Added: F4 popup Function List will now select the current active sub/function name (previously it would always select the parent document node).
- Added: Pressing F6 on a TYPE name will reposition you to the TYPE/END TYPE structure definition. Shift+F6 to return to previous editing position.
- Added: F3 and Shift+F3 finding of current highlighted text will now do wrap around searching of the text buffer.
- Added: OPERATOR / END OPERATOR auto insert.
- Added: Keyboard Shortcuts help file (replaces the previous Editing Tips file). Can display from the Help menu.
- Added: CodeTips for functions will redisplay after closing an AutoComplete list popup.
- Added: Will now recognize 'TODO: in addition to the existing ' TODO: (notice the difference is the removal of the space between apostrophe and TODO:).
- Fixed: Refactored some of the parsing engine to better display autocomplete popup and codetips.
- Fixed: The word "HEADER" was not appearing in the status bar for opn files in the editor marked as a header file.
- Fixed: Improved the AutoInsert for SELECT CASE when text already exists on the SELECT CASE line itself.
Visual Designer:
- Added: Notepad example project. Located at \Examples\Visual_Designer_Projects\Notepad
- Added: MessagePumpHook event added to Form objects.
- Added: TextBox/RichEdit SelectionChanged event.
- Added: TextBox/RichEdit TextChanged event.
- Added: TextBox/RichEdit LinePosition property and ColumnPosition property.
- Changed: Removed the MaxLength property for Edit and RichEdit controls. Limits are now Edit (32K), RichEdit(1GB). Change via code if needing higher limits.
- Fixed: Changing RichEdit WordWrap property at runtime will now recreate the control.
Version 2.0.8 (March 9, 2020)
Editor:
- Fixed: Corrected internal parser to recognize byref variable declarations: "dim byref var1 as".
- Fixed: DShow_PlayClip example project was corrupted.
Visual Designer:
- Added: TreeView control.
- Added: wfxPopupMenu class.
- Fixed: Label text was limited to MAX_PATH characters. Code changed to allow unlimited characters.
- Fixed: WM_DROPFILES message was only being handled by the Form. Any controls with AllowDrop = True are now correctly handled.
- Fixed: Form now has its own Text property handlers because the base wfxControl version calls AfxRedrawWindow and that tends to hide existing Frame controls.
Version 2.0.7 (March 2, 2020)
- Added: Checks to detect multiple calls to the Application.Run function for visual designer projects. Warning shown on compile.
- Added: If Application.Run already exists in visual designer project then any newly created forms will have that call automatically commented out in the code editor.
- Added: New User Tool action option: "Invoke immediately after WinFBE starts". This will run (or show) the user tool immediately after the main WinFBE window is displayed.
- Added: For convenience added POINT variable to the e EventArgs. This is essentially the e.x and e.y window screen positions combined.
- Added: wfxPoint class now has Convert method to transform screen coordinates to client coordinates (instead of having to use MapWindowPoints api).
- Changed: The Explorer pane now uses FullRowSelect style for its TreeView.
- Fixed: Better setting of initial folder for Open / SaveAs when projects are active.
- Fixed: Smoother redrawing of Explorer treeview when large number of files are expanded or collapsed (much more pleasing visual experience).
- Fixed: ProgressBar drawing with Value property now better updates control visually (Windows issue with Themes).
- Fixed: Regression - somehow old corrupted wfbe project files for the Sample_Projects were included in the 2.0.4, 2.0.5 and 2.0.6 releases.
Version 2.0.6 (February 22, 2020)
- Added: Refresh method for the StatusBar Panel class so only a particular Panel is redrawn rather than the whole statusbar.
- Added: The WinFBE.ini config file is automatically reloaded should an external tool or program modify it (prior to this change it was only reloaded before to a compile).
- Added: Some missing codetips for StatusBar Panels and UpDown control.
- Changed: Image filenames are now stored in the form files as relative paths to the form file.
- Fixed: Crash in certain cases when attempting to invoke the "Open Templates" dialog (via the menu or dropdown toolbar button).
- Fixed: Changing StatusBar text at runtime did not immediately update the text displayed in the panel.
- Fixed: Listview would crash if Listview.BeginUpdate was followed by Listview.Items.Clear.
- Fixed: Frame controls could "disappear" if a modal dialog was shown during the Form's Load event.
- Fixed: MenuEditor crash if trying to Insert new item prior to first item in list (WinFBE64.exe).
- Fixed: ListBox ItemHeight not properly returned when multiple ListBoxes existed on a Form.
Version 2.0.5 (February 19, 2020)
- Fixed: Multiple Tab Controls on a form would result in code generation error.
- Fixed: Regression: Forms with StatusBar would make ListBoxes and Labels not display their contents.
- Fixed: If no valid Menu items exist then "Display on Form" checkbox in the Menu Editor is cleared and no menu code is generated.
Version 2.0.4 (February 18, 2020)
- Added: UpDown control.
- Changed: StatusBar Panels are now OwnerDraw which allowed for defining Fore/ForeHot/Back/BackHot Colors, on a per-Panel basis.
- Changed: Use of StatusBar BorderStyle is now deprecated as it has no effect in WinFBE programs where Windows Themes are enabled.
- Changed: StatusBar Panel ToolTips now act like regular tooltips and are not restricted by the limitations per the SB_SETTIPTEXT Win32 message documentation.
- Changed: New Chinese lanuage file thanks to ganlinlao.
- Fixed: Regression in WinForms code whereby KeyDown, KeyUp and KeyPress fired twice instead of once.
- Fixed: ListView possible GPF when invoking Items Clear method (disabled redraw of ListView to prevent accessing a now deleted Item).
- Fixed: The Width and MinWidth properties of StatusBar Panels were not being generated in code correctly.
- Fixed: StatusBar Panels with AutoSize set to Contents were not calculating space needed for any associated Panel image.
- Fixed: StatusBar Panel with AutoSize set to Spring can now be any panel (not just the last panel). However, only one panel can be designated as Spring.
- Fixed: An assigned Button control Image would not necessarily display the correct size at design time.
Version 2.0.3 (January 14, 2020)
- Added: ListView property OddRowColorEnabled (True/False).
- Changed: ListView removed property "Sorting" until such time as sorting code is added to the control. In the meantime, use the SortByColumn method.
- Fixed: ListView now draws significantly faster becase only affected changed visible line items invoke a redraw of the ListView only if the BeginUpdate flag is False. Enclosing many ListView row/col changes in BeginUpdate/EndUpdate continues to be the best approach for optimal performance.
- Fixed: Visual Designer code generated for redisplaying closed forms would not correctly show previous statusbar, or toolbar, or mainmenu.
- Fixed: MainMenus with only one defined entry would fail to display in the visual designer when the Menu Editor was closed.
- Fixed: Visual Designer code generated for KeyUp, KeyDown, KeyPress events were not cancelling the key input when e.Handled = True.
- Fixed: Setting StatusBar font via code was not working. Example: frmMain.StatusBar.Font = New wfxFont("Consolas", 10, FontStyles.Bold, FontCharset.Default)
Version 2.0.2 (December 16, 2019)
- Fixed: ToolTip needed to have at least 1 character set at design time in order for ToolTip to display at runtime because the hWndToolTip would not be created.
- Fixed: ListBox code regression in wfxApplication.inc WM_ERASEBKGND handler that caused excessive visual flicker (ControlType.ListBox was accidently set to ControlType.ListView).
- Fixed: ListView now draws significantly faster becase only affected changed visible line items invoke a redraw of the ListView. Uses ListView_IsItemVisible to determine if item is visible.
Version 2.0.1 (December 13, 2019)
- Added: Month Calendar control.
- Added: DateTimePicker control.
- Added: TabControl control. (still a work in progress but it is currently usable).
- Added: ToolTip and ToolTipBalloon properties for most controls.
- Added: New form property called ChildForm. Creates form with WS_CHILD style and is used when specifying child Tab Pages for Tab Control.
- Changed: Updated German language file as provided by Joerg Buckel.
- Fixed: ListView Hover event was not removed from the Visual Designer list of selectable methods.
- Fixed: ListView GPF if number of defined subitems did not match number of defined columns.
- Fixed: ListView regression whereby mouse clicking on checkbox item was not being recognized.
- Fixed: ListView GPF if horizontal scroll bar moved to the right and then all columns deleted.
- Fixed: ListView text property changes were not being immediately displayed (programmer would have to do a manual call to Refresh first).
- Fixed: Attempting to close an unsaved new file belonging to an open project would not remove the reference to that file from the project.
- Fixed: Bug whereby switching amongst Forms would cause changed Property values to also follow to the newly selected form and cause that form to show as "dirty" and needing to be saved.
- Fixed: RichEdit TextAlign property not showing a list of valid choices.
Version 2.0.0 (November 21, 2019)
- Added: New Project template options: None; Blank Document; Visual Designer; Console; Windows DLL; Static Library.
- Added: ListView sort (ascending or descending) by a specified SubItem column index. ListView.Items.SortByColumn( nSortColumn, bSortAscend ).
- Added: ListView Click event now sets e.KeyChar = 13, e.KeyCode = VK_RETURN, whenever ENTER is pressed on a selected row.
- Fixed: ListView would "automatically" select the row under the cursor even if you don't click on it. Fix required removing the ListView MouseHover event.
- Fixed: "Open Templates" menu option was disabled if no file/project was already opened.
- Fixed: Removed extra separator bar between the "Replace" and "Goto Line" top menu items.
Version 1.9.9 (November 17, 2019)
- Added: New method Form.ShowChild allows displaying a Form as a child (WS_CHILD). This allows forms to act like child panel controls.
- Added: ListView DoubleClick, RightClick events.
- Added: ListView Click event will now also fire if ENTER is pressed on a ListView line.
- Changed: ListView Columns.Add now only requires Text parameter with Width (default 100 pixels) and Alignment (TextAlignment.Left) being optional.
- Fixed: ListView Click event was not returning correct e.ListViewRow, e.ListViewColumn values.
- Fixed: When items are insert/remove from ListView/ListBox/ComboBox then their Index properties are now updated to accurately reflect their new position within the collections.
- Fixed: Bug in Replace All whereby start search position was incremented by length of the find phrase rather than the replace phrase.
- Fixed: Compile would fail if RichEdit exists in a project but no TextBoxes also exist in the project.
Version 1.9.8 (November 7, 2019)
- Added: ListView ItemSelectionChanged event.
- Added: ListView ColumnClick event.
- Added: ListView.BeginUpdate and ListView.EndUpdate for situations when adding many items during a bulk add.
- Added: ListViewRow, ListViewColumn to the e EventArgs passed to certain ListView event handlers.
- Added: Code to manipulate ListView Columns Text, Width, Alignment, Add, Insert, Remove, Clear for situations outside of the Form's Initialize event.
- Fixed: Much faster deallocation of memory for large collections of items for controls like ListView and ListBox.
- Fixed: ListView Click event now only fires once rather then three times when fired.
- Fixed: freebasic_keywords.txt to remove duplicate entries (thanks cbruce).
- Fixed: Regression fixed whereby compile would fail for source code files that have spaces in their full path filename. However, the problem still persists if your WinFBE installation folder contains spaces. Install WinFBE to locations with folder paths containing no spaces until a permanent fix can be found for this problem.
Version 1.9.7 (November 2, 2019)
- Fixed: ListView notifications (Events) failing on 64 bit compiles.
- Fixed: Added back several missing Codetip popup items for the ListView.
Version 1.9.6 (November 2, 2019)
- Added: ListView HitTest method. Determines what (if any) ListView Item and/or SubItem has been clicked on. HitTest( iItem, iSubItem )
- Fixed: Removed "TextChanged" event from the ListView.
- Fixed: ListView Events were not firing due to missing integration code.
Version 1.9.5 (November 1, 2019)
- Added: ListView control.
- Added: Visual designer projects create WinFBE_VD_MAIN.bas that contains EQUATES to activate all controls that are present in the project. This helps reduce EXE size.
- Added: ListBox Insert method.
- Changed: Remove the Visual Designer sample project (a new one will be added in the future).
- Fixed: WinFBE project files for the those found in the "Sample_Projects" folder.
Version 1.9.4 (October 1, 2019)
- Fixed: Updated the WinFBE.ini file to correct path to compiler.
- Fixed: Removed the Tool UPX.
- Fixed: Created a SetCompilerSwitches.ini configuration file for the SetCompilerSwitches Tool.
Version 1.9.3 (September 30, 2019)
- Changed: Updated WinFBE source code to be FB 1.07.1 compatible. WinFBE32.exe and WinFBE64.exe compiled using FB 1.07.1-gcc-5.2.
- Changed: Updated Italian language translation file thanks to Massimiliano.
- Changed: Updated German language translation file thanks to Joerg Buckel.
- Added: Alternate toolchains for gcc versions 8.3 and 9.2. Use the user Tool SetCompilerPathsII to switch between toolchains.
- Added: Config file is re-read just prior to starting the compiling process. Useful for 3rd party tools that modify the config.
- Alternate GCC Toolchains for versions 8.3 and 9.2 available as separate downloads.
- Fixed: For TextBox and RichEdit the default value for CharacterCasing was being set as "CharacterCasing.Normal" when it should have been "CharacterCase.Normal".
Version 1.9.2 (August 25, 2019)
- CHANGED: TOO MANY VISUAL DESIGNER CHANGES TO LIST
- Added: Language translation for Brazilian-Portuguese by Marco Pimenta (mvpimenta).
- Added: "Frac", "Date", "Format" keywords to editor syntax highlighting.
- Fixed: Controls property "BorderStyle" not correctly set when dynamically applying WindowStyle and WindowExStyle.
- Fixed: "Visible" property of controls reported the "Enabled" value after control was created.
- Fixed: Label controls could lose their OwnerDraw abilities if visibility was toggled.
- Fixed: Changing selected Build Configuration via F7 dialog did not set the correct build in combobox in the main toolbar.
- Fixed: Random GPF when adding Form files via the "Add Files to Project" menu option.
Version 1.9.1 (March 25, 2019)
FYI - (The visual designer is still a work in progress)
- Added: PictureBox autocomplete popup properties.
- Added: 'Horizonal Spacing' menu option to horizontally space a selected group of controls.
- Added: 'Vertical Spacing' menu option to vertically space a selected group of controls.
- Added: Some missing Button control Image related autocomplete popup properties.
- Added: The -b compile flag when compiling Modules. This allows non *.bas files to be compiled.
- Added: Compile time messages (#print/#error) and "C" compile are now output to the Compiler Results listview.
- Added: WinFBE source code is now included in the WinFBE Suite download.
- Added: Several new color and text align options for ListBox.
- Changed: Updated Italian language file thanks to Massimiliano.
- Fixed: Regression that caused compiling of individual modules to object files in a project to fail.
- Fixed: Compile errors now correctly display any hidden folded error line.
- Fixed: Regression from 1.9.0. Frame BackColor property inadvertantly changed to BackColorHot.
- Fixed: Find/Replace popup dialog would not position correctly when Main for was resized or moved.
- Fixed: TextBox. Added ES_AUTOVSCROLL for multiline textboxes when AcceptReturn = True.
- Fixed: Regression from 1.8.7. GCC 8.1 32-bit now correctly installed. 64-bit was correct 8.1 version.
- Fixed: Resize flicker for controls/form in visual designer.
Version 1.9.0 (January 22, 2019)
- Added: Goto Header file (.bi) (Ctrl+Shift+H). Option found in Search / Code Navigation.
- Added: Goto Code file (.bas, .inc) (Ctrl+Shift+C). Option found in Search / Code Navigation.
- Added: Goto Main file (.bas) (Ctrl+Shift+M). Option found in Search / Code Navigation.
- Added: Goto Resource file (.rc) (Ctrl+Shift+R). Option found in Search / Code Navigation.
- Added: Explorer treeview subnodes to hold Header, Resource, Main, Module, Normal files (for Projects only).
- Added: User Snippets (insert user defined code snippets).
- Added: Image Manager.
- Added: Image related properties for the Button control and Form.
- Added: PictureBox control.
- Added: A search textbox added to Function List (filters the function list based on the search term).
- Added: Creating a New Project will automatically add a default empty .bas main file (unsaved) to the project for convenience.
- Added: Environment Option to Check for update at startup (once per day).
- Added: Check for Updates added to Help menu.
- Added: Next Tab, Previous Tab, Close Tab to the Search menu (Tab Navigation submenu).
- Added: Next Function (Ctrl+PgDn), Previous Function (Ctrl+PgUp) to the Search menu.
- Added: New About form replaces the generic messagebox.
- Added: Pressing F6 or selecting "Sub/Function Definition" will open any #Include file on the current editing line.
- Added: Additional info outputted to "Compile Log File" in Output window (Full compiler command line, filesize, compile time, error/warning count).
- Added: "Open Templates... (Ctrl+T)" in the "File" menu. Previously, templates could only be accessed from the Toolbar.
- Added: Sub/Function Definition (F6) will now work on Sub/Functions that are part of TYPE classes.
- Changed: You must now hold down the SHIFT key to drag and drop tabs in the top tab control to reorder any open document tabs.
- Changed: Updated FreeBasic Compiler to November 22, 2018 Nightly Build.
- Changed: Lots of internal code refractoring. Many efficiencies found with regards to loading files/projects, saving, and displaying files. More internal code cleanup to occur in the next few future releases.
- Changed: Removed loading of multiple projects into WinFBE at the same time.
- Changed: When project is active, "Open File" will add file to project open it. "Add Files to Project" will only add the files to the Project but not display it.
- Changed: Removed the option to display the successful compile results dialog. Result will now only show in the statusbar.
- Changed: Any missing non-English translation phrases will now use the English phrase rather than nothing at all.
- Changed: Moved "User Tools" from Options menu to "Tools" menu.
- Changed: File Open file types now have *.inc included in "Code files". "FB Include files" change to "Header files".
- Changed: Moved Bookmark menu entries to "Bookmarks" submenu of the "Search" menu.
- Changed: Removed the "Save Declares File" menu option as it is obsolete.
- Changed: Updated Spanish language translation file by José Roca.
- Changed: Updated German language translation file by Joerg Buckel.
- Changed: Updated Chinese language translation file by ganlinlao.
- Fixed: Modified English.lang file to compress by 58 entries. Other language files will need to be slightly modified by their respective authors.
- Fixed: Some issues with right-click menu on #Include line to display "Open <include filename>" when a project is open.
- Fixed: F3/Shift+F3 Find/Find Next accelerator tweaked slightly to ensure previously selected text gets searched.
- Fixed: Parsing of multiline characters where both /' and '/ appear on the same line.
- Fixed: Infinite loop when responding "No" to reload a currently loaded file that has been modified outside of WinFBE.
- Fixed: The search option for 'Sub/Function Definition (F6)" was not correctly finding SUBS (Functions worked okay).
- Fixed: Localization language editor in Environment Options / Localization not allowing editing (incorrect logic).
- Fixed: Graceful creation of a default WinFBE.ini config file should it be missing or corrupted.
- Fixed: The "Wait" cursor now correctly and consistently shows when loading a project, compiling code, or loading many files.
- Fixed: Occasional problem of resizing/dragging of Explorer panel would not stop after left mouse buttonup action.
- Fixed: No longer allow Read Only files to be edited. Statusbar message shows "Read Only".
Version 1.8.7 (December 9, 2018)
- Added: Click and Popup menu handlers are now created with a pre-populated SELECT CASE of menu item names.
- Added: DoubleClick on Form area will now toggle to the code editor.
- Changed: "Project", "Add Files to Project" no longer automatically shows the loaded files in the editor (via the top tab control).
- Fixed: Flickering of the statusbar message "Parsing: <filename>" when loading large projects.
- Fixed: Delay when exiting WinFBE when large projects are active.
- Fixed: 'State' label too wide and partially overlapped 'Checked' checkbox in Menu Editor.
Version 1.8.6 (December 7, 2018)
- Added: Localization file creation and editing. "Options" / "Environment Options" / "Localization".
- Added: Check to prevent duplicate menu names that would result in a compile time error.
- Changed: Removed the Environment option to specify the WinFBX chm help file. WinFBX help is now displayed using the markdown help browser.
- Fixed: With AutoIndentation enabled, ELSEIF will now line up correctly to the parent IF/THEN headers.
- Fixed: Background transparency of several Up/Down png graphics used within the editor.
- Fixed: GPF for new Forms created since version 1.8.5. This was a regression in 1.8.5.
Version 1.8.5 (December 2, 2018)
- Added: Main Menu Editor and menu code generation for the visual designer.
- Added: Sort alphabetically the filenames in the Help Viewer treeview nodes.
- Changed: Removed Form property "ShowInTaskbar" as I could not implement reliable code to support it.
- Fixed: With AutoIndentation enabled, all entered ELSE/ELSEIF and CASE/CASE ELSE lines now line up correctly to their parent IF/THEN or SELECT CASE headers.
- Fixed: Help Viewer treeview height now matches the height of the embedded web browser.
- Fixed: Code introduced to help fix random situation whereby the screen cursor remains as a spinning wait icon after a failed compile attempt.
Version 1.8.4 (November 13, 2018)
- Added: View ToolBox menu item is now implemented.
- Fixed: Canceling New Project creation would not erase new project in memory object.
- Fixed: Help Viewer screen flickering by adding WS_CLIPCHILDREN WS_CLIPSIBLINGS window styles.
- Fixed: Help Viewer treeview nodes are now selected to reflect the currently loaded help page.
- Fixed: When Help Viewer has focus, accelerator keys no longer act on the code editor.
- Fixed: Sizing of embedded Help Viewer web browser so it resizes correctly at bottom of the form.
Version 1.8.3 (November 10, 2018)
- Added: Back, Forward, Print, Find buttons to the Help Viewer display dialog.
- Added: MaximizeBox, MinimizeBox to the Help Viewer display dialog.
- Changed: The generated HTML help file code no longer imposes a fixed page width of 728 pixels.
Version 1.8.2 (November 8, 2018)
- Added: CMaskedEdit control (from the WinFBX Library framework).
- Added: ComboBox control.
- Added: Code editor Calltips for the Frame control.
- Added: New Help system for WinFBE and WinFBX.
- Fixed: CheckBox and OptionButton now correctly test for BN_CLICKED notification.
- Fixed: "Custom Color" label in the PropertyList color picker would not display properly in WinFBE64.
- Fixed: Pressing TAB key in the Replace popup form (Ctrl+R) will now move keyboard input focus between the Find and Replace textboxes.
Version 1.8.1 (October 7, 2018)
- Fixed: Regression causing build combobox to immediately close when clicked.
- Changed: Updated the Spanish language file (thanks Jose Roca).
Version 1.8.0 (October 6, 2018)
- Added: Merged pull request 7c5fb4d from skyfishtb. Parsing of ENUM and REDIM.
- Added: Delete any previously existing compile output file (ie. .EXE, .DLL, .a) so it will not exist should the compile fail.
- Added: Code editor Calltips for the ListBox control.
- Fixed: Updated gcc.exe to correct 64 version.
- Fixed: Corrected libexec subfolder names for 32/64 bit versions of cc1.exe (part of the gcc toolchain).
- Changed: Updated Italian language file (thanks Massimiliano).
- Changed: Updated German language file (thanks Joerg Buckel).
Version 1.7.9 (September 1.7.9)
- Fixed: Relative paths in User Tools commands failing after compiles (a compile would change current folder).
- Fixed: Per 1.7.8, accidentally neglected to include latest FBC nightly build and GCC 8.1. It is now included in 1.7.9.
Version 1.7.8 (September 4, 2018)
- Added: Resulting file size of successful compiled EXE now shows in the status bar.
- Fixed: Compile error output not correctly parsed in cases where filenames contain embedded parenthesis.
- Fixed: Situation where editing property and switching to different control could cause the property value to transfer to that control incorrectly.
- Changed: FB 32/64 compilers updated to Sept 2, 2018, nightly build.
- Changed: GCC compiler updated to version 8.1.
- Changed: Merged both 32 and 64 bit FB compilers into one folder.
- Changed: Updated code (WinFBE, WinFormsX, WinFBX) to prevent warnings due to stricter CAST type checking in latest FB nightly build compiler.
- Changed: Successful compile popup messagebox will now display in cases where only compiler warnings (and no errors) exist.
- Changed: Environment option "Hide successful compile results message" changed to "Hide compile results message (popup)". Non-English language files will need to be updated.
Version 1.7.7 (August 27, 2018)
- Added: Merged pull request from skyfish4tb for additional top tab control closing options. Thanks!
- Added: OptionButton and Frame codetips.
- Added: Form Initialize event.
- Changed: Control refresh/repaint called when Text property changed.
- Fixed: Regression: Ctrl/Shift Arrow keys not moving/resizing controls in designer.
- Fixed: Regression: GPF when ListBox row selection changed.
- Fixed: Compiles with only warnings (no errors) will now allow the resulting EXE to execute.
Version 1.7.6 (August 26, 2018)
- Added: Grab handles for locked controls/form now show using red color.
- Added: BackColorHot property for Button controls.
- Fixed: Label mouse double click caused a GPF.
- Fixed: Changed all MID function code to use ** with CWSTR variables.
- Fixed: Align and/or Resize for groups of controls was not respecting the Locked status.
- Fixed: Center in form horizontally/vertically was not correctly accounting for High DPI resolutions.
Version 1.7.5 (August 22, 2018)
- Added: OptionButton toolbox control.
- Added: Frame toolbox control.
- Added: Implemented logic for controls "Locked" property.
- Added: Implemented logic for top menu option "Lock Controls" (this is a global override locking the form and all controls on the form).
- Added: Pasting controls automatically increments the TabIndex property for the newly created controls.
- Added: Entering an existing TabIndex number will automatically re-number all higher TabIndex value controls.
- Changed: Greatly refactored the underlying WinFormsX code dealing with the message pump and keyboard input handling and modal/modeless forms.
- Fixed: Pasting controls was not immediately setting the form dirty thereby not saving the changes.
- Fixed: Dropdown combobox in ToolBox that displays list of controls for the form was not updating when controls deleted from the form.
- Fixed: AutoInsert inserting "End Function" and/or "End Sub" in situations when it should not. Fix from 1.7.4 failed on "FUNCTION =" lines.
- Fixed: Keyboard focus is now correctly restored when a popup modal form is closed.
Version 1.7.4 (August 12, 2018)
- Added: Loading of WinAPI codetips (\settings\codetips_winapi.ini).
- Changed: Removed Bookmark color and WinAPI Keywords color. Basic themes will automatically be updated. USER DEFINED THEMES WILL NEED TO BE MANUALLY UPDATED. Sorry.
- Changed: More specific error message for type of Help file not found.
- Changed: Replaced FB's COMMAND with unicode aware replacement AfxCommand.
- Changed: Commented out Scintilla code for SCI_SETFONTQUALITY and SCI_SETTECHNOLOGY to see if it helps in displaying older *.fon bitmap font files.
- Fixed: User Tool problem assigning accelerator key
- Fixed: "Save Declares File" menu option was not outputting SUB declarations (only FUNCTIONS).
- Fixed: AutoInsert inserting "End Function" and/or "End Sub" in situations when it should not.
- Fixed: Calltips disappearing after typing characters past the opening "(" that triggered the codetip.
- Fixed: Corrected triggers for Autocomplete popups.
- Fixed: Button TextAlign property not having effect at runtime.
- Fixed: Locked property causing compile time error (property still not implemented yet however).
- Fixed: Form Resize event was not firing after the Load event.
- Fixed: Greatly speed up the Replace All for large documents with many phrases to be replaced.
Version 1.7.3 (August 8, 2018)
- Added: Function names will now display for code files that do not have a disk filename (especially useful for QuickRun files).
- Changed: Updated Italian language file.
- Changed: Changing back colors of a button now also calls button refresh.
- Changed: Temporarily removed some Properties that have not been fully implemented in order to prevent compile time errors.
- Fixed: Compiler output listview now properly shows Form file error lines (adjusted to remove metadata and codegen lines).
- Fixed: Help file displaying "Not found" error for fully qualified path names.
- Fixed: TextBox WordWrap property was coded incorrectly.
- Fixed: TextBox HideSelection property was coded incorrectly.
- Fixed: TextBox CharacterCasing property not correctly referencing the CharacterCase Enum.
- Fixed: TextBox TextScrollBars property changes not reflected visually in the visual designer.
- Fixed: TextBox AcceptTab property was not fully implemented.
Version 1.7.2 (August 3, 2018)
- Added: Completed ListBox control documentation and tips.
- Fixed: Regression from 1.7.1 preventing text input into PropertyList items (Name, Text, etc).
Version 1.7.1 (August 2, 2018)
- Added: TextBox TextChanged event.
- Added: (ToolBox) Event descriptions for Destroy, GotFocus, LostFocus, MouseEnter, MouseHover, MouseLeave.
- Added: (ToolBox) Ability to use keyboard arrow keys to traverse list of Events for a control.
- Added: (ToolBox) Ability to use keyboard Space key to toggle select/unselect of an Event for a control.
- Added: BackColorDown to popup codetips for Button objects.
- Added: Duplicate check for Form and Control names.
- Added: Check to remove invalid characters from Form and Control names.
- Added: Documentation for the global/shared Application variable.
- Added: wfxApplication class codetips (for the global Application variable).
- Added: wfxColors class codetips (for the global Colors variable)
- Added: Changing a form or control name will automatically any code that references the old name.
- Added: Compiler Setup fields for WinFBX Help file.
- Added: New top menu Help options for WinAPI and WinFBX
- added: Pressing "DELETE" key will now delete the selected group of controls.
- Changed: Removed the "On" prefix from the documentation for Methods related to forms and controls.
- Fixed: SelectAll not selecting all code text for visual designer forms when the code editor is active.
- Fixed: If visual design form had focus, typing characters would enter those characters into the code editor.
Version 1.7.0 (July 29, 2018)
- Added: Button BackColorDown property added. The ThemeSupport property must be set to False.
- Fixed: Right click mouse popup menu not showing in code editor of a visual designer form.
- Fixed: Added a Relative path check for Help files.
Version 1.6.9 (July 27, 2018)
- Changed: Removed the Preparse database and replaced with static database codetips_winfbx.ini
- Fixed: Some TYPE elements not showing in popup codetips (eg. Text property for Button).
Version 1.6.8 (July 25, 2018)
- Added: Form KeyPreview property.
- Fixed: Ability to unset any previously set button for the form properties: AcceptButton, CancelButton.
- Fixed: Positioning to wrong error line when error in visual designer code file.
- Fixed: Incorrect code generation for CheckBox BackColor.
- Fixed: Color System MenuText had a typo causing error during compilation.
- Fixed: QuickRun was not working for Form source files.
- Fixed: Changed RedirConsoleToFile function to use WSTRING rather than ZSTRING.
- Fixed: Changed CreateChildProcess function to use WSTRING rather than ZSTRING.
- Fixed: Form reload when source code changed by external editor.
- Fixed: GPF during cut or copy operation if Form is part of the selected group of controls.
Version 1.6.7 (July 22, 2018)
- Fixed: Regression from 1.6.6 related to project loading and duplicate event handlers.
Version 1.6.6 (July 22, 2018)
- Fixed: Many changes related to the experimental visual designer.
Version 1.6.5 (July 15, 2018)
- Added: Visual Designer enabled but it is limited and experimental at this point.
- Added: FreeBASIC Compiler nightly build July 3, 2018 (32 and 64 bit versions).
- Added: Extended style to the Explorer treeview to give it modern looking icons rather than +/- boxes.
- Changed: Removed WinFBX include paths from "Environment Options" / "Compiler Setup". No longer needed.
- Fixed: Quick Run was failing when invoked against unicode editor files. Temp file now output using correct unicode settings.
Version 1.6.4 (June 3, 2018)
- Fixed: Tweak code related Codetips to fix several regressions preventing TYPE elements from displaying.
Version 1.6.3 (June 2, 2018)
- Added: WinFBE_Suite package as an attached binary release. Includes all-in-one package to start coding immediately. Editor, compiler, help files, include files.
- Added: Automatically create and use preparsed sub/function definitions from the compiler's \inc folders. The database is stored in the "settings" folder in files "preparse_timestamps.ini" and "preparse_database.ini".
- Added: French language localization file. Thanks to Marc Pons.
- Changed: If option to display Codetips is OFF, then files are not parsed for anything other than Subs/Functions.
- Fixed: Regression adding incorrect leading spaces for IF/THEN autoinsert blocks.
Version 1.6.2 (May 27, 2018)
- Fixed: Conflicting issue with AutoComplete and AutoIndent config flags.
Version 1.6.1 (May 26, 2018)
- Added: Help/About now shows if running 32 or 64 bit version of WinFBE.
- Fixed: Explorer treeview and popup Function List were not displaying SUB routines.
- Fixed: Autoinsert was testing for AutoIndent config flag rather than AutoComplete flag.
Version 1.6.0 (April 19, 2018)
- Added: italian.lang lanuage file thanks to Massimiliano Argenti from the PlanetSquires forum.
- Added: czech.lang lanuage file thanks to Norcom (Robert) from the PlanetSquires forum.
- Fixed: QuickRun in top menu now correctly disabled when a Project is active.
- Fixed: Endless loop if file remained opened in editor but deleted manually from disk.
- Fixed: Corrected instances where the Autocomplete popup list would appear when it should not.
- Fixed: Corrected saving/restoring Explorer width when moving between high/low resolution monitor settings.
Version 1.5.9 (February 6, 2018)
- Added: '#RESOURCE "resourcefilename" compiler directive to be embedded in the code of the main file being compiled.
Version 1.5.8 (February 5, 2018)
- Fixed: In non-project situations, file would get loaded into File Explorer multiple times after each F4 Function selection.
Version 1.5.7 (February 4, 2018)
- Added: Dual pane split screen file editing.
- Added: Multiline comment support to scintilla dll editing component. /' '/
- Added: Additional error check to report failed GoRC resource file compiles.
- Added: Autoinsert completion for CONSTRUCTOR, DESTRUCTOR, ENUM constructs.
- Changed: Removed WinFBX Library from the distribution. Get it from: https://github.com/JoseRoca/WinFBX
- Changed: Better handling of auto insert of IF/THEN single and and other mulitline statements.
- Changed: Much improved autocomplete and codetips to handle shared/local variables and TYPE's.
- Changed: Latest scintilla dll for Win32 and Win64.
- Changed: Scaled some icons to display larger at higher screen resolutions.
- Fixed: Popup autocomplete list will not show if activated as part of commented line (line commented using an "'").
- Fixed: When multiple projects open selecting an open file would add that file to whatever the current active project was resulting in the file being linked to several open projects. This was not the intended behaviour.
Version 1.5.6 (November 26, 2017)
- Changed: Updated to use WinFBX Library Version 1.0.
Version 1.5.5 (September 27, 2017)
- Changed: Updated deutsch.lang language file thanks to Joerg Buckel.
- Changed: Instances of IFF&() changed to IFF() and SPACE$() to SPACE()to allow compiling with FBC 1.06.
- Changed: WinFBE32.exe and WinFBE64.exe now compiled using FBC 1.06.
- Fixed: Error in #Define in modSciLexer.bi.
Version 1.5.4 (September 26, 2017)
- Added: StatusBar now displays number of lines in the loaded document.
- Added: Chinese language file created by Steven Hua.
- Changed: Cleaned up code where appending unnecessary "\" to AfxGetExePathName function calls.
- Changed: Updated WinFBX library to Release Candidate 31.
Version 1.5.3 (September 6, 2017)
- Added: compiler set new field added for WinFBX library path.
- Changed: Modified some AfxStrRemove code when "&" character is removed would interfere with Chinese localization.
- Changed: Editor option "Confine caret to text" is now checked by default.
- Changed: Removed DShow_PlayClip example project due to potential include file conflicts.
Version 1.5.2 (September 4, 2017)
- Added: Import theme from external disk file (unicode or ansi).
- Added: Able to set Bold, Italic, Underline fonts for code editor elements: Text, Comments, Keywords, Line numbers, Operators, Preprocessor, and Strings.
Version 1.5.1 (September 3, 2017)
- Fixed: Accidentally included unfinished visual designer code in v1.5.0 release.
Version 1.5.0 (September 3, 2017)
- Added: Theme support. Create user defined color themes.
- Added: Default Theme and Visual Studio Code (Dark) theme.
- Added: "User selected" option when choosing colors allows user to select any color rather than just the predefined ones.
- Added: Environment option to show/hide main window Toolbar and Statusbar.
- Fixed: Screen artifacts on code window when Explorer resized.
Version 1.4.9 (August 31, 2017)
- Changed: If "Allow multiple instances" is unchecked, then subsequent file opens will open in the current active editor instance.
- Changed: Filters for "Save As", "Save Declares File", "Open', "Insert File" and "Select Compiler".
- Fixed: Explorer Treeview filenames immediately resorted when filename changed (new file or save as).
Version 1.4.8 (August 25, 2017)
- Changed: Failed results when compiling individual module files to object files are now displayed.
- Changed: Corrected captions on save dialogbox for "Save As", "Save Declares File", "Save Project As".
- Fixed: Compiling failed in situations where spaces in file path to compiler (CreateProcess and/or FBC assembling would fail).
Version 1.4.7 (August 23, 2017)
- Changed: Replaced FB's OPEN PIPE with WinAPI in order to prevent console window on screen during compiling.
Version 1.4.6 (August 23, 2017)
- Changed: "Save Declares File" now defaults to *.bi file extension rather than *.bas.
- Changed: Converted compiling process from batch file to Pipe in order to better handle international languages.
Version 1.4.5 (August 20, 2017)
- Fixed: Improve several areas for better high DPI compatibility.
Version 1.4.4 (August 18, 2017)
- Added: Determining if "Run Executable" file exists now checks for any defined "-x" compiler switch.
- Added: User Tool paths for Command and Working Folder will adjust drive letter to current drive should specified location be invalid. This allows you to run the tool on systems where the assigned drive letter may change (eg. when using a portable hard drive).
- Changed: Converted Find/Replace icons to PNG format and better optimized the Find/Replace dialog for High DPI settings.
- Changed: Updated the German language file.
Version 1.4.3 (August 12, 2017)
- Added: User Tools dialog (and top menu "Tools").
- Added: Editor option "Right edge margin".
- Added: Project option to create generic resource file and manifest (if none already exists).
- Changed: Updated CWindow framework to Release Candidate 31.
- Changed: All Templates and Sample Projects updated.
- Changed: Clicking "File Encoding" value in StatusBar now shows popup menu instead of cycling through choices.
- Fixed: Issue where cancelling "New Project" dialog would internally still set flags that a new project was being created.
Version 1.4.2 (August 5, 2017)
- Added: "Options" top menu item and moved "Environment Options" and "Build Configurations" under it.
- Changed: Updated CWindow framework to Release Candidate 30.
- Fixed: GDI resource leak when Find/Replace dialog invoked multiple times.
Version 1.4.1 (August 3, 2017)
- Added: Major change. New Build Configuration system.
- Added: Quick Run (added to Compile menu and Toolbar).
- Added: Option (Environment Options :: General Options) for "Ask before exiting the editor".
- Added: Check added to catch whether a loaded file has been *deleted* by something external. Message now displays asking whether to keep file open or close it.
- Change: The "Run Executable" functionality now runs the currently active source code file should the EXE exist. Previously would always run the most recently executed exe.
Version 1.3.9 (July 25, 2017)
- Added: Option (Environment Options :: Compiler Setup) to run compiled programs from a spawned command window. Useful for catching runtime errors.
Version 1.3.8 (July 22, 2017)
- Added: More robust error reporting for Runtime errors trapping that was added in 1.3.7.
Version 1.3.7 (July 22, 2017)
- Added: Runtime errors are trapped and reported in WinFBE if any of the -e error checking is enabled.
- Changed: Comment Blocking no longer comments lines containing just spaces.
Version 1.3.6 (July 21, 2017)
- Fixed: Regression 1.3.4 #CONSOLE ON|OFF incorrectly overriding GUI/CONSOLE setting in some cases.
Version 1.3.5 (July 15, 2017)
- Added: Mixed Case keyword option in "Environment Options | Code Editor".
Version 1.3.4 (July 13, 2017)
- Added: User can embed '#CONSOLE ON|OFF compiler directive directly in main file source code.
- Added: Compile log checks for "ERROR" and "COMPILING C FAILED".
- Changed: Comment Blocking no longer comments blank lines.
Version 1.3.3 (May 14, 2017)
- Updated unicode file buffer handling.
Version 1.3.2 (May 4, 2017)
- Fixed: Find dialog was not showing number of matches when word highlighted in code editor and then Find dialog displayed.
- Fixed: Repaint issue with Find/Replace dialog.
- Fixed: Newly added subs/functions not being added to Function List when file was saved.
- Changed: Replaced all occurrences of DIR(), CURDIR(), EXEPATH() with Afx versions in order to better handle unicode languages.
- Changed: Totally reworked the way WinFBE handles file encoding for ansi/utf/utf8bom/utf16bom files.
Version 1.3.1 (March 29, 2017)
- Fixed: Regression with Function List showing two copies of all subs/functions contained in loaded files.
Version 1.3.0 (March 24, 2017)
- Changed: Major internal changes. Project management; multiple projects. Too many changes to list.
- Changed: New Find/Replace functionality. Much more like that found in code editors like VSCode.
Version 1.2.4 (February 7, 2017)
- Fixed: Regression with the "Replace" dialog not correctly searching for phrase to replace.
Version 1.2.3 (February 7, 2017)
- Added: "Rebuild All" menu option. Re-compiles all modules to object files rather than reusing existing version of the file.
- Changed: Duplicate Line (Ctrl+D) will now duplicate entire block of selected text and not just the current caret line.
- Changed: TODO messages can now appear anywhere at start of a line (not only at the first character position).
- Changed: Substantially increased the width of the compiler "Other Options" textboxes in Project Options.
- Fixed: Cleared internal structures for function names, TYPES, etc when a document is closed.
- Fixed: Clearing MRU list from top menu now immediately updates list shown in Explorer window.
Version 1.2.2 (February 2, 2017)
- Added: Find in Files functionality added.
- Added: Add "TODO" messages directly in code via 'TODO: or ' TODO: List shows in Output window / TODO tab.
- Added: New tab in Output window for "Notes". Notes are saved on a per project basis.
- Added: File Menu option to "Save Declares File". Auto generates a Declare file for all Sub/Functions that you can #Include into your project.
- Added: #Include files are now parsed for Sub/Function declaration Codetips.
- Added: ProgressBar in StatusBar during compiling progress.
- Added: Localization translations for Russian and Ukrainian compliments of ur_naz.
- Changed: Refined autocomplete insertions for SUB/FUNCTION/PROPERTY/TYPE/UNION.
- Fixed: Regression from v1.2.1 whereby cursor would not change to arrow during application start.
- Fixed: Loading Template did not increment the Untitled 1,2,3 .bas filename numbering.
- Fixed: Autocomplete insertions (eg. IF/THEN, FOR/NEXT) now honours the keyword casing as defined by the user.
Version 1.2.1 (January 14, 2017)
- Added: German localization file (deutsch.lang) compliments of Tom Dehn.
- Added: Drag/Drop document tabs for the open code editor windows (top tabcontrol). Inspired by Pierre Bellisle.
- Fixed: GPF would occur if trying to open a zero length disk file.
Version 1.2.0 (January 1, 2017)
- Added: Autocomplete feature for IF/WHILE/FOR/SELECT/FUNCTION/SUB/PROPERTY/TYPE/UNION
- Added: Autocomplete displays data type list after "AS" is typed.
- Added: Codetip popups for builtin FreeBASIC keywords and user defined subs/functions.
- Added: Missing FB keywords: CULNG, CULNGINT, BOOLEAN
- Added: New sample projects: RichOleDemo, Treeview, ToolbarRebar
- Changed: Updated the Spanish language file.
- Changed: Compiler Output window will close on successul compile if no warnings/errors and listview was previously active.
- Changed: Font quality now uses the SC_EFF_QUALITY_DEFAULT flag.
- Fixed: Newly created documents when saved now show in Recent Files list (if no project is active).
- Fixed: Situation where closed project resource file used in subsequent opened *.bas file.
- Fixed: FOS_FILEMUSTEXIST flag was missing in AfxIFileOpenDialogMultiple.
Version 1.1.0 (December 6, 2016)
- Added: Subfolder called "Sample_Projects" containing many sample projects as written by Jose Roca.
- Added: StatusBar panel 5 shows current compile results (Errors/Warnings). Clicking that panel shows/hide Output window.
- Added: Change cursor to hourglass during compile process.
- Changed: Project files are now saved to the project file as relative to the project disk filename (*.wfbe).
- Changed: Updated the Scintilla 32-bit DLL to version 3.7.1.
- Fixed: Situation where newly created untitled source filename could be saved to a project file (*.wfbe).
- Fixed: Correct font for Compiler Log output to be HighDPI aware.
- Fixed: Dropping of files onto editor (frmMain_OnDropFiles) now correctly opens regular files or projects.
- Fixed: Problem with "Untitled.bas*" files persisting in Project Explorer list even when untitled source file is closed.
- Fixed: Situation where removing/closing a file would continue to show its list of functions in the popup Function List.
Version 1.0.0 (Initial Release) (November 27, 2016)