mirror of
https://github.com/YACReader/yacreader
synced 2025-07-22 15:04:40 -04:00
a?adida opci?n vsync (problema de rendimiento en modo de ventana)
corregido bug en la gesti?n de eventos de teclado de goToFlow el nombre del fichero de c?mics se muestra ahora en el t?tulo de la ventana de YACReader
This commit is contained in:
@ -23,7 +23,10 @@
|
||||
|
||||
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
HelpAboutDialog::HelpAboutDialog(QWidget * parent)
|
||||
:QDialog(parent)
|
||||
{
|
||||
@ -80,6 +83,10 @@ QString HelpAboutDialog::fileToString(const QString & path)
|
||||
return content;
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
void delTree(QDir dir)
|
||||
{
|
||||
dir.setFilter(QDir::AllDirs|QDir::Files|QDir::Hidden|QDir::NoDotAndDotDot);
|
||||
@ -100,6 +107,10 @@ void delTree(QDir dir)
|
||||
}
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
YACReaderIconProvider::YACReaderIconProvider()
|
||||
:QFileIconProvider()
|
||||
{
|
||||
@ -133,6 +144,10 @@ QString YACReaderIconProvider::type(const QFileInfo & info) const
|
||||
return QFileIconProvider::type(info);
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
YACReaderFlow::YACReaderFlow(QWidget * parent,FlowType flowType) : PictureFlow(parent,flowType) {}
|
||||
|
||||
void YACReaderFlow::mousePressEvent(QMouseEvent* event)
|
||||
@ -151,6 +166,10 @@ void YACReaderFlow::mouseDoubleClickEvent(QMouseEvent* event)
|
||||
emit selected(centerIndex());
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
YACReaderComicDirModel::YACReaderComicDirModel( const QStringList & nameFilters, QDir::Filters filters, QDir::SortFlags sort, QObject * parent )
|
||||
:QDirModel(nameFilters,filters,sort,parent)
|
||||
{
|
||||
@ -173,7 +192,10 @@ QFileInfo YACReaderComicDirModel::fileInfo ( const QModelIndex & index ) const
|
||||
return fileInfo;
|
||||
}
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
YACReaderComicViewDelegate::YACReaderComicViewDelegate(QObject * parent)
|
||||
:QItemDelegate(parent)
|
||||
{
|
||||
@ -269,6 +291,10 @@ QRect YACReaderComicViewDelegate::textLayoutBounds(const QStyleOptionViewItemV2
|
||||
return rect;
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
YACReaderTreeSearch::YACReaderTreeSearch(QObject * parent)
|
||||
:QSortFilterProxyModel(parent),cache(new ModelIndexCache())
|
||||
{
|
||||
@ -334,6 +360,10 @@ void YACReaderTreeSearch::softReset()
|
||||
//invalidateFilter();
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
ModelIndexCache::ModelIndexCache()
|
||||
:cache()
|
||||
{
|
||||
@ -361,6 +391,10 @@ void ModelIndexCache::clear()
|
||||
cache.clear();
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
YACReaderSortComics::YACReaderSortComics(QObject * parent)
|
||||
:QSortFilterProxyModel(parent)
|
||||
{
|
||||
@ -379,7 +413,10 @@ bool YACReaderSortComics::lessThan(const QModelIndex &left, const QModelIndex &r
|
||||
}
|
||||
|
||||
|
||||
//--------------------------------------------
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
YACReaderFieldEdit::YACReaderFieldEdit(QWidget * parent)
|
||||
:QLineEdit(parent)
|
||||
@ -416,7 +453,10 @@ void YACReaderFieldEdit::setDisabled(bool disabled)
|
||||
QLineEdit::setDisabled(disabled);
|
||||
}
|
||||
|
||||
//--------------------------------------------
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
|
||||
YACReaderFieldPlainTextEdit::YACReaderFieldPlainTextEdit(QWidget * parent)
|
||||
:QPlainTextEdit(parent)
|
||||
@ -468,7 +508,10 @@ void YACReaderFieldPlainTextEdit::setDisabled(bool disabled)
|
||||
QPlainTextEdit::setDisabled(disabled);
|
||||
}
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
YACReaderSpinSliderWidget::YACReaderSpinSliderWidget(QWidget * parent)
|
||||
:QWidget(parent)
|
||||
{
|
||||
@ -501,7 +544,9 @@ void YACReaderSpinSliderWidget::setRange(int lowValue, int topValue, int step)
|
||||
|
||||
void YACReaderSpinSliderWidget::setValue(int value)
|
||||
{
|
||||
disconnect(spinBox, SIGNAL(valueChanged(int)), this, SIGNAL(valueChanged(int)));
|
||||
spinBox->setValue(value);
|
||||
connect(spinBox, SIGNAL(valueChanged(int)), this, SIGNAL(valueChanged(int)));
|
||||
}
|
||||
|
||||
void YACReaderSpinSliderWidget::setText(const QString & text)
|
||||
@ -519,8 +564,10 @@ QSize YACReaderSpinSliderWidget::minimumSizeHint() const
|
||||
return QSize(220, 25);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
YACReaderOptionsDialog::YACReaderOptionsDialog(QWidget * parent)
|
||||
:QDialog(parent)
|
||||
{
|
||||
@ -549,6 +596,12 @@ YACReaderOptionsDialog::YACReaderOptionsDialog(QWidget * parent)
|
||||
connect(gl->radionModern,SIGNAL(toggled(bool)),this,SLOT(setModernConfig()));
|
||||
connect(gl->radioDown,SIGNAL(toggled(bool)),this,SLOT(setRouletteConfig()));
|
||||
|
||||
connect(gl->radioClassic,SIGNAL(toggled(bool)),this,SIGNAL(optionsChanged()));
|
||||
connect(gl->radioStripe,SIGNAL(toggled(bool)),this,SIGNAL(optionsChanged()));
|
||||
connect(gl->radioOver,SIGNAL(toggled(bool)),this,SIGNAL(optionsChanged()));
|
||||
connect(gl->radionModern,SIGNAL(toggled(bool)),this,SIGNAL(optionsChanged()));
|
||||
connect(gl->radioDown,SIGNAL(toggled(bool)),this,SIGNAL(optionsChanged()));
|
||||
|
||||
connect(gl->xRotation,SIGNAL(valueChanged(int)),this,SIGNAL(optionsChanged()));
|
||||
connect(gl->xRotation,SIGNAL(valueChanged(int)),this,SLOT(saveXRotation(int)));
|
||||
|
||||
@ -585,6 +638,7 @@ YACReaderOptionsDialog::YACReaderOptionsDialog(QWidget * parent)
|
||||
connect(gl->performanceSlider, SIGNAL(valueChanged(int)),this,SLOT(savePerformance(int)));
|
||||
connect(gl->performanceSlider, SIGNAL(valueChanged(int)),this,SLOT(optionsChanged()));
|
||||
|
||||
connect(gl->vSyncCheck,SIGNAL(stateChanged(int)),this,SLOT(saveUseVSync(int)));
|
||||
}
|
||||
|
||||
void YACReaderOptionsDialog::savePerformance(int value)
|
||||
@ -592,6 +646,26 @@ void YACReaderOptionsDialog::savePerformance(int value)
|
||||
settings->setValue(PERFORMANCE,value);
|
||||
}
|
||||
|
||||
void YACReaderOptionsDialog::saveUseVSync(int b)
|
||||
{
|
||||
settings->setValue(V_SYNC,b);
|
||||
}
|
||||
|
||||
void YACReaderOptionsDialog::saveFlowParameters()
|
||||
{
|
||||
settings->setValue(X_ROTATION,gl->xRotation->getValue());
|
||||
settings->setValue(Y_POSITION,gl->yPosition->getValue());
|
||||
settings->setValue(COVER_DISTANCE,gl->coverDistance->getValue());
|
||||
settings->setValue(CENTRAL_DISTANCE,gl->centralDistance->getValue());
|
||||
settings->setValue(ZOOM_LEVEL,gl->zoomLevel->getValue());
|
||||
settings->setValue(Y_COVER_OFFSET,gl->yCoverOffset->getValue());
|
||||
settings->setValue(Z_COVER_OFFSET,gl->zCoverOffset->getValue());
|
||||
settings->setValue(COVER_ROTATION,gl->coverRotation->getValue());
|
||||
settings->setValue(FADE_OUT_DIST,gl->fadeOutDist->getValue());
|
||||
settings->setValue(LIGHT_STRENGTH,gl->lightStrength->getValue());
|
||||
settings->setValue(MAX_ANGLE,gl->maxAngle->getValue());
|
||||
}
|
||||
|
||||
void YACReaderOptionsDialog::saveOptions()
|
||||
{
|
||||
emit(optionsChanged());
|
||||
@ -701,7 +775,13 @@ void YACReaderOptionsDialog::restoreOptions(QSettings * settings)
|
||||
return;
|
||||
}
|
||||
|
||||
if(settings->contains(V_SYNC) && settings->value(V_SYNC).toInt() == Qt::Checked)
|
||||
gl->vSyncCheck->setChecked(true);
|
||||
else
|
||||
gl->vSyncCheck->setChecked(false);
|
||||
|
||||
gl->performanceSlider->setValue(settings->value(PERFORMANCE).toInt());
|
||||
|
||||
FlowType flowType;
|
||||
switch(settings->value(FLOW_TYPE_GL).toInt())
|
||||
{
|
||||
@ -805,6 +885,8 @@ void YACReaderOptionsDialog::setClassicConfig()
|
||||
settings->setValue(FLOW_TYPE_GL,CoverFlowLike);
|
||||
|
||||
gl->setValues(presetYACReaderFlowClassicConfig);
|
||||
|
||||
saveFlowParameters();
|
||||
}
|
||||
|
||||
void YACReaderOptionsDialog::setStripeConfig()
|
||||
@ -812,6 +894,8 @@ void YACReaderOptionsDialog::setStripeConfig()
|
||||
settings->setValue(FLOW_TYPE_GL,Strip);
|
||||
|
||||
gl->setValues(presetYACReaderFlowStripeConfig);
|
||||
|
||||
saveFlowParameters();
|
||||
}
|
||||
|
||||
void YACReaderOptionsDialog::setOverlappedStripeConfig()
|
||||
@ -819,6 +903,8 @@ void YACReaderOptionsDialog::setOverlappedStripeConfig()
|
||||
settings->setValue(FLOW_TYPE_GL,StripOverlapped);
|
||||
|
||||
gl->setValues(presetYACReaderFlowOverlappedStripeConfig);
|
||||
|
||||
saveFlowParameters();
|
||||
}
|
||||
|
||||
void YACReaderOptionsDialog::setModernConfig()
|
||||
@ -826,6 +912,8 @@ void YACReaderOptionsDialog::setModernConfig()
|
||||
settings->setValue(FLOW_TYPE_GL,Modern);
|
||||
|
||||
gl->setValues(defaultYACReaderFlowConfig);
|
||||
|
||||
saveFlowParameters();
|
||||
}
|
||||
|
||||
void YACReaderOptionsDialog::setRouletteConfig()
|
||||
@ -833,10 +921,15 @@ void YACReaderOptionsDialog::setRouletteConfig()
|
||||
settings->setValue(FLOW_TYPE_GL,Roulette);
|
||||
|
||||
gl->setValues(pressetYACReaderFlowDownConfig);
|
||||
|
||||
saveFlowParameters();
|
||||
}
|
||||
|
||||
|
||||
///----------------------------------------------------------
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
YACReaderGLFlowConfigWidget::YACReaderGLFlowConfigWidget(QWidget * parent /* = 0 */)
|
||||
:QWidget(parent)
|
||||
{
|
||||
@ -962,7 +1055,7 @@ YACReaderGLFlowConfigWidget::YACReaderGLFlowConfigWidget(QWidget * parent /* = 0
|
||||
|
||||
lightStrength = new YACReaderSpinSliderWidget(this);
|
||||
lightStrength->setText(tr("Light"));
|
||||
lightStrength->setRange(-10,10);
|
||||
lightStrength->setRange(0,10);
|
||||
//connect(lightStrength,SIGNAL(valueChanged(int)),this,SIGNAL(optionsChanged()));
|
||||
//connect(lightStrength,SIGNAL(valueChanged(int)),this,SLOT(saveLightStrength(int)));
|
||||
|
||||
@ -996,10 +1089,10 @@ YACReaderGLFlowConfigWidget::YACReaderGLFlowConfigWidget(QWidget * parent /* = 0
|
||||
groupBoxesLayout->addWidget(groupBox);
|
||||
groupBoxesLayout->addWidget(optionsGroupBox);
|
||||
|
||||
QHBoxLayout * performance = new QHBoxLayout;
|
||||
performance->addWidget(new QLabel(tr("Low Performance")));
|
||||
performance->addWidget(performanceSlider = new QSlider(Qt::Horizontal));
|
||||
performance->addWidget(new QLabel(tr("High Performance")));
|
||||
QHBoxLayout * performanceSliderLayout = new QHBoxLayout;
|
||||
performanceSliderLayout->addWidget(new QLabel(tr("Low Performance")));
|
||||
performanceSliderLayout->addWidget(performanceSlider = new QSlider(Qt::Horizontal));
|
||||
performanceSliderLayout->addWidget(new QLabel(tr("High Performance")));
|
||||
|
||||
performanceSlider->setMinimum(0);
|
||||
performanceSlider->setMaximum(3);
|
||||
@ -1008,12 +1101,25 @@ YACReaderGLFlowConfigWidget::YACReaderGLFlowConfigWidget(QWidget * parent /* = 0
|
||||
performanceSlider->setTickInterval(1);
|
||||
performanceSlider->setTickPosition(QSlider::TicksRight);
|
||||
|
||||
QHBoxLayout * vSyncLayout = new QHBoxLayout;
|
||||
|
||||
vSyncCheck = new QCheckBox(tr("Use VSync (improve the image quality in fullscreen mode, worse performance)"));
|
||||
vSyncLayout->addStretch();
|
||||
vSyncLayout->addWidget(vSyncCheck);
|
||||
|
||||
QVBoxLayout * performanceLayout = new QVBoxLayout;
|
||||
performanceLayout->addLayout(performanceSliderLayout);
|
||||
performanceLayout->addLayout(vSyncLayout);
|
||||
|
||||
QGroupBox *performanceGroupBox = new QGroupBox(tr("Performance:"));
|
||||
|
||||
//connect(performanceSlider, SIGNAL(valueChanged(int)),this,SLOT(savePerformance(int)));
|
||||
//connect(performanceSlider, SIGNAL(valueChanged(int)),this,SLOT(optionsChanged()));
|
||||
|
||||
performanceGroupBox->setLayout(performanceLayout);
|
||||
|
||||
layout->addLayout(groupBoxesLayout);
|
||||
layout->addLayout(performance);
|
||||
layout->addWidget(performanceGroupBox);
|
||||
|
||||
layout->setContentsMargins(0,0,0,0);
|
||||
|
||||
@ -1037,7 +1143,10 @@ void YACReaderGLFlowConfigWidget::setValues(Preset preset)
|
||||
maxAngle->setValue(preset.viewAngle);
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
YACReaderFlowConfigWidget::YACReaderFlowConfigWidget(QWidget * parent )
|
||||
:QWidget(parent)
|
||||
{
|
||||
|
@ -32,6 +32,10 @@
|
||||
|
||||
#include "yacreader_flow_gl.h"
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class QToolBarStretch : public QWidget
|
||||
{
|
||||
public:
|
||||
@ -43,6 +47,10 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class HelpAboutDialog : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -60,6 +68,10 @@ private:
|
||||
QString fileToString(const QString & path);
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class YACReaderIconProvider : public QFileIconProvider
|
||||
{
|
||||
public:
|
||||
@ -69,6 +81,10 @@ public:
|
||||
virtual QString type ( const QFileInfo & info ) const;
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class YACReaderFlow : public PictureFlow
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -82,6 +98,10 @@ signals:
|
||||
void selected(unsigned int centerIndex);
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class YACReaderComicDirModel : public QDirModel
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -91,6 +111,10 @@ Q_OBJECT
|
||||
QFileInfo fileInfo ( const QModelIndex & index ) const;
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class YACReaderComicViewDelegate : public QItemDelegate
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -100,6 +124,10 @@ class YACReaderComicViewDelegate : public QItemDelegate
|
||||
QRect textLayoutBounds(const QStyleOptionViewItemV2 &option) const;
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class ModelIndexCache
|
||||
{
|
||||
|
||||
@ -118,7 +146,10 @@ private:
|
||||
QHash<QString, CacheData> cache;
|
||||
};
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class YACReaderTreeSearch : public QSortFilterProxyModel
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -135,6 +166,10 @@ private:
|
||||
ModelIndexCache * cache;
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class YACReaderSortComics : public QSortFilterProxyModel
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -143,10 +178,16 @@ class YACReaderSortComics : public QSortFilterProxyModel
|
||||
protected:
|
||||
bool lessThan(const QModelIndex &left, const QModelIndex &right) const;
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
void delTree(QDir dir);
|
||||
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class YACReaderFieldEdit : public QLineEdit
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -161,6 +202,10 @@ private:
|
||||
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class YACReaderFieldPlainTextEdit : public QPlainTextEdit
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -192,6 +237,10 @@ private:
|
||||
// }
|
||||
//};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class YACReaderSpinSliderWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -212,6 +261,10 @@ signals:
|
||||
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class YACReaderFlowConfigWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -223,6 +276,10 @@ public:
|
||||
YACReaderFlowConfigWidget(QWidget * parent = 0);
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class YACReaderGLFlowConfigWidget : public QWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -249,11 +306,16 @@ public:
|
||||
YACReaderSpinSliderWidget * maxAngle;
|
||||
|
||||
QSlider * performanceSlider;
|
||||
QCheckBox * vSyncCheck;
|
||||
|
||||
public slots:
|
||||
void setValues(Preset preset);
|
||||
};
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
class YACReaderOptionsDialog : public QDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
@ -275,6 +337,7 @@ public slots:
|
||||
virtual void saveOptions();
|
||||
protected slots:
|
||||
virtual void savePerformance(int value);
|
||||
virtual void saveUseVSync(int b);
|
||||
virtual void saveUseGL(int b);
|
||||
virtual void saveXRotation(int value);
|
||||
virtual void saveYPosition(int value);
|
||||
@ -296,6 +359,7 @@ protected slots:
|
||||
virtual void setClassicConfigSW();
|
||||
virtual void setStripeConfigSW();
|
||||
virtual void setOverlappedStripeConfigSW();
|
||||
virtual void saveFlowParameters();
|
||||
|
||||
signals:
|
||||
void optionsChanged();
|
||||
|
@ -191,7 +191,7 @@ struct Preset pressetYACReaderFlowDownConfig = {
|
||||
};
|
||||
/*Constructor*/
|
||||
YACReaderFlowGL::YACReaderFlowGL(QWidget *parent,struct Preset p)
|
||||
:QGLWidget(QGLFormat(QGL::SampleBuffers), parent),numObjects(0),lazyPopulateObjects(-1)
|
||||
:QGLWidget(QGLFormat(QGL::SampleBuffers), parent),numObjects(0),lazyPopulateObjects(-1),bUseVSync(false)
|
||||
{
|
||||
updateCount = 0;
|
||||
config = p;
|
||||
@ -512,7 +512,6 @@ void YACReaderFlowGL::draw()
|
||||
glMatrixMode(GL_MODELVIEW);
|
||||
glLoadIdentity();
|
||||
|
||||
|
||||
glBegin( GL_TRIANGLES );
|
||||
|
||||
glColor4f( 1.0f, 1.0f, 1.0f, 1.0f );
|
||||
@ -528,7 +527,6 @@ void YACReaderFlowGL::draw()
|
||||
glMatrixMode(GL_PROJECTION);
|
||||
glPopMatrix();
|
||||
glMatrixMode(GL_MODELVIEW);
|
||||
|
||||
}
|
||||
|
||||
void YACReaderFlowGL::showPrevious()
|
||||
@ -720,6 +718,13 @@ void YACReaderFlowGL::reset()
|
||||
|
||||
}
|
||||
|
||||
void YACReaderFlowGL::reload()
|
||||
{
|
||||
int n = numObjects;
|
||||
reset();
|
||||
populate(n);
|
||||
}
|
||||
|
||||
//slots
|
||||
void YACReaderFlowGL::setCF_RX(int value)
|
||||
{
|
||||
@ -809,22 +814,33 @@ void YACReaderFlowGL::setPreset(const Preset & p)
|
||||
|
||||
void YACReaderFlowGL::setPerformance(Performance performance)
|
||||
{
|
||||
this->performance = performance;
|
||||
|
||||
//if(performance = ultraHigh)
|
||||
//{
|
||||
// QGLFormat f = format();
|
||||
// f.setSwapInterval(1);
|
||||
// setFormat(f);
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// QGLFormat f = format();
|
||||
// f.setSwapInterval(0);
|
||||
// setFormat(f);
|
||||
//}
|
||||
if(this->performance != performance)
|
||||
{
|
||||
this->performance = performance;
|
||||
reload();
|
||||
}
|
||||
}
|
||||
|
||||
void YACReaderFlowGL::useVSync(bool b)
|
||||
{
|
||||
if(bUseVSync != b)
|
||||
{
|
||||
bUseVSync = b;
|
||||
if(b)
|
||||
{
|
||||
QGLFormat f = format();
|
||||
f.setSwapInterval(1);
|
||||
setFormat(f);
|
||||
}
|
||||
else
|
||||
{
|
||||
QGLFormat f = format();
|
||||
f.setSwapInterval(0);
|
||||
setFormat(f);
|
||||
}
|
||||
reload();
|
||||
}
|
||||
}
|
||||
void YACReaderFlowGL::setShowMarks(bool value)
|
||||
{
|
||||
showMarks = value;
|
||||
@ -949,10 +965,8 @@ void YACReaderFlowGL::mousePressEvent(QMouseEvent *event)
|
||||
}
|
||||
else if(posX <=-0.5)
|
||||
showPrevious();
|
||||
} else if(event->button() == Qt::RightButton)
|
||||
{
|
||||
marks[currentSelected] = !marks[currentSelected];
|
||||
}
|
||||
} else
|
||||
QGLWidget::mousePressEvent(event);
|
||||
}
|
||||
|
||||
void YACReaderFlowGL::mouseDoubleClickEvent(QMouseEvent* event)
|
||||
@ -973,9 +987,11 @@ void YACReaderComicFlowGL::setImagePaths(QStringList paths)
|
||||
worker->reset();
|
||||
reset();
|
||||
numObjects = 0;
|
||||
populate(paths.size());
|
||||
if(lazyPopulateObjects!=-1)
|
||||
YACReaderFlowGL::populate(paths.size());
|
||||
lazyPopulateObjects = paths.size();
|
||||
this->paths = paths;
|
||||
numObjects = paths.size();
|
||||
//numObjects = paths.size();
|
||||
}
|
||||
|
||||
|
||||
@ -1158,8 +1174,8 @@ void YACReaderPageFlowGL::updateImageData()
|
||||
void YACReaderPageFlowGL::populate(int n)
|
||||
{
|
||||
worker->reset();
|
||||
//if(lazyPopulateObjects!=-1)
|
||||
//YACReaderFlowGL::populate(n);
|
||||
if(lazyPopulateObjects!=-1)
|
||||
YACReaderFlowGL::populate(n);
|
||||
lazyPopulateObjects = n;
|
||||
imagesReady = QVector<bool> (n,false);
|
||||
rawImages = QVector<QByteArray> (n);
|
||||
|
@ -139,6 +139,7 @@ protected:
|
||||
CFImage * cfImages;
|
||||
|
||||
Performance performance;
|
||||
bool bUseVSync;
|
||||
|
||||
/*** Animation Settings ***/
|
||||
Preset config;
|
||||
@ -234,11 +235,12 @@ public:
|
||||
|
||||
void setPerformance(Performance performance);
|
||||
|
||||
|
||||
void useVSync(bool b);
|
||||
|
||||
virtual void updateImageData() = 0;
|
||||
|
||||
void reset();
|
||||
void reload();
|
||||
|
||||
//interface with yacreaderlibrary, compatibility
|
||||
void setShowMarks(bool value);
|
||||
|
@ -35,6 +35,7 @@
|
||||
#define USE_OPEN_GL "USE_OPEN_GL"
|
||||
#define X_ROTATION "X_ROTATION"
|
||||
#define Y_COVER_OFFSET "Y_COVER_OFFSET"
|
||||
#define V_SYNC "V_SYNC"
|
||||
|
||||
enum FlowType
|
||||
{
|
||||
|
Reference in New Issue
Block a user