本文整理汇总了C++中WApplication::internalPathChanged方法的典型用法代码示例。如果您正苦于以下问题:C++ WApplication::internalPathChanged方法的具体用法?C++ WApplication::internalPathChanged怎么用?C++ WApplication::internalPathChanged使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WApplication
的用法示例。
在下文中一共展示了WApplication::internalPathChanged方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: select
void WMenu::select(int index, bool changePath)
{
int last = current_;
setCurrent(index);
selectVisual(current_, changePath, true);
if (index != -1) {
WMenuItem *item = itemAt(index);
item->show();
item->loadContents();
DeletionTracker guard(this);
if (changePath && emitPathChange_) {
WApplication *app = wApp;
app->internalPathChanged().emit(app->internalPath());
if (guard.deleted())
return;
emitPathChange_ = false;
}
if (last != index) {
item->triggered().emit(item);
if (!guard.deleted()) {
// item may have been deleted too
if (ul()->indexOf(item) != -1)
itemSelected_.emit(item);
else
select(-1);
}
}
}
}
示例2: init
void AuthWidget::init()
{
registrationModel_ = 0;
registrationEnabled_ = false;
created_ = false;
dialog_ = 0;
messageBox_ = 0;
WApplication *app = WApplication::instance();
app->internalPathChanged().connect(this, &AuthWidget::onPathChange);
app->theme()->apply(this, this, AuthWidgets);
}
示例3: BlogImpl
BlogImpl(const std::string& basePath, dbo::SqlConnectionPool& connectionPool,
const std::string& rssFeedUrl, BlogView *blogView)
: basePath_(basePath),
rssFeedUrl_(rssFeedUrl),
session_(connectionPool),
blogView_(blogView),
panel_(0),
authorPanel_(0),
users_(0),
userEditor_(0),
mustLoginWarning_(0),
mustBeAdministratorWarning_(0),
invalidUser_(0)
{
WApplication *app = wApp;
app->messageResourceBundle().use(WApplication::appRoot() + "blog");
app->useStyleSheet("/css/blog.css");
app->useStyleSheet("/css/asciidoc.css");
app->internalPathChanged().connect(this, &BlogImpl::handlePathChange);
loginStatus_ = new WTemplate(tr("blog-login-status"), this);
panel_ = new WStackedWidget(this);
items_ = new WContainerWidget(this);
session_.login().changed().connect(this, &BlogImpl::onUserChanged);
loginWidget_ = new BlogLoginWidget(session_, basePath);
loginWidget_->hide();
WText *loginLink = new WText(tr("login"));
loginLink->setStyleClass("link");
loginLink->clicked().connect(loginWidget_, &WWidget::show);
loginLink->clicked().connect(loginLink, &WWidget::hide);
WText *registerLink = new WText(tr("Wt.Auth.register"));
registerLink->setStyleClass("link");
registerLink->clicked().connect(loginWidget_,
&BlogLoginWidget::registerNewUser);
WAnchor* archiveLink = new WAnchor
(WLink(WLink::InternalPath, basePath_ + "all"), tr("archive"));
loginStatus_->bindWidget("login", loginWidget_);
loginStatus_->bindWidget("login-link", loginLink);
loginStatus_->bindWidget("register-link", registerLink);
loginStatus_->bindString("feed-url", rssFeedUrl_);
loginStatus_->bindWidget("archive-link", archiveLink);
onUserChanged();
loginWidget_->processEnvironment();
}
示例4: init
void AuthWidget::init()
{
registrationModel_ = 0;
registrationEnabled_ = false;
created_ = false;
dialog_ = 0;
messageBox_ = 0;
addFunction("id", WT_TEMPLATE_FUNCTION(id));
addFunction("tr", WT_TEMPLATE_FUNCTION(tr));
WApplication *app = WApplication::instance();
app->useStyleSheet(WApplication::resourcesUrl() + "form.css");
app->internalPathChanged().connect(this, &AuthWidget::onPathChange);
app->builtinLocalizedStrings().useBuiltin(skeletons::Auth_xml1);
}
示例5: setInternalPathEnabled
void WMenu::setInternalPathEnabled(const std::string& basePath)
{
WApplication *app = WApplication::instance();
basePath_ = basePath.empty() ? app->internalPath() : basePath;
basePath_ = Utils::append(Utils::prepend(basePath_, '/'), '/');
if (!internalPathEnabled_) {
internalPathEnabled_ = true;
app->internalPathChanged().connect(this, &WMenu::handleInternalPathChange);
}
previousInternalPath_ = app->internalPath();
internalPathChanged(app->internalPath());
updateItemsInternalPath();
}
示例6: select
void WMenu::select(int index, bool changePath)
{
int last = current_;
setCurrent(index);
selectVisual(current_, changePath, true);
if (index != -1) {
WMenuItem *item = itemAt(index);
item->show();
item->loadContents();
if (changePath && emitPathChange_) {
WApplication *app = wApp;
app->internalPathChanged().emit(app->internalPath());
emitPathChange_ = false;
}
if (last != index) {
item->triggered().emit(item);
itemSelected_.emit(item);
}
}
}