Diese Bibliothek stellt Funktionen zur Verfügung, die einen standardisierten Datenaustausch zwischen verschiedenen Programmen ermöglichen. Für diesen Zweck sind die folgenden Routinen vorhanden:
• scrp_clear | Dateien im Klemmbrett löschen. |
• scrp_read | Pfad des Klemmbrettes ermitteln. |
• scrp_write | Pfad des Klemmbrettes setzen. |
• x_scrp_get | Pfad des Klemmbrettes ermitteln. |
Hinweis: Neben diesen Funktionen sind beim Datenaustausch über das Klemmbrett noch weitere Einzelheiten zu beachten.
Querverweis: Nachrichten SC_CHANGED SH_WDRAW Style-Guidelines
Name: | »Scrap clear« - Inhalt des Clipboards löschen
|
AES-Nummer: | 82
|
Deklaration: | int16_t scrp_clear ( void );
|
Beschreibung_ | Die Funktion löscht alle Dateien im aktuellen Klemmbrett.
Achtung: Entgegen den üblichen Konventionen werden wirklich alle Dateien, und nicht nur solche auf die die Maske "scrap.*" paßt, gelöscht. |
Ergebnis: | Ein Fehler ist nur dann aufgetreten, wenn als Ergebnis 0
zurückgegeben wird.
|
Verfügbar: | Die Funktion steht nur unter PC-GEM, KAOS 1.4.2 und MagiC
(jeweils) zur Verfügung, Nicht vorhanden in ViewMAX.
|
Gruppe: | Zwischenspeicher
|
Querverweis: | Binding Datenaustausch per Klemmbrett
|
C: | int16_t scrp_clear ( void );
| |||||||||||||||||||||
Umsetzung: |
int16_t scrp_clear (void) { return ( crys_if(82) ); } | |||||||||||||||||||||
GEM-Arrays: |
|
Name: | »Scrap read« - ermittelt den Pfadnamen des Klemmbrettes.
| ||||||||||||||||||||||||||||
AES-Nummer: | 80
| ||||||||||||||||||||||||||||
Deklaration: | int16_t scrp_read ( int8_t *sc_rpscrap );
| ||||||||||||||||||||||||||||
Beschreibung: | Die Funktion ermittelt das aktuelle Verzeichnis, welches für
die Zwischenablage (Klemmbrett) benutzt wird.
Hinweis: Das Klemmbrett-Verzeichnis befindet sich nach dem Aufruf der Funktion im Parameter sc_rpscrap. Man sollte auf eine ausreichende Größe dieses aufnehmenden Puffers achten. | ||||||||||||||||||||||||||||
Ergebnis: | Ein Fehler ist nur dann aufgetreten, wenn als Ergebnis 0
zurückgegeben wird.
Zitat Mike Fulton, Atari Computer: »The scrp_read() function is defined as possibly returning an error code of zero. However, this function currently always returns a value of 1. Since this may change in future versions of GEM AES, applications should handle the case of the error code even if the programmer does not expect to see it.« Ab PC-GEM Version 2.0 werden jedoch die folgenden Werte zurückgeliefert: -1, falls noch kein Pfad gesetzt ist, Rückgabewerte >= 0 sind als Bitvektor aufzufassen, der über gefundene Dateitypen informieren soll. Es gilt die folgende Belegung:
Alle anderen Bits sind für zukünftige Zwecke reserviert. Hinweis: Laut der Doku zu PC-GEM ist scrap.usr in Bit 5 kodiert. Der AES-Quelltext sagt aber Bit 15. Die Library aus dem Buch "Vom Anfänger zum GEM-Profi" belegt Bit 5 mit DIF-Dateien. Die Erweiterung ist inoffiziell und funktioniert nur wenn diese Library für die Erstellung benutzt wird. | ||||||||||||||||||||||||||||
Verfügbar: | All AES versions, not present in ViewMAX.
| ||||||||||||||||||||||||||||
Gruppe: | Zwischenspeicher
| ||||||||||||||||||||||||||||
Querverweis: | Binding scrp_write Datenaustausch per Klemmbrett
|
C: | int16_t scrp_read ( int8_t *sc_rpscrap );
| ||||||||||||||||||||||||
Umsetzung: |
int16_t scrp_read (int8_t *sc_rpscrap) { addr_in[0] = sc_rpscrap; return ( crys_if(80) ); } | ||||||||||||||||||||||||
GEM-Arrays: |
|
Name: | »Scrap write« - setzt den Pfad für das Klemmbrett.
|
AES-Nummer: | 81
|
Deklaration: | int16_t scrp_write ( int8_t *sc_wpscrap );
|
Beschreibung: | Die Funktion setzt das Verzeichnis, welches für die
Zwischenablage (Klemmbrett) benutzt werden soll.
Hinweis: Der Name des neuen Pfades wird im Parameter sc_wpscrap übergeben. Das Klemmbrett sollte den Namen CLIPBRD tragen, und sich auf dem jeweiligen Bootlaufwerk befinden. |
Ergebnis: | Ein Fehler ist nur dann aufgetreten, wenn als Ergebnis 0
zurückgegeben wird.
|
Verfügbar: | All AES versions, not present in ViewMAX.
|
Gruppe: | Zwischenspeicher
|
Querverweis: | Binding scrp_read Datenaustausch per Klemmbrett
|
C: | int16_t scrp_write ( int8_t *sc_wpscrap );
| ||||||||||||||||||||||||
Umsetzung: |
int16_t scrp_write (int8_t *sc_wpscrap) { addr_in[0] = sc_wpscrap; return ( crys_if(81) ); } | ||||||||||||||||||||||||
GEM-Arrays: |
|
Name: | »Scrap read« - ermittelt den Pfadnamen des Klemmbrettes.
| ||||||||
AES-Nummer: | 29024
| ||||||||
Deklaration: | int16_t x_scrp_get( int8_t *path, int16_t delete );
| ||||||||
Beschreibung: |
This function does the chore of determining where the clipboard directory is and, optionally, removing any SCRAP files that are already there. If the clipboard directory is either unset or points to a bad location, then path will be set to either C:\CLIPBRD\ or, if there is no C: drive, A:\CLIPBRD\. If no CLIPBRD folder exists, then it is created by the function. Beispiel: int16_t fhand; int8_t path[120], text[]="Hi there!"; if( x_scrp_get( path, 1 ) ) { strcat( path, "SCRAP.TXT" ); if( (fhand = Fcreate( path, 0 )) > 0 ) { Fwrite( fhand, sizeof(text), text ); Fclose(fhand); } } | ||||||||
Ergebnis: | 0 = Fehler
1 = Erfolgreich | ||||||||
Verfügbar: | Die Funktion steht nur unter Geneva seit Release 004 zur
Verfügung.
| ||||||||
Gruppe: | Zwischenspeicher
| ||||||||
Querverweis: | Binding scrp_write scrp_read Datenaustausch per Klemmbrett
|
C: | int16_t x_scrp_get( int8_t *path, int16_t delete );
| |||||||||||||||||||||||||||
Umsetzung: |
int16_t x_scrp_get( int8_t *path, int16_t delete ) { int_in[0] = delete; addr_in[0] = path; crys_if(29024); return ( int_out[0] ); } | |||||||||||||||||||||||||||
GEM-Arrays: |
|