mirror of
https://github.com/QB64-Phoenix-Edition/QB64pe.git
synced 2024-09-20 09:04:43 +00:00
Saves color schemes individually for each instance of the IDE.
This commit is contained in:
parent
59dd67c74d
commit
86984024bf
2 changed files with 59 additions and 59 deletions
|
@ -20,8 +20,12 @@ DIM SHARED mouseSettingsSection$, generalSettingsSection$, displaySettingsSectio
|
||||||
DIM SHARED colorSchemesSection$, debugSettingsSection$, iniFolderIndex$, DebugInfoIniWarning$, ConfigFile$
|
DIM SHARED colorSchemesSection$, debugSettingsSection$, iniFolderIndex$, DebugInfoIniWarning$, ConfigFile$
|
||||||
DIM SHARED idebaseTcpPort AS LONG
|
DIM SHARED idebaseTcpPort AS LONG
|
||||||
|
|
||||||
windowSettingsSection$ = "IDE WINDOW"
|
ConfigFile$ = "internal/config.ini"
|
||||||
colorSettingsSection$ = "IDE COLOR SETTINGS"
|
iniFolderIndex$ = STR$(tempfolderindex)
|
||||||
|
DebugInfoIniWarning$ = " 'Do not change manually. Use 'qb64 -s', or Options->Advanced in the IDE"
|
||||||
|
|
||||||
|
windowSettingsSection$ = "IDE WINDOW" + iniFolderIndex$
|
||||||
|
colorSettingsSection$ = "IDE COLOR SETTINGS" + iniFolderIndex$
|
||||||
colorSchemesSection$ = "IDE COLOR SCHEMES"
|
colorSchemesSection$ = "IDE COLOR SCHEMES"
|
||||||
customDictionarySection$ = "CUSTOM DICTIONARIES"
|
customDictionarySection$ = "CUSTOM DICTIONARIES"
|
||||||
mouseSettingsSection$ = "MOUSE SETTINGS"
|
mouseSettingsSection$ = "MOUSE SETTINGS"
|
||||||
|
@ -29,10 +33,6 @@ generalSettingsSection$ = "GENERAL SETTINGS"
|
||||||
displaySettingsSection$ = "IDE DISPLAY SETTINGS"
|
displaySettingsSection$ = "IDE DISPLAY SETTINGS"
|
||||||
debugSettingsSection$ = "DEBUG SETTINGS"
|
debugSettingsSection$ = "DEBUG SETTINGS"
|
||||||
|
|
||||||
ConfigFile$ = "internal/config.ini"
|
|
||||||
iniFolderIndex$ = STR$(tempfolderindex)
|
|
||||||
DebugInfoIniWarning$ = " 'Do not change manually. Use 'qb64 -s', or Options->Advanced in the IDE"
|
|
||||||
|
|
||||||
IniSetAddQuotes 0
|
IniSetAddQuotes 0
|
||||||
IniSetForceReload -1
|
IniSetForceReload -1
|
||||||
IniSetAllowBasicComments -1
|
IniSetAllowBasicComments -1
|
||||||
|
@ -382,13 +382,58 @@ result = ReadConfigSetting(displaySettingsSection$, "IDE_CodePage", value$)
|
||||||
idecpindex = VAL(value$)
|
idecpindex = VAL(value$)
|
||||||
IF idecpindex < 0 OR idecpindex > idecpnum THEN idecpindex = 0: WriteConfigSetting displaySettingsSection$, "IDE_CodePage", "0"
|
IF idecpindex < 0 OR idecpindex > idecpnum THEN idecpindex = 0: WriteConfigSetting displaySettingsSection$, "IDE_CodePage", "0"
|
||||||
|
|
||||||
'Color settings ---------------------------------------------------------------
|
'Custom keywords --------------------------------------------------------------
|
||||||
'Schemes:
|
IF ReadConfigSetting(customDictionarySection$, "CustomKeywords$", value$) THEN
|
||||||
|
tempList$ = ""
|
||||||
|
listOfCustomKeywords$ = "@" + UCASE$(value$) + "@"
|
||||||
|
FOR I = 1 TO LEN(listOfCustomKeywords$)
|
||||||
|
checkChar = ASC(listOfCustomKeywords$, I)
|
||||||
|
IF checkChar = 64 THEN
|
||||||
|
IF RIGHT$(tempList$, 1) <> "@" THEN tempList$ = tempList$ + "@"
|
||||||
|
ELSE
|
||||||
|
tempList$ = tempList$ + CHR$(checkChar)
|
||||||
|
END IF
|
||||||
|
NEXT
|
||||||
|
listOfCustomKeywords$ = tempList$
|
||||||
|
customKeywordsLength = LEN(listOfCustomKeywords$)
|
||||||
|
ELSE
|
||||||
|
IniSetAddQuotes -1
|
||||||
|
WriteConfigSetting customDictionarySection$, "Instructions1", "Add custom keywords separated by the 'at' sign."
|
||||||
|
WriteConfigSetting customDictionarySection$, "Instructions2", "Useful to colorize constants (eg @true@false@)."
|
||||||
|
IniSetAddQuotes 0
|
||||||
|
WriteConfigSetting customDictionarySection$, "CustomKeywords$", "@"
|
||||||
|
END IF
|
||||||
|
|
||||||
|
'Color schemes ---------------------------------------------------------------
|
||||||
IniSetAddQuotes -1
|
IniSetAddQuotes -1
|
||||||
WriteConfigSetting colorSchemesSection$, "Instructions1", "Create custom color schemes in the IDE (Options->IDE Colors)."
|
WriteConfigSetting colorSchemesSection$, "Instructions1", "Create custom color schemes in the IDE (Options->IDE Colors)."
|
||||||
WriteConfigSetting colorSchemesSection$, "Instructions2", "Custom color schemes will be stored in this section."
|
WriteConfigSetting colorSchemesSection$, "Instructions2", "Custom color schemes will be stored in this section."
|
||||||
IniSetAddQuotes 0
|
IniSetAddQuotes 0
|
||||||
|
|
||||||
|
'Individual window settings (different for each running instance) -------------
|
||||||
|
IF ReadConfigSetting(windowSettingsSection$, "IDE_TopPosition", value$) THEN
|
||||||
|
IDE_TopPosition = VAL(value$)
|
||||||
|
ELSE
|
||||||
|
IDE_BypassAutoPosition = -1 'If there's no position saved in the file, then we certainly don't need to try and auto-position to our last setting.
|
||||||
|
IDE_TopPosition = 0
|
||||||
|
END IF
|
||||||
|
|
||||||
|
IF ReadConfigSetting(windowSettingsSection$, "IDE_LeftPosition", value$) THEN
|
||||||
|
IDE_LeftPosition = VAL(value$)
|
||||||
|
ELSE
|
||||||
|
IDE_BypassAutoPosition = -1 'If there's no position saved in the file, then we certainly don't need to try and auto-position to our last setting.
|
||||||
|
IDE_LeftPosition = 0
|
||||||
|
END IF
|
||||||
|
|
||||||
|
result = ReadConfigSetting(windowSettingsSection$, "IDE_Width", value$)
|
||||||
|
idewx = VAL(value$)
|
||||||
|
IF idewx < 80 OR idewx > 1000 THEN idewx = 80: WriteConfigSetting windowSettingsSection$, "IDE_Width", "80"
|
||||||
|
|
||||||
|
result = ReadConfigSetting(windowSettingsSection$, "IDE_Height", value$)
|
||||||
|
idewy = VAL(value$)
|
||||||
|
IF idewy < 25 OR idewy > 1000 THEN idewy = 25: WriteConfigSetting windowSettingsSection$, "IDE_Height", "25"
|
||||||
|
|
||||||
|
'Color settings ---------------------------------------------------------------
|
||||||
'Defaults: (= Super Dark Blue scheme, as of v1.5)
|
'Defaults: (= Super Dark Blue scheme, as of v1.5)
|
||||||
IDETextColor = _RGB32(216, 216, 216)
|
IDETextColor = _RGB32(216, 216, 216)
|
||||||
IDEKeywordColor = _RGB32(69, 118, 147)
|
IDEKeywordColor = _RGB32(69, 118, 147)
|
||||||
|
@ -450,50 +495,5 @@ IF ReadConfigSetting(colorSettingsSection$, "BackgroundColor2", value$) THEN
|
||||||
ELSE WriteConfigSetting colorSettingsSection$, "BackgroundColor2", rgbs$(IDEBackgroundColor2)
|
ELSE WriteConfigSetting colorSettingsSection$, "BackgroundColor2", rgbs$(IDEBackgroundColor2)
|
||||||
END IF
|
END IF
|
||||||
|
|
||||||
'Custom keywords --------------------------------------------------------------
|
|
||||||
IF ReadConfigSetting(customDictionarySection$, "CustomKeywords$", value$) THEN
|
|
||||||
tempList$ = ""
|
|
||||||
listOfCustomKeywords$ = "@" + UCASE$(value$) + "@"
|
|
||||||
FOR I = 1 TO LEN(listOfCustomKeywords$)
|
|
||||||
checkChar = ASC(listOfCustomKeywords$, I)
|
|
||||||
IF checkChar = 64 THEN
|
|
||||||
IF RIGHT$(tempList$, 1) <> "@" THEN tempList$ = tempList$ + "@"
|
|
||||||
ELSE
|
|
||||||
tempList$ = tempList$ + CHR$(checkChar)
|
|
||||||
END IF
|
|
||||||
NEXT
|
|
||||||
listOfCustomKeywords$ = tempList$
|
|
||||||
customKeywordsLength = LEN(listOfCustomKeywords$)
|
|
||||||
ELSE
|
|
||||||
IniSetAddQuotes -1
|
|
||||||
WriteConfigSetting customDictionarySection$, "Instructions1", "Add custom keywords separated by the 'at' sign."
|
|
||||||
WriteConfigSetting customDictionarySection$, "Instructions2", "Useful to colorize constants (eg @true@false@)."
|
|
||||||
IniSetAddQuotes 0
|
|
||||||
WriteConfigSetting customDictionarySection$, "CustomKeywords$", "@"
|
|
||||||
END IF
|
|
||||||
|
|
||||||
'Individual window settings (different for each running instance) -------------
|
|
||||||
IF ReadConfigSetting(windowSettingsSection$ + iniFolderIndex$, "IDE_TopPosition", value$) THEN
|
|
||||||
IDE_TopPosition = VAL(value$)
|
|
||||||
ELSE
|
|
||||||
IDE_BypassAutoPosition = -1 'If there's no position saved in the file, then we certainly don't need to try and auto-position to our last setting.
|
|
||||||
IDE_TopPosition = 0
|
|
||||||
END IF
|
|
||||||
|
|
||||||
IF ReadConfigSetting(windowSettingsSection$ + iniFolderIndex$, "IDE_LeftPosition", value$) THEN
|
|
||||||
IDE_LeftPosition = VAL(value$)
|
|
||||||
ELSE
|
|
||||||
IDE_BypassAutoPosition = -1 'If there's no position saved in the file, then we certainly don't need to try and auto-position to our last setting.
|
|
||||||
IDE_LeftPosition = 0
|
|
||||||
END IF
|
|
||||||
|
|
||||||
result = ReadConfigSetting(windowSettingsSection$ + iniFolderIndex$, "IDE_Width", value$)
|
|
||||||
idewx = VAL(value$)
|
|
||||||
IF idewx < 80 OR idewx > 1000 THEN idewx = 80: WriteConfigSetting windowSettingsSection$ + iniFolderIndex$, "IDE_Width", "80"
|
|
||||||
|
|
||||||
result = ReadConfigSetting(windowSettingsSection$ + iniFolderIndex$, "IDE_Height", value$)
|
|
||||||
idewy = VAL(value$)
|
|
||||||
IF idewy < 25 OR idewy > 1000 THEN idewy = 25: WriteConfigSetting windowSettingsSection$ + iniFolderIndex$, "IDE_Height", "25"
|
|
||||||
|
|
||||||
'End of initial settings ------------------------------------------------------
|
'End of initial settings ------------------------------------------------------
|
||||||
|
|
||||||
|
|
|
@ -960,8 +960,8 @@ FUNCTION ide2 (ignore)
|
||||||
LOOP WHILE _RESIZE
|
LOOP WHILE _RESIZE
|
||||||
|
|
||||||
IF retval = 1 THEN 'screen dimensions have changed and everything must be redrawn/reapplied
|
IF retval = 1 THEN 'screen dimensions have changed and everything must be redrawn/reapplied
|
||||||
WriteConfigSetting windowSettingsSection$ + iniFolderIndex$, "IDE_Width", STR$(idewx)
|
WriteConfigSetting windowSettingsSection$, "IDE_Width", STR$(idewx)
|
||||||
WriteConfigSetting windowSettingsSection$ + iniFolderIndex$, "IDE_Height", STR$(idewy)
|
WriteConfigSetting windowSettingsSection$, "IDE_Height", STR$(idewy)
|
||||||
END IF
|
END IF
|
||||||
|
|
||||||
retval = 1
|
retval = 1
|
||||||
|
@ -1333,8 +1333,8 @@ FUNCTION ide2 (ignore)
|
||||||
IF IDE_AutoPosition THEN
|
IF IDE_AutoPosition THEN
|
||||||
IF IDE_TopPosition <> _SCREENY OR IDE_LeftPosition <> _SCREENX THEN
|
IF IDE_TopPosition <> _SCREENY OR IDE_LeftPosition <> _SCREENX THEN
|
||||||
IF _SCREENY >= -_HEIGHT * _FONTHEIGHT AND _SCREENX >= -_WIDTH * _FONTWIDTH THEN 'Don't record the position if it's off the screen, past the point where we can drag it back into a different position.
|
IF _SCREENY >= -_HEIGHT * _FONTHEIGHT AND _SCREENX >= -_WIDTH * _FONTWIDTH THEN 'Don't record the position if it's off the screen, past the point where we can drag it back into a different position.
|
||||||
WriteConfigSetting windowSettingsSection$ + iniFolderIndex$, "IDE_TopPosition", STR$(_SCREENY)
|
WriteConfigSetting windowSettingsSection$, "IDE_TopPosition", STR$(_SCREENY)
|
||||||
WriteConfigSetting windowSettingsSection$ + iniFolderIndex$, "IDE_LeftPosition", STR$(_SCREENX)
|
WriteConfigSetting windowSettingsSection$, "IDE_LeftPosition", STR$(_SCREENX)
|
||||||
IDE_TopPosition = _SCREENY: IDE_LeftPosition = _SCREENX
|
IDE_TopPosition = _SCREENY: IDE_LeftPosition = _SCREENX
|
||||||
END IF
|
END IF
|
||||||
END IF
|
END IF
|
||||||
|
@ -14981,8 +14981,8 @@ FUNCTION idedisplaybox
|
||||||
idecustomfontheight = v%
|
idecustomfontheight = v%
|
||||||
|
|
||||||
|
|
||||||
WriteConfigSetting windowSettingsSection$ + iniFolderIndex$, "IDE_Width", STR$(idewx)
|
WriteConfigSetting windowSettingsSection$, "IDE_Width", STR$(idewx)
|
||||||
WriteConfigSetting windowSettingsSection$ + iniFolderIndex$, "IDE_Height", STR$(idewy)
|
WriteConfigSetting windowSettingsSection$, "IDE_Height", STR$(idewy)
|
||||||
IF idecustomfont THEN
|
IF idecustomfont THEN
|
||||||
WriteConfigSetting displaySettingsSection$, "IDE_CustomFont", "True"
|
WriteConfigSetting displaySettingsSection$, "IDE_CustomFont", "True"
|
||||||
ELSE
|
ELSE
|
||||||
|
|
Loading…
Reference in a new issue