1
1
Fork 0
mirror of https://github.com/QB64-Phoenix-Edition/QB64pe.git synced 2024-09-19 16:45:06 +00:00
Commit graph

1487 commits

Author SHA1 Message Date
Roland Heyder
66c357833b Font presets
- preset default custom fonts by platform, not all have lucon.ttf available
2024-07-17 11:33:55 +02:00
Roland Heyder
9487cfedf5 Some error handling
- fixed/added custom font error checking on IDE startup and in Options>Display... dialog
- added new settings folder to .gitignore list
2024-07-16 23:20:31 +02:00
Roland Heyder
3d311bd52f Implement config import
- ask user to import config files from another QB64-PE installation (triggered by absence of the settings folder, i.e. on a new installed release as we don't maintain the folder in the repo)
- simplified the other 1st time messages (use \n instead of the bulky +CHR$(10)), the messagebox function understands \n
2024-07-15 15:31:24 +02:00
Roland Heyder
390d20db0f Config refactoring
- all files maintained in qb64pe/settings now and addressed using file name variables instead of hardcoded names
- maintain recent/search histories according to the limits set in Options>Undo/History... dialog (saved in config.ini)
- update recent files in the File Menu only when needed (i.e. right before the menu is displayed) rather than on every change to the history
2024-07-15 15:22:04 +02:00
Roland Heyder
0b70a26985 Autosave optimized
- autosave.bin doesn't need to be opened and read anymore, instead it's mere existence flags the availability of a restorable backup
2024-07-15 15:09:31 +02:00
Roland Heyder
d0b8ae7635 Include splitting
- IDEsettings.bas cannot longer used, it's split into the usual global/methods pair and saved in source/ide/config
- new $INCLUDE lines in qb64pe.bas
- moved wiki methods $INCLUDE to a more appropriate place in ide_methods.bas
2024-07-15 14:59:34 +02:00
Roland Heyder
25d8d0f7ee Buffers adapted
- add new requirements, and remove no longer used code
2024-07-15 14:47:51 +02:00
Roland Heyder
75f86829aa Backup/Undo dialog retired
- the old Backup/Undo limit dialog was replaced by the new Undo/History limits dialog, which also allows to set the limits for Recent files and Search history
2024-07-15 14:41:52 +02:00
Roland Heyder
23ae2bd5e7 Fixed Compiler Options dialog
- some fixes according to the things I've learned now about the IDE dialogs
2024-07-15 14:30:17 +02:00
Roland Heyder
27a3bc26ae General dialog fixes
- fixed spacing calculation for action buttons (wrong string tested, dates back to SDL age, unbelievable nobody before recognized the spacing was wrong)
- in messagebox raise max. lines (needed later)
- also move bound check before index increment, formerly the index was incremented once more which lead to a subscript out of range later in the function
2024-07-15 14:21:39 +02:00
Roland Heyder
8ea4302239 Some file related refactoring
- using the new _READFILE$ and _WRITEFILE commands where applicable
- moved error handler changes inside CopyFile&() so we don't need to remember to do this before calling the function
  - fixed file tests complaining about missing error handlers
2024-07-15 13:00:47 +02:00
Roland Heyder
4a95ed0b79 $EMBED + save state fixes
- moved converter function from file.bas to qb64pe.bas, as it's rather compiler related than a common file function
- also fixed several "change state" related bugs (i.e. switching certain settings in the Options Menu will no longer mark the current code as "changed")
2024-07-15 12:41:27 +02:00
Roland Heyder
6a73fc4b42 New color schemes
- added 4 new schemes
- established somewhat of a logic order
2024-07-15 12:17:50 +02:00
Roland Heyder
275a63a2ad Common changes
- correct wrong information
- fix typos and capitalize keywords
- comment unused code
2024-07-15 12:12:57 +02:00
Samuel Gomes
43a97174fd Implement _MIDISOUNDBANK command 2024-07-03 12:29:38 +05:30
Samuel Gomes
291344d57d Fixed an old memset bug in midi_ma_vtable.cpp 2024-07-03 08:10:59 +05:30
Samuel Gomes
7f2f3153ce Deprecate and remove $UNSTABLE:MIDI & $MIDISOUNDFONT 2024-06-30 00:43:42 +05:30
Luke Ceddia
854b907aff
Source formatting 2024-06-27 19:39:20 +10:00
Luke Ceddia
6abe235c41
Avoid eating 0-argument functions used after L/UBOUND
This commit reverts 38e0ec37 9f81ba1e and 55c36576 which attempted
to fix the capitalisation of array names used with L/UBOUND, and
introduced the code-eating bug. It is replaced with an alternative
solution to the capitalisation issue.
2024-06-27 19:22:54 +10:00
Luke Ceddia
ecfd9147aa Require output name for formatting 2024-06-26 21:52:58 +10:00
Luke Ceddia
e7ef37054a Format 2024-06-26 21:52:58 +10:00
Luke Ceddia
81d23489ba Do not apply indentation to $IF-disabled lines 2024-06-26 21:52:58 +10:00
Luke Ceddia
dde46b7092 Support -f options for layout 2024-06-26 21:52:58 +10:00
Luke Ceddia
08315c8b15 Clear traces of line continuation 2024-06-26 21:52:58 +10:00
Luke Ceddia
f514fc7e36 Correctly output $include instead of included content when not formatting 2024-06-26 21:52:58 +10:00
Luke Ceddia
fed1abef3f Use native line endings 2024-06-26 21:52:58 +10:00
Luke Ceddia
23210b0452 Output formatted code with -y switch 2024-06-26 21:52:58 +10:00
Luke Ceddia
f63a111df4 Name InvalidLine sensibly 2024-06-26 21:52:58 +10:00
Roland Heyder
4cde18ef75 Rework histories to use buffers
- maintain search and recent files histories in buffers
- histories keep the  last 100 entries used
- buffers are saved to disk at exit and are restored on next IDE session
2024-06-23 19:25:56 +02:00
Roland Heyder
4e49a54e2b Update buffer system
- required changes (add line seek modes)
2024-06-23 17:49:32 +02:00
Roland Heyder
cd68fa311a Move function (refactor)
- move RemoveDoubleSlashes$() into utilities\file.bas and make it proper case
- adapt all calls to it accordingly
2024-06-23 17:21:06 +02:00
Roland Heyder
59d8777689 Longstanding bugs fixed
- Select All (CTRL-A) in the help text actually didn't select ALL after text was selected manually once before, because Help_cx1/_cy1 were not reset (bug goes back to the SDL versions)
- help text width is a known value, no need to set millions of chars
- fixed Definition lists eating the first char, if list introducer is followed by space
2024-06-19 15:43:16 +02:00
Roland Heyder
ef3b235d95 Improved blank line logic
- an explicit blank line check now cancels any pending request for an implicit one
- avoid blank lines between multiple successive horizontal rulers
2024-06-19 15:27:19 +02:00
Roland Heyder
c92a050116 IDE Help Menu revision
- added ´Metacommands´ and ´Variable Types´ items for direct access to the respective wiki pages
- reworded the item desciptions
2024-06-19 15:11:30 +02:00
Roland Heyder
718b900b07 IDE Help extension
- added further pages to the core pages queue
- added handling for new {{PageReferences}} wiki template
- added more name substitutes for the breadcrumb links
2024-06-19 14:58:29 +02:00
Samuel Gomes
33cb43e516 Add destination image support for _UPRINTSTRING 2024-06-06 01:19:20 +05:30
Luke Ceddia
90af0d6e73 Reliably enable window defocus on Linux
The FocusIn/FocusOut X11 events are more reflective of active
foreground window that Enter/Leave, which only relates to mouse
movement. In particular, FocusOut fires when Alt-Tabbing away
so the alt key is correctly released.

Also re-enable IDE defocus processing on Linux so the Alt key no
longer keeps the menus selected when Alt-Tabbing.
2024-06-03 08:07:41 +10:00
Steve McNeill
6a895f8405 Optimize string addition somewhat to reduce IDE lag
Very simple change here, to basically take:

a$ = b$ + c$ + d$ + e$ + f$

And make it:

a$ = b$ + (c$ + d$ + e$) + f$

....

This speeds up the IDE due to (c$ + d$ + e$) being small strings, while a$ and f$ are larger strings...  It's more efficient to move and add those small strings first, than it is to add them to the large strings, making them larger, at each step.
2024-06-02 16:34:15 -04:00
Luke Ceddia
e1028d67de
Zero memory on redim array of UDT
allocarray() previously assumed a variable size UDT had only
variable-length strings. This caused any numeric elements to
remain uninitialised.
2024-06-01 20:13:20 +10:00
Luke Ceddia
49f0471e03
Assume UDT sizes are whole number of bytes
This allows simplifying how the size of UDT arrays are calculated,
and thus not leave memory uninitialised when doing a redim that
expands the array size.
2024-06-01 20:12:59 +10:00
Samuel Gomes
9ed21b9b34 Bump version to 3.13.1 2024-05-15 20:23:38 +05:30
Samuel Gomes
96d3be2dbf Bump version to 3.13.0 2024-05-01 18:02:06 +05:30
Steve McNeill
b40a7fa264 Fix typo.
How the BLEEP did that happen?  /blush
2024-04-30 02:53:51 -04:00
Steve McNeill
595698115d Change to IDE reporting "Caused by SUB VWATCH" to make it "Caused by End of Program" 2024-04-30 02:46:30 -04:00
Roland Heyder
4c2aad55f7 Fixed Wiki links
Fixed wrong wiki page links after SELECT CASE caused by missing flags.
2024-04-29 22:06:05 +02:00
Roland Heyder
a09756b492 Added missing UTF8 code
Added a missing UTF8 char translation reported by Terry in the Forum.
2024-04-29 22:02:27 +02:00
Samuel Gomes
3d43883b6e Fix NOT working correctly when combined with other operators in an expression 2024-04-28 18:57:44 +05:30
a740g
0504b6f110 Fixes *_start.command bug in macOS 2024-04-28 11:26:37 +05:30
RainRat
f6c1da97fe fix typos 2024-04-25 21:21:39 -07:00
Samuel Gomes
06101c0a9a Modify the behavior of the _ANDALSO and _ORELSE operators to return -1 when the result is true 2024-04-10 20:06:57 +05:30