1 /****************************************************************************
2 ** $Id: qg_commandedit.cpp 1614 2004-12-09 23:10:15Z andrew $
4 ** Copyright (C) 2001-2003 RibbonSoft. All rights reserved.
6 ** This file is part of the qcadlib Library project.
8 ** This file may be distributed and/or modified under the terms of the
9 ** GNU General Public License version 2 as published by the Free Software
10 ** Foundation and appearing in the file LICENSE.GPL included in the
11 ** packaging of this file.
13 ** Licensees holding valid qcadlib Professional Edition licenses may use
14 ** this file in accordance with the qcadlib Commercial License
15 ** Agreement provided with the Software.
17 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
18 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
20 ** See http://www.ribbonsoft.com for further details.
22 ** Contact info@ribbonsoft.com if any conditions of this licensing are
25 **********************************************************************/
27 #include "qg_commandedit.h"
32 * Default Constructor. You must call init manually if you choose
33 * to use this constructor.
35 QG_CommandEdit::QG_CommandEdit(QWidget * parent, const char */*name*/):
36 // QLineEdit(parent, name)
44 QG_CommandEdit::~QG_CommandEdit()
50 * Bypass for key press events from the tab key.
52 bool QG_CommandEdit::event(QEvent * e)
54 if (e->type() == QEvent::KeyPress)
56 QKeyEvent * k = (QKeyEvent *)e;
58 if (k->key() == Qt::Key_Tab)
65 return QLineEdit::event(e);
69 * History (arrow key up/down) support, tab.
71 void QG_CommandEdit::keyPressEvent(QKeyEvent * e)
76 #warning "!!! URG !!!"
77 // if (it != historyList.begin() && it != 0)
78 if (it != historyList.begin())// && it != 0)
86 #warning "!!! URG !!!"
87 // if (it != historyList.end() && it != 0)
88 if (it != historyList.end())// && it != 0)
92 if (it != historyList.end())
100 historyList.append(text());
101 it = historyList.end();
102 QLineEdit::keyPressEvent(e);
106 if (text().isEmpty())
113 QLineEdit::keyPressEvent(e);
118 void QG_CommandEdit::focusInEvent(QFocusEvent * e)
121 QLineEdit::focusInEvent(e);
125 void QG_CommandEdit::focusOutEvent(QFocusEvent * e)
128 QLineEdit::focusOutEvent(e);