/usr/include/Wt/Ext/Widget is in libwtext-dev 3.3.4+dfsg-6ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 | // This may look like C code, but it's really -*- C++ -*-
/*
* Copyright (C) 2008 Emweb bvba, Kessel-Lo, Belgium.
*
* See the LICENSE file for terms of use.
*/
#ifndef EXT_WIDGET_H_
#define EXT_WIDGET_H_
#include <Wt/WWebWidget>
#include <Wt/Ext/ExtDllDefs.h>
#include <Wt/Ext/WExtGlobal>
#include <sstream>
namespace Wt {
namespace Ext {
class AbstractButton;
class BorderLayout;
class TableView;
/*! \class Widget Wt/Ext/Widget Wt/Ext/Widget
* \brief An abstract base class for all %Ext widgets.
*
* %Ext Widgets wrap around JavaScript-only widgets that are provided by
* the <a href="http://extjs.com">Ext JS</a> JavaScript widget library.
*
* \ingroup ext
*/
class WT_EXT_API Widget : public WWebWidget
{
protected:
Widget(WContainerWidget *parent = 0);
public:
/*! \brief Delete a widget.
*/
~Widget();
virtual void setHidden(bool hidden,
const WAnimation& animation = WAnimation());
const std::string elVar() const;
const std::string elRef() const;
virtual std::string createExtElement(std::stringstream& js,
DomElement *inContainer);
std::string extId() const;
private:
virtual std::string createJS(DomElement *inContainer) = 0;
protected:
virtual void updateDom(DomElement& element, bool all);
virtual DomElement *createDomElement(WApplication *app);
virtual DomElementType domElementType() const;
virtual void getDomChanges(std::vector<DomElement *>& result,
WApplication *app);
virtual void propagateRenderOk(bool deep);
virtual std::string renderRemoveJs();
virtual void createConfig(std::ostream& config);
virtual void updateExt();
virtual bool applySelfCss() const;
std::string configStruct();
void addUpdateJS(const std::string& js);
void addOrphan(WWidget *child);
void removeOrphan(WWidget *child);
void addWtSignalConfig(const std::string& handler, EventSignalBase *s,
const std::string& name, const std::string& eventArgs,
const std::string& wtArg, std::ostream& config);
void updateWtSignal(EventSignalBase *s, const std::string& name,
const std::string& eventArgs,
const std::string& wtArg);
void bindEventHandler(const std::string& eventName,
const std::string& handler,
std::stringstream& js);
std::string createMixed(const std::vector<WWidget *>& items,
std::stringstream& js);
void renderExtAdd(WWidget *item);
private:
std::string jsUpdates_;
static void initExt();
void addExtChild(WWidget *child, std::stringstream& js);
std::string jsWtSignalFunction(EventSignalBase *s, const std::string& name,
const std::string& eventArgs,
const std::string& wtArg);
friend class AbstractButton;
friend class Dialog;
friend class TableView;
friend class MessageBox;
friend class Panel;
};
}
}
#endif // EXT_WIDGET_H_
|