NAME

NMultipleSelections - MultipleSelections with negative selections shown/stored


SYNOPSIS

  $property = new Podius::Property::NMultipleSelections;

Supposed to be used in the Podius::Component manpage and the Podius::Property manpage module trees only.


DESCRIPTION

This class implements component property of negative multiple selections. See description of the Podius::Property::MultipleSelections manpage.

The difference is that by default nothing is selected in MultipleSelections, and everything is selected in NMultipleSelections. Although the same thing (no codes) is stored in both cases.

Another way to look at this is NMultipleSelections behaves exactly like MultipleSelection, but only non-selected possibilities are stored.

Use NMultipleSelections if you want to add more choices with the true default in the future and still keep the existing persistent property data unchanged.


REQUIREMENTS

the Podius::Property::ScalarList manpage, the Podius::Property::MultipleSelections manpage.


OVERRIDDEN METHODS

access

description
This method is similar to access method inherited from superclass the Podius::Property::ScalarList manpage, but the actually stored list of codes is nagated.

I.e. if there are 3 choices, ``first'', ``second'' and ``third'', then access([``first'', ``second'']) actually stores [``third'']. And the consecutive access still returns [``first'', ``second''] as if this is what was stored.

From the caller's point of view everything should look consistent and transparent. But unlike the superclasses, the actually stored/returned arrayref is a copy.

parameters
Accessor: none.

Modifier: choice codes (array of strings).

returns
Accessor: selected choice labels (array of strings).

Modifier: new selected choice codes (array of scalars).