Cleanup and fixes

git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdeaddons@1110341 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
v3.5.13-sru
tpearson 15 years ago
parent 545e53fd46
commit 1fbeee4477

@ -1,13 +1,19 @@
<!DOCTYPE kpartplugin> <!DOCTYPE kpartplugin>
<kpartplugin name="DirFilter" library="libdirfilterplugin" version = "4"> <kpartplugin library="libdirfilterplugin" version="4" name="DirFilter" >
<MenuBar> <MenuBar>
<Menu name="tools"><Text>&amp;Tools</Text> <Menu name="tools" >
<Text>&amp;Tools</Text>
<Action name="filterdir" /> <Action name="filterdir" />
</Menu> </Menu>
</MenuBar> </MenuBar>
<ToolBar name="extraToolBar"><text>Extra Toolbar</text> <ToolBar name="extraToolBar" >
<text>Extra Toolbar</text>
<Action name="filterdir" /> <Action name="filterdir" />
</ToolBar> </ToolBar>
<ToolBar fullWidth="true" name="locationToolBar" newline="true"><text>Filter Toolbar</text> <ToolBar newline="true" noMerge="1" name="locationToolBar" fullWidth="true" >
<text>Filter Toolbar</text>
<Separator lineSeparator="false" name="separator_0" />
<Action name="clear_filter" />
<Action name="toolbar_filter_field" />
</ToolBar> </ToolBar>
</kpartplugin> </kpartplugin>

@ -1,14 +1,14 @@
INCLUDES = $(all_includes) kde_module_LTLIBRARIES = librsyncplugin.la
AM_CPPFLAGS = $(all_includes)
METASOURCES = AUTO METASOURCES = AUTO
kde_module_LTLIBRARIES = librsyncplugin.la
librsyncplugin_la_SOURCES = rsyncplugin.cpp rsyncconfigdialog.cpp librsyncplugin_la_SOURCES = rsyncplugin.cpp rsyncconfigdialog.cpp
librsyncplugin_la_LIBADD = -lkonq librsyncplugin_la_LIBADD = -lkonq
librsyncplugin_la_LDFLAGS = -module $(KDE_PLUGIN) $(all_libraries) librsyncplugin_la_LDFLAGS = -module $(KDE_PLUGIN) $(all_libraries)
iconviewdir = $(kde_datadir)/konqiconview/kpartplugins iconviewdir = $(kde_datadir)/konqiconview/kpartplugins
iconview_DATA = rsyncplugin.rc rsync_plugin.desktop iconview_DATA = rsyncplugin.rc rsync_plugin.desktop
listviewdir = $(kde_datadir)/konqlistview/kpartplugins listviewdir = $(kde_datadir)/konqlistview/kpartplugins
listview_DATA = rsyncplugin.rc rsync_plugin.desktop listview_DATA = rsyncplugin.rc rsync_plugin.desktop

@ -30,6 +30,10 @@
#include <klibloader.h> #include <klibloader.h>
#include <kdialogbase.h> #include <kdialogbase.h>
// NOTE: If ANY of these functions are not utilized in the C file,
// and in a manner identical to these declarations, the plugin will
// mysteriously fail when launched with kshell but work fine under BASH
class RsyncConfigDialog : public KDialogBase class RsyncConfigDialog : public KDialogBase
{ {
Q_OBJECT Q_OBJECT
@ -42,29 +46,13 @@ class RsyncConfigDialog : public KDialogBase
const QString& remotefolder = QString::null, const QString& remotefolder = QString::null,
int syncmode = 1, bool modal = false); int syncmode = 1, bool modal = false);
~RsyncConfigDialog() {}
//
// /**
// * Returns the KProgressBox used in this dialog.
// * To set the number of steps or other progress bar related
// * settings, access the KProgressBox object directly via this method.
// */
// KProgress* progressBar();
//
/** /**
* Returns the QLineEdit used in this dialog. * Returns the QLineEdit used in this dialog.
* To set the number of lines or other text box related * To set the number of lines or other text box related
* settings, access the KTextEdit object directly via this method. * settings, access the KTextEdit object directly via this method.
*/ */
QLineEdit* lineEdit(); QLineEdit* lineEdit();
//
// /**
// * Returns the KProgressBox used in this dialog.
// * To set the number of steps or other progress bar related
// * settings, access the KProgressBox object directly via this method.
// */
// const KProgress* progressBar() const;
//
/** /**
* Returns the QLineEdit used in this dialog. * Returns the QLineEdit used in this dialog.
* To set the number of lines or other text box related * To set the number of lines or other text box related
@ -72,117 +60,6 @@ class RsyncConfigDialog : public KDialogBase
*/ */
const QLineEdit* lineEdit() const; const QLineEdit* lineEdit() const;
/**
* Sets the text in the dialog
*
* @param text the text to display
*/
void setLabel(const QString & text);
/**
* Returns the current dialog text
* @deprecated
*/
// ### Remove this KDE 4.0
QString labelText() KDE_DEPRECATED;
/**
* Returns the current dialog text
*/
QString labelText() const;
/**
* Sets whether or not the user can cancel the process.
* If the dialog is cancellable, the Cancel button will be shown
* and the user can close the window using the window decorations.
* If the process is not (or should not be) interuptable,
* set the dialog to be modal and not cancellable.
*
* @param allowCancel Set to true to make the dialog non-closable
*/
void setAllowCancel(bool allowCancel);
/**
* Sets whether or not the user can edit the text shown in the textbox.
*
* @param allowTextEdit Set to true to make the text editable
*/
void setAllowTextEdit(bool allowTextEdit);
/**
* Returns true if the dialog can be canceled, false otherwise
* @deprecated
*/
// ### Remove this KDE 4.0
bool allowCancel() KDE_DEPRECATED;
/**
* Returns true if the dialog can be canceled, false otherwise
*/
bool allowCancel() const;
/**
* Sets whether the cancel button is visible. setAllowCancel(false)
* implies showCancelButton(false)
*
* @param show Whether or not the cancel button should be shown
*/
void showCancelButton(bool show);
//
// /**
// * Sets whether the dialog should close automagically when
// * all the steps in the KProgressBox have been completed.
// */
// void setAutoClose(bool close);
//
// /**
// * Returns true if the dialog will close upon completion,
// * or false otherwise
// */
// // ### Remove this KDE 4.0
// bool autoClose();
//
// /**
// * Returns true if the dialog will close upon completion,
// * or false otherwise
// */
// bool autoClose() const;
//
// /**
// * Sets whether the dialog should reset the KProgressBox dialog
// * back to 0 steps compelete when all steps have been completed.
// * This is useful for RsyncConfigDialogs that will be reused.
// */
// void setAutoReset(bool autoReset);
//
// /**
// * Returns true if the KProgressBox widget will be reset
// * upon completion, or false otherwise
// */
// // ### Remove this KDE 4.0
// bool autoReset();
//
// /**
// * Returns true if the KProgressBox widget will be reset
// * upon completion, or false otherwise
// */
// bool autoReset() const;
//
/**
* Returns true if the dialog was closed or canceled
* before completion. If the dialog is not cancellable
* it will always return false.
*/
// ### Remove this KDE 4.0
bool wasCancelled();
/**
* Returns true if the dialog was closed or canceled
* before completion. If the dialog is not cancellable
* it will always return false.
*/
bool wasCancelled() const;
/** /**
* Returns index of selected synchronization mode * Returns index of selected synchronization mode
* 1: Upload * 1: Upload
@ -191,61 +68,7 @@ class RsyncConfigDialog : public KDialogBase
*/ */
int getSyncMode(); int getSyncMode();
/**
* Ignores the last cancel action if the cancel button was
* pressed. Useful for kdialog when combined with a KMessageBox
* to display a message like "Are you sure you want to cancel?"
* @since 3.5.5
*/
void ignoreCancel();
/**
* Sets the text to appear on the cancel button.
*/
void setButtonText(const QString&);
/**
* Returns the text on the cancel button
* @deprecated
*/
// ### Remove this KDE 4.0
QString buttonText() KDE_DEPRECATED;
/**
* Returns the text on the cancel button
*/
QString buttonText() const;
//
// /**
// * Set the minimum number of milliseconds to wait before
// * actually showing the dialog
// */
// void setMinimumDuration(int ms);
//
// /**
// * Returns the wait duration in milliseconds
// * @deprecated
// */
// // ### Remove this KDE 4.0
// int minimumDuration() KDE_DEPRECATED;
//
// /**
// * Returns the wait duration in milliseconds
// */
// int minimumDuration() const;
//
// /**
// * Reimplemented for internal reasons, the API is not affected.
// */
// virtual void show();
//
// protected slots:
// void slotAutoShow();
// void slotAutoActions(int percentage);
// void slotCancel();
//
private: private:
// ### Move these member variables to d in KDE 4.0
bool mAutoClose; bool mAutoClose;
bool mAutoReset; bool mAutoReset;
bool mCancelled; bool mCancelled;
@ -261,7 +84,5 @@ class RsyncConfigDialog : public KDialogBase
QRadioButton *rsync_rb1; QRadioButton *rsync_rb1;
QRadioButton *rsync_rb2; QRadioButton *rsync_rb2;
QRadioButton *rsync_rb3; QRadioButton *rsync_rb3;
// protected:
// virtual void virtual_hook( int id, void* data );
}; };
#endif #endif

@ -95,13 +95,16 @@
#include <kio/global.h> #include <kio/global.h>
#include <kio/slavebase.h> #include <kio/slavebase.h>
#include <kio/authinfo.h>
#include "rsyncplugin.h" #include "rsyncplugin.h"
#include "rsyncconfigdialog.h" #include "rsyncconfigdialog.h"
#define myDebug(x) kdDebug(7127) << __LINE__ << ": " x #define myDebug(x) kdDebug(7127) << __LINE__ << ": " x
typedef KGenericFactory<RsyncPlugin> RsyncPluginFactory;
K_EXPORT_COMPONENT_FACTORY(librsyncplugin,
RsyncPluginFactory("rsyncplugin"))
RsyncPlugin::RsyncPlugin (QObject* parent, const char* name, RsyncPlugin::RsyncPlugin (QObject* parent, const char* name,
const QStringList&) const QStringList&)
:KParts::Plugin (parent, name), :KParts::Plugin (parent, name),
@ -881,6 +884,22 @@ void RsyncPlugin::slotOpenURL ()
if (m_pURL != url) if (m_pURL != url)
{ {
// See if this URL is "/", "/dev", or "/proc", and disable sync if so
if ((url.directory(true, true) + QString("/") + url.fileName(true)) == "//") {
m_pSyncSetup->setEnabled(false);
m_pSyncNow->setEnabled(false);
}
else if (((url.directory(true, true) + QString("/") + url.fileName(true)).left(5) == "//dev") || ((url.directory(true, true) + QString("/") + url.fileName(true)).left(4) == "/dev")) {
m_pSyncSetup->setEnabled(false);
m_pSyncNow->setEnabled(false);
}
else if (((url.directory(true, true) + QString("/") + url.fileName(true)).left(6) == "//proc") || ((url.directory(true, true) + QString("/") + url.fileName(true)).left(5) == "/proc")) {
m_pSyncSetup->setEnabled(false);
m_pSyncNow->setEnabled(false);
}
else {
m_pSyncSetup->setEnabled(true);
// See if this URL is in the list of rsync-able directories // See if this URL is in the list of rsync-able directories
if (findLocalFolderByName(url.directory(true, true) + QString("/") + url.fileName(true)) != NULL) { if (findLocalFolderByName(url.directory(true, true) + QString("/") + url.fileName(true)) != NULL) {
m_pSyncNow->setEnabled (true); m_pSyncNow->setEnabled (true);
@ -889,28 +908,10 @@ void RsyncPlugin::slotOpenURL ()
m_pSyncNow->setEnabled (false); m_pSyncNow->setEnabled (false);
} }
} }
}
m_pURL = url; m_pURL = url;
} }
// void RsyncPlugin::slotShowPopup()
// {
// if (!m_part)
// {
// m_pSyncMenu->setEnabled (false);
// return;
// }
//
// int id = 0;
// uint enableReset = 0;
//
// QString label;
// QStringList inodes;
//
// m_pSyncMenu->popupMenu()->clear();
// m_pSyncMenu->popupMenu()->insertTitle (i18n("Remote Folder Synchronization"));
// id = m_pSyncMenu->popupMenu()->insertItem (i18n("Synchronize Now"), this, SLOT(slotSync()));
// }
void RsyncPlugin::slotSetup() void RsyncPlugin::slotSetup()
{ {
KURL url = m_part->url(); KURL url = m_part->url();
@ -1036,7 +1037,4 @@ void RsyncPlugin::slotSync()
m_pSyncNow->setEnabled (true); m_pSyncNow->setEnabled (true);
} }
typedef KGenericFactory<RsyncPlugin> RsyncFactory;
K_EXPORT_COMPONENT_FACTORY (librsyncplugin, RsyncFactory("rsyncplugin"))
#include "rsyncplugin.moc" #include "rsyncplugin.moc"

@ -29,25 +29,22 @@
#include <kparts/plugin.h> #include <kparts/plugin.h>
#include <kio/global.h> #include <kio/global.h>
#include <kio/slavebase.h> #include <kio/slavebase.h>
#include <kio/authinfo.h>
#include "rsyncconfigdialog.h" #include "rsyncconfigdialog.h"
// NOTE: If ANY of these functions are not utilized in the C file,
// and in a manner identical to these declarations, the plugin will
// mysteriously fail when launched with kshell but work fine under BASH
class KActionMenu; class KActionMenu;
class KonqDirPart; class KonqDirPart;
class KLineEdit; class KLineEdit;
namespace KParts namespace KParts
{ {
struct URLArgs; struct URLArgs;
} }
namespace KIO
{
class Job;
}
class RsyncPlugin : public KParts::Plugin class RsyncPlugin : public KParts::Plugin
{ {
Q_OBJECT Q_OBJECT
@ -55,7 +52,7 @@ class RsyncPlugin : public KParts::Plugin
public: public:
RsyncPlugin (QObject* parent, const char* name, const QStringList &); RsyncPlugin (QObject* parent, const char* name, const QStringList &);
~RsyncPlugin (); virtual ~RsyncPlugin();
protected: protected:
void loadSettings(); void loadSettings();
@ -87,7 +84,6 @@ private slots:
void slotSync(); void slotSync();
void slotSetup(); void slotSetup();
void slotOpenURL(); void slotOpenURL();
void slotShowPopup();
void slotSetupOK(); void slotSetupOK();
void slotSetupCancelled(); void slotSetupCancelled();
void slotRsyncCancelled(); void slotRsyncCancelled();
@ -98,7 +94,6 @@ private:
KonqDirPart* m_part; KonqDirPart* m_part;
KAction* m_pSyncNow; KAction* m_pSyncNow;
KAction* m_pSyncSetup; KAction* m_pSyncSetup;
KActionMenu* m_pSyncMenu;
KProgressBoxDialog* m_progressDialog; KProgressBoxDialog* m_progressDialog;
RsyncConfigDialog* m_configDialog; RsyncConfigDialog* m_configDialog;

@ -1,6 +1,8 @@
<!DOCTYPE kpartplugin> <!DOCTYPE kpartplugin>
<kpartplugin name="RsyncPlugin" library="librsyncplugin" version = "4"> <kpartplugin library="librsyncplugin" version="4" name="RsyncPlugin" >
<ToolBar fullWidth="true" name="locationToolBar" newline="true"> <ToolBar newline="true" noMerge="1" name="locationToolBar" fullWidth="true" >
<text>Rsync Toolbar</text>
<Separator lineSeparator="false" name="separator_0" />
<Action name="syncnow"/> <Action name="syncnow"/>
<Action name="setupsync"/> <Action name="setupsync"/>
</ToolBar> </ToolBar>

Loading…
Cancel
Save