00001 // -*- c++ -*- 00002 00003 /* kasgrouper.h 00004 ** 00005 ** Copyright (C) 2001-2004 Richard Moore <rich@kde.org> 00006 ** All rights reserved. 00007 ** 00008 ** KasBar is dual-licensed: you can choose the GPL or the BSD license. 00009 ** Short forms of both licenses are included below. 00010 */ 00011 00012 /* 00013 ** This program is free software; you can redistribute it and/or modify 00014 ** it under the terms of the GNU General Public License as published by 00015 ** the Free Software Foundation; either version 2 of the License, or 00016 ** (at your option) any later version. 00017 ** 00018 ** This program is distributed in the hope that it will be useful, 00019 ** but WITHOUT ANY WARRANTY; without even the implied warranty of 00020 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00021 ** GNU General Public License for more details. 00022 ** 00023 ** You should have received a copy of the GNU General Public License 00024 ** along with this program in a file called COPYING; if not, write to 00025 ** the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 00026 ** MA 02110-1301, USA. 00027 */ 00028 00029 /* 00030 ** Redistribution and use in source and binary forms, with or without 00031 ** modification, are permitted provided that the following conditions 00032 ** are met: 00033 ** 1. Redistributions of source code must retain the above copyright 00034 ** notice, this list of conditions and the following disclaimer. 00035 ** 2. Redistributions in binary form must reproduce the above copyright 00036 ** notice, this list of conditions and the following disclaimer in the 00037 ** documentation and/or other materials provided with the distribution. 00038 ** 00039 ** THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND 00040 ** ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 00041 ** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 00042 ** ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 00043 ** FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 00044 ** DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 00045 ** OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 00046 ** HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 00047 ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 00048 ** OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 00049 ** SUCH DAMAGE. 00050 */ 00051 00052 #ifndef KASGROUPER_H 00053 #define KASGROUPER_H 00054 00055 class KasTasker; 00056 class KasItem; 00057 class Task; 00058 00064 class KasGrouper 00065 { 00066 public: 00067 KasGrouper( KasTasker *bar ); 00068 virtual ~KasGrouper(); 00069 00070 KasItem *maybeGroup( Task::Ptr t ); 00071 00073 KasItem *maybeAddToDesktopGroup( Task::Ptr t ); 00074 00076 KasItem *maybeAddToGroup( Task::Ptr t ); 00077 00078 private: 00079 KasTasker *kasbar; 00080 }; 00081 00082 00083 #endif // KASGROUPER_H 00084 00085
1.6.1