You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
136 lines
3.8 KiB
136 lines
3.8 KiB
/***************************************************************************
|
|
* copyright : (C) 2006 Seb Ruiz <me@sebruiz.net> *
|
|
**************************************************************************/
|
|
|
|
/***************************************************************************
|
|
* *
|
|
* This program is free software; you can redistribute it and/or modify *
|
|
* it under the terms of the GNU General Public License as published by *
|
|
* the Free Software Foundation; either version 2 of the License, or *
|
|
* (at your option) any later version. *
|
|
* *
|
|
***************************************************************************/
|
|
|
|
#ifndef IPOD_EXPORTDIALOG_H
|
|
#define IPOD_EXPORTDIALOG_H
|
|
|
|
#include <gpod/itdb.h>
|
|
|
|
#define KIPI_PLUGIN 1
|
|
|
|
#include <kdialogbase.h>
|
|
|
|
#if KIPI_PLUGIN
|
|
#include <libkipi/interface.h>
|
|
#endif
|
|
|
|
class TQCheckBox;
|
|
class TQHGroupBox;
|
|
class TQLabel;
|
|
class TQPushButton;
|
|
class KComboBox;
|
|
class KFileItem;
|
|
class KLineEdit;
|
|
class TDEListView;
|
|
class TDEListViewItem;
|
|
class KURL;
|
|
|
|
namespace IpodExport
|
|
{
|
|
|
|
class ImageList;
|
|
class IpodAlbumItem;
|
|
class IpodPhotoItem;
|
|
class IpodHeader;
|
|
|
|
class UploadDialog : public KDialogBase
|
|
{
|
|
Q_OBJECT
|
|
|
|
|
|
public:
|
|
UploadDialog(
|
|
#if KIPI_PLUGIN
|
|
KIPI::Interface* interface,
|
|
#endif
|
|
TQString caption, TQWidget *parent=0 );
|
|
|
|
~UploadDialog()
|
|
{
|
|
if( m_itdb )
|
|
itdb_photodb_free( m_itdb );
|
|
}
|
|
|
|
static UploadDialog *instance() { return s_instance; }
|
|
|
|
TQString ipodModel() const;
|
|
TQString mountPoint() { return m_mountPoint; }
|
|
TQString deviceNode() { return m_deviceNode; }
|
|
|
|
private slots:
|
|
void startTransfer();
|
|
|
|
void addDropItems( TQStringList filesPath );
|
|
|
|
void imageSelected( TQListViewItem *item );
|
|
void gotImagePreview( const KFileItem* , const TQPixmap &pixmap );
|
|
|
|
void ipodItemSelected( TQListViewItem *item );
|
|
void ipodShowContextMenu( TQListViewItem * ) { }
|
|
|
|
void imagesFilesButtonAdd();
|
|
void imagesFilesButtonRem();
|
|
|
|
void createIpodAlbum();
|
|
void deleteIpodAlbum();
|
|
void renameIpodAlbum();
|
|
|
|
void refreshDevices();
|
|
void updateSysInfo();
|
|
|
|
private:
|
|
void addUrlToList( TQString file );
|
|
bool deleteIpodAlbum( IpodAlbumItem *album );
|
|
bool deleteIpodPhoto( IpodPhotoItem *photo );
|
|
void enableButtons();
|
|
void getIpodAlbums();
|
|
void getIpodAlbumPhotos( IpodAlbumItem *item, Itdb_PhotoAlbum *album );
|
|
Itdb_Artwork *photoFromId( const uint id );
|
|
void reloadIpodAlbum( IpodAlbumItem *item, Itdb_PhotoAlbum *album );
|
|
|
|
bool openDevice(); // connect to the ipod
|
|
|
|
#if KIPI_PLUGIN
|
|
KIPI::Interface *m_interface;
|
|
#endif
|
|
Itdb_PhotoDB *m_itdb;
|
|
Itdb_IpodInfo *m_ipodInfo;
|
|
IpodHeader *m_ipodHeader;
|
|
bool m_transferring;
|
|
|
|
TQListViewItem *m_destinationAlbum;
|
|
|
|
TQPushButton *m_createAlbumButton;
|
|
TQPushButton *m_removeAlbumButton;
|
|
TQPushButton *m_renameAlbumButton;
|
|
TQPushButton *m_addImagesButton;
|
|
TQPushButton *m_remImagesButton;
|
|
TQPushButton *m_transferImagesButton;
|
|
ImageList *m_uploadList;
|
|
TDEListView *m_ipodAlbumList;
|
|
TQLabel *m_imagePreview;
|
|
TQLabel *m_ipodPreview;
|
|
|
|
TQHGroupBox *m_destinationBox;
|
|
TQHGroupBox *m_urlListBox;
|
|
|
|
TQString m_mountPoint;
|
|
TQString m_deviceNode;
|
|
|
|
static UploadDialog *s_instance;
|
|
};
|
|
|
|
}
|
|
|
|
#endif // IPOD_EXPORTDIALOG_H
|