Back to index

lightning-sunbird  0.9+nobinonly
pplib.h
Go to the documentation of this file.
00001 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
00002 /* ***** BEGIN LICENSE BLOCK *****
00003  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
00004  *
00005  * The contents of this file are subject to the Mozilla Public License Version
00006  * 1.1 (the "License"); you may not use this file except in compliance with
00007  * the License. You may obtain a copy of the License at
00008  * http://www.mozilla.org/MPL/
00009  *
00010  * Software distributed under the License is distributed on an "AS IS" basis,
00011  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
00012  * for the specific language governing rights and limitations under the
00013  * License.
00014  *
00015  * The Original Code is mozilla.org code.
00016  *
00017  * The Initial Developer of the Original Code is
00018  * Netscape Communications Corporation.
00019  * Portions created by the Initial Developer are Copyright (C) 1998
00020  * the Initial Developer. All Rights Reserved.
00021  *
00022  * Contributor(s):
00023  *
00024  * Alternatively, the contents of this file may be used under the terms of
00025  * either the GNU General Public License Version 2 or later (the "GPL"), or
00026  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
00027  * in which case the provisions of the GPL or the LGPL are applicable instead
00028  * of those above. If you wish to allow use of your version of this file only
00029  * under the terms of either the GPL or the LGPL, and not to allow others to
00030  * use your version of this file under the terms of the MPL, indicate your
00031  * decision by deleting the provisions above and replace them with the notice
00032  * and other provisions required by the GPL or the LGPL. If you do not delete
00033  * the provisions above, a recipient may use your version of this file under
00034  * the terms of any one of the MPL, the GPL or the LGPL.
00035  *
00036  * ***** END LICENSE BLOCK ***** */
00037 
00038 /************************************************************************************/
00039 /*                                                                                  */
00040 /*                              PRIVATE PROFILE LIBRARY                             */
00041 /*                                                                                  */
00042 /* Private profile is a text file consisting of sections and keys with their values */
00043 /*                                                                                  */
00044 /* [SectionName1]                                                                   */
00045 /* key1=value2                                                                      */
00046 /* key2=value2                                                                      */
00047 /*                                                                                  */
00048 /* [SectionName2]                                                                   */
00049 /* key1=value2                                                                      */
00050 /* key2=value2                                                                      */
00051 /*                                                                                  */
00052 /* ...                                                                              */
00053 /*                                                                                  */
00054 /*                                                                                  */
00055 /************************************************************************************/
00056 
00057 #ifndef __PPLIB_H__
00058 #define __PPLIB_H__
00059 
00060 /************************************************************************************/
00061 /*                                                                                  */
00062 /* PP_GetString copies the string value of the specified key in specified section   */
00063 /* If the key in this section is not present or if the specified section is not     */
00064 /* present in the file or file does not exist, szDefault is copied.                 */
00065 /* If szSection is NULL all sections are copied to the supplied buffer (szString),  */
00066 /* They are separated by 0 and the whole buffer is terminated by two 0's.           */
00067 /* If szKey is NULL all keys of the specified sections are copied with the same     */
00068 /* separation and termination logic                                                 */
00069 /*                                                                                  */
00070 /* Function returns number of bytes copied.                                         */
00071 /*                                                                                  */
00072 /************************************************************************************/
00073 DWORD PP_GetString(char * szSection, char * szKey, char * szDefault, char * szString, 
00074                    DWORD dwSize,  XP_HFILE hFile);
00075 
00076 /************************************************************************************/
00077 /*                                                                                  */
00078 /* PP_WriteString assigns specified value to specified key in specified section.    */
00079 /* If section or key are not present in the file they are created.                  */
00080 /* If file does not exist it is created.                                            */
00081 /*                                                                                  */
00082 /************************************************************************************/
00083 BOOL PP_WriteString(char * szSection, char * szKey, char * szString, XP_HFILE hFile);
00084 
00085 #endif // __PPLIB_H__