Mail API QML: Difference between revisions

From KDE Community Wiki
 
(14 intermediate revisions by the same user not shown)
Line 20: Line 20:
==Composer==
==Composer==


This Composer Api will be exposed through QML. The backend contains the basic functions of a message composer. This will be further extended in future. The basic Api plan is as follows:
This Composer Api will be exposed through QML. The backend contains the basic functions of a message composer. This will be further extended in future. We already have implemented the following till now:
 
* the send function
* receive from, body, subject
* receiver model and an attachment model ( which is being re-used from the present kmail composer)
 
 
The complete basic Api plan is as follows:


===PROPERTIES:===
===PROPERTIES:===


  Q_PROPERTY(QString identity ....)
  Q_PROPERTY(QString identity ....)
  Q_PROPERTY(ReceiverModel toModel .... CONSTANT)
  Q_PROPERTY(ReceiverModel *toModel .... CONSTANT)
  Q_PROPERTY(ReceiverModel ccModel .... CONSTANT)
  Q_PROPERTY(ReceiverModel *ccModel .... CONSTANT)
  Q_PROPERTY(ReceiverModel bccModel ... CONSTANT)
  Q_PROPERTY(ReceiverModel *bccModel ... CONSTANT)
  Q_PROPERTY(QString subject ....)
  Q_PROPERTY(QString subject ....)
  Q_PROPERTY(QString body ....)
  Q_PROPERTY(QString body ....)
  Q_PROPERTY(AttachmentModel attachmentModel .... CONSTANT)
Q_PROPERTY(QString from ....)
  Q_PROPERTY(AttachmentModel *attachmentModel .... CONSTANT)


===FUNCTIONS:===
===FUNCTIONS:===


=== void subject() ===
 
 
void subject()


Recieves the text input as QString from the editor in QML for subject   
Recieves the text input as QString from the editor in QML for subject   


=== void body() ===
 
void body()  


Recieves the text input as QString from the editor in QML for body.   
Recieves the text input as QString from the editor in QML for body.   


=== void replyTo()===
 
void replyTo()


Will set the address of receiver. It will also be received as QString. Recepient count will be set.
Will set the address of receiver. It will also be received as QString. Recepient count will be set.


=== void from() ===
 
void from()  


Sets the sender's address.
Sets the sender's address.


=== void cc() ===
 
void cc()  


Sets the CC field in recepients list.
Sets the CC field in recepients list.


=== void bcc()===
 
void bcc()


Sets the BCC field in the recepients list.
Sets the BCC field in the recepients list.
===SLOTS:===




===SLOTS:===


=== void addAttachment() ===
void addAttachment()  


Adds attachments to the message using KMime content part.  
Adds attachments to the message using KMime content part.  


=== void insertSignature() ===
 
void insertSignature()  


Inserts saved signature.
Inserts saved signature.


=== void send() ===
 
void send()  


Will send the message using MessageComposer::MessageSender
Will send the message using MessageComposer::MessageSender


=== void saveDraft() ===
 
void saveDraft()  


Saves the created text message as draft.
Saves the created text message as draft.


=== void sendLater() ===
 
void sendLater()  


Queues the message to be sent later.
Queues the message to be sent later.


===void forward()===
 
void forward()


Forwards a received mail.
Forwards a received mail.


===void replySender()===
 
void replySender()


Composes mail with the sender's address in reply field
Composes mail with the sender's address in reply field


===void replyToAll()===
 
void replyToAll()


Sends the message to multiple selected recipients.
Sends the message to multiple selected recipients.


===void replyToMailingList()===
 
void replyToMailingList()


Sends the message to mailing list.
Sends the message to mailing list.

Latest revision as of 16:08, 27 June 2014

DRAFT

This document just serves as draft for developing a QML Mail API.

API

Accounts

Folders

MessageList

Message

Message {

}

Composer

This Composer Api will be exposed through QML. The backend contains the basic functions of a message composer. This will be further extended in future. We already have implemented the following till now:

  • the send function
  • receive from, body, subject
  • receiver model and an attachment model ( which is being re-used from the present kmail composer)


The complete basic Api plan is as follows:

PROPERTIES:

Q_PROPERTY(QString identity ....)
Q_PROPERTY(ReceiverModel *toModel .... CONSTANT)
Q_PROPERTY(ReceiverModel *ccModel .... CONSTANT)
Q_PROPERTY(ReceiverModel *bccModel ... CONSTANT)
Q_PROPERTY(QString subject ....)
Q_PROPERTY(QString body ....)
Q_PROPERTY(QString from ....)
Q_PROPERTY(AttachmentModel *attachmentModel .... CONSTANT)

FUNCTIONS:

void subject()

Recieves the text input as QString from the editor in QML for subject


void body()

Recieves the text input as QString from the editor in QML for body.


void replyTo()

Will set the address of receiver. It will also be received as QString. Recepient count will be set.


void from()

Sets the sender's address.


void cc()

Sets the CC field in recepients list.


void bcc()

Sets the BCC field in the recepients list.

SLOTS:

void addAttachment()

Adds attachments to the message using KMime content part.


void insertSignature()

Inserts saved signature.


void send()

Will send the message using MessageComposer::MessageSender


void saveDraft()

Saves the created text message as draft.


void sendLater()

Queues the message to be sent later.


void forward()

Forwards a received mail.


void replySender()

Composes mail with the sender's address in reply field


void replyToAll()

Sends the message to multiple selected recipients.


void replyToMailingList()

Sends the message to mailing list.