##// END OF EJS Templates
New register explorer WIP...
New register explorer WIP !!!!!!!!!!!!!!!!!!!!!!!!!!!!! REMOVED OLD genericPySysdriver interface Now the plugins are directly exposed to python. ABI not compatible with previous plugins. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!

File last commit:

r0:1aa783210b8e default
r79:3440ba47d0f1 default
Show More
memsizewdgt.cpp
99 lines | 2.4 KiB | text/x-c | CppLexer
#include "memsizewdgt.h"
#include "QStringList"
MemSizeWdgt::MemSizeWdgt(QWidget *parent) :
QWidget(parent)
{
this->mainLayout = new QHBoxLayout;
this->sizeValue = new QLineEdit;
this->sizeUnit = new QComboBox;
this->sizeUnit->addItems(QStringList()<<tr("B")<<tr("kB")<<tr("MB")<<tr("GB")<<tr("TB"));
this->mainLayout->addWidget(this->sizeValue);
this->mainLayout->addWidget(this->sizeUnit);
this->setLayout(this->mainLayout);
connect(this->sizeValue,SIGNAL(returnPressed()),this,SLOT(setSizeValue()));
this->sizeValue->setText(QString::number(1));
this->maximum = (unsigned int)-1;
}
MemSizeWdgt::MemSizeWdgt(int defaultSize,QWidget *parent):
QWidget(parent)
{
this->mainLayout = new QHBoxLayout;
this->sizeValue = new QLineEdit;
this->sizeUnit = new QComboBox;
this->sizeUnit->addItems(QStringList()<<tr("B")<<tr("kB")<<tr("MB")<<tr("GB")<<tr("TB"));
this->mainLayout->addWidget(this->sizeValue);
this->mainLayout->addWidget(this->sizeUnit);
this->setLayout(this->mainLayout);
connect(this->sizeValue,SIGNAL(returnPressed()),this,SLOT(setSizeValue()));
this->sizeValue->setText(QString::number(defaultSize));
this->setSizeValue();
this->maximum = (unsigned int)-1;
}
void MemSizeWdgt::setSizeValue(int size)
{
this->sizeValue->setText(QString::number(size));
}
void MemSizeWdgt::setSizeValue(QString size)
{
this->sizeValue->setText(size);
this->setSizeValue();
}
void MemSizeWdgt::updateSizeValue()
{
this->setSizeValue();
}
void MemSizeWdgt::show()
{
QWidget::show();
}
void MemSizeWdgt::setSizeValue()
{
int unit=0;
double localSize=this->getsize();
if(localSize>this->maximum)
{
localSize = maximum;
}
if(localSize<0)
{
localSize = 0;
}
while(localSize>1024.0)
{
localSize=localSize/1024;
unit++;
}
if((unsigned int)this->sizeValue->text().toDouble()!=localSize)
{
this->sizeValue->setText(QString::number(localSize));
this->sizeUnit->setCurrentIndex(unit);
}
}
int MemSizeWdgt::getsize()
{
double size = this->sizeValue->text().toDouble();
int unit=this->sizeUnit->currentIndex();
while(unit>0)
{
size = size*1024;
unit--;
}
return (int)size;
}
void MemSizeWdgt::setMaximum(unsigned int max)
{
this->maximum = max;
}