home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / xwplascr.zip / XWPL0208.ZIP / include / startshut / archives.h < prev    next >
C/C++ Source or Header  |  2002-04-13  |  4KB  |  115 lines

  1.  
  2. /*
  3.  *@@sourcefile archives.h:
  4.  *      header file for archives.c. See remarks there.
  5.  *
  6.  *      All funtions in this file have the arc* prefix.
  7.  *
  8.  *@@include #include <os2.h>
  9.  *@@include #include "shared\notebook.h"  // for notebook callback prototypes
  10.  *@@include #include "archives.h"
  11.  */
  12.  
  13. /*
  14.  *      Copyright (C) 1997-2002 Stefan Milcke,
  15.  *                              Ulrich Möller.
  16.  *      This file is part of the XWorkplace source package.
  17.  *      XWorkplace is free software; you can redistribute it and/or modify
  18.  *      it under the terms of the GNU General Public License as published
  19.  *      by the Free Software Foundation, in version 2 as it comes in the
  20.  *      "COPYING" file of the XWorkplace main distribution.
  21.  *      This program is distributed in the hope that it will be useful,
  22.  *      but WITHOUT ANY WARRANTY; without even the implied warranty of
  23.  *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  24.  *      GNU General Public License for more details.
  25.  */
  26.  
  27. #ifndef ARCHIVES_HEADER_INCLUDED
  28.     #define ARCHIVES_HEADER_INCLUDED
  29.  
  30.     /********************************************************************
  31.      *
  32.      *   "Archives" page replacement in WPDesktop
  33.      *
  34.      ********************************************************************/
  35.  
  36.     #ifdef NOTEBOOK_HEADER_INCLUDED
  37.         VOID XWPENTRY arcArchivesInitPage(PNOTEBOOKPAGE pnbp,
  38.                                           ULONG flFlags);
  39.  
  40.         MRESULT XWPENTRY arcArchivesItemChanged(PNOTEBOOKPAGE pnbp,
  41.                                        ULONG ulItemID,
  42.                                        USHORT usNotifyCode,
  43.                                        ULONG ulExtra);
  44.     #endif
  45.  
  46.     /********************************************************************
  47.      *
  48.      *   Archiver settings
  49.      *
  50.      ********************************************************************/
  51.  
  52.     /*
  53.      * Archiving settings flags:
  54.      *      the following are stored in ARCHIVINGSETTINGS.ulArcFlags
  55.      *      and correspond to the checkboxes on the "Archives"
  56.      *      page replacement in the Desktop's settings notebook.
  57.      */
  58.  
  59.     #define ARCF_ENABLED                0x0001
  60.     #define ARCF_ALWAYS                 0x0002
  61.     #define ARCF_NEXT                   0x0004
  62.     #define ARCF_INI                    0x0008
  63.     #define ARCF_DAYS                   0x0010
  64.  
  65.     /*
  66.      *@@ ARCHIVINGSETTINGS:
  67.      *      settings structure stored in OS2.INI.
  68.      */
  69.  
  70.     typedef struct _ARCHIVINGSETTINGS
  71.     {
  72.         ULONG       ulArcFlags,               // ARCF_* flags (archives.h)
  73.                     ulEveryDays;
  74.  
  75.         double      dIniFilesPercent;
  76.  
  77.         double      dAppsSizeLast,
  78.                     dKeysSizeLast,
  79.                     dDataSumLast;
  80.  
  81.         BOOL        fShowStatus;
  82.         CHAR        cArchivesCount;
  83.     } ARCHIVINGSETTINGS, *PARCHIVINGSETTINGS;
  84.  
  85.     VOID arcSetDefaultSettings(VOID);
  86.  
  87.     PARCHIVINGSETTINGS arcQuerySettings(VOID);
  88.  
  89.     BOOL arcSaveSettings(VOID);
  90.  
  91.     /********************************************************************
  92.      *
  93.      *   Archiving Enabling
  94.      *
  95.      ********************************************************************/
  96.  
  97.     VOID arcForceNoArchiving(VOID);
  98.  
  99.     BOOL arcCheckIfBackupNeeded(HWND hwndNotify,
  100.                                 ULONG ulMsg);
  101.  
  102.     APIRET arcSwitchArchivingOn(BOOL fSwitchOn);
  103.  
  104.     BOOL arcSetNumArchives(PCHAR pcArchives,
  105.                            BOOL fSet);
  106.  
  107.     BOOL arcCheckINIFiles(double* pdPercent,
  108.                           PSZ pszIgnoreApp,
  109.                           double* pdAppsSizeLast,
  110.                           double* pdKeysSizeLast,
  111.                           double* pdDataSumLast,
  112.                           double* pdMaxDifferencePercent);
  113. #endif
  114.  
  115.