Source Code (Use browser search to find items of interest.)

Class Index

kcron'CTDayOfWeek (./kdeadmin/kcron/ctdow.h:26)

class CTDayOfWeek : public CTUnit<1,7>
{
public:
/**
  * Constructs from a tokenized string.
  */
  CTDayOfWeek(const string& tokStr = "");

/**
  * Default copy constructor.
  */
  // CTDayOfWeek(const CTDayOfWeek& source);

/**
  * Default assignment operator
  */
  // void operator = (const CTDayOfWeek& source);

/**
  * Default destructor.
  */
  // ~CTDayOfWeek();

/**
  * Override initialize to support crontab using both 0 and 7 for
  * Sunday.
  */
  void initialize(const string &tokStr = "");

/**
  * Get natural language description.
  */
  virtual string describe() const;

/**
  * Get day of week name.
  */
  static string getName(const int ndx,
    const bool format = CTDayOfWeek::longFormat);

private:
  static void initializeNames();
  static string shortName[8];
  static string longName[8];
};

kcron'CTDayOfWeek::CTDayOfWeek() (./kdeadmin/kcron/ctdow.cpp:30)

CTDayOfWeek::CTDayOfWeek(const string& tokStr) :
  CTUnit<1,7>(tokStr)
{
  // Compensate for cron supporting Sunday as both 0 and 7.

  if (get(0))
  {
    set(0,false);
    set(7,true);
  }
}


kcron'CTDayOfWeek::initialize() (./kdeadmin/kcron/ctdow.cpp:42)

void CTDayOfWeek::initialize(const string &tokStr)
{
  CTUnit<1,7>::initialize(tokStr);

  // Compensate for cron supporting Sunday as both 0 and 7.

  if (get(0))
  {
    set(0,false);
    set(7,true);
    apply();
  }
}


kcron'CTDayOfWeek::describe() (./kdeadmin/kcron/ctdow.cpp:56)

string CTDayOfWeek::describe() const
{
  initializeNames();
  if (count() == 7)
    return (const char*)i18n("every day ");
  else if (get(1) && get(2) && get(3) && get(4) && get(5))
    return (const char*)i18n("weekday ");
  else
    return CTUnit<1,7>::describe(shortName);
}


kcron'CTDayOfWeek::getName() (./kdeadmin/kcron/ctdow.cpp:67)

string CTDayOfWeek::getName(const int ndx, const bool format)
{
  initializeNames();
  return (format == shortFormat) ? shortName[ndx] : longName[ndx];
}


kcron'CTDayOfWeek::initializeNames() (./kdeadmin/kcron/ctdow.cpp:73)

void CTDayOfWeek::initializeNames()
{
  if (shortName[1] == "")
  {
    const string shortDOWName[8] =
    {
      "",
      (const char*)i18n("Mon"),  (const char*)i18n("Tue"),
      (const char*)i18n("Wed"),  (const char*)i18n("Thu"),
      (const char*)i18n("Fri"),  (const char*)i18n("Sat"),
      (const char*)i18n("Sun")
    };
  
    const string longDOWName[8] =
    {
      "",
      (const char*)i18n("Monday"),     (const char*)i18n("Tuesday"),
      (const char*)i18n("Wednesday"),  (const char*)i18n("Thursday"),
      (const char*)i18n("Friday"),     (const char*)i18n("Saturday"),
      (const char*)i18n("Sunday")
    };
  
    for (int i = 1; i <= 7; i++)
    {
      shortName[i] = shortDOWName[i];
      longName[i]  = longDOWName[i];
    }
  }
}