-rw-r--r-- | core/applets/rotateapplet/rotate.cpp | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/core/applets/rotateapplet/rotate.cpp b/core/applets/rotateapplet/rotate.cpp index 4743388..3a5a3c9 100644 --- a/core/applets/rotateapplet/rotate.cpp +++ b/core/applets/rotateapplet/rotate.cpp | |||
@@ -44,110 +44,103 @@ RotateApplet::RotateApplet ( ) | |||
44 | m_flipped = false; | 44 | m_flipped = false; |
45 | } | 45 | } |
46 | 46 | ||
47 | RotateApplet::~RotateApplet ( ) | 47 | RotateApplet::~RotateApplet ( ) |
48 | { | 48 | { |
49 | } | 49 | } |
50 | 50 | ||
51 | int RotateApplet::position ( ) const | 51 | int RotateApplet::position ( ) const |
52 | { | 52 | { |
53 | return 2; | 53 | return 2; |
54 | } | 54 | } |
55 | 55 | ||
56 | QString RotateApplet::name ( ) const | 56 | QString RotateApplet::name ( ) const |
57 | { | 57 | { |
58 | return tr( "Rotate shortcut" ); | 58 | return tr( "Rotate shortcut" ); |
59 | } | 59 | } |
60 | 60 | ||
61 | QString RotateApplet::text ( ) const | 61 | QString RotateApplet::text ( ) const |
62 | { | 62 | { |
63 | return tr( "Rotate" ); | 63 | return tr( "Rotate" ); |
64 | } | 64 | } |
65 | 65 | ||
66 | QString RotateApplet::tr( const char* s ) const | 66 | QString RotateApplet::tr( const char* s ) const |
67 | { | 67 | { |
68 | return qApp->translate( "RotateApplet", s, 0 ); | 68 | return qApp->translate( "RotateApplet", s, 0 ); |
69 | } | 69 | } |
70 | 70 | ||
71 | QString RotateApplet::tr( const char* s, const char* p ) const | 71 | QString RotateApplet::tr( const char* s, const char* p ) const |
72 | { | 72 | { |
73 | return qApp->translate( "RotateApplet", s, p ); | 73 | return qApp->translate( "RotateApplet", s, p ); |
74 | } | 74 | } |
75 | 75 | ||
76 | QIconSet RotateApplet::icon ( ) const | 76 | QIconSet RotateApplet::icon ( ) const |
77 | { | 77 | { |
78 | QPixmap pix; | 78 | QPixmap pix; |
79 | QImage img = Resource::loadImage ( "Rotation" ); | 79 | QImage img = Resource::loadImage ( "Rotation" ); |
80 | 80 | ||
81 | if ( !img. isNull ( )) | 81 | if ( !img. isNull ( )) |
82 | pix. convertFromImage ( img. smoothScale ( 14, 14 )); | 82 | pix. convertFromImage ( img. smoothScale ( 14, 14 )); |
83 | return pix; | 83 | return pix; |
84 | } | 84 | } |
85 | 85 | ||
86 | QPopupMenu *RotateApplet::popup ( QWidget * ) const | 86 | QPopupMenu *RotateApplet::popup ( QWidget * ) const |
87 | { | 87 | { |
88 | return 0; | 88 | return 0; |
89 | } | 89 | } |
90 | 90 | ||
91 | void RotateApplet::activated ( ) | 91 | void RotateApplet::activated ( ) |
92 | { | 92 | { |
93 | int currentRotation = QPEApplication::defaultRotation(); | 93 | int currentRotation = QPEApplication::defaultRotation(); |
94 | 94 | ||
95 | int newRotation; | 95 | int newRotation; |
96 | 96 | ||
97 | Config cfg( "qpe" ); | 97 | Config cfg( "qpe" ); |
98 | cfg.setGroup( "Appearance" ); | 98 | cfg.setGroup( "Appearance" ); |
99 | 99 | ||
100 | // 0 -> 90° clockwise, 1 -> 90° counterclockwise | 100 | // 0 -> 90° clockwise, 1 -> 90° counterclockwise |
101 | bool rotDirection = cfg.readBoolEntry( "rotatedir" ); | 101 | bool rotDirection = cfg.readBoolEntry( "rotatedir" ); |
102 | 102 | ||
103 | // hide inputs methods before rotation | 103 | // hide inputs methods before rotation |
104 | QCopEnvelope en( "QPE/TaskBar", "hideInputMethod()" ); | 104 | QCopEnvelope en( "QPE/TaskBar", "hideInputMethod()" ); |
105 | 105 | ||
106 | if ( m_flipped ) { | 106 | if ( m_flipped ) { |
107 | if ( rotDirection ) { | 107 | if ( rotDirection ) { |
108 | newRotation = currentRotation - 90; | 108 | newRotation = ( currentRotation + 270 ) % 360; |
109 | if (newRotation <=0) newRotation = 270; | ||
110 | //ipaqs like the 36xx have the display rotated | ||
111 | // to 270 as default, and -90 is invalid => handle this here | ||
112 | } else { | 109 | } else { |
113 | newRotation = currentRotation + 90; | 110 | newRotation = ( currentRotation + 90 ) % 360; |
114 | if(newRotation >= 360) newRotation = 0;//ipaqs like the 36xx have the display | ||
115 | //rotated to 270 as default, so 360 does nothing => handle this here | ||
116 | } | 111 | } |
117 | } else { | 112 | } else { |
118 | if ( rotDirection ) { | 113 | if ( rotDirection ) { |
119 | newRotation = currentRotation + 90; | 114 | newRotation = ( currentRotation + 90 ) % 360; |
120 | if(newRotation >= 360) newRotation = 0; | ||
121 | } else { | 115 | } else { |
122 | newRotation = currentRotation - 90; | 116 | newRotation = ( currentRotation + 270 ) % 360; |
123 | if (newRotation <=0) newRotation = 270; | ||
124 | } | 117 | } |
125 | } | 118 | } |
126 | QCopEnvelope env( "QPE/System", "setCurrentRotation(int)" ); | 119 | QCopEnvelope env( "QPE/System", "setCurrentRotation(int)" ); |
127 | env << newRotation; | 120 | env << newRotation; |
128 | QCopEnvelope env2( "QPE/System", "setDefaultRotation(int)" ); | 121 | QCopEnvelope env2( "QPE/System", "setDefaultRotation(int)" ); |
129 | env2 << newRotation; | 122 | env2 << newRotation; |
130 | 123 | ||
131 | m_flipped = !m_flipped; | 124 | m_flipped = !m_flipped; |
132 | } | 125 | } |
133 | 126 | ||
134 | 127 | ||
135 | QRESULT RotateApplet::queryInterface ( const QUuid &uuid, QUnknownInterface **iface ) | 128 | QRESULT RotateApplet::queryInterface ( const QUuid &uuid, QUnknownInterface **iface ) |
136 | { | 129 | { |
137 | *iface = 0; | 130 | *iface = 0; |
138 | if ( uuid == IID_QUnknown ) | 131 | if ( uuid == IID_QUnknown ) |
139 | *iface = this; | 132 | *iface = this; |
140 | else if ( uuid == IID_MenuApplet ) | 133 | else if ( uuid == IID_MenuApplet ) |
141 | *iface = this; | 134 | *iface = this; |
142 | 135 | ||
143 | if ( *iface ) | 136 | if ( *iface ) |
144 | (*iface)-> addRef ( ); | 137 | (*iface)-> addRef ( ); |
145 | return QS_OK; | 138 | return QS_OK; |
146 | } | 139 | } |
147 | 140 | ||
148 | Q_EXPORT_INTERFACE( ) | 141 | Q_EXPORT_INTERFACE( ) |
149 | { | 142 | { |
150 | Q_CREATE_INSTANCE( RotateApplet ) | 143 | Q_CREATE_INSTANCE( RotateApplet ) |
151 | } | 144 | } |
152 | 145 | ||
153 | 146 | ||