blob: 9d44147bd53cb52efd60d54098c596d21267a823 [file] [log] [blame]
import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain
import org.eclipse.emf.parsley.edit.IEditingStrategy
import org.eclipse.emf.parsley.edit.UndoableEditingStrategy
import org.eclipse.emf.parsley.edit.domain.GlobalAdapterFactoryEditingDomainProvider
import org.eclipse.emf.parsley.examples.mail.Account
import org.eclipse.emf.parsley.examples.mail.Folder
import org.eclipse.emf.parsley.examples.mail.accountsview.custom.MailEmptyResourceInitializer
import org.eclipse.emf.parsley.examples.mail.accountsview.views.AccountsView
import org.eclipse.emf.parsley.resource.EmptyResourceInitializer
/* org.eclipse.emf.parsley.examples.mail.accountsview Emf Parsley Dsl Module file */
module org.eclipse.emf.parsley.examples.mail.accountsview {
parts {
viewpart org.eclipse.emf.parsley.examples.mail.accountsview.views.AccountsView {
viewname "Mail Accounts View"
viewclass AccountsView
viewcategory org.eclipse.emf.parsley.examples.mail.accountsview
}
}
bindings {
type EmptyResourceInitializer -> MailEmptyResourceInitializer
type IEditingStrategy -> UndoableEditingStrategy
// with this binding, a global EditingDomain will be used:
// other modules extending this module will share the EditingDomain
provide AdapterFactoryEditingDomain -> GlobalAdapterFactoryEditingDomainProvider
}
labelProvider {
image {
Account -> "account.gif"
Folder -> {
switch (name) {
case "Inbox" : "inbox.gif"
case "Sent" : "sent.gif"
case "Trash" : "trash.gif"
default: "folder.gif"
}
}
}
text {
Account -> email
Folder -> name
}
}
viewerContentProvider {
children {
Folder -> subfolders // don't show emails
}
}
}