Diffstat (limited to 'core/applets/screenshotapplet/screenshot.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | core/applets/screenshotapplet/screenshot.cpp | 27 |
1 files changed, 9 insertions, 18 deletions
diff --git a/core/applets/screenshotapplet/screenshot.cpp b/core/applets/screenshotapplet/screenshot.cpp index 1d88aa5..4ea81c8 100644 --- a/core/applets/screenshotapplet/screenshot.cpp +++ b/core/applets/screenshotapplet/screenshot.cpp @@ -1,49 +1,49 @@ /********************************************************************** ** Copyright (C) 2002 L.J. Potter ljp@llornkcor.com ** All rights reserved. ** ** This file may be distributed and/or modified under the terms of the ** GNU General Public License version 2 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** **********************************************************************/ #include "screenshot.h" -#include "inputDialog.h" /* OPIE */ #include <opie2/odebug.h> +#include <opie2/ofiledialog.h> +#include <opie2/oresource.h> #include <opie2/otaskbarapplet.h> + #include <qpe/qpeapplication.h> #include <qpe/applnk.h> #include <qpe/qcopenvelope_qws.h> -#include <qpe/resource.h> - /* QT */ #include <qlineedit.h> #include <qdir.h> #include <qlabel.h> #include <qpushbutton.h> #include <qpainter.h> #include <qspinbox.h> #include <qlayout.h> #include <qcheckbox.h> #include <qmessagebox.h> /* STD */ #include <stdlib.h> #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> #include <unistd.h> using namespace Opie::Core; using namespace Opie::Ui; static const char *SCAP_hostname = "www.handhelds.org"; static const int SCAP_port = 80; @@ -90,64 +90,55 @@ ScreenshotControl::ScreenshotControl( QWidget *parent, const char *name ) scapButton = new QPushButton( tr( "Scap" ), this, "ScapButton" ); scapButton ->setFocusPolicy( QWidget::TabFocus ); hbox-> addWidget ( scapButton ); setFixedSize ( sizeHint ( )); setFocusPolicy ( QWidget::NoFocus ); grabTimer = new QTimer ( this, "grab timer"); connect ( grabTimer, SIGNAL( timeout()), this, SLOT( performGrab())); connect ( grabItButton, SIGNAL( clicked()), SLOT( slotGrab())); connect ( scapButton, SIGNAL( clicked()), SLOT( slotScap())); connect ( drawPadButton, SIGNAL(clicked()), SLOT(slotDrawpad()) ); } void ScreenshotControl::slotGrab() { buttonPushed = 1; hide(); setFileName = FALSE; if ( saveNamedCheck->isChecked()) { setFileName = TRUE; - InputDialog *fileDlg; - fileDlg = new InputDialog( 0 , tr("Name of screenshot "), TRUE, 0); - fileDlg->exec(); - fileDlg->raise(); - QString fileName, list; - if ( fileDlg->result() == 1 ) { - fileName = fileDlg->LineEdit1->text(); + MimeTypes types; + QStringList list; + list << "image/*"; + types. insert ( "Images", list ); - if (fileName.find("/", 0, TRUE) == -1) - FileNamePath = QDir::homeDirPath() + "/Documents/image/png/" + fileName; - else - FileNamePath = fileName; - - } - delete fileDlg; + FileNamePath = Opie::Ui::OFileDialog::getSaveFileName( 1,"/","", types, 0 ); } if ( delaySpin->value() ) grabTimer->start( delaySpin->value() * 1000, true ); else show(); } void ScreenshotControl::slotScap() { buttonPushed = 2; hide(); if ( delaySpin->value() ) grabTimer->start( delaySpin->value() * 1000, true ); else show(); } void ScreenshotControl::slotDrawpad() { buttonPushed = 3; hide(); if ( delaySpin->value() ) @@ -283,49 +274,49 @@ void ScreenshotControl::performGrab() ::close ( sock ); } } if ( ok ) { QMessageBox::information( 0, tr( "Success" ), QString( "<p>%1</p>" ).arg ( tr( "Screenshot was uploaded to %1" )).arg( SCAP_hostname )); } else { QMessageBox::warning( 0, tr( "Error" ), QString( "<p>%1</p>" ).arg( tr( "Connection to %1 failed." )).arg( SCAP_hostname )); } } else { QMessageBox::warning( 0, tr( "Error" ),tr("Please set <b>QWS_DISPLAY</b> environmental variable.")); } } } //=========================================================================== ScreenshotApplet::ScreenshotApplet( QWidget *parent, const char *name ) : QWidget( parent, name ) { setFixedHeight( AppLnk::smallIconSize() ); setFixedWidth( AppLnk::smallIconSize() ); - m_icon.convertFromImage( Resource::loadImage( "screenshotapplet/screenshot" ).smoothScale( height(), width() ) ); + m_icon = Opie::Core::OResource::loadPixmap( "screenshotapplet/screenshot", Opie::Core::OResource::SmallIcon ); } ScreenshotApplet::~ScreenshotApplet() { } int ScreenshotApplet::position() { return 6; } void ScreenshotApplet::mousePressEvent( QMouseEvent *) { ScreenshotControl *sc = new ScreenshotControl ( ); QPoint curPos = mapToGlobal ( QPoint ( 0, 0 )); // windowPosX is the windows position centered above the applets icon. // If the icon is near the edge of the screen, the window would leave the visible area // so we check the position against the screen width and correct the difference if needed int screenWidth = qApp->desktop()->width(); int windowPosX = curPos. x ( ) - ( sc-> sizeHint ( ). width ( ) - width ( )) / 2 ; int ZwindowPosX, XwindowPosX; |