本文整理汇总了C++中DomElement::removeProperty方法的典型用法代码示例。如果您正苦于以下问题:C++ DomElement::removeProperty方法的具体用法?C++ DomElement::removeProperty怎么用?C++ DomElement::removeProperty使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类DomElement
的用法示例。
在下文中一共展示了DomElement::removeProperty方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
DomElement *StdWidgetItemImpl::createDomElement(bool fitWidth, bool fitHeight,
WApplication *app)
{
WWidget *w = item_->widget();
w->setInline(false);
DomElement *d = w->createSDomElement(app);
DomElement *result = d;
if (app->environment().agentIsIElt(9) &&
(d->type() == DomElement_TEXTAREA || d->type() == DomElement_SELECT
|| d->type() == DomElement_INPUT || d->type() == DomElement_BUTTON)) {
d->removeProperty(PropertyStyleDisplay);
}
// FIXME IE9 does border-box perhaps ?
if (!app->environment().agentIsIE() &&
w->javaScriptMember(WWidget::WT_RESIZE_JS).empty() &&
d->type() != DomElement_TABLE /* buggy in Chrome, see #1856 */ &&
app->theme()->canBorderBoxElement(*d))
d->setProperty(PropertyStyleBoxSizing, "border-box");
return result;
}
示例2: updateDom
void WTextEdit::updateDom(DomElement& element, bool all)
{
WTextArea::updateDom(element, all);
if (element.type() == DomElement_TEXTAREA)
element.removeProperty(PropertyStyleDisplay);
// we are creating the actual element
if (all && element.type() == DomElement_TEXTAREA) {
std::stringstream config;
config << "{";
bool first = true;
for (SettingsMapType::const_iterator it = configurationSettings_.begin();
it != configurationSettings_.end(); ++it) {
if (it->first == "plugins")
continue;
if (!first)
config << ',';
first = false;
config << it->first << ": "
<< Impl::asJSLiteral(it->second, XHTMLUnsafeText);
}
if (!first)
config << ',';
config << "plugins: '" << plugins() << "'";
config <<
",init_instance_callback: obj.init"
"}";
DomElement dummy(DomElement::ModeUpdate, DomElement_TABLE);
updateDom(dummy, true);
element.callJavaScript("(function() { "
"""var obj = $('#" + id() + "').data('obj');"
"""obj.render(" + config.str() + ","
+ jsStringLiteral(dummy.cssStyle()) + ","
+ (changed().isConnected() ? "true" : "false")
+ ");"
"})();");
contentChanged_ = false;
}
if (!all && contentChanged_) {
element.callJavaScript(jsRef() + ".ed.load();");
contentChanged_ = false;
}
}
示例3: getDomChanges
void Widget::getDomChanges(std::vector<DomElement *>& result,
WApplication *app)
{
std::string el = elRef() + ".el.dom";
DomElement *e = DomElement::updateGiven(el, domElementType());
updateExt();
if (!jsUpdates_.empty()) {
e->callJavaScript("var " + elVar() + "=" + elRef() + ";" + jsUpdates_);
jsUpdates_.clear();
}
updateDom(*e, false);
e->removeProperty(PropertyStyleDisplay);
result.push_back(e);
}
示例4: updateDom
void WAbstractToggleButton::updateDom(DomElement& element, bool all)
{
WApplication *app = WApplication::instance();
const WEnvironment& env = app->environment();
DomElement *input = 0;
DomElement *span = 0;
DomElement *label = 0;
// Already apply theme here because it may determine its organization
if (all)
app->theme()->apply(this, element, 1);
if (element.type() == DomElement_INPUT)
input = &element;
else {
if (all) {
input = DomElement::createNew(DomElement_INPUT);
input->setName("in" + id());
span = DomElement::createNew(DomElement_SPAN);
span->setName("t" + id());
if (element.type() != DomElement_LABEL) {
label = DomElement::createNew(DomElement_LABEL);
label->setName("l" + id());
}
} else {
input = DomElement::getForUpdate("in" + id(), DomElement_INPUT);
span = DomElement::getForUpdate("t" + id(), DomElement_SPAN);
}
}
if (all)
updateInput(*input, all);
EventSignal<> *check = voidEventSignal(CHECKED_SIGNAL, false);
EventSignal<> *uncheck = voidEventSignal(UNCHECKED_SIGNAL, false);
EventSignal<> *change = voidEventSignal(CHANGE_SIGNAL, false);
EventSignal<WMouseEvent> *click = mouseEventSignal(M_CLICK_SIGNAL, false);
/*
* We piggy-back the checked and uncheck signals on the change signal.
*
* If agent is IE, then we piggy-back the change on the clicked signal.
*/
bool piggyBackChangeOnClick = env.agentIsIE();
bool needUpdateChangeSignal =
(change && change->needsUpdate(all))
|| (check && check->needsUpdate(all))
|| (uncheck && uncheck->needsUpdate(all));
bool needUpdateClickedSignal =
(click && click->needsUpdate(all))
|| (piggyBackChangeOnClick && needUpdateChangeSignal);
WFormWidget::updateDom(*input, all);
/*
* Copy all properties to the exterior element, as they relate to style,
* etc... We ignore here attributes (except for tooltip),
* see WWebWidget: other attributes need not be moved.
*
* But -- bug #423, disabled and readonly are properties that should be
* kept on the interior element.
*/
if (&element != input) {
if (element.properties().find(PropertyClass) != element.properties().end())
input->addPropertyWord(PropertyClass, element.getProperty(PropertyClass));
element.setProperties(input->properties());
input->clearProperties();
std::string v = element.getProperty(Wt::PropertyDisabled);
if (!v.empty()) {
input->setProperty(Wt::PropertyDisabled, v);
element.removeProperty(Wt::PropertyDisabled);
}
v = element.getProperty(Wt::PropertyReadOnly);
if (!v.empty()) {
input->setProperty(Wt::PropertyReadOnly, v);
element.removeProperty(Wt::PropertyReadOnly);
}
v = input->getAttribute("title");
if (!v.empty())
element.setAttribute("title", v);
}
if (flags_.test(BIT_STATE_CHANGED) || all) {
input->setProperty(Wt::PropertyChecked,
state_ == Unchecked ? "false" : "true");
if (supportsIndeterminate(env))
input->setProperty(Wt::PropertyIndeterminate,
state_ == PartiallyChecked ? "true" : "false");
else
input->setProperty(Wt::PropertyStyleOpacity,
state_ == PartiallyChecked ? "0.5" : "");
//.........这里部分代码省略.........
示例5: updateDom
void WAbstractToggleButton::updateDom(DomElement& element, bool all)
{
WApplication *app = WApplication::instance();
const WEnvironment& env = app->environment();
DomElement *input = 0;
DomElement *span = 0;
if (element.type() == DomElement_LABEL) {
if (all) {
input = DomElement::createNew(DomElement_INPUT);
input->setName("in" + id());
span = DomElement::createNew(DomElement_SPAN);
span->setName("l" + id());
} else {
input = DomElement::getForUpdate("in" + id(), DomElement_INPUT);
span = DomElement::getForUpdate("l" + id(), DomElement_SPAN);
}
} else
input = &element;
if (all)
updateInput(*input, all);
EventSignal<> *check = voidEventSignal(CHECKED_SIGNAL, false);
EventSignal<> *uncheck = voidEventSignal(UNCHECKED_SIGNAL, false);
EventSignal<> *change = voidEventSignal(CHANGE_SIGNAL, false);
EventSignal<WMouseEvent> *click = mouseEventSignal(M_CLICK_SIGNAL, false);
/*
* We piggy-back the checked and uncheck signals on the change signal.
*
* If agent is IE, then we piggy-back the change on the clicked signal.
*/
bool piggyBackChangeOnClick = env.agentIsIE();
bool needUpdateChangeSignal =
(change && change->needsUpdate(all))
|| (check && check->needsUpdate(all))
|| (uncheck && uncheck->needsUpdate(all));
bool needUpdateClickedSignal =
(click && click->needsUpdate(all))
|| (piggyBackChangeOnClick && needUpdateChangeSignal);
WFormWidget::updateDom(*input, all);
/*
* Copy all properties to the exterior element, as they relate to style,
* etc... We ignore here attributes, see WWebWidget: there seems not to
* be attributes that sensibly need to be moved.
*
* But -- bug #423, disabled and readonly are properties that should be
* kept on the interior element.
*/
if (&element != input) {
element.setProperties(input->properties());
input->clearProperties();
std::string v = element.getProperty(Wt::PropertyDisabled);
if (!v.empty()) {
input->setProperty(Wt::PropertyDisabled, v);
element.removeProperty(Wt::PropertyDisabled);
}
v = element.getProperty(Wt::PropertyReadOnly);
if (!v.empty()) {
input->setProperty(Wt::PropertyReadOnly, v);
element.removeProperty(Wt::PropertyReadOnly);
}
}
if (stateChanged_ || all) {
input->setProperty(Wt::PropertyChecked,
state_ == Unchecked ? "false" : "true");
if (supportsIndeterminate(env))
input->setProperty(Wt::PropertyIndeterminate,
state_ == PartiallyChecked ? "true" : "false");
else
input->setProperty(Wt::PropertyStyleOpacity,
state_ == PartiallyChecked ? "0.5" : "");
stateChanged_ = false;
}
std::vector<DomElement::EventAction> changeActions;
if (needUpdateChangeSignal
|| (piggyBackChangeOnClick && needUpdateClickedSignal)
|| all) {
std::string dom = "o";
if (check) {
if (check->isConnected())
changeActions.push_back
(DomElement::EventAction(dom + ".checked",
check->javaScript(),
check->encodeCmd(),
//.........这里部分代码省略.........