64 lines
2.5 KiB
C
64 lines
2.5 KiB
C
/******************************************************************************
|
|
* @file evidence_metadata_dialog.h
|
|
* @brief Dialogue de modification des métadonnées éditables d'une preuve.
|
|
******************************************************************************/
|
|
|
|
#ifndef LABFY_INVESTIGATION_EVIDENCE_METADATA_DIALOG_H
|
|
#define LABFY_INVESTIGATION_EVIDENCE_METADATA_DIALOG_H
|
|
|
|
#include "models/evidence_record.h"
|
|
#include "database/database.h"
|
|
|
|
#include <gtk/gtk.h>
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
/** @brief Résultat opaque possédé du dialogue. */
|
|
typedef struct EvidenceMetadataDialogResult EvidenceMetadataDialogResult;
|
|
|
|
/** @brief Callback recevant le résultat possédé, ou NULL après annulation. */
|
|
typedef void (*EvidenceMetadataDialogCallback)(
|
|
EvidenceMetadataDialogResult *result, gpointer user_data
|
|
);
|
|
typedef void (*EvidenceMetadataDialogAnalyzeCallback)(
|
|
GtkWindow *dialog, const char *evidence_identifier,
|
|
gboolean revise_existing, const char *ocr_run_identifier,
|
|
gpointer user_data);
|
|
|
|
/**
|
|
* @brief Présente le dialogue prérempli de modification des métadonnées.
|
|
* @param parent Fenêtre parente.
|
|
* @param record Preuve empruntée.
|
|
* @param evidence_types Tableau emprunté de EvidenceType.
|
|
* @param callback Callback appelé une fois à la fermeture.
|
|
* @param user_data Données empruntées du callback.
|
|
* @return TRUE si la fenêtre a été créée.
|
|
*/
|
|
gboolean evidence_metadata_dialog_present(
|
|
GtkWindow *parent,
|
|
const EvidenceRecord *record,
|
|
const GPtrArray *evidence_types,
|
|
EvidenceMetadataDialogCallback callback,
|
|
gpointer user_data
|
|
);
|
|
gboolean evidence_metadata_dialog_present_with_ocr(
|
|
GtkWindow *parent, const EvidenceRecord *record,
|
|
const GPtrArray *evidence_types, Database *database,
|
|
const char *investigation_root,
|
|
EvidenceMetadataDialogAnalyzeCallback analyze_callback,
|
|
EvidenceMetadataDialogCallback callback, gpointer user_data);
|
|
|
|
/** @brief Libère un résultat, ou accepte NULL. */
|
|
void evidence_metadata_dialog_result_free(EvidenceMetadataDialogResult *result);
|
|
/** @brief Retourne le code de type emprunté. */
|
|
const char *evidence_metadata_dialog_result_get_type_identifier(
|
|
const EvidenceMetadataDialogResult *result);
|
|
/** @brief Retourne la source empruntée, ou NULL. */
|
|
const char *evidence_metadata_dialog_result_get_source(
|
|
const EvidenceMetadataDialogResult *result);
|
|
/** @brief Retourne la description empruntée, ou NULL. */
|
|
const char *evidence_metadata_dialog_result_get_description(
|
|
const EvidenceMetadataDialogResult *result);
|
|
|
|
G_END_DECLS
|
|
#endif
|