Recent posts

#82
OxygenBasic / Re: Problems with high DPI on ...
Last post by Zlatko Vid - July 01, 2024, 08:19:59 AM
And Xojo blog ( i don't know that this thing exist from Vista)  :o

https://blog.xojo.com/2013/11/17/writing-high-dpi-aware-windows-apps/
#83
OxygenBasic / Re: Problems with high DPI on ...
Last post by Zlatko Vid - July 01, 2024, 08:16:50 AM
on pinvoke is this define :

Declare Function SetProcessDPIAware Lib "user32.dll" () As Boolean
#84
OxygenBasic / Re: Problems with high DPI on ...
Last post by Zlatko Vid - July 01, 2024, 08:12:28 AM
on stackovrflow is explained

QuoteThat's it. Feel free to call SetProcessDPIAwareness on 8.1 and later, and fall back to SetProcessDPIAware on earlier versions. Of course, I'd just remove the dpi aware section from the manifest. 

so ..what manifedt have with DPI scalling ?
Is manifest different for win10 ?
#85
OxygenBasic / Problems with high DPI on win1...
Last post by Zlatko Vid - July 01, 2024, 08:00:34 AM
Hi Charles ..all ...
 
one of my "customer" / complainer / pain_I_T_A  ;D
telling me that my code editor (written in o2)
have problems with high DPI on win10...telling me stories how i use
old monitor ..but is not problem in monitor then in stupid scalling in win10
so i tried on win10 laptop and damn he have a right

only thing i found about this is this tiny VB example
anyone have something better?
Option Explicit

Private Enum PROCESS_DPI_AWARENESS
    Process_DPI_Unaware = 0
    Process_System_DPI_Aware = 1
    Process_Per_Monitor_DPI_Aware = 2
End Enum
#If False Then
    Dim Process_DPI_Unaware, Process_System_DPI_Aware, Process_Per_Monitor_DPI_Aware
#End If

Private Declare Function SetProcessDpiAwareness Lib "shcore.dll" (ByVal Value As PROCESS_DPI_AWARENESS) As Long

Private Sub Main()
    Const S_OK = &H0&, E_INVALIDARG = &H80070057, E_ACCESSDENIED = &H80070005

    Select Case SetProcessDpiAwareness(Process_System_DPI_Aware)
        Case S_OK:           MsgBox "The current process is set as dpi aware.", vbInformation
        Case E_INVALIDARG:   MsgBox "The value passed in is not valid.", vbCritical
        Case E_ACCESSDENIED: MsgBox "The DPI awareness is already set, either by calling this API " & _
                                    "previously or through the application (.exe) manifest.", vbCritical
    End Select
End Sub
#86
General Discussion / AI passed the Turing Test -- A...
Last post by Charles Pegge - July 01, 2024, 06:14:47 AM
Sabine Hossenfelder

#87
OxygenBasic / Re: General questions
Last post by Charles Pegge - July 01, 2024, 06:05:52 AM
As a basic requirement, IDEs must be able to call co2.exe and/or co2m64.exe with the source code filename as a param. No details about the Oxygen internals are required. I often use humble Notepad and execute o2 programs directly from the .o2bas text files, configured to run with co2.exe.

o2 uses a similar string system to PB, so it might be the easiest  BASIC to translate.




#88
OxygenBasic / General questions
Last post by Frank Brübach - June 30, 2024, 09:11:13 PM
Hello Charles..

I have two General questions about programming

A) If you are using an extern Editor for oxygen Basic, for example Abc Editor, written in another Basic language.. and you are loading oxygen.dll you must declare every function for this new Editor to understand which procedures should BE execute? So its Not very comfortable to use this technique isnt IT?

B) what Basic language is after your Personal opinion closer to oxygen Basic If you are translating Code examples with include and header files for example of freebasic / Powerbasic ? 
Thx, frank
#89
General Discussion / Why Thorium will be a Game-Cha...
Last post by Charles Pegge - June 30, 2024, 05:58:52 PM
Copenhagen Atomics
30 apr 2024

#90
OxygenBasic Examples / Re: Inner function
Last post by Charles Pegge - June 30, 2024, 12:39:51 PM
Hi Frank,

Much simpler example, but I see a problem with the inner function=... so I substituted it with return ...

' inner function example
uses console

function myfun(long v) as long
==============================
  'inner
  function f(long k) as long
    int c=10
    return c+k*3 'problem with function=...
  end function

function= f(v)+100
end function

print myfun(2) '116
wait