2010-06-16 12:53:56 +00:00
|
|
|
#ifndef LIBQCROSS_CNONOGRAMSOLVER_H
|
|
|
|
#define LIBQCROSS_CNONOGRAMSOLVER_H
|
|
|
|
|
|
|
|
#include <QObject>
|
2012-04-11 13:01:54 +00:00
|
|
|
#include <QSize>
|
|
|
|
#include <QList>
|
2010-06-16 12:53:56 +00:00
|
|
|
|
2011-12-21 11:49:33 +00:00
|
|
|
namespace libqnono {
|
2010-06-16 12:53:56 +00:00
|
|
|
class CNonogram;
|
|
|
|
|
|
|
|
class CNonogramSolver : public QObject {
|
|
|
|
Q_OBJECT
|
|
|
|
public:
|
|
|
|
CNonogramSolver(QObject * parent = 0);
|
|
|
|
~CNonogramSolver();
|
|
|
|
|
2011-12-21 11:49:33 +00:00
|
|
|
void setNonogram(CNonogram * nonogram);
|
|
|
|
public slots:
|
2010-06-16 12:53:56 +00:00
|
|
|
bool solve();
|
|
|
|
signals:
|
|
|
|
void markRequested(int x, int y, int type);
|
|
|
|
protected:
|
2011-12-21 11:49:33 +00:00
|
|
|
enum MarkerType {CMT_UNMARKED = 0, CMT_MARKED = 1, CMT_CROSSED = 2, CMT_NONE = 3};
|
|
|
|
|
2010-06-16 12:53:56 +00:00
|
|
|
CNonogram * m_Nonogram;
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|