void WMenuItem::setMenu(WMenu *menu) { subMenu_ = menu; subMenu_->parentItem_ = this; Wt::WContainerWidget *sparent = dynamic_cast<Wt::WContainerWidget *>(subMenu_->parent()); if (sparent) sparent->removeWidget(subMenu_); addWidget(subMenu_); if (subMenu_->isPopup() && parentMenu() && parentMenu()->isPopup()) { subMenu_->webWidget()->setZIndex(std::max(parentMenu()->zIndex() + 100, subMenu_->zIndex())); } WPopupMenu *popup = dynamic_cast<WPopupMenu *>(subMenu_); if (popup) { popup->setJavaScriptMember("wtNoReparent", "true"); setSelectable(false); popup->setButton(anchor()); updateInternalPath(); // WPopupMenus are hidden by default, 'show' this WPopupMenu // but not really, since the parent is still hidden. This fixes // an issue where child widgets would remain unexposed, even // though this submenu was open (e.g. in a submenu where items // are checkable) if (dynamic_cast<WPopupMenu*>(menu_)) popup->show(); } }
QQuickMenuBase::~QQuickMenuBase() { if (parentMenu()) parentMenu()->removeItem(this); setParentMenu(0); if (m_platformItem) { delete m_platformItem; m_platformItem = 0; } }
void QQuickMenuBase::syncWithPlatformMenu() { QQuickMenu *menu = parentMenu(); if (menu && menu->platformMenu() && platformItem() && menu->contains(this)) // If not, it'll be added later and then sync'ed menu->platformMenu()->syncMenuItem(platformItem()); }
void BookmarkMenu::refill() { clear(); fillBookmarks(); if (parentMenu()->actions().count() > 0) parentMenu()->addSeparator(); if (isRoot()) { addAddBookmarksList(); addEditBookmarks(); } else { addOpenFolderInTabs(); addAddBookmarksList(); } }
void KImportedBookmarkMenu::slotNSLoad() { // qDebug()<<"**** slotNSLoad ****"<<m_type<<" "<<m_location; // only fill menu once parentMenu()->disconnect(SIGNAL(aboutToShow())); // not NSImporter, but kept old name for BC reasons KBookmarkMenuImporter importer(manager(), this); importer.openBookmarks(m_location, m_type); }
void BookmarkMenu::refill() { clear(); if (isRoot()) { addAddBookmark(); addAddBookmarksList(); if (parentMenu()->actions().count() > 0) parentMenu()->addSeparator(); WebWindow *w = qobject_cast<WebWindow *>(parentMenu()->parent()); QAction *a; // bk page a = w->actionByName(QL1S("open_bookmarks_page")); parentMenu()->addAction(a); a = w->actionByName(QL1S("show_bookmarks_toolbar")); parentMenu()->addAction(a); addEditBookmarks(); if (parentMenu()->actions().count() > 0) parentMenu()->addSeparator(); } fillBookmarks(); if (!isRoot()) { if (parentMenu()->actions().count() > 0) parentMenu()->addSeparator(); addOpenFolderInTabs(); addAddBookmarksList(); } }
void BookmarkMenu::addOpenFolderInTabs() { KBookmarkGroup group = manager()->findByAddress(parentAddress()).toGroup(); if (!group.first().isNull()) { KBookmark bookmark = group.first(); while (bookmark.isGroup() || bookmark.isSeparator()) { bookmark = group.next(bookmark); } if (!bookmark.isNull()) { parentMenu()->addAction(rApp->bookmarkManager()->owner()->createAction(group, BookmarkOwner::OPEN_FOLDER)); } } }