AlbumShaper 1.0a3
ScaledPreviewInterface Class Reference

#include <scaledPreviewInterface.h>

Inheritance diagram for ScaledPreviewInterface:
Collaboration diagram for ScaledPreviewInterface:

Signals

void resized ()
 

Public Member Functions

 ScaledPreviewInterface (QString imageFilename, QWidget *parent=0, const char *name=0)
 Creates layout.
 
virtual QSize sizeHint () const
 
virtual QSize minimumSizeHint () const
 
- Public Member Functions inherited from SplitViewInterface
 SplitViewInterface (QWidget *parent=0, const char *name=0)
 Creates layout.
 
void setPreviewMode (PREVIEW_MODE mode, bool forceDrawLabel=false)
 Sets preview mode.
 
void setImages (QImage origImage, QImage adjustedImage)
 
void setAdjustedImage (QImage adjustedImage)
 sets adjusted image and repaints
 
QImage & getOrigImage ()
 returns orig image object
 

Protected Member Functions

void resizeEvent (QResizeEvent *)
 
- Protected Member Functions inherited from SplitViewInterface
void paintEvent (QPaintEvent *e)
 
void mousePressEvent (QMouseEvent *e)
 
void mouseReleaseEvent (QMouseEvent *)
 
void mouseMoveEvent (QMouseEvent *e)
 

Private Attributes

QImage fullScreenImage
 Full screen version of image.
 
QSize origImageSize
 original image dimensions
 

Detailed Description

Definition at line 21 of file scaledPreviewInterface.h.

Constructor & Destructor Documentation

◆ ScaledPreviewInterface()

ScaledPreviewInterface::ScaledPreviewInterface ( QString imageFilename,
QWidget * parent = 0,
const char * name = 0 )

Creates layout.

Definition at line 22 of file scaledPreviewInterface.cpp.

23 :
24 SplitViewInterface (parent, name )
25{
26 //store original image dimensions
27 getImageSize( imageFilename, origImageSize );
28
29 //resize image to current screen size for faster
30 //scaling during resize events
31 QRect screenSize = qApp->desktop()->availableGeometry();
32 scaleImage( imageFilename, fullScreenImage, screenSize.width()/2, screenSize.height()/2 );
33 //-----
34}
QImage fullScreenImage
Full screen version of image.
QSize origImageSize
original image dimensions
SplitViewInterface(QWidget *parent=0, const char *name=0)
Creates layout.
bool scaleImage(QString fileIn, QString fileOut, int newWidth, int newHeight)
Scale image and save copy to disk.
bool getImageSize(const char *filename, QSize &size)
Get image dimensions.

References fullScreenImage, getImageSize(), origImageSize, and scaleImage().

Member Function Documentation

◆ minimumSizeHint()

QSize ScaledPreviewInterface::minimumSizeHint ( ) const
virtual

Reimplemented from SplitViewInterface.

Definition at line 61 of file scaledPreviewInterface.cpp.

62{
63 QSize baseMinSize = SplitViewInterface::minimumSizeHint();
64 int w = baseMinSize.width();
65 int h = QMAX( baseMinSize.height(), (w*origImageSize.height())/origImageSize.width() );
66 return QSize( w, h );
67}
virtual QSize minimumSizeHint() const

References SplitViewInterface::minimumSizeHint(), and origImageSize.

◆ resized

void ScaledPreviewInterface::resized ( )
signal

Referenced by resizeEvent().

◆ resizeEvent()

void ScaledPreviewInterface::resizeEvent ( QResizeEvent * )
protectedvirtual

Implements SplitViewInterface.

Definition at line 36 of file scaledPreviewInterface.cpp.

37{
38 //if image has yet to be set return
39 if( fullScreenImage.isNull() ) return;
40
41 //generate orig image
42 //set adjusted image to null so repain won't occur until it is reset
43 setImages( fullScreenImage.scaled( width(), height(), Qt::KeepAspectRatio ),
44 QImage() );
45
46 //emit resized signal
47 emit resized();
48}
int width
Definition blur.cpp:79
int height
Definition blur.cpp:79
void setImages(QImage origImage, QImage adjustedImage)

References fullScreenImage, height, resized(), SplitViewInterface::setImages(), and width.

◆ sizeHint()

QSize ScaledPreviewInterface::sizeHint ( ) const
virtual

Implements SplitViewInterface.

Definition at line 50 of file scaledPreviewInterface.cpp.

51{
52 //a 500x375 is 4:3 aspect ratio which is fairly typical
53 //we'll clamp the hight to 375 in the situation where an image is mucher taller than wide
54 //(and hence computed height would be so big window won't fit on screen)
55 int w = 500;
56 int h = QMIN( 375, (w*origImageSize.height())/origImageSize.width() );
57
58 return QSize( w,h );
59}

References origImageSize.

Member Data Documentation

◆ fullScreenImage

QImage ScaledPreviewInterface::fullScreenImage
private

Full screen version of image.

Definition at line 37 of file scaledPreviewInterface.h.

Referenced by resizeEvent(), and ScaledPreviewInterface().

◆ origImageSize

QSize ScaledPreviewInterface::origImageSize
private

original image dimensions

Definition at line 40 of file scaledPreviewInterface.h.

Referenced by minimumSizeHint(), ScaledPreviewInterface(), and sizeHint().


The documentation for this class was generated from the following files: