Main Page | Namespace List | Class Hierarchy | Class List | File List | Class Members | File Members

ScaledPreviewInterface Class Reference

#include <scaledPreviewInterface.h>

Inheritance diagram for ScaledPreviewInterface:

[legend]
Collaboration diagram for ScaledPreviewInterface:
[legend]
List of all members.

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

Protected Member Functions

void resizeEvent (QResizeEvent *)

Private Attributes

QImage fullScreenImage
 Full screen version of image.

QSize origImageSize
 original image dimensions


Constructor & Destructor Documentation

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

Creates layout.

Definition at line 19 of file scaledPreviewInterface.cpp.

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

Referenced by ScaledPreviewInterface().

00020 : 00021 SplitViewInterface (parent, name ) 00022 { 00023 //store original image dimensions 00024 getImageSize( imageFilename, origImageSize ); 00025 00026 //resize image to current screen size for faster 00027 //scaling during resize events 00028 QRect screenSize = qApp->desktop()->availableGeometry(); 00029 scaleImage( imageFilename, fullScreenImage, screenSize.width()/2, screenSize.height()/2 ); 00030 //----- 00031 }


Member Function Documentation

QSize ScaledPreviewInterface::minimumSizeHint  )  const [virtual]
 

Reimplemented from SplitViewInterface.

Definition at line 58 of file scaledPreviewInterface.cpp.

References SplitViewInterface::minimumSizeHint(), and origImageSize.

00059 { 00060 QSize baseMinSize = SplitViewInterface::minimumSizeHint(); 00061 int w = baseMinSize.width(); 00062 int h = QMAX( baseMinSize.height(), (w*origImageSize.height())/origImageSize.width() ); 00063 return QSize( w, h ); 00064 }

void ScaledPreviewInterface::resized  )  [signal]
 

Referenced by resizeEvent().

void ScaledPreviewInterface::resizeEvent QResizeEvent *   )  [protected, virtual]
 

Implements SplitViewInterface.

Definition at line 33 of file scaledPreviewInterface.cpp.

References fullScreenImage, height, resized(), resizeEvent(), and width.

Referenced by resizeEvent().

00034 { 00035 //if image has yet to be set return 00036 if( fullScreenImage.isNull() ) return; 00037 00038 //generate orig image 00039 //set adjusted image to null so repain won't occur until it is reset 00040 setImages( fullScreenImage.scale( width(), height(), QImage::ScaleMin ), 00041 QImage() ); 00042 00043 //emit resized signal 00044 emit resized(); 00045 }

QSize ScaledPreviewInterface::sizeHint  )  const [virtual]
 

Implements SplitViewInterface.

Definition at line 47 of file scaledPreviewInterface.cpp.

References origImageSize.

00048 { 00049 //a 500x375 is 4:3 aspect ratio which is fairly typical 00050 //we'll clamp the hight to 375 in the situation where an image is mucher taller than wide 00051 //(and hence computed height would be so big window won't fit on screen) 00052 int w = 500; 00053 int h = QMIN( 375, (w*origImageSize.height())/origImageSize.width() ); 00054 00055 return QSize( w,h ); 00056 }


Member Data Documentation

QImage ScaledPreviewInterface::fullScreenImage [private]
 

Full screen version of image.

Definition at line 35 of file scaledPreviewInterface.h.

Referenced by resizeEvent(), and ScaledPreviewInterface().

QSize ScaledPreviewInterface::origImageSize [private]
 

original image dimensions

Definition at line 38 of file scaledPreviewInterface.h.

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


The documentation for this class was generated from the following files:
Generated on Sun Mar 4 19:43:08 2007 for AlbumShaper by doxygen 1.3.7