Nachdem Basic4android gegenwärtig keine bedingte Compilierung unterstützt, hab ich ein kleines Hilfsprogramm dafür geschrieben.
Folgende Schlüsselwörter werden unterstützt:
Im Programmcode werden die Schlüsselwörter einfach als Kommentar eingefügt:
'{DEFINE DEBUG}
Zum deaktivieren reicht es ein beliebiges Zeichen vor das Schlüsselwort zu setzen:
'.{DEFINE DEBUG}
Schlüsselwörter können verschachtelt werden. Für die genaue Handhabung bitte das Beispielprojekt ansehen.
Die Programmhandhabung
----------------------
Am besten eine Verknüpfung auf B4Aconditioner auf dem Desktop ablegen. Dann kann einfach ein B4A Projekt per Drag and Drop auf die Verknüpfung zum Bearbeiten gezogen werden. Wird ein Verzeichnis auf die Verknüpfung gezogen, werden alle darin enthaltenen Projekte bearbeitet.
Zuerst wird die Projektdatei (.b4a) bearbeitet, anschließend alle zum Projekt gehörenden Module (.bas). Die in der Projektdatei definierten Begriffe sind in allen Modulen gültig, ein in einem Modul definierter Begriff gilt nur in diesem Modul.
Nach der Bearbeitung sind alle Zeilen in den nicht aktiven Abschnitten auskommentiert. Der Kommentar hat das Format '{C} um ihn von regulären Kommentaren abzugrenzen.
Wird B4Aconditioner zusätzlich mit dem Parameter /REMOVE aufgerufen (am Besten über eine eigene Verknüpfung), dann werden alle '{C} Kommentare entfernt.
Wenn Basic4android aktiv ist, dann wird vor der Projektbearbeitung geprüft ob dieses Projekt in B4A geladen ist. Ist das der Fall, so wird zuerst ein STRG-S an B4A geschickt (um sicherzustellen, dass die letzte Änderung gespeichert wird) und anschließend B4A beendet. Nach der Bearbeitung wird Basic4android wieder mit dem Projekt gestartet.
Ich hoffe, das Programm ist für einige eine Hilfe.
ACHTUNG: Ich übernehme keine Verantwortung für defekte Dateien. Auch wenn vor dem Speichern der bearbeiteten Dateien Sicherungen erstellt werden, sollten die ersten Tests mit einer Kopie des Projektes durchgeführt werden.
Folgende Schlüsselwörter werden unterstützt:
B4X:
{DEFINE begriff} Setze die Definition "begriff"
{UNDEF begriff} Lösche die Definition "begriff"
{IFDEF begriff} Teste ob Definition "begriff" definiert ist
{IFNDEF begriff} Teste ob Definition "begriff" nicht definiert ist
{ELSE} Aktiver Abschnitt, wenn vorheriger Test negativ
{ENDIF} Abschnittsende
Im Programmcode werden die Schlüsselwörter einfach als Kommentar eingefügt:
'{DEFINE DEBUG}
Zum deaktivieren reicht es ein beliebiges Zeichen vor das Schlüsselwort zu setzen:
'.{DEFINE DEBUG}
Schlüsselwörter können verschachtelt werden. Für die genaue Handhabung bitte das Beispielprojekt ansehen.
Die Programmhandhabung
----------------------
Am besten eine Verknüpfung auf B4Aconditioner auf dem Desktop ablegen. Dann kann einfach ein B4A Projekt per Drag and Drop auf die Verknüpfung zum Bearbeiten gezogen werden. Wird ein Verzeichnis auf die Verknüpfung gezogen, werden alle darin enthaltenen Projekte bearbeitet.
Zuerst wird die Projektdatei (.b4a) bearbeitet, anschließend alle zum Projekt gehörenden Module (.bas). Die in der Projektdatei definierten Begriffe sind in allen Modulen gültig, ein in einem Modul definierter Begriff gilt nur in diesem Modul.
Nach der Bearbeitung sind alle Zeilen in den nicht aktiven Abschnitten auskommentiert. Der Kommentar hat das Format '{C} um ihn von regulären Kommentaren abzugrenzen.
Wird B4Aconditioner zusätzlich mit dem Parameter /REMOVE aufgerufen (am Besten über eine eigene Verknüpfung), dann werden alle '{C} Kommentare entfernt.
Wenn Basic4android aktiv ist, dann wird vor der Projektbearbeitung geprüft ob dieses Projekt in B4A geladen ist. Ist das der Fall, so wird zuerst ein STRG-S an B4A geschickt (um sicherzustellen, dass die letzte Änderung gespeichert wird) und anschließend B4A beendet. Nach der Bearbeitung wird Basic4android wieder mit dem Projekt gestartet.
Ich hoffe, das Programm ist für einige eine Hilfe.
ACHTUNG: Ich übernehme keine Verantwortung für defekte Dateien. Auch wenn vor dem Speichern der bearbeiteten Dateien Sicherungen erstellt werden, sollten die ersten Tests mit einer Kopie des Projektes durchgeführt werden.