summaryrefslogtreecommitdiff
path: root/noncore/multimedia/opieplayer2/xinevideowidget.cpp
Side-by-side diff
Diffstat (limited to 'noncore/multimedia/opieplayer2/xinevideowidget.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/xinevideowidget.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/noncore/multimedia/opieplayer2/xinevideowidget.cpp b/noncore/multimedia/opieplayer2/xinevideowidget.cpp
index 15c611f..1ac9277 100644
--- a/noncore/multimedia/opieplayer2/xinevideowidget.cpp
+++ b/noncore/multimedia/opieplayer2/xinevideowidget.cpp
@@ -6,96 +6,97 @@
Copyright (c) 2002 Holger Freyther <zecke@handhelds.org>
=.
.=l.
           .>+-=
 _;:,     .>    :=|. This program is free software; you can
.> <`_,   >  .   <= redistribute it and/or modify it under
:`=1 )Y*s>-.--   : the terms of the GNU General Public
.="- .-=="i,     .._ License as published by the Free Software
 - .   .-<_>     .<> Foundation; either version 2 of the License,
     ._= =}       : or (at your option) any later version.
    .%`+i>       _;_.
    .i_,=:_.      -<s. This program is distributed in the hope that
     +  .  -:.       = it will be useful, but WITHOUT ANY WARRANTY;
    : ..    .:,     . . . without even the implied warranty of
    =_        +     =;=|` MERCHANTABILITY or FITNESS FOR A
  _.=:.       :    :=>`: PARTICULAR PURPOSE. See the GNU
..}^=.=       =       ; Library General Public License for more
++=   -.     .`     .: details.
 :     =  ...= . :.=-
 -.   .:....=;==+<; You should have received a copy of the GNU
  -_. . .   )=.  = Library General Public License along with
    --        :-=` this library; see the file COPYING.LIB.
If not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.
*/
#include <qimage.h>
#include <qdirectpainter_qws.h>
#include <qgfx_qws.h>
#include <qsize.h>
#include <qapplication.h>
#include <qpe/resource.h>
#include "xinevideowidget.h"
// 0 deg rot: copy a line from src to dst (use libc memcpy)
// 180 deg rot: copy a line from src to dst reversed
/*
* This code relies the len be a multiply of 16bit
*/
static inline void memcpy_rev ( void *_dst, void *_src, size_t len )
{
+
/*
* move the source to the end
*/
char *src_c = static_cast<char*>(_src) + len;
/*
* as we copy by 16bit and not 8bit
* devide the length by two
*/
len >>= 1;
short int* dst = static_cast<short int*>( _dst );
short int* src = reinterpret_cast<short int*>( src_c );
/*
* Increment dst after assigning
* Decrement src before assigning becase we move backwards
*/
while ( len-- )
*dst++ = *--src;
}
// 90 deg rot: copy a column from src to dst
static inline void memcpy_step ( void *_dst, void *_src, size_t len, size_t step )
{
short int *dst = static_cast<short int*>( _dst );
short int *src = static_cast<short int*>( _src );
len >>= 1;
/*
* Copy 16bit from src to dst and move to the next address
*/
while ( len-- ) {
*dst++ = *src;
src = reinterpret_cast<short int*>(reinterpret_cast<char*>(src)+step);
}
}
// 270 deg rot: copy a column from src to dst reversed
static inline void memcpy_step_rev ( void *_dst, void *_src, size_t len, size_t step )
{
len >>= 1;
char *src_c = static_cast<char*>( _src ) + (len*step);