"Fossies" - the Fresh Open Source Software Archive

Member "evolution-mapi-3.46.1/src/camel/camel-mapi-store-summary.h" (2 Dec 2022, 3770 Bytes) of package /linux/misc/evolution-mapi-3.46.1.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "camel-mapi-store-summary.h" see the Fossies "Dox" file reference documentation.

    1 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
    2 /*
    3  * This program is free software; you can redistribute it and/or
    4  * modify it under the terms of the GNU Lesser General Public
    5  * License as published by the Free Software Foundation; either
    6  * version 2 of the License, or (at your option) version 3.
    7  *
    8  * This program is distributed in the hope that it will be useful,
    9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
   10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   11  * Lesser General Public License for more details.
   12  *
   13  * You should have received a copy of the GNU Lesser General Public
   14  * License along with the program; if not, see <http://www.gnu.org/licenses/>
   15  *
   16  *
   17  * Authors:
   18  *     Johnny Jacob <jjohnny@novell.com>
   19  *
   20  * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com)
   21  *
   22  */
   23 
   24 #ifndef CAMEL_MAPI_STORE_SUMMARY_H
   25 #define CAMEL_MAPI_STORE_SUMMARY_H
   26 
   27 #include <camel/camel.h>
   28 
   29 /* Standard GObject macros */
   30 #define CAMEL_TYPE_MAPI_STORE_SUMMARY \
   31     (camel_mapi_store_summary_get_type ())
   32 #define CAMEL_MAPI_STORE_SUMMARY(obj) \
   33     (G_TYPE_CHECK_INSTANCE_CAST \
   34     ((obj), CAMEL_TYPE_MAPI_STORE_SUMMARY, CamelMapiStoreSummary))
   35 #define CAMEL_MAPI_STORE_SUMMARY_CLASS(cls) \
   36     (G_TYPE_CHECK_CLASS_CAST \
   37     ((cls), CAMEL_TYPE_MAPI_STORE_SUMMARY, CamelMapiStoreSummaryClass))
   38 #define CAMEL_IS_MAPI_STORE_SUMMARY(obj) \
   39     (G_TYPE_CHECK_INSTANCE_TYPE \
   40     ((obj), CAMEL_TYPE_MAPI_STORE_SUMMARY))
   41 #define CAMEL_IS_MAPI_STORE_SUMMARY_CLASS(cls) \
   42     (G_TYPE_CHECK_CLASS_TYPE \
   43     ((cls), CAMEL_TYPE_MAPI_STORE_SUMMARY))
   44 #define CAMEL_MAPI_STORE_SUMMARY_GET_CLASS(obj) \
   45     (G_TYPE_INSTANCE_GET_CLASS \
   46     ((obj), CAMEL_TYPE_MAPI_STORE_SUMMARY, CamelMapiStoreSummaryClass))
   47 
   48 G_BEGIN_DECLS
   49 
   50 typedef struct _CamelMapiStoreSummary CamelMapiStoreSummary;
   51 typedef struct _CamelMapiStoreSummaryClass CamelMapiStoreSummaryClass;
   52 typedef struct _CamelMapiStoreSummaryPrivate CamelMapiStoreSummaryPrivate;
   53 
   54 typedef struct _CamelMapiStoreInfo CamelMapiStoreInfo;
   55 
   56 enum CamelMapiStoreFolderFlags {
   57     CAMEL_MAPI_STORE_FOLDER_FLAG_PERSONAL    = 1 << 0,
   58     CAMEL_MAPI_STORE_FOLDER_FLAG_PUBLIC  = 1 << 1,
   59     CAMEL_MAPI_STORE_FOLDER_FLAG_FOREIGN     = 1 << 2,
   60     CAMEL_MAPI_STORE_FOLDER_FLAG_MAIL    = 1 << 3,
   61     CAMEL_MAPI_STORE_FOLDER_FLAG_PUBLIC_REAL = 1 << 4, /* real public folder; the unreal is that under Favorites */
   62     CAMEL_MAPI_STORE_FOLDER_FLAG_FOREIGN_WITH_SUBFOLDERS = 1 << 5
   63 };
   64 
   65 enum {
   66     CAMEL_MAPI_STORE_INFO_FOREIGN_USERNAME = CAMEL_STORE_INFO_LAST,
   67     CAMEL_MAPI_STORE_INFO_LAST
   68 };
   69 
   70 struct _CamelMapiStoreInfo {
   71     CamelStoreInfo info;
   72     mapi_id_t folder_id;
   73     mapi_id_t parent_id;
   74     guint32 camel_folder_flags; /* CamelFolderInfo::flags */
   75     guint32 mapi_folder_flags; /* bit-or of CamelMapiStoreFolderFlags */
   76     gchar *foreign_username; /* only if CAMEL_MAPI_STORE_FOLDER_FLAG_FOREIGN is set */
   77 
   78     /* these are not saved */
   79     time_t latest_last_modify;
   80     gint last_obj_total;
   81 };
   82 
   83 struct _CamelMapiStoreSummary {
   84     CamelStoreSummary parent;
   85     CamelMapiStoreSummaryPrivate *priv;
   86 };
   87 
   88 struct _CamelMapiStoreSummaryClass {
   89     CamelStoreSummaryClass summary_class;
   90 };
   91 
   92 GType           camel_mapi_store_summary_get_type   (void);
   93 CamelStoreSummary * camel_mapi_store_summary_new        (void);
   94 CamelStoreInfo *    camel_mapi_store_summary_add_from_full  (CamelStoreSummary *s,
   95                                  const gchar *path,
   96                                  mapi_id_t folder_id,
   97                                  mapi_id_t parent_id,
   98                                  guint32 camel_folder_flags, /* CamelFolderInfo::flags */
   99                                  guint32 mapi_folder_flags, /* bit-or of CamelMapiStoreFolderFlags */
  100                                  const gchar *foreign_username); /* only if CAMEL_MAPI_STORE_FOLDER_FLAG_FOREIGN is set */
  101 CamelStoreInfo *    camel_mapi_store_summary_get_folder_id  (CamelStoreSummary *s,
  102                                  mapi_id_t folder_id);
  103 
  104 G_END_DECLS
  105 
  106 #endif /* CAMEL_MAPI_STORE_SUMMARY_H */