AlbumShaper  1.0a3
Signals | Public Member Functions | Protected Member Functions | Private Attributes | List of all members
ScaledPreviewInterface Class Reference

#include <scaledPreviewInterface.h>

Inheritance diagram for ScaledPreviewInterface:
Inheritance graph
[legend]
Collaboration diagram for ScaledPreviewInterface:
Collaboration graph
[legend]

Signals

void resized ()
 

Public Member Functions

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

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. More...
 
QSize origImageSize
 original image dimensions More...
 

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.

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

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.
SplitViewInterface(QWidget *parent=0, const char *name=0)
Creates layout.
QSize origImageSize
original image dimensions
bool scaleImage(QString fileIn, QString fileOut, int newWidth, int newHeight)
Scale image and save copy to disk.
Definition: imageTools.cpp:157
bool getImageSize(const char *filename, QSize &size)
Get image dimensions.
Definition: imageTools.cpp:192

Member Function Documentation

§ minimumSizeHint()

QSize ScaledPreviewInterface::minimumSizeHint ( ) const
virtual

Reimplemented from SplitViewInterface.

Definition at line 61 of file scaledPreviewInterface.cpp.

References SplitViewInterface::minimumSizeHint(), and origImageSize.

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 }
QSize origImageSize
original image dimensions
virtual QSize minimumSizeHint() const

§ resized

void ScaledPreviewInterface::resized ( )
signal

Referenced by resizeEvent().

§ resizeEvent()

void ScaledPreviewInterface::resizeEvent ( QResizeEvent *  )
protectedvirtual

Implements SplitViewInterface.

Definition at line 36 of file scaledPreviewInterface.cpp.

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

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 }
QImage fullScreenImage
Full screen version of image.
int width
Definition: blur.cpp:79
void setImages(QImage origImage, QImage adjustedImage)
int height
Definition: blur.cpp:79

§ sizeHint()

QSize ScaledPreviewInterface::sizeHint ( ) const
virtual

Implements SplitViewInterface.

Definition at line 50 of file scaledPreviewInterface.cpp.

References origImageSize.

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 }
QSize origImageSize
original image dimensions

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: