summaryrefslogtreecommitdiff
path: root/noncore/graphics/opie-eye/gui/mainwindow.cpp
Unidiff
Diffstat (limited to 'noncore/graphics/opie-eye/gui/mainwindow.cpp') (more/less context) (show whitespace changes)
-rw-r--r--noncore/graphics/opie-eye/gui/mainwindow.cpp52
1 files changed, 37 insertions, 15 deletions
diff --git a/noncore/graphics/opie-eye/gui/mainwindow.cpp b/noncore/graphics/opie-eye/gui/mainwindow.cpp
index 570ee45..ece51a1 100644
--- a/noncore/graphics/opie-eye/gui/mainwindow.cpp
+++ b/noncore/graphics/opie-eye/gui/mainwindow.cpp
@@ -43,8 +43,8 @@ PMainWindow::PMainWindow(QWidget* wid, const char* name, WFlags style)
43 : QMainWindow( wid, name, style ), m_info( 0 ), m_disp( 0 ) 43 : QMainWindow( wid, name, style ), m_info( 0 ), m_disp( 0 )
44{ 44{
45 setCaption( QObject::tr("Opie Eye Caramba" ) ); 45 setCaption( QObject::tr("Opie Eye Caramba" ) );
46 m_cfg = new Opie::Core::OConfig("phunkview"); 46 m_cfg = new Opie::Core::OConfig("opie-eye");
47 m_cfg->setGroup("Zecke_view" ); 47 m_cfg->setGroup("main" );
48 48
49 m_storage = new StorageInfo(); 49 m_storage = new StorageInfo();
50 connect(m_storage, SIGNAL(disksChanged() ), 50 connect(m_storage, SIGNAL(disksChanged() ),
@@ -108,7 +108,6 @@ void PMainWindow::slotToggleAutoscale()
108 108
109void PMainWindow::slotRotateToggled(bool how) 109void PMainWindow::slotRotateToggled(bool how)
110{ 110{
111 odebug << "Autorotate: " << how << oendl;
112 autoRotate = how; 111 autoRotate = how;
113 if (m_disp) { 112 if (m_disp) {
114 m_disp->setAutoScaleRotate(!m_aAutoScale->isOn(),m_aAutoRotate->isOn()); 113 m_disp->setAutoScaleRotate(!m_aAutoScale->isOn(),m_aAutoRotate->isOn());
@@ -226,10 +225,12 @@ void PMainWindow::initT( const char* name, T** ptr, int id) {
226 this,SLOT(slotReturn())); 225 this,SLOT(slotReturn()));
227 226
228} 227}
228
229void PMainWindow::initInfo() { 229void PMainWindow::initInfo() {
230 initT<imageinfo>( "Image Info", &m_info, ImageInfo ); 230 initT<imageinfo>( "Image Info", &m_info, ImageInfo );
231 connect(m_info,SIGNAL(dispImage(const QString&)),this,SLOT(slotDisplay(const QString&))); 231 connect(m_info,SIGNAL(dispImage(const QString&)),this,SLOT(slotDisplay(const QString&)));
232} 232}
233
233void PMainWindow::initDisp() { 234void PMainWindow::initDisp() {
234 initT<ImageView>( "Image ScrollView", &m_disp, ImageDisplay ); 235 initT<ImageView>( "Image ScrollView", &m_disp, ImageDisplay );
235 if (m_disp) { 236 if (m_disp) {
@@ -256,17 +257,32 @@ void PMainWindow::initDisp() {
256 257
257void PMainWindow::slotToggleFullScreen() 258void PMainWindow::slotToggleFullScreen()
258{ 259{
259 odebug << "Toggle full " << oendl;
260 bool current = !m_aFullScreen->isOn(); 260 bool current = !m_aFullScreen->isOn();
261 m_aFullScreen->setOn(current); 261 m_aFullScreen->setOn(current);
262} 262}
263 263
264void PMainWindow::slotFullScreenToggled(bool current) 264void PMainWindow::slotFullScreenButton(bool current)
265{
266 if (m_disp) odebug << "Disp fenster ist hidden: "<<m_disp->isHidden()<<oendl;
267 if (!m_disp) return;
268
269 /* I can not solve this effects here - it seems that we require some
270 status variable, too. so we will live with some interesting effects
271 meanwhile */
272#if 0
273 bool th = m_disp->isHidden();
274 setupViewWindow(current, false);
275 /* realy - after setting up the fullscreenmode while the window is hidden
276 it is unvisibile not hidden!!!!! Hell. */
277 if (th) m_disp->hide();
278#endif
279 setupViewWindow(current, true);
280}
281
282void PMainWindow::setupViewWindow(bool current, bool forceDisplay)
265{ 283{
266 odebug << "slotFullScreenToggled " << current << oendl;
267 if (!m_disp) return; 284 if (!m_disp) return;
268 if (current) { 285 if (current) {
269 odebug << "full" << oendl;
270 m_disp->setBackgroundColor(black); 286 m_disp->setBackgroundColor(black);
271 m_disp->reparent(0, WStyle_Customize | WStyle_NoBorder, QPoint(0,0)); 287 m_disp->reparent(0, WStyle_Customize | WStyle_NoBorder, QPoint(0,0));
272 m_disp->setVScrollBarMode(QScrollView::AlwaysOff); 288 m_disp->setVScrollBarMode(QScrollView::AlwaysOff);
@@ -274,7 +290,6 @@ void PMainWindow::slotFullScreenToggled(bool current)
274 m_disp->resize(qApp->desktop()->width(), qApp->desktop()->height()); 290 m_disp->resize(qApp->desktop()->width(), qApp->desktop()->height());
275 } else { 291 } else {
276 setUpdatesEnabled(false); 292 setUpdatesEnabled(false);
277 odebug << "window" << oendl;
278 if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) { 293 if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) {
279 m_disp->setMinimumSize(QApplication::desktop()->size()/2); 294 m_disp->setMinimumSize(QApplication::desktop()->size()/2);
280 } else { 295 } else {
@@ -289,13 +304,19 @@ void PMainWindow::slotFullScreenToggled(bool current)
289 m_stack->addWidget(m_disp,ImageDisplay); 304 m_stack->addWidget(m_disp,ImageDisplay);
290 m_disp->setVScrollBarMode(QScrollView::Auto); 305 m_disp->setVScrollBarMode(QScrollView::Auto);
291 m_disp->setHScrollBarMode(QScrollView::Auto); 306 m_disp->setHScrollBarMode(QScrollView::Auto);
307 if (forceDisplay || m_disp->isVisible())
292 m_stack->raiseWidget(m_disp); 308 m_stack->raiseWidget(m_disp);
293 if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) { 309 if (m_stack->mode() != Opie::Ui::OWidgetStack::SmallScreen) {
294 m_disp->resize(m_disp->minimumSize()); 310 m_disp->resize(m_disp->minimumSize());
295 } 311 }
296 setUpdatesEnabled(true); 312 setUpdatesEnabled(true);
297 } 313 }
298 m_disp->setFullScreen(current); 314 m_disp->setFullScreen(current,forceDisplay);
315}
316
317void PMainWindow::slotFullScreenToggled(bool current)
318{
319 setupViewWindow(current,true);
299} 320}
300 321
301/** 322/**
@@ -329,7 +350,6 @@ void PMainWindow::slotShowInfo( const QString& inf ) {
329} 350}
330 351
331void PMainWindow::slotDisplay( const QString& inf ) { 352void PMainWindow::slotDisplay( const QString& inf ) {
332 odebug << "slotDisplay: " << inf << oendl;
333 if ( !m_disp ) { 353 if ( !m_disp ) {
334 initDisp(); 354 initDisp();
335 } 355 }
@@ -347,7 +367,6 @@ void PMainWindow::slotDisplay( const QString& inf ) {
347 } 367 }
348 } 368 }
349 if (m_disp->fullScreen()) { 369 if (m_disp->fullScreen()) {
350 //m_disp->showFullScreen();
351 qwsDisplay()->requestFocus( m_disp->winId(), TRUE); 370 qwsDisplay()->requestFocus( m_disp->winId(), TRUE);
352 } else { 371 } else {
353 m_stack->raiseWidget( ImageDisplay ); 372 m_stack->raiseWidget( ImageDisplay );
@@ -518,7 +537,7 @@ void PMainWindow::setupActions()
518 Resource::loadIconSet("fullscreen"), 0, 0, this, 0, true ); 537 Resource::loadIconSet("fullscreen"), 0, 0, this, 0, true );
519 m_aFullScreen->setToggleAction(true); 538 m_aFullScreen->setToggleAction(true);
520 m_aFullScreen->setOn(false); 539 m_aFullScreen->setOn(false);
521 connect(m_aFullScreen,SIGNAL(toggled(bool)),this,SLOT(slotFullScreenToggled(bool))); 540 connect(m_aFullScreen,SIGNAL(toggled(bool)),this,SLOT(slotFullScreenButton(bool)));
522 541
523 m_gDisplayType = new QActionGroup(this,"imagedisplaytype",false); 542 m_gDisplayType = new QActionGroup(this,"imagedisplaytype",false);
524 m_aAutoRotate = new QAction( tr( "Auto rotate images" ), Resource::loadIconSet( "rotate" ), 0, 0, this, 0, true ); 543 m_aAutoRotate = new QAction( tr( "Auto rotate images" ), Resource::loadIconSet( "rotate" ), 0, 0, this, 0, true );
@@ -569,7 +588,7 @@ void PMainWindow::setupToolbar()
569 } 588 }
570 m_aShowInfo->addTo(toolBar); 589 m_aShowInfo->addTo(toolBar);
571 m_aTrash->addTo(toolBar); 590 m_aTrash->addTo(toolBar);
572 m_aSetup->addTo(toolBar); 591// m_aSetup->addTo(toolBar);
573 592
574 m_gDisplayType->addTo(toolBar); 593 m_gDisplayType->addTo(toolBar);
575 594
@@ -586,6 +605,8 @@ void PMainWindow::setupMenu()
586 menuBar()->insertItem( tr( "File" ), fileMenu ); 605 menuBar()->insertItem( tr( "File" ), fileMenu );
587 dispMenu = new QPopupMenu( menuBar() ); 606 dispMenu = new QPopupMenu( menuBar() );
588 menuBar()->insertItem( tr( "Show" ), dispMenu ); 607 menuBar()->insertItem( tr( "Show" ), dispMenu );
608 settingsMenu = new QPopupMenu( menuBar() );
609 menuBar()->insertItem( tr( "Settings" ), settingsMenu );
589 610
590 m_aViewfile->addTo(fileMenu); 611 m_aViewfile->addTo(fileMenu);
591 m_aShowInfo->addTo(fileMenu); 612 m_aShowInfo->addTo(fileMenu);
@@ -604,10 +625,8 @@ void PMainWindow::setupMenu()
604 m_aBeam->addTo( fileMenu ); 625 m_aBeam->addTo( fileMenu );
605 } 626 }
606 fileMenu->insertSeparator(); 627 fileMenu->insertSeparator();
607 m_aSetup->addTo(fileMenu);
608 m_aTrash->addTo(fileMenu); 628 m_aTrash->addTo(fileMenu);
609 629
610 m_aHideToolbar->addTo(dispMenu);
611 listviewMenu = new QPopupMenu(dispMenu); 630 listviewMenu = new QPopupMenu(dispMenu);
612 dispMenu->insertItem(Resource::loadIconSet("opie-eye/opie-eye-thumb"),tr("Listview mode"),listviewMenu); 631 dispMenu->insertItem(Resource::loadIconSet("opie-eye/opie-eye-thumb"),tr("Listview mode"),listviewMenu);
613 m_gListViewMode->addTo(listviewMenu); 632 m_gListViewMode->addTo(listviewMenu);
@@ -616,6 +635,9 @@ void PMainWindow::setupMenu()
616 m_gDisplayType->addTo(dispMenu); 635 m_gDisplayType->addTo(dispMenu);
617 dispMenu->insertSeparator(); 636 dispMenu->insertSeparator();
618 m_gPrevNext->addTo(dispMenu); 637 m_gPrevNext->addTo(dispMenu);
638
639 m_aSetup->addTo(settingsMenu);
640 m_aHideToolbar->addTo(settingsMenu);
619} 641}
620 642
621void PMainWindow::listviewselected(QAction*which) 643void PMainWindow::listviewselected(QAction*which)