* make MU_MSG_FIELD_ID_REFS a GSList* field
This commit is contained in:
@ -201,7 +201,7 @@ static const MuMsgField FIELD_DATA[] = {
|
|||||||
|
|
||||||
{
|
{
|
||||||
MU_MSG_FIELD_ID_REFS,
|
MU_MSG_FIELD_ID_REFS,
|
||||||
MU_MSG_FIELD_TYPE_STRING,
|
MU_MSG_FIELD_TYPE_STRING_LIST,
|
||||||
"refs", 'r', 'R',
|
"refs", 'r', 'R',
|
||||||
FLAG_GMIME | FLAG_XAPIAN_VALUE |
|
FLAG_GMIME | FLAG_XAPIAN_VALUE |
|
||||||
FLAG_XAPIAN_PREFIX_ONLY
|
FLAG_XAPIAN_PREFIX_ONLY
|
||||||
|
|||||||
@ -38,11 +38,13 @@ enum _MuMsgFieldId {
|
|||||||
MU_MSG_FIELD_ID_MAILDIR,
|
MU_MSG_FIELD_ID_MAILDIR,
|
||||||
MU_MSG_FIELD_ID_MSGID,
|
MU_MSG_FIELD_ID_MSGID,
|
||||||
MU_MSG_FIELD_ID_PATH,
|
MU_MSG_FIELD_ID_PATH,
|
||||||
MU_MSG_FIELD_ID_REFS,
|
|
||||||
MU_MSG_FIELD_ID_SUBJECT,
|
MU_MSG_FIELD_ID_SUBJECT,
|
||||||
MU_MSG_FIELD_ID_TO,
|
MU_MSG_FIELD_ID_TO,
|
||||||
/* MU_MSG_STRING_FIELD_ID_NUM, see below */
|
/* MU_MSG_STRING_FIELD_ID_NUM, see below */
|
||||||
|
|
||||||
|
/* string list items... */
|
||||||
|
MU_MSG_FIELD_ID_REFS,
|
||||||
|
|
||||||
/* then the numerical ones */
|
/* then the numerical ones */
|
||||||
MU_MSG_FIELD_ID_DATE,
|
MU_MSG_FIELD_ID_DATE,
|
||||||
MU_MSG_FIELD_ID_FLAGS,
|
MU_MSG_FIELD_ID_FLAGS,
|
||||||
@ -57,19 +59,19 @@ enum _MuMsgFieldId {
|
|||||||
MU_MSG_FIELD_ID_NUM_WITH_PSEUDO /* number including these fake
|
MU_MSG_FIELD_ID_NUM_WITH_PSEUDO /* number including these fake
|
||||||
* fields */
|
* fields */
|
||||||
};
|
};
|
||||||
typedef enum _MuMsgFieldId MuMsgFieldId;
|
typedef guint8 MuMsgFieldId;
|
||||||
|
|
||||||
/* some specials... */
|
/* some specials... */
|
||||||
static const MuMsgFieldId MU_MSG_FIELD_ID_NONE = (MuMsgFieldId)-1;
|
static const MuMsgFieldId MU_MSG_FIELD_ID_NONE = (MuMsgFieldId)-1;
|
||||||
#define MU_MSG_STRING_FIELD_ID_NUM (MU_MSG_FIELD_ID_TO + 1)
|
#define MU_MSG_STRING_FIELD_ID_NUM (MU_MSG_FIELD_ID_TO + 1)
|
||||||
|
|
||||||
|
|
||||||
#define mu_msg_field_id_is_valid(MFID) \
|
#define mu_msg_field_id_is_valid(MFID) \
|
||||||
((MFID) < MU_MSG_FIELD_ID_NUM)
|
((MFID) < MU_MSG_FIELD_ID_NUM)
|
||||||
|
|
||||||
/* don't change the order, add new types at the end (before _NUM)*/
|
/* don't change the order, add new types at the end (before _NUM)*/
|
||||||
enum _MuMsgFieldType {
|
enum _MuMsgFieldType {
|
||||||
MU_MSG_FIELD_TYPE_STRING,
|
MU_MSG_FIELD_TYPE_STRING,
|
||||||
|
MU_MSG_FIELD_TYPE_STRING_LIST,
|
||||||
|
|
||||||
MU_MSG_FIELD_TYPE_BYTESIZE,
|
MU_MSG_FIELD_TYPE_BYTESIZE,
|
||||||
MU_MSG_FIELD_TYPE_TIME_T,
|
MU_MSG_FIELD_TYPE_TIME_T,
|
||||||
@ -77,7 +79,7 @@ enum _MuMsgFieldType {
|
|||||||
|
|
||||||
MU_MSG_FIELD_TYPE_NUM
|
MU_MSG_FIELD_TYPE_NUM
|
||||||
};
|
};
|
||||||
typedef enum _MuMsgFieldType MuMsgFieldType;
|
typedef guint8 MuMsgFieldType;
|
||||||
static const MuMsgFieldType MU_MSG_FIELD_TYPE_NONE = (MuMsgFieldType)-1;
|
static const MuMsgFieldType MU_MSG_FIELD_TYPE_NONE = (MuMsgFieldType)-1;
|
||||||
|
|
||||||
typedef void (*MuMsgFieldForEachFunc) (MuMsgFieldId id,
|
typedef void (*MuMsgFieldForEachFunc) (MuMsgFieldId id,
|
||||||
@ -145,6 +147,18 @@ MuMsgFieldType mu_msg_field_type (MuMsgFieldId id) G_GNUC_PURE;
|
|||||||
#define mu_msg_field_is_string(MFID)\
|
#define mu_msg_field_is_string(MFID)\
|
||||||
(mu_msg_field_type((MFID))==MU_MSG_FIELD_TYPE_STRING?TRUE:FALSE)
|
(mu_msg_field_type((MFID))==MU_MSG_FIELD_TYPE_STRING?TRUE:FALSE)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* is the field a string-list?
|
||||||
|
*
|
||||||
|
* @param id a MuMsgFieldId
|
||||||
|
*
|
||||||
|
* @return TRUE if the field a string-list, FALSE otherwise
|
||||||
|
*/
|
||||||
|
#define mu_msg_field_is_string_list(MFID)\
|
||||||
|
(mu_msg_field_type((MFID))==MU_MSG_FIELD_TYPE_STRING_LIST?TRUE:FALSE)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* is the field numeric (has type MU_MSG_FIELD_TYPE_(BYTESIZE|TIME_T|INT))?
|
* is the field numeric (has type MU_MSG_FIELD_TYPE_(BYTESIZE|TIME_T|INT))?
|
||||||
*
|
*
|
||||||
|
|||||||
Reference in New Issue
Block a user