1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
/* Copyright 2009 Klarälvdalens Datakonsult AB
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of
the License or (at your option) version 3 or any later version
accepted by the membership of KDE e.V. (or its successor approved
by the membership of KDE e.V.), which shall act as a proxy
defined in Section 14 of version 3 of the license.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef FOLDERUTIL_H
#define FOLDERUTIL_H
#include "kmfoldertype.h"
class KMFolder;
class KMFolderDir;
class TQString;
class TQWidget;
namespace KMail
{
namespace FolderUtil
{
/**
* Low-level function to create a subfolder for a folder of any kind.
*
* @param parentFolder parent folder of the folder that should be created. Can be 0 in case of
* local folders
* @param parentDir parent folder directory, which should be the folder directory of parentFolder
* @param folderName the name the newly created folder should have
* @param namespaceName for (d)IMAP folders, the namespace the new folder should be in. Can be empty.
* @param localFolderType for local folders, this determines if the folder should be MBOX or maildir
*
* @return the newly created folder or 0 in case an error occured
*/
KMFolder *createSubFolder( KMFolder *parentFolder, KMFolderDir *parentDir,
const TQString &folderName, const TQString &namespaceName,
KMFolderType localFolderType );
/**
* Deletes a folder and all its subfolders.
* Handles all types of folders correctly, as well as folders with accounts
*
* @param folderToDelete the folder which is going to be deleted
* @param parent the parent widget, which is used when displaying a messagebox,
* which happens when removing a folder with an associated account
*/
void deleteFolder( KMFolder *folderToDelete, TQWidget *parent );
}
}
#endif
|