예제 #1
0
void MainWindow::updateImgInfo()
{
	ImageStorage* imgstore = ImageStorage::getInstance();
	std::pair<const std::string, Ui::SrcAndRes>* current = imgstore->getCurrent();

	if (!imgstore->isEmpty())
	{
		//std::pair<const std::string, Ui::SrcAndRes>* current = imgstore->getCurrent();
		if (current != nullptr)
		{
			Ui::Image img =  std::get<1>(current->second);

			QString imgname = QString::fromStdString(current->first);
			QString info = QString("Name: %1\nChannels: %2\nDepth: %3\nSize: %4 x %5\n"
				).arg(imgname).arg(img.channels()).arg(img.depth()).arg(img.rows).arg(img.cols);

			QColor c("blue");
			ui->imgInfo->setTextColor(c);
			ui->imgInfo->setText(info);
		}
		else
		{
			ui->imgInfo->setText("");
		}
	}
	else
	{
		ui->imgInfo->setText("");
	}

	QCoreApplication::processEvents();
}