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
|
/* ====================================================================
* Copyright (c) 2003-2006, 2008 Martin Hauner
* http://subcommander.tigris.org
*
* Subcommander is licensed as described in the file doc/COPYING, which
* you should have received as part of this distribution.
* ====================================================================
*/
#ifndef _LINE_H
#define _LINE_H
#include "ConflictType.h"
#include "util/String.h"
/**
* line class for text widget.
*
* \todo replace ConflictType with a type object so we don't have
* the diff stuff hardcoded.
*/
class Line
{
public:
Line();
Line( const Line& );
Line( const sc::String& s, int blockNumber, ConflictType type );
const sc::String& getLine() const;
const char* getStr() const;
size_t getChars() const;
size_t getBytes() const;
int getBlockNr() const;
ConflictType getType() const;
bool isEmpty() const;
bool isCommon() const;
bool isDifference() const;
static const Line& getEmpty();
static const Line& getEmpty2();
private:
sc::String _line;
int _blockNumber;
ConflictType _type;
static Line _empty;
static Line _empty2;
};
#endif // _LINE_H
|