summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/graphics/opie-eye/gui/imageinfoui.cpp55
-rw-r--r--noncore/graphics/opie-eye/gui/imageinfoui.h23
-rw-r--r--noncore/graphics/opie-eye/gui/mainwindow.cpp14
3 files changed, 83 insertions, 9 deletions
diff --git a/noncore/graphics/opie-eye/gui/imageinfoui.cpp b/noncore/graphics/opie-eye/gui/imageinfoui.cpp
index 74a9ea4..039dfa3 100644
--- a/noncore/graphics/opie-eye/gui/imageinfoui.cpp
+++ b/noncore/graphics/opie-eye/gui/imageinfoui.cpp
@@ -13,27 +13,74 @@
#include <qstring.h>
#include <qfileinfo.h>
-#include <lib/slavemaster.h>
-#include <lib/imagecache.h>
+#include "lib/slavemaster.h"
+#include "lib/imagecache.h"
+
+#include <opie2/oconfig.h>
+#include <opie2/oconfig.h>
+#include <opie2/okeyconfigwidget.h>
+#include <opie2/odebug.h>
#include <qpe/qcopenvelope_qws.h>
#include <qpe/resource.h>
static const int THUMBSIZE = 128;
+using namespace Opie::Core;
imageinfo::imageinfo(QWidget* parent, const char* name, WFlags fl )
: QWidget( parent, name, fl )
{
+ m_viewManager = 0;
init(name);
+ initKeys();
}
imageinfo::imageinfo(const QString&_path, QWidget* parent, const char* name, WFlags fl )
: QWidget( parent, name, fl ),currentFile(_path)
{
+ m_viewManager = 0;
init(name);
+ initKeys();
slotChangeName(_path);
}
+
+Opie::Ui::OKeyConfigManager* imageinfo::manager()
+{
+ if (!m_viewManager) {
+ initKeys();
+ }
+ return m_viewManager;
+}
+
+void imageinfo::initKeys()
+{
+ odebug << "init imageinfo keys" << oendl;
+ m_cfg = new Opie::Core::OConfig("phunkview");
+ m_cfg->setGroup("Zecke_view" );
+ Opie::Ui::OKeyPair::List lst;
+ lst.append( Opie::Ui::OKeyPair::upArrowKey() );
+ lst.append( Opie::Ui::OKeyPair::downArrowKey() );
+ lst.append( Opie::Ui::OKeyPair::leftArrowKey() );
+ lst.append( Opie::Ui::OKeyPair::rightArrowKey() );
+// lst.append( Opie::Ui::OKeyPair::returnKey() );
+
+ m_viewManager = new Opie::Ui::OKeyConfigManager(m_cfg, "Imageinfo-KeyBoard-Config",
+ lst, false,this, "keyconfig name" );
+ m_viewManager->addKeyConfig( Opie::Ui::OKeyConfigItem(tr("View Full Image"), "view",
+ Resource::loadPixmap("1to1"), ViewItem,
+ Opie::Ui::OKeyPair(Qt::Key_V, Qt::ShiftButton),
+ this, SLOT(slotShowImage())));
+ m_viewManager->load();
+ m_viewManager->handleWidget( this );
+ m_viewManager->handleWidget( TextView1 );
+}
+
+void imageinfo::slotShowImage()
+{
+ emit dispImage(currentFile);
+}
+
void imageinfo::init(const char* name) {
{
QCopEnvelope( "QPE/Application/opie-eye_slave", "refUp()" );
@@ -96,6 +143,10 @@ imageinfo::~imageinfo()
{
QCopEnvelope( "QPE/Application/opie-eye_slave", "refDown()" );
}
+ if (m_viewManager) {
+ m_viewManager->save();
+ delete m_viewManager;
+ }
}
void imageinfo::slot_fullInfo(const QString&_path, const QString&_t)
diff --git a/noncore/graphics/opie-eye/gui/imageinfoui.h b/noncore/graphics/opie-eye/gui/imageinfoui.h
index 300c92a..0a5e183 100644
--- a/noncore/graphics/opie-eye/gui/imageinfoui.h
+++ b/noncore/graphics/opie-eye/gui/imageinfoui.h
@@ -12,9 +12,21 @@ class QFrame;
class QLabel;
class QTextView;
+namespace Opie {
+ namespace Core {
+ class OConfig;
+ }
+ namespace Ui {
+ class OKeyConfigManager;
+ }
+}
+
class imageinfo : public QWidget
{
Q_OBJECT
+ enum ActionIds {
+ ViewItem
+ };
public:
imageinfo( QWidget* parent = 0, const char* name = 0, WFlags fl =0);
@@ -22,9 +34,14 @@ public:
~imageinfo();
void setDestructiveClose();
+ Opie::Ui::OKeyConfigManager* manager();
+
+signals:
+ void dispImage(const QString&);
public slots:
void setPath( const QString& path );
+ void slotShowImage();
private:
void init(const char* name);
@@ -34,11 +51,13 @@ protected:
QLabel* fnameLabel;
QFrame* Line1;
QTextView* TextView1;
-
-protected:
QVBoxLayout* imageinfoLayout;
QString currentFile;
+ Opie::Core::OConfig * m_cfg;
+ Opie::Ui::OKeyConfigManager*m_viewManager;
+ void initKeys();
+
protected slots:
virtual void slot_fullInfo(const QString&, const QString&);
virtual void slotThumbNail(const QString&, const QPixmap&);
diff --git a/noncore/graphics/opie-eye/gui/mainwindow.cpp b/noncore/graphics/opie-eye/gui/mainwindow.cpp
index 88acd59..5e94f93 100644
--- a/noncore/graphics/opie-eye/gui/mainwindow.cpp
+++ b/noncore/graphics/opie-eye/gui/mainwindow.cpp
@@ -18,7 +18,6 @@
#include <opie2/otabwidget.h>
#include <opie2/okeyconfigwidget.h>
-
#include <qpe/resource.h>
#include <qpe/config.h>
#include <qpe/ir.h>
@@ -33,7 +32,7 @@
-OPIE_EXPORT_APP( Opie::Core::OApplicationFactory<PMainWindow> )
+OPIE_EXPORT_APP_V2( Opie::Core::OApplicationFactory<PMainWindow>,"Opie Eye" )
PMainWindow::PMainWindow(QWidget* wid, const char* name, WFlags style)
: QMainWindow( wid, name, style ), m_info( 0 ), m_disp( 0 )
@@ -41,8 +40,7 @@ PMainWindow::PMainWindow(QWidget* wid, const char* name, WFlags style)
setCaption( QObject::tr("Opie Eye Caramba" ) );
m_cfg = new Opie::Core::OConfig("phunkview");
m_cfg->setGroup("Zecke_view" );
-
-
+// qDebug( "Process-wide OApplication object @ %0x", oApp );
/*
* Initialize ToolBar and IconView
* And Connect Them
@@ -164,6 +162,10 @@ void PMainWindow::slotConfig() {
Opie::Ui::OKeyConfigWidget* keyWid = new Opie::Ui::OKeyConfigWidget( wid, "key config" );
keyWid->setChangeMode( Opie::Ui::OKeyConfigWidget::Queue );
keyWid->insert( tr("Browser Keyboard Actions"), m_view->manager() );
+ if ( !m_info ) {
+ initInfo();
+ }
+ keyWid->insert( tr("Imageinfo Keyboard Actions"), m_info->manager() );
keyWid->load();
wid->addTab( keyWid, QString::fromLatin1("AppsIcon" ), tr("Keyboard Configuration") );
@@ -210,6 +212,7 @@ void PMainWindow::initT( const char* name, T** ptr, int id) {
}
void PMainWindow::initInfo() {
initT<imageinfo>( "Image Info", &m_info, ImageInfo );
+ connect(m_info,SIGNAL(dispImage(const QString&)),this,SLOT(slotDisplay(const QString&)));
}
void PMainWindow::initDisp() {
initT<ImageScrollView>( "Image ScrollView", &m_disp, ImageDisplay );
@@ -229,8 +232,9 @@ void PMainWindow::initDisp() {
* ### FIXME and talk to alwin
*/
void PMainWindow::slotShowInfo( const QString& inf ) {
- if ( !m_info )
+ if ( !m_info ) {
initInfo();
+ }
m_info->setPath( inf );
m_stack->raiseWidget( ImageInfo );
}