core: make command texts available for C code

Create a C string (which the caller needs to free) with the executed commands
in this session.

The detour via the callback allows us to not make the corelib depend on the
commands, which is nice for tests, export-html, and smtk2ssrf.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2020-03-05 08:57:02 -08:00
parent 626a149b7c
commit 160d2ab071
3 changed files with 19 additions and 2 deletions

View file

@ -46,7 +46,7 @@ static QLocale loc;
static inline QString degreeSigns()
{
return QStringLiteral("dD\u00b0");
return QStringLiteral("dD\u00b0");
}
QString weight_string(int weight_in_grams)
@ -1644,3 +1644,14 @@ char *copy_qstring(const QString &s)
{
return strdup(qPrintable(s));
}
// function to call to get changes for a git commit
QString (*changesCallback)() = nullptr;
extern "C" char *get_changes_made()
{
if (changesCallback != nullptr)
return copy_qstring(changesCallback());
else
return nullptr;
}