21#include "kexidbtimeedit.h"
23#include <tqtoolbutton.h>
27#include <tdepopupmenu.h>
28#include <kdatepicker.h>
30#include <kexiutils/utils.h>
32KexiDBTimeEdit::KexiDBTimeEdit(
const TQTime &time, TQWidget *parent,
const char *name)
35 m_invalidState =
false;
39#ifdef TQDateTimeEditor_HACK
45 connect(
this, TQ_SIGNAL(valueChanged(
const TQTime&)),
this, TQ_SLOT(slotValueChanged(
const TQTime&)));
48KexiDBTimeEdit::~KexiDBTimeEdit()
56 m_invalidState =
true;
58 if (focusPolicy() & TabFocus)
59 setFocusPolicy(TQWidget::ClickFocus);
63KexiDBTimeEdit::setEnabled(
bool enabled)
66 if(enabled && m_invalidState)
68 TQTimeEdit::setEnabled(enabled);
73 m_cleared = !m_origValue.isValid();
75 int setNumberOnFocus = -1;
77 TQString addString(add.toString());
79 if (!addString.isEmpty() && addString[0].latin1()>=
'0' && addString[0].latin1() <=
'9') {
80 setNumberOnFocus = addString[0].latin1()-
'0';
81 t = TQTime(setNumberOnFocus, 0, 0);
85 t = m_origValue.toTime();
94 return TQVariant(TQDateTime( m_cleared ? TQDate() : TQDate(0,1,2), time()));
99 return !time().isValid() || time().isNull();
114void KexiDBTimeEdit::setReadOnly(
bool set)
127#ifdef TQDateTimeEditor_HACK
128 return m_dte_time && hasFocus() && m_dte_time->focusSection()==0;
136#ifdef TQDateTimeEditor_HACK
137 return m_dte_time && hasFocus()
138 && m_dte_time->focusSection()==int(m_dte_time->sectionCount()-1);
151KexiDBTimeEdit::slotValueChanged(
const TQTime&)
156#include "kexidbtimeedit.moc"
virtual bool cursorAtStart()
virtual void setInvalidState(const TQString &displayText)
virtual bool valueIsNull()
virtual bool cursorAtEnd()
virtual bool valueIsEmpty()
virtual void setValueInternal(const TQVariant &add, bool removeOld)
virtual bool isReadOnly() const
virtual void clear()
clears item's data, so the data will contain NULL data
virtual TQVariant value()
virtual TQWidget * widget()
type * findParent(TQObject *o, const char *className)