• Skip to content
  • Skip to link menu
KDE 4.2 API Reference
  • KDE API Reference
  • kdepim
  • Sitemap
  • Contact Us
 

kdgantt1

KDGanttViewTaskLink.h

Go to the documentation of this file.
00001 /* -*- Mode: C++ -*-
00002    $Id: KDGanttViewTaskLink.h 836291 2008-07-22 04:34:42Z pradeepto $
00003    KDGantt - a multi-platform charting engine
00004 */
00005 
00006 /****************************************************************************
00007  ** Copyright (C)  2002-2004 Klarälvdalens Datakonsult AB.  All rights reserved.
00008  **
00009  ** This file is part of the KDGantt library.
00010  **
00011  ** This file may be used under the terms of the GNU General Public
00012  ** License versions 2.0 or 3.0 as published by the Free Software
00013  ** Foundation and appearing in the files LICENSE.GPL2 and LICENSE.GPL3
00014  ** included in the packaging of this file.  Alternatively you may (at
00015  ** your option) use any later version of the GNU General Public
00016  ** License if such license has been publicly approved by
00017  ** Klarälvdalens Datakonsult AB (or its successors, if any).
00018  ** 
00019  ** This file is provided "AS IS" with NO WARRANTY OF ANY KIND,
00020  ** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR
00021  ** A PARTICULAR PURPOSE. Klarälvdalens Datakonsult AB reserves all rights
00022  ** not expressly granted herein.
00023  ** 
00024  ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00025  ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00026  **
00027  ** As a special exception, permission is given to link this program
00028  ** with any edition of Qt, and distribute the resulting executable,
00029  ** without including the source code for Qt in the source distribution.
00030  **
00031  **********************************************************************/
00032 
00033 #ifndef KDGANTTVIEWTASKLINK_H
00034 #define KDGANTTVIEWTASKLINK_H
00035 
00036 #include <QColor>
00037 #include <QString>
00038 
00039 #include "kdgantt_qt3_compat.h"
00040 
00041 #include "KDGanttViewItem.h"
00042 class KDGanttViewTaskLinkGroup;
00043 class KDCanvasPolygon;
00044 class KDCanvasLine;
00045 
00046 class KDGanttViewTaskLink
00047 {
00048 public:
00049     enum LinkType { None, FinishStart, StartStart, FinishFinish, StartFinish };
00050 
00051     KDGanttViewTaskLink( QPtrList<KDGanttViewItem> from,
00052                          QPtrList<KDGanttViewItem> to,
00053                          LinkType type = None );
00054     KDGanttViewTaskLink( KDGanttViewTaskLinkGroup* group,
00055                          QPtrList<KDGanttViewItem> from,
00056                          QPtrList<KDGanttViewItem> to,
00057                          LinkType type = None );
00058     KDGanttViewTaskLink( KDGanttViewTaskLinkGroup* group,
00059                          KDGanttViewItem*  from,
00060                          KDGanttViewItem* to,
00061                          LinkType type = None );
00062     KDGanttViewTaskLink( KDGanttViewItem*  from,
00063                          KDGanttViewItem* to,
00064                          LinkType type = None);
00065     ~KDGanttViewTaskLink();
00066     QPtrList<KDGanttViewItem> from() const;
00067     QPtrList<KDGanttViewItem> to() const;
00068     void removeItemFromList( KDGanttViewItem* );
00069 
00070     void setVisible( bool );
00071     bool isVisible() const;
00072 
00073     KDGanttViewTaskLinkGroup* group();
00074     void setGroup( KDGanttViewTaskLinkGroup*) ;
00075 
00076     void setHighlight( bool highlight );
00077     bool highlight() const;
00078 
00079     void setColor( const QColor& color );
00080     QColor color() const;
00081     void setHighlightColor( const QColor& color );
00082     QColor highlightColor() const;
00083 
00084     void setTooltipText( const QString& text );
00085     QString tooltipText() const;
00086     void setWhatsThisText( const QString& text );
00087     QString whatsThisText() const;
00088 
00089     void createNode( QDomDocument& doc,
00090                      QDomElement& parentElement );
00091     static KDGanttViewTaskLink* createFromDomElement( QDomElement& );
00092     bool isFromToItem (KDGanttViewItem * item );
00093 
00094     int getLinkType() const;
00095     void setLinkType(int type);
00096 
00097 private:
00098     void resetGroup();
00099     friend class KDGanttViewTaskLinkGroup;
00100     friend class KDTimeTableWidget;
00101     QPtrList<KDGanttViewItem> fromList,toList;
00102     QPtrList<KDCanvasLine>* horLineList;
00103     QPtrList<KDCanvasLine>* verLineList;
00104     QPtrList<KDCanvasPolygon>* topList;
00105     // used when linkType != None    
00106     QPtrList<KDCanvasLine>* horLineList2;
00107     QPtrList<KDCanvasLine>* verLineList2;
00108     QPtrList<KDCanvasLine>* horLineList3;
00109     QPtrList<KDCanvasPolygon>* topLeftList;
00110     QPtrList<KDCanvasPolygon>* topRightList;
00111     
00112     KDGanttViewTaskLinkGroup* myGroup;
00113     bool isvisible,ishighlighted;
00114     QColor myColor, myColorHL;
00115     QString myToolTipText,myWhatsThisText;
00116     KDTimeTableWidget*  myTimeTable;
00117     void initTaskLink();
00118     void showMe( bool );
00119     void showMeType( bool );
00120     void hide();
00121     int xOffset(KDGanttViewItem *item);
00122 
00123     LinkType myLinkType;
00124     static QString linkTypeToString( LinkType type );
00125     static LinkType stringToLinkType( const QString type );
00126 };
00127 
00128 #endif

kdgantt1

Skip menu "kdgantt1"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

kdepim

Skip menu "kdepim"
  • akonadi
  •   clients
  •   kabc
  •   kcal
  •   kcm
  • akregator
  • console
  •   kabcclient
  •   konsolekalendar
  • kaddressbook
  • kalarm
  •   lib
  • kdgantt
  • kdgantt1
  • kjots
  • kleopatra
  • kmail
  • kmobiletools
  • knode
  • knotes
  • kontact
  • kontactinterfaces
  • korganizer
  •   korgac
  • kpilot
  • ktimetracker
  • libkdepim
  • libkholidays
  • libkleo
  • libkpgp
  • maildir
Generated for kdepim by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal