1
1
Fork 0
mirror of https://github.com/QB64-Phoenix-Edition/QB64pe.git synced 2024-07-09 10:45:13 +00:00

Added Option for swapping left/right mouse buttons in the IDE

This commit is contained in:
SMcNeill 2015-07-30 05:43:17 -04:00
parent d78ad76d3a
commit 36d3bb4a47
2 changed files with 57 additions and 10 deletions

View file

@ -4,6 +4,7 @@ DIM SHARED IDEBackgroundColor AS _UNSIGNED LONG
DIM SHARED IDE_AutoPosition AS _BYTE, IDE_TopPosition AS INTEGER, IDE_LeftPosition AS INTEGER DIM SHARED IDE_AutoPosition AS _BYTE, IDE_TopPosition AS INTEGER, IDE_LeftPosition AS INTEGER
DIM SHARED IDE_Index$ DIM SHARED IDE_Index$
DIM SHARED LoadedIDESettings AS INTEGER DIM SHARED LoadedIDESettings AS INTEGER
DIM SHARED MouseButtonSwapped AS _BYTE
IF LoadedIDESettings = 0 THEN IF LoadedIDESettings = 0 THEN
'We only want to load the file once when QB64 first starts 'We only want to load the file once when QB64 first starts
@ -84,6 +85,16 @@ IF INSTR(_OS$, "WIN") THEN
WriteConfigSetting "'[IDE COLOR SETTINGS]", "BackgroundColor", "_RGB32(0,0,170)" WriteConfigSetting "'[IDE COLOR SETTINGS]", "BackgroundColor", "_RGB32(0,0,170)"
END IF END IF
result = ReadConfigSetting("SwapMouseButton", value$)
if value$ = "TRUE" or val(value$) = -1 then
MouseButtonSwapped = -1
WriteConfigSetting "'[MOUSE SETTINGS]", "SwapMouseButton", "TRUE"
else
MouseButtonSwapped = 0
WriteConfigSetting "'[MOUSE SETTINGS]", "SwapMouseButton", "FALSE"
end if
IF INSTR(_OS$, "WIN") THEN IF INSTR(_OS$, "WIN") THEN
@ -132,6 +143,8 @@ IF INSTR(_OS$, "WIN") THEN
IDE_TopPosition = 0 IDE_TopPosition = 0
IDE_LeftPosition = 0 IDE_LeftPosition = 0
END IF END IF
result = ReadConfigSetting("IDE_Width", value$) result = ReadConfigSetting("IDE_Width", value$)
idewx = VAL(value$) idewx = VAL(value$)
IF idewx < 80 OR idewx > 1000 THEN idewx = 80: WriteConfigSetting "'[IDE DISPLAY SETTINGS]", "IDE_Width", "80" IF idewx < 80 OR idewx > 1000 THEN idewx = 80: WriteConfigSetting "'[IDE DISPLAY SETTINGS]", "IDE_Width", "80"
@ -225,6 +238,7 @@ IF INSTR(_OS$, "WIN") THEN
result = ReadConfigSetting("IDE_AndroidMakeScript$", value$) result = ReadConfigSetting("IDE_AndroidMakeScript$", value$)
IdeAndroidMakeScript$ = value$ 'no default values in case this fails?? IdeAndroidMakeScript$ = value$ 'no default values in case this fails??
IF result = 0 THEN WriteConfigSetting "'[ANDROID MENU]", "IDE_AndroidMakeScript$", "programs\android\start_android.bat" IF result = 0 THEN WriteConfigSetting "'[ANDROID MENU]", "IDE_AndroidMakeScript$", "programs\android\start_android.bat"
IF result = 0 THEN WriteConfigSetting "'[ANDROID MENU]", "IDE_AndroidMakeScript$", "programs\android\start_android.bat"
GOTO SkipCheckConfigFileExists GOTO SkipCheckConfigFileExists
@ -258,6 +272,7 @@ IF INSTR(_OS$, "WIN") THEN
WriteConfigSetting "'[IDE DISPLAY SETTINGS]", "IDE_CustomFont$", "c:\windows\fonts\lucon.ttf" WriteConfigSetting "'[IDE DISPLAY SETTINGS]", "IDE_CustomFont$", "c:\windows\fonts\lucon.ttf"
WriteConfigSetting "'[IDE DISPLAY SETTINGS]", "IDE_CustomFont", "FALSE" WriteConfigSetting "'[IDE DISPLAY SETTINGS]", "IDE_CustomFont", "FALSE"
WriteConfigSetting "'[IDE DISPLAY SETTINGS]", "IDE_CodePage", "0" WriteConfigSetting "'[IDE DISPLAY SETTINGS]", "IDE_CodePage", "0"
WriteConfigSetting "'[MOUSE SETTINGS]", "Mouse_Orentation$", "RIGHT"
ELSE ELSE
'use the main config file as the default values and just copy it over to the new file 'use the main config file as the default values and just copy it over to the new file
f = FREEFILE f = FREEFILE

View file

@ -239,6 +239,7 @@ IF idelaunched = 0 THEN
menu$(m, i) = "#Backup/Undo...": i = i + 1 menu$(m, i) = "#Backup/Undo...": i = i + 1
menu$(m, i) = "-": i = i + 1 menu$(m, i) = "-": i = i + 1
menu$(m, i) = "#Advanced...": i = i + 1 menu$(m, i) = "#Advanced...": i = i + 1
menu$(m, i) = "#Swap Mouse Buttons": i = i + 1
menu$(m, i) = "-": i = i + 1 menu$(m, i) = "-": i = i + 1
menu$(m, i) = "#Google Android...": i = i + 1 menu$(m, i) = "#Google Android...": i = i + 1
@ -3148,6 +3149,20 @@ DO
GOTO ideloop GOTO ideloop
END IF END IF
IF menu$(m, s) = "#Swap Mouse Buttons" THEN
PCOPY 2, 0
MouseButtonSwapped = NOT MouseButtonSwapped
if MouseButtonSwapped then
WriteConfigSetting "'[MOUSE SETTINGS]", "SwapMouseButton", "TRUE"
else
WriteConfigSetting "'[MOUSE SETTINGS]", "SwapMouseButton", "FALSE"
end if
PCOPY 3, 0: SCREEN , , 3, 0: idewait4mous: idewait4alt
GOTO ideloop
END IF
IF menu$(m, s) = "#Code layout..." THEN IF menu$(m, s) = "#Code layout..." THEN
PCOPY 2, 0 PCOPY 2, 0
retval = idelayoutbox retval = idelayoutbox
@ -8898,7 +8913,11 @@ IF k THEN
END IF END IF
DO WHILE _MOUSEINPUT DO WHILE _MOUSEINPUT
iCHANGED = 1 iCHANGED = 1
if MouseButtonSwapped then
mB = _MOUSEBUTTON(2): mB2 = _MOUSEBUTTON(1)
else
mB = _MOUSEBUTTON(1): mB2 = _MOUSEBUTTON(2) mB = _MOUSEBUTTON(1): mB2 = _MOUSEBUTTON(2)
end if
mWHEEL = mWHEEL + _MOUSEWHEEL mWHEEL = mWHEEL + _MOUSEWHEEL
mX = _MOUSEX: mY = _MOUSEY mX = _MOUSEX: mY = _MOUSEY
IF mB <> 0 AND mOB = 0 THEN mCLICK = -1: EXIT SUB IF mB <> 0 AND mOB = 0 THEN mCLICK = -1: EXIT SUB
@ -9507,6 +9526,12 @@ DO
LINE (x * 40 - 40, y * 30 - 30)-(x * 40, y * 30), _RGBA32(255, 255, 255, 150), BF LINE (x * 40 - 40, y * 30 - 30)-(x * 40, y * 30), _RGBA32(255, 255, 255, 150), BF
k1 = _KEYHIT k1 = _KEYHIT
MouseClick = 0: MouseExit = 0
if MouseButtonSwapped then
mouseclick = _mousebutton(2): mouseexit = _mousebutton(1)
else
mouseclick = _mousebutton(1): mouseexit = _mousebutton(2)
end if
SELECT CASE k1 SELECT CASE k1
CASE 13: EXIT DO CASE 13: EXIT DO
CASE 27 CASE 27
@ -9533,7 +9558,14 @@ DO
IF _RESIZE THEN donothing = atall IF _RESIZE THEN donothing = atall
EXIT FUNCTION EXIT FUNCTION
END IF END IF
LOOP UNTIL _MOUSEBUTTON(1) IF MouseExit THEN
_AUTODISPLAY
SCREEN 0: WIDTH w, h: _DEST 0: _DELAY .2
IF _RESIZE THEN donothing = atall
EXIT FUNCTION
END IF
LOOP UNTIL mouseclick
ret% = (y - 1) * 16 + x - 1 ret% = (y - 1) * 16 + x - 1
IF ret% > 0 AND ret% < 255 THEN IF ret% > 0 AND ret% < 255 THEN