16 #include <Wt/WContainerWidget.h>
17 #include <Wt/WImage.h>
18 #include <Wt/WLineEdit.h>
19 #include <Wt/WLocalDateTime.h>
20 #include <Wt/WPushButton.h>
22 #include <Wt/WTable.h>
23 #include <Wt/WTableCell.h>
24 #include <Wt/WStringUtil.h>
32 std::unique_ptr<WContainerWidget> layout
33 = std::make_unique<WContainerWidget>();
85 std::vector<Attachment> toadd =
attachments_[i]->attachments();
158 std::unique_ptr<Option> addcc(
new Option(
tr(
"msg.addcc")));
160 std::unique_ptr<Option> addbcc(
new Option(
tr(
"msg.addbcc")));
259 std::unique_ptr<AttachmentEdit> edit
260 = std::make_unique<AttachmentEdit>(
this);
276 std::vector<AttachmentEdit *>::iterator i
321 for (
unsigned i = 0; i <
attachments_.size() - 1; ++i) {
361 bool attachmentsFailed =
false;
364 attachmentsFailed =
true;
368 if (attachmentsFailed) {
std::vector< Contact > addressees() const
Get a list of addressees.
void setAddressees(const std::vector< Contact > &contacts)
Set a list of addressees.
An edit field for an email attachment.
WPushButton * botSaveNowButton_
void sendIt()
Slot attached to the Send button.
Option * attachOtherFile_
Option for attaching another file.
void setMessage(const WString &message)
Set the message.
void saved()
All attachments have been processed, determine the result of saving the message.
WTextArea * message_
WTextArea for the main message.
WPushButton * topSaveNowButton_
Wt::Signal send
The message is ready to be sent...
std::vector< Contact > bcc() const
Get the Bc: contacts.
Wt::Signal discard
The message must be discarded.
const WString & message() const
Get the message.
WPushButton * topSendButton_
void setStatus(const WString &text, const WString &style)
Set the status, and apply the given style.
AddresseeEdit * toEdit_
To: Addressees edit.
void discardIt()
Slot attached to the Discard button.
std::vector< Contact > to() const
Get the To: contacts.
void attachMore()
Add an attachment edit.
void saveNow()
Slot attached to the Save now button.
WPushButton * botSendButton_
bool saving_
state when waiting asyncrhonously for attachments to be uploaded
WLineEdit * subject_
The subject line edit.
WPushButton * topDiscardButton_
int attachmentsPending_
number of attachments waiting to be uploaded during saving
void setTo(const std::vector< Contact > &to)
Set message To: contacts.
ContactSuggestions * contactSuggestions_
The suggestions popup for the addressee edits.
Composer()
Construct a new Composer.
Option * attachFile_
Option for attaching a file.
WPushButton * botDiscardButton_
std::vector< AttachmentEdit * > attachments_
Array which holds all the attachments, including one extra invisible one.
Option * addbcc_
Option for editing Bcc:
AddresseeEdit * ccEdit_
Cc: Addressees edit.
void attachmentDone()
Slotcalled when an attachment has been uploaded.
WContainerWidget * layout_
void setSubject(const WString &subject)
Set subject.
void removeAttachment(AttachmentEdit *attachment)
Remove the given attachment edit.
const WString & subject() const
Get the subject.
Option * addcc_
Option for editing Cc:
void setAddressBook(const std::vector< Contact > &addressBook)
Set the address book, for autocomplete suggestions.
std::vector< Contact > cc() const
Get the Cc: contacts.
AddresseeEdit * bccEdit_
Bcc: Addressees edit.
OptionList * options_
OptionsList for editing Cc or Bcc.
std::vector< Attachment > attachments() const
Get the list of attachments.
void update()
Updates the stateless implementations after an Option has been hidden or shown.
void add(std::unique_ptr< Option > option)
Add an Option to the list.
WInteractWidget * item()
Returns the clickable part.
Wt::Signals::connection connect(F function)
void emit(A... args) const
const WString & text() const
virtual void setText(const WString &text)
static WLocalDateTime currentDateTime(const WLocale &locale=WLocale::currentLocale())
void addChild(std::unique_ptr< WObject > child)
WTableCell * elementAt(int row, int column)
virtual void setText(const WString &text)
const WString & text() const
void setColumns(int cols)
bool setText(const WString &text)