21#ifndef KFD_WIDGETPROPERTYSET_H
22#define KFD_WIDGETPROPERTYSET_H
27#include <koproperty/set.h>
28#include <koproperty/property.h>
37class WidgetPropertySetPrivate;
41class KFORMEDITOR_EXPORT WidgetPropertySet :
public TQObject
47 WidgetPropertySet(TQObject *parent);
52 KoProperty::Property& operator[](
const TQCString &name);
54 KoProperty::Property& property(
const TQCString &name);
56 bool contains(
const TQCString &property);
60 void addPropertyCaption(
const TQCString &property,
const TQString &caption);
62 void addValueCaption(
const TQCString &value,
const TQString &caption);
73 void setSelectedWidget(TQWidget *w,
bool add =
false,
bool forceReload =
false,
74 bool moreWillBeSelected =
false);
76 void setSelectedWidgetWithoutReload(TQWidget *w,
bool add =
false,
bool moreWillBeSelected =
false) {
77 setSelectedWidget(w, add,
false, moreWillBeSelected);
82 void slotPropertyChanged(KoProperty::Set& set, KoProperty::Property& property);
85 void slotPropertyReset(KoProperty::Set& set, KoProperty::Property& property);
88 void slotWidgetDestroyed();
91 void createPropertyCommandsInDesignMode(TQWidget* widget,
const TQMap<TQCString,
92 TQVariant> &propValues, CommandGroup *group,
bool addToActiveForm =
true,
93 bool execFlagForSubCommands =
false);
99 void widgetPropertyChanged(TQWidget *w,
const TQCString &property,
const TQVariant &v);
104 void widgetNameChanged(
const TQCString &oldname,
const TQCString &newname);
108 void addWidget(TQWidget *w);
112 void createPropertiesForWidget(TQWidget *w);
116 KoProperty::Property::ListData* createValueList(WidgetInfo *winfo,
const TQStringList &list);
120 void updatePropertyValue(ObjectTreeItem *tree,
const char *property,
const TQMetaProperty *meta = 0);
124 KoProperty::Set* set();
127 void clearSet(
bool dontSignalShowPropertySet =
false);
131 void saveModifiedProperties();
135 bool isNameValid(
const TQString &name);
138 void saveEnabledProperty(
bool value);
143 bool eventFilter(TQObject *o, TQEvent *ev);
147 void setUndoing(
bool isUndoing);
154 bool isPropertyVisible(
const TQCString &property,
bool isTopLevel,
155 const TQCString &classname=TQCString());
165 void createAlignProperty(
const TQMetaProperty *meta, TQWidget *widget, TQWidget *subwidget);
169 void saveAlignProperty(
const TQString &property);
172 void createLayoutProperty(ObjectTreeItem *item);
176 void saveLayoutProperty(
const TQString &property,
const TQVariant &value);
180 void initPropertiesDescription();
184 TQString propertyCaption(
const TQCString &name);
187 TQString valueCaption(
const TQCString &name);
194 void emitWidgetPropertyChanged(TQWidget *w,
const TQCString& property,
const TQVariant& value);
197 WidgetPropertySetPrivate *d;
199 friend class FormManager;
200 friend class PropertyCommand;
201 friend class LayoutPropertyCommand;
202 friend class GeometryPropertyCommand;