|
|
|
/***************************************************************************
|
|
|
|
kvalueeditor.h - description
|
|
|
|
-------------------
|
|
|
|
begin : Sa Dez 4 2004
|
|
|
|
copyright : (C) 2004 by Friedrich W. H. Kossebau
|
|
|
|
email : Friedrich.W.H@Kossebau.de
|
|
|
|
***************************************************************************/
|
|
|
|
|
|
|
|
/***************************************************************************
|
|
|
|
* *
|
|
|
|
* This library is free software; you can redistribute it and/or *
|
|
|
|
* modify it under the terms of the GNU Library General Public *
|
|
|
|
* License version 2 as published by the Free Software Foundation. *
|
|
|
|
* *
|
|
|
|
***************************************************************************/
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef KHE_KVALUEEDITOR_H
|
|
|
|
#define KHE_KVALUEEDITOR_H
|
|
|
|
|
|
|
|
|
|
|
|
// lib specific
|
|
|
|
#include "keditor.h"
|
|
|
|
|
|
|
|
namespace KHE
|
|
|
|
{
|
|
|
|
|
|
|
|
class KValueColumn;
|
|
|
|
|
|
|
|
|
|
|
|
class KValueEditor: public KEditor
|
|
|
|
{
|
|
|
|
protected:
|
|
|
|
enum KValueEditAction
|
|
|
|
{ EnterValue, IncValue, DecValue, ValueAppend, ValueEdit, LeaveValue, CancelValue, ValueBackspace };
|
|
|
|
|
|
|
|
public:
|
|
|
|
KValueEditor( KValueColumn *VC, KBufferCursor *BC, KHexEdit *HE, KController *P );
|
|
|
|
virtual ~KValueEditor();
|
|
|
|
|
|
|
|
public: // KEditor API
|
|
|
|
virtual bool handleKeyPress( TQKeyEvent *KeyEvent );
|
|
|
|
|
|
|
|
public:
|
|
|
|
void reset();
|
|
|
|
|
|
|
|
public:
|
|
|
|
bool isInEditMode() const;
|
|
|
|
|
|
|
|
protected:
|
|
|
|
/** executes keyboard Action \a Action. This is normally called by a key event handler. */
|
|
|
|
void doValueEditAction( KValueEditAction Action, int Input = -1 );
|
|
|
|
|
|
|
|
public://protected:
|
|
|
|
KValueColumn *ValueColumn;
|
|
|
|
/** flag whether we are in editing mode */
|
|
|
|
bool InEditMode:1;
|
|
|
|
/** flag whether byte edit mode was reached by inserting */
|
|
|
|
bool EditModeByInsert:1;
|
|
|
|
/** */
|
|
|
|
unsigned char EditValue;
|
|
|
|
/** stores the old byte value */
|
|
|
|
unsigned char OldValue;
|
|
|
|
/** buffer with the */
|
|
|
|
TQString ByteBuffer;
|
|
|
|
};
|
|
|
|
|
|
|
|
inline KValueEditor::~KValueEditor() {}
|
|
|
|
|
|
|
|
inline bool KValueEditor::isInEditMode() const { return InEditMode; }
|
|
|
|
inline void KValueEditor::reset() { InEditMode = false; }
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|