Seite 1 von 1

WinAPI unter Linux Fehlanzeige! Was tun,für mehr Funktionen?

Verfasst: 02.04.2020 18:46
von Beefi
Hi,

ich habe da mal eine allgemeine Frage...

Unter Windows kann ich zu jeder Zeit auf die WinAPI zurückgreifen, falls ich mehr Funktionen benötige, als was mir PureBasic bietet.
Das bin ich auch schon von anderen Sprachen wie z.B. C und VB6 gewohnt.
In letzter Zeit fällt mir immer mehr auf, dass man eigentlich bei nahezu jeder Anwendung irgendwann an einen Punkt kommt, dass man WinAPI-Funktionen braucht.
Wie macht man sowas eigentlich auf Linux? Ich kenne mich mit Linux recht gut aus...ich habe viele Jahre intensiv damit gearbeitet. Auch weiß ich, dass man hierzu wahrscheinlich auf die einzelnen Framework-Komponenten wie GTK oder Qt zugreifen müsste.
Aber wie sieht ein konkretes Beispiel unter PureBasic aus? Mein Interesse an Linux ist zwar ziemlich verflogen, aber manchmal überlege ich mir doch, eine Anwendung auf Linux zu portieren, stelle mir es aber mit Purebasic sehr holprig vor.

Nehmen wir mal an, ich möchte in ein Editor-Gadget einen Text laden und das Gadget automatisch ans Ende scrollen...unter Windows ganz "easy":

Code: Alles auswählen

SendMessage_(GadgetID(EditorGadget),#EM_SCROLL,#SB_BOTTOM,0)
Wie würde eine Implementierung einer solchen minimalen Scrollfunktion unter Linux aussehen?

Dass es unter Windows "easy" geht, sei mal so dahingestellt...richtig easy wäre es, wenn Purebasic diese Funktion integriert hätte, aber zumindest sind die WinAPI-Deklarationen schon integriert.
Nur mal so nebenbei erwähnt, finde ich es schon sehr mager, wenn ein Editor-Gadget in Purebasic nicht mal Funktionen bereitstellt, um den Cursor zu bewegen, die Cursor-Position abzufragen, oder einfach mal zu Scrollen. Falls diese Funktionen vorhanden sind und ich nur Tomaten auf den Augen habe, teilt es mir bitte mit...aktuell mach ich hier alles über WinAPI-Funktionen :mrgreen:

Noch eine Frage am Rande: Ich nutze hier die hervorragende WinAPI-Library von RSBasic. Wird diese noch weitergepflegt? Ich habe Version 1.4.1 (5 Jahre alt) in Verwendung.
Diese Library (oder quasi API-Viewer) ist eine absolute Bereicherung für Purebasic! :praise: Hierbei meinen größten Dank an den Entwickler! :allright:

Re: WinAPI unter Linux Fehlanzeige! Was tun,für mehr Funktio

Verfasst: 02.04.2020 18:52
von #NULL
Schau mal hier
viewtopic.php?f=21&t=28380
bzw
http://www.chabba.de/
Linux Purebasic-API > EditorGadget > Scrollen zur letzten Zeile ...

Re: WinAPI unter Linux Fehlanzeige! Was tun,für mehr Funktio

Verfasst: 02.04.2020 19:32
von Beefi
Oh cool, vielen Dank für deinen API-Viewer! :allright:
Das wird mir in Zukunft auf jeden Fall weiterhelfen!
Dein Electronic-Tool sieht auch sehr interessant aus...das werde ich mir mal genauer ansehen, sowas ist genau mein Ding :wink:

Gibt es einen solchen API-Viewer vielleicht auch für Mac? :D

Aus den alten VB6-Zeiten kenne ich noch Sammlungen diverser API-Funktionen (und auch mit aufwendigeren Implementationen) die in ActiveX-Bibliotheken zusammengefasst wurden, und man einfach in sein Programm einbinden konnte. Hat sowas zufällig schon mal jemand für Purebasic gemacht?
Z.B. eine EditorGadget-Library mit sämtlichen Erweiterungen zum Gadget...ich frage nur, weil ich es dann nicht unbedingt selbst extra machen würde :mrgreen:

Re: WinAPI unter Linux Fehlanzeige! Was tun,für mehr Funktio

Verfasst: 02.04.2020 19:34
von Shardik
Ich habe im englischen Forum eine Liste mit Links zu Multiplattform API-Beispielen erstellt, wo Du den direkten Vergleich hast, wie nicht in PureBasic vorhandene Funktionen mit API-Funktionen aus Linux GTK, Mac Cocoa-Framework und Win32 API nachgerüstet werden können.

Re: WinAPI unter Linux Fehlanzeige! Was tun,für mehr Funktio

Verfasst: 02.04.2020 19:45
von Shardik
Beefi hat geschrieben:Gibt es einen solchen API-Viewer vielleicht auch für Mac? :D
Für MacOS verwende ich das kostenpflichtige Programm Dash (33,57 €). Setzt man den Cursor im Quelltext über eine MacOS API-Funktion, kann man Dash mit einer Tastenkombination wie z.B. <Alt>+<F1> aufrufen und bekommt dann direkt die Apple Entwickler-Dokumentation zu dieser API-Funktion angezeigt. Wie man so eine Tastenkombination für Dash einrichtet, hat Danilo hier gezeigt.

Re: WinAPI unter Linux Fehlanzeige! Was tun,für mehr Funktio

Verfasst: 02.04.2020 22:16
von NicTheQuick
Du findest auch viel Material auf Github bezüglich allen möglichen Dingen. Oftmals ist auch Linux dabei und falls nicht, kannst du mithelfen das ganze zu erweitern: https://github.com/SicroAtGit/PureBasic ... iv-Rebirth

Edit: Link korrigiert.