Added basic image object functionality.
This commit is contained in:
@@ -25,6 +25,7 @@
|
||||
#include "LabelModelObject.h"
|
||||
#include "LabelModelBoxObject.h"
|
||||
#include "LabelModelEllipseObject.h"
|
||||
#include "LabelModelImageObject.h"
|
||||
#include "LabelModelLineObject.h"
|
||||
#include "UndoRedoModel.h"
|
||||
|
||||
@@ -32,6 +33,7 @@
|
||||
|
||||
#include "Settings.h"
|
||||
|
||||
#include <QFileDialog>
|
||||
#include <cmath>
|
||||
#include <QtDebug>
|
||||
|
||||
@@ -82,6 +84,28 @@ void ObjectEditor::hidePages()
|
||||
}
|
||||
|
||||
|
||||
void ObjectEditor::loadImagePage()
|
||||
{
|
||||
if ( mObject )
|
||||
{
|
||||
mBlocked = true;
|
||||
|
||||
TextNode filenameNode = mObject->filenameNode();
|
||||
|
||||
if ( filenameNode.isField() )
|
||||
{
|
||||
imageFilenameLineEdit->setText( QString("${%1}").arg( filenameNode.data() ) );
|
||||
}
|
||||
else
|
||||
{
|
||||
imageFilenameLineEdit->setText( filenameNode.data() );
|
||||
}
|
||||
|
||||
mBlocked = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void ObjectEditor::loadLineFillPage()
|
||||
{
|
||||
if ( mObject )
|
||||
@@ -273,6 +297,25 @@ void ObjectEditor::onSelectionChanged()
|
||||
|
||||
setEnabled( true );
|
||||
}
|
||||
else if ( dynamic_cast<LabelModelImageObject*>(mObject) )
|
||||
{
|
||||
titleImageLabel->setPixmap( QPixmap(":icons/24x24/actions/glabels-image.png") );
|
||||
titleLabel->setText( tr("Image object properties") );
|
||||
|
||||
notebook->addTab( imagePage, "image" );
|
||||
notebook->addTab( posSizePage, "position/size" );
|
||||
notebook->addTab( shadowPage, "shadow" );
|
||||
|
||||
sizeRectFrame->setVisible( true );
|
||||
sizeResetImageButton->setVisible( true );
|
||||
sizeLineFrame->setVisible( false );
|
||||
|
||||
loadImagePage();
|
||||
loadPositionPage();
|
||||
loadShadowPage();
|
||||
|
||||
setEnabled( true );
|
||||
}
|
||||
else if ( dynamic_cast<LabelModelLineObject*>(mObject) )
|
||||
{
|
||||
titleImageLabel->setPixmap( QPixmap(":icons/24x24/actions/glabels-line.png") );
|
||||
@@ -333,6 +376,7 @@ void ObjectEditor::onObjectChanged()
|
||||
loadLineFillPage();
|
||||
loadRectSizePage();
|
||||
loadLineSizePage();
|
||||
loadImagePage();
|
||||
loadShadowPage();
|
||||
}
|
||||
}
|
||||
@@ -385,6 +429,21 @@ void ObjectEditor::onFillControlsChanged()
|
||||
}
|
||||
|
||||
|
||||
void ObjectEditor::onImageFileButtonClicked()
|
||||
{
|
||||
QString filename =
|
||||
QFileDialog::getOpenFileName( this->window(),
|
||||
tr("gLabels - Select image file"),
|
||||
".",
|
||||
tr("Image Files (*.png *.jpg *.bmp);;All files (*)") );
|
||||
if ( !filename.isEmpty() )
|
||||
{
|
||||
mUndoRedoModel->checkpoint( tr("Set image") );
|
||||
mObject->setFilenameNode( TextNode( false, filename ) );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void ObjectEditor::onPositionControlsChanged()
|
||||
{
|
||||
if ( !mBlocked )
|
||||
|
||||
Reference in New Issue
Block a user