Beispiel #1
0
 OSDMenuItem(struct osdmenuitem *desc, const char *name, BMessage *message)
     : BMenuItem(name, message), fItem(desc)
 {
     if (desc->name[0] == '\x0e')
         SetMarked(true);
     if (desc->key)
         SetTrigger(desc->key[0]);
 };
Beispiel #2
0
void StorageBase::Delete()
{
    // avoid double deletion
    if (IsMarked())
        return;

    SetManaged(true);

    // remove from all containers
    DetachFromContainers();

    // remove from parent
    StorageBase *parent = GetParentBasePtr();
    if (parent != 0)
        parent->Remove(GetLabel());

    // set this and all referent objects to be white, and mark it for deletion.
    SetColorRecursive(ObjectColor::White);
    SetMarked(true);
}
void HierarchyTreeNode::ResetUnsavedChanges()
{
	unsavedChangesCounter = 0;
	SetMarked(false);
}
Beispiel #4
0
/*
 * ms_mark - server message handler
 */
int ms_mark(struct Client* cptr, struct Client* sptr, int parc, char* parv[])
{
  struct Client* acptr;

  if (!IsServer(sptr))
    return protocol_violation(sptr, "MARK from non-server %s", cli_name(sptr));

  if (!strcmp(parv[2], MARK_WEBIRC)) {
    if(parc < 4)
      return protocol_violation(sptr, "MARK webirc received too few parameters (%u)", parc);

    if ((acptr = FindUser(parv[1]))) {
      ircd_strncpy(cli_webirc(acptr), parv[3], BUFSIZE);
      sendcmdto_serv_butone(sptr, CMD_MARK, cptr, "%s %s :%s", cli_name(acptr), MARK_WEBIRC, parv[3]);
    }
  } else if (!strcmp(parv[2], MARK_GEOIP)) {
    if(parc < 5)
      return protocol_violation(sptr, "MARK geoip received too few parameters (%u)", parc);
    if ((acptr = FindUser(parv[1]))) {
      geoip_apply_mark(acptr, parv[3], parv[4], (parc > 5 ? parv[5] : NULL));
      if (parc > 5)
        sendcmdto_serv_butone(sptr, CMD_MARK, cptr, "%s %s %s %s :%s", cli_name(acptr), MARK_GEOIP, parv[3], parv[4], parv[5]);
      else
        sendcmdto_serv_butone(sptr, CMD_MARK, cptr, "%s %s %s %s", cli_name(acptr), MARK_GEOIP, parv[3], parv[4]);
    }
  } else if (!strcmp(parv[2], MARK_CVERSION)) {
    if(parc < 4)
      return protocol_violation(sptr, "MARK client version received too few parameters (%u)", parc);

    if ((acptr = FindUser(parv[1]))) {
       ircd_strncpy(cli_version(acptr), parv[3], VERSIONLEN);
       sendcmdto_serv_butone(sptr, CMD_MARK, cptr, "%s %s :%s", cli_name(acptr), MARK_CVERSION, parv[3]);
    }
  } else if (!strcmp(parv[2], MARK_SSLCLIFP)) {
    if(parc < 4)
      return protocol_violation(sptr, "MARK SSL client certificate fingerprint received too few parameters (%u)", parc);

    if ((acptr = FindUser(parv[1]))) {
       ircd_strncpy(cli_sslclifp(acptr), parv[3], BUFSIZE);
       sendcmdto_serv_butone(sptr, CMD_MARK, cptr, "%s %s :%s", cli_name(acptr), MARK_SSLCLIFP, parv[3]);
    }
  } else if (!strcmp(parv[2], MARK_KILL)) {
    if(parc < 4)
      return protocol_violation(sptr, "MARK kill received too few parameters (%u)", parc);

    if ((acptr = FindUser(parv[1]))) {
      ircd_strncpy(cli_killmark(acptr), parv[3], BUFSIZE);
      sendcmdto_serv_butone(sptr, CMD_MARK, cptr, "%s %s :%s", cli_name(acptr), MARK_KILL, parv[3]);
    }
  } else if (!strcmp(parv[2], MARK_MARK) || !strcmp(parv[2], MARK_DNSBL_DATA)) {
    if(parc < 4)
      return protocol_violation(sptr, "MARK MARK (tag) received too few parameters (%u)", parc);

    if ((acptr = FindUser(parv[1]))) {
      add_mark(acptr, parv[3]);
      SetMarked(acptr);
      sendcmdto_serv_butone(sptr, CMD_MARK, cptr, "%s %s :%s", cli_name(acptr), MARK_MARK, parv[3]);
    }
  }

  return 0;
}