[squeak-dev] The Trunk: Network-pre.207.mcz
Nicolas Cellier
nicolas.cellier.aka.nice at gmail.com
Sat Dec 2 21:07:52 UTC 2017
2017-12-02 21:37 GMT+01:00 Nicolas Cellier <
nicolas.cellier.aka.nice at gmail.com>:
> Hi Patrick,
>
> 2017-11-10 16:40 GMT+01:00 <commits at source.squeak.org>:
>
>> Patrick Rein uploaded a new version of Network to project The Trunk:
>> http://source.squeak.org/trunk/Network-pre.207.mcz
>>
>> ==================== Summary ====================
>>
>> Name: Network-pre.207
>> Author: pre
>> Time: 10 November 2017, 4:40:14.388812 pm
>> UUID: 85f492c1-3470-bb43-afe5-bea036995824
>> Ancestors: Network-pre.206
>>
>> A new MailComposition window allowing a more structured access to the
>> underlying mail message.
>>
>> =============== Diff against Network-pre.206 ===============
>>
>> Item was changed:
>> Model subclass: #MailComposition
>> + instanceVariableNames: 'mailMessage'
>> - instanceVariableNames: 'messageText textEditor morphicWindow
>> mvcWindow'
>>
>
> It seems that the methods using this instance variables have not been
> removed.
> See Undeclared.
>
>
It appears to be morphicOpen and mvcOpen...
I think they are obsolete because you now use ToolBuider, so I removed them.
classVariableNames: ''
>> poolDictionaries: ''
>> category: 'Network-MailSending'!
>>
>> + !MailComposition commentStamp: 'pre 5/16/2017 20:00' prior: 0!
>> + a message being composed in a fancy way. The mail is send via the
>> registered MailSender by default. Fields do not have to be saved, they are
>> saved automatically on send. !
>> - !MailComposition commentStamp: '<historical>' prior: 0!
>> - a message being composed. When finished, it will be submitted via a
>> Celeste.!
>>
>> Item was changed:
>> + ----- Method: MailComposition class>>initialize (in category 'class
>> initialization') -----
>> - ----- Method: MailComposition class>>initialize (in category 'instance
>> creation') -----
>> initialize
>> +
>> + MailSender register: self !
>> - super initialize.
>>
>
> Even if super initialize does not do anything, it does not hurt to leave
> it as is IMO.
>
> - MailSender register: self.!
>>
>> Item was added:
>> + ----- Method: MailComposition class>>open (in category 'opening') -----
>> + open
>> +
>> + ^ ToolBuilder default open: self!
>>
>> Item was added:
>> + ----- Method: MailComposition class>>openOn: (in category 'opening')
>> -----
>> + openOn: aMessage
>> +
>> + ^ ToolBuilder default open: (self new on: aMessage; yourself)!
>>
>> Item was changed:
>> + ----- Method: MailComposition class>>sendMailMessage: (in category
>> 'MailSender interface') -----
>> + sendMailMessage: aMessage
>> +
>> + self openOn: aMessage!
>> - ----- Method: MailComposition class>>sendMailMessage: (in category
>> 'instance creation') -----
>> - sendMailMessage: aMailMessage
>> - | newComposition |
>> - newComposition := self new.
>> - newComposition messageText: aMailMessage text; open!
>>
>> Item was changed:
>> + ----- Method: MailComposition class>>unload (in category
>> 'initialize-release') -----
>> - ----- Method: MailComposition class>>unload (in category 'instance
>> creation') -----
>> unload
>>
>> MailSender unregister: self !
>>
>> Item was added:
>> + ----- Method: MailComposition>>addAttachment (in category 'actions')
>> -----
>> + addAttachment
>> + | file fileResult fileName |
>> +
>> + self saveFields.
>> +
>> + (fileResult := StandardFileMenu oldFile)
>> + ifNotNil:
>> + [fileName := fileResult directory fullNameFor:
>> fileResult name.
>> + file := FileStream readOnlyFileNamed: fileName.
>> + file ifNotNil:
>> + [file binary.
>> + mailMessage addAttachmentFrom: file
>> withName: fileResult name.
>> + file close.
>> + self changed: #messageText]] !
>>
>> Item was added:
>> + ----- Method: MailComposition>>addAttachmentButtonLabel (in category
>> 'ui constants') -----
>> + addAttachmentButtonLabel
>> +
>> + ^ 'add attachment' translated!
>>
>> Item was added:
>> + ----- Method: MailComposition>>bccLabel (in category 'ui constants')
>> -----
>> + bccLabel
>> +
>> + ^ 'BCC' translated!
>>
>> Item was added:
>> + ----- Method: MailComposition>>buildButtonBarSpecWith: (in category
>> 'toolbuilder') -----
>> + buildButtonBarSpecWith: aBuilder
>> +
>> + | buttonBarSpec |
>> + buttonBarSpec := aBuilder pluggablePanelSpec new
>> + children: OrderedCollection new;
>> + layout: #horizontal;
>> + frame: (LayoutFrame new
>> + leftFraction: 0 offset: 0;
>> + topFraction: 0 offset: 0;
>> + rightFraction: 1 offset: 0;
>> + bottomFraction: 0 offset: self buttonBarHeight);
>> + yourself.
>> +
>> + buttonBarSpec children add: (aBuilder pluggableButtonSpec new
>> + model: self;
>> + action: #sendMail;
>> + label: #sendMailButtonLabel;
>> + yourself).
>> +
>> + buttonBarSpec children add: (aBuilder pluggableButtonSpec new
>> + model: self;
>> + action: #addAttachment;
>> + label: #addAttachmentButtonLabel;
>> + yourself).
>> +
>> + buttonBarSpec children add: (aBuilder pluggableButtonSpec new
>> + model: self;
>> + action: #removeAttachment;
>> + label: #removeAttachmentButtonLabel;
>> + yourself).
>> +
>> + ^ buttonBarSpec!
>>
>> Item was added:
>> + ----- Method: MailComposition>>buildWith: (in category 'toolbuilder')
>> -----
>> + buildWith: aBuilder
>> +
>> + | windowSpec detailsPanelSpec textSpec |
>> +
>> + windowSpec := aBuilder pluggableWindowSpec new
>> + model: self;
>> + label: self dialogTitle;
>> + children: OrderedCollection new.
>> +
>> + windowSpec children add: (self buildButtonBarSpecWith: aBuilder).
>> +
>> + detailsPanelSpec := aBuilder pluggablePanelSpec new
>> + children: OrderedCollection new;
>> + layout: #vertical;
>> + yourself.
>> + windowSpec children add: detailsPanelSpec.
>> +
>> + self createDetailsFieldsIn: detailsPanelSpec by: aBuilder.
>> +
>> + detailsPanelSpec children: detailsPanelSpec children reversed.
>> + detailsPanelSpec frame: (LayoutFrame new
>> + leftFraction: 0 offset: 0;
>> + topFraction: 0 offset: self buttonBarHeight;
>> + rightFraction: 1 offset: 0;
>> + bottomFraction: 0 offset: self buttonBarHeight +
>> (detailsPanelSpec children size * self lineHeight)).
>> +
>> + textSpec := aBuilder pluggableTextSpec new
>> + model: self;
>> + indicateUnacceptedChanges: true;
>> + getText: #messageText;
>> + setText: #messageText:;
>> + frame: (LayoutFrame new
>> + leftFraction: 0 offset: 0;
>> + topFraction: 0 offset: self buttonBarHeight +
>> (detailsPanelSpec children size * self lineHeight);
>> + rightFraction: 1 offset: 0;
>> + bottomFraction: 1 offset: 0);
>> + yourself.
>> + windowSpec children add: textSpec.
>> +
>> + ^ aBuilder build: windowSpec!
>>
>> Item was added:
>> + ----- Method: MailComposition>>buttonBarHeight (in category 'ui
>> constants') -----
>> + buttonBarHeight
>> +
>> + ^ 25 "pixel"!
>>
>> Item was added:
>> + ----- Method: MailComposition>>ccLabel (in category 'ui constants')
>> -----
>> + ccLabel
>> +
>> + ^ 'CC' translated!
>>
>> Item was added:
>> + ----- Method: MailComposition>>createDetailsFieldsIn:by: (in category
>> 'toolbuilder') -----
>> + createDetailsFieldsIn: detailsPanelSpec by: aBuilder
>> +
>> + #((senderLabel messageSender messageSender:)
>> + (recipientLabel messageRecipient messageRecipient:)
>> + (ccLabel messageCC messageCC:)
>> + (bccLabel messageBCC messageBCC:)
>> + (subjectLabel messageSubject messageSubject:))
>> + do: [:config | detailsPanelSpec children add:
>> + (self createFieldInputNamed: config first
>> + getter: config second
>> + setter: config third
>> + with: aBuilder)]
>> + !
>>
>> Item was added:
>> + ----- Method: MailComposition>>createFieldInputNamed:getter:setter:with:
>> (in category 'toolbuilder') -----
>> + createFieldInputNamed: fieldLabelGetter getter: fieldGetter setter:
>> fieldSetter with: aBuilder
>> +
>> + ^ aBuilder pluggableInputFieldSpec new
>> + model: self;
>> + indicateUnacceptedChanges: false;
>> + getText: fieldGetter;
>> + setText: fieldSetter;
>> + frame: (LayoutFrame new
>> + leftFraction: 0 offset: 0;
>> + topFraction: 0 offset: 0;
>> + rightFraction: 1 offset: 0;
>> + bottomFraction: 0 offset: self lineHeight);
>> + help: fieldLabelGetter;
>> + yourself!
>>
>> Item was added:
>> + ----- Method: MailComposition>>dialogTitle (in category 'toolbuilder')
>> -----
>> + dialogTitle
>> +
>> + ^ 'mail editor' translated!
>>
>> Item was added:
>> + ----- Method: MailComposition>>doSendMail (in category 'private') -----
>> + doSendMail
>> +
>> + (SMTPClient openOnHostNamed: self smtpServer port: self
>> smtpServerPort)
>> + user: self smtpUser;
>> + password: self smtpPassword;
>> + login;
>> + mailFrom: mailMessage from to: (mailMessage to
>> findTokens: ',') text: mailMessage asSendableText.!
>>
>> Item was added:
>> + ----- Method: MailComposition>>initialize (in category
>> 'initialize-release') -----
>> + initialize
>> +
>> + mailMessage := MailMessage empty!
>>
>> Item was added:
>> + ----- Method: MailComposition>>lineHeight (in category 'ui constants')
>> -----
>> + lineHeight
>> +
>> + ^ 25 "pixel"!
>>
>> Item was added:
>> + ----- Method: MailComposition>>messageBCC (in category 'access to mail
>> object') -----
>> + messageBCC
>> +
>> + ^ mailMessage bcc!
>>
>> Item was added:
>> + ----- Method: MailComposition>>messageBCC: (in category 'access to mail
>> object') -----
>> + messageBCC: emailAddresses
>> +
>> + self flag: #TODO. "add validation"
>> + mailMessage bcc: emailAddresses asString.
>> + ^ true!
>>
>> Item was added:
>> + ----- Method: MailComposition>>messageCC (in category 'access to mail
>> object') -----
>> + messageCC
>> +
>> + ^ mailMessage cc!
>>
>> Item was added:
>> + ----- Method: MailComposition>>messageCC: (in category 'access to mail
>> object') -----
>> + messageCC: emailAddresses
>> +
>> + self flag: #TODO. "add validation"
>> + mailMessage cc: emailAddresses asString.
>> + ^ true!
>>
>> Item was added:
>> + ----- Method: MailComposition>>messageRecipient (in category 'access
>> to mail object') -----
>> + messageRecipient
>> +
>> + ^ mailMessage to!
>>
>> Item was added:
>> + ----- Method: MailComposition>>messageRecipient: (in category 'access
>> to mail object') -----
>> + messageRecipient: emailAddresses
>> +
>> + self flag: #TODO. "add validation"
>> + mailMessage to: emailAddresses asString.
>> + ^ true!
>>
>> Item was added:
>> + ----- Method: MailComposition>>messageSender (in category 'access to
>> mail object') -----
>> + messageSender
>> +
>> + ^ mailMessage from!
>>
>> Item was added:
>> + ----- Method: MailComposition>>messageSender: (in category 'access to
>> mail object') -----
>> + messageSender: emailAddress
>> +
>> + self flag: #TODO. "add validation"
>> + mailMessage from: emailAddress asString.
>> + ^ true!
>>
>> Item was added:
>> + ----- Method: MailComposition>>messageSubject (in category 'access to
>> mail object') -----
>> + messageSubject
>> +
>> + ^ mailMessage subject!
>>
>> Item was added:
>> + ----- Method: MailComposition>>messageSubject: (in category 'access to
>> mail object') -----
>> + messageSubject: aSubject
>> +
>> + self flag: #TODO. "add validation"
>> + mailMessage subject: aSubject asString.
>> + ^ true!
>>
>> Item was changed:
>> + ----- Method: MailComposition>>messageText (in category 'access to mail
>> object') -----
>> - ----- Method: MailComposition>>messageText (in category 'access') -----
>> messageText
>> +
>> + ^ mailMessage bodyTextFormatted!
>> - "return the current text"
>> - ^messageText.
>> - !
>>
>> Item was changed:
>> + ----- Method: MailComposition>>messageText: (in category 'access to
>> mail object') -----
>> - ----- Method: MailComposition>>messageText: (in category 'access') -----
>> messageText: aText
>> +
>> + mailMessage body: ((MIMEDocument
>> + contentType: MIMEDocument contentTypePlainText
>> + content: aText asString)
>> + charset: 'UTF-8';
>> + yourself).
>> + ^ true!
>> - "change the current text"
>> - messageText := aText.
>> - self changed: #messageText.
>> - ^true!
>>
>> Item was added:
>> + ----- Method: MailComposition>>on: (in category 'initialize-release')
>> -----
>> + on: aMessage
>> +
>> + mailMessage := aMessage!
>>
>> Item was added:
>> + ----- Method: MailComposition>>recipientLabel (in category 'ui
>> constants') -----
>> + recipientLabel
>> +
>> + ^ 'Recipients' translated!
>>
>> Item was added:
>> + ----- Method: MailComposition>>removeAttachment (in category
>> 'actions') -----
>> + removeAttachment
>> +
>> + | attachmentToBeRemoved |
>> +
>> + self saveFields.
>> + attachmentToBeRemoved := UIManager default
>> + chooseFrom: (mailMessage attachments collect: [:m | m
>> attachmentFileName ])
>> + values: mailMessage attachments
>> + title: 'Choose attachment to be removed' translated.
>> + mailMessage removeAttachment: attachmentToBeRemoved.
>> + self changed: #messageText.!
>>
>> Item was added:
>> + ----- Method: MailComposition>>removeAttachmentButtonLabel (in
>> category 'ui constants') -----
>> + removeAttachmentButtonLabel
>> +
>> + ^ 'remove attachment' translated!
>>
>> Item was added:
>> + ----- Method: MailComposition>>saveFields (in category 'private') -----
>> + saveFields
>> +
>> + (self dependents select: [:d | d hasUnacceptedEdits]) do: [:d | d
>> accept].!
>>
>> Item was added:
>> + ----- Method: MailComposition>>sendMail (in category 'actions') -----
>> + sendMail
>> +
>> + self saveFields.
>> +
>> + [self doSendMail.
>> + Project current addDeferredUIMessage: [self changed: #close]]
>> + forkAt: 30!
>>
>> Item was added:
>> + ----- Method: MailComposition>>sendMailButtonLabel (in category 'ui
>> constants') -----
>> + sendMailButtonLabel
>> +
>> + ^ 'send mail' translated!
>>
>> Item was added:
>> + ----- Method: MailComposition>>senderLabel (in category 'ui constants')
>> -----
>> + senderLabel
>> +
>> + ^ 'Sender' translated!
>>
>> Item was added:
>> + ----- Method: MailComposition>>smtpPassword (in category 'MailSender
>> interface') -----
>> + smtpPassword
>> +
>> + ^ MailSender userPassword!
>>
>> Item was changed:
>> + ----- Method: MailComposition>>smtpServer (in category 'MailSender
>> interface') -----
>> - ----- Method: MailComposition>>smtpServer (in category 'access') -----
>> smtpServer
>> +
>> + ^ MailSender smtpServer!
>> - ^MailSender smtpServer!
>>
>> Item was added:
>> + ----- Method: MailComposition>>smtpServerPort (in category 'MailSender
>> interface') -----
>> + smtpServerPort
>> +
>> + ^ MailSender smtpServerPort!
>>
>> Item was added:
>> + ----- Method: MailComposition>>smtpUser (in category 'MailSender
>> interface') -----
>> + smtpUser
>> +
>> + ^ MailSender userName!
>>
>> Item was added:
>> + ----- Method: MailComposition>>subjectLabel (in category 'ui
>> constants') -----
>> + subjectLabel
>> +
>> + ^ 'Subject' translated!
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20171202/d4945e82/attachment-0001.html>
More information about the Squeak-dev
mailing list
|