void SessionState::updateUser(const QStringList& tokens) { User user(this, tokens); bool newuser=true; if(users_.contains(user.id())) { // Existing user changed newuser = false; User olduser = users_.value(user.id()); users_[user.id()] = user; if(olduser.locked() != user.locked()) emit userLocked(user.id(), user.locked()); } else { users_[user.id()] = user; } // The session joining is complete when we get our own user ID // for the first time. if(host_->localuser_<0 && user.name() == host_->username_) host_->sessionJoinDone(user.id()); if(newuser) { emit userJoined(user.id()); if(user.locked()) emit userLocked(user.id(), true); } }
KoDocumentSectionModel::PropertyList KisBaseNode::sectionModelProperties() const { KoDocumentSectionModel::PropertyList l; l << KoDocumentSectionModel::Property(i18n("Visible"), KIcon("visible"), KIcon("novisible"), visible()); l << KoDocumentSectionModel::Property(i18n("Locked"), KIcon("locked"), KIcon("unlocked"), userLocked()); // XXX: Add linked! return l; }
bool KisBaseNode::isEditable() const { return ( visible() && !userLocked() && !systemLocked() ); }