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.
148 lines
3.0 KiB
148 lines
3.0 KiB
//
|
|
// C++ Interface: actionproperty
|
|
//
|
|
// Description:
|
|
//
|
|
//
|
|
// Author: Jonas Bähr (C) 2004
|
|
//
|
|
// Copyright: See COPYING file that comes with this distribution
|
|
//
|
|
//
|
|
|
|
#ifndef ACTIONPROPERTY_H
|
|
#define ACTIONPROPERTY_H
|
|
|
|
#include "actionpropertybase.h"
|
|
|
|
class KrAction;
|
|
class TDEShortcut;
|
|
|
|
/**
|
|
* Use this widget where ever you need to manipulate a UserAction
|
|
* @author Jonas Bähr (http://www.jonas-baehr.de)
|
|
*/
|
|
class ActionProperty : public ActionPropertyBase {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
ActionProperty( TQWidget *parent=0, const char *name=0, KrAction *action=0 );
|
|
~ActionProperty();
|
|
|
|
/**
|
|
* @return the currently displayed action
|
|
*/
|
|
KrAction* action() { return _action; };
|
|
|
|
/**
|
|
* This inits the widget with the actions properties.
|
|
* If no action is provided, the last used will be taken!
|
|
* It also resets the changed() state.
|
|
* @param action the action which should be displayd
|
|
*/
|
|
void updateGUI( KrAction *action = 0 );
|
|
|
|
/**
|
|
* This writes the displayed properties back into the action.
|
|
* If no action is provided, the last used will be taken!
|
|
* It also resets the changed() state.
|
|
* @param action the action which should be manipulated
|
|
*/
|
|
void updateAction( KrAction *action = 0 );
|
|
|
|
/**
|
|
* clears everything
|
|
*/
|
|
void clear();
|
|
|
|
/**
|
|
* @return true if all properties got valid values
|
|
*/
|
|
bool validProperties();
|
|
|
|
/**
|
|
* @return true if any property got changed
|
|
*/
|
|
bool isModified() { return _modified; };
|
|
|
|
signals:
|
|
/**
|
|
* emited when any actionproperty changed. This signal is only emited when
|
|
* the _modified attribute changes to true. If there are changes made and
|
|
* _modified is already true, no signal is emited!
|
|
*/
|
|
void changed();
|
|
|
|
protected slots:
|
|
void setModified( bool m = true );
|
|
/**
|
|
* executes the AddPlaceholderPopup
|
|
*/
|
|
void addPlaceholder();
|
|
/**
|
|
* asks for an existing path
|
|
*/
|
|
void addStartpath();
|
|
/**
|
|
* (availability) asks for a new protocol
|
|
*/
|
|
void newProtocol();
|
|
/**
|
|
* (availability) changes a protocol of the list
|
|
*/
|
|
void editProtocol();
|
|
/**
|
|
* (availability) removes a protocol from the list
|
|
*/
|
|
void removeProtocol();
|
|
/**
|
|
* (availability) asks for a new path
|
|
*/
|
|
void addPath();
|
|
/**
|
|
* (availability) edits a path of the list
|
|
*/
|
|
void editPath();
|
|
/**
|
|
* (availability) removes a path from the list
|
|
*/
|
|
void removePath();
|
|
/**
|
|
* (availability) asks for a new mime-type
|
|
*/
|
|
void addMime();
|
|
/**
|
|
* (availability) changes a mime-type of the list
|
|
*/
|
|
void editMime();
|
|
/**
|
|
* (availability) removes a mime-type from the list
|
|
*/
|
|
void removeMime();
|
|
/**
|
|
* (availability) asks for a new file-filter
|
|
*/
|
|
void newFile();
|
|
/**
|
|
* (availability) edits a file-filter of the list
|
|
*/
|
|
void editFile();
|
|
/**
|
|
* (availability) removes a file-filter from the lsit
|
|
*/
|
|
void removeFile();
|
|
|
|
private:
|
|
KrAction *_action;
|
|
bool _modified;
|
|
|
|
private slots:
|
|
/**
|
|
* This updates the ShortcutButton
|
|
* @internal
|
|
*/
|
|
void changedShortcut(const TDEShortcut& shortcut);
|
|
};
|
|
|
|
#endif
|