summaryrefslogtreecommitdiffstats
path: root/quanta/components/tableeditor/tableitem.h
blob: 1eff7f5907d00b075bbbf85990b75910f3b3ce26 (plain)
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
/***************************************************************************
                          tableitem.h  -  description
                             -------------------
    begin                : Mon 15 Mar 2004
    copyright            : (C) 2004 by Michal Rudolf <[email protected]>
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   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) any later version.                                   *
 *                                                                         *
 ***************************************************************************/

#ifndef TABLEITEM_H
#define TABLEITEM_H

#include <qtable.h>
#include <kdeversion.h>

class TableItem : public QTableItem
{
private:
  Qt::AlignmentFlags m_halign;
  Qt::AlignmentFlags m_valign;
  bool m_header;
public:
  // Standard constructors copied from QTableItem
  TableItem(QTable* table, EditType et);
  TableItem(QTable* table, EditType et, const QString& text);
  TableItem (QTable* table, EditType et, const QString& text, const QPixmap& p);
  // Use QTextEdit instead of standard QLineEdit
  virtual QWidget* createEditor() const;
  // Get text from QTextEdit
  virtual void setContentFromEditor(QWidget *w);
  // Paint cell - handle alignment (horizontal and vertical) and bold for header
  virtual void paint(QPainter* p, const QColorGroup& cg, const QRect& cr, bool selected);
  // Return A bit larger sizeHint because QTextEdit has some margin around
  virtual QSize sizeHint() const;
  // Get and set vertical aligment
  Qt::AlignmentFlags vAlignment()	{return m_valign;}
  void setVAlignment(Qt::AlignmentFlags flags)	{m_valign = flags;}
  // Get and set horizontal aligment
  Qt::AlignmentFlags alignment()	{return m_halign;}
  void setAlignment(Qt::AlignmentFlags flags)	{m_halign = flags;}
  // Get and set header status (use true for TH, false for TD)
  bool header()	{return m_header;}
  void setHeader(bool h)  {m_header = h;}
};



#endif