Package net.rim.blackberry.api.messagelist

Examples of net.rim.blackberry.api.messagelist.ApplicationMessageFolderRegistry


                        new ApplicationIcon(indicatorIcon);
                ApplicationIndicatorRegistry.getInstance().register(
                        applicationIcon, false, false);

                // Check if this application registered folders already
                final ApplicationMessageFolderRegistry reg =
                        ApplicationMessageFolderRegistry.getInstance();
                if (reg.getApplicationFolder(INBOX_FOLDER_ID) == null) {
                    // Register folders & message types and initialize folders
                    // with data. Normally the data would come from from a mail
                    // server or persistent store.
                    daemon.init();
                }
View Full Code Here


     */
    void init() {
        // 1. Register folders and application descriptors
        // ----------------------

        final ApplicationMessageFolderRegistry reg =
                ApplicationMessageFolderRegistry.getInstance();

        // Some context menu items don't need a GUI (e.g. an item for deleting a
        // message) and will be run in the current daemon application.
        final ApplicationDescriptor daemonDescr =
                ApplicationDescriptor.currentApplicationDescriptor();

        // Main application descriptor - causes application to be launched with
        // default welcome screen if a user clicks on the "Message List Demo"
        // header in the home screen notifications view.
        final ApplicationDescriptor mainDescr =
                new ApplicationDescriptor(daemonDescr, APPLICATION_NAME,
                        new String[] {});

        // This application descriptor launches this application with a GUI to
        // execute listener callbacks, e.g. to display a message.
        final ApplicationDescriptor uiCallbackDescr =
                new ApplicationDescriptor(daemonDescr, APPLICATION_NAME,
                        new String[] { "gui" });

        // Get existing messages from storage and register them in folders
        final ApplicationFolderIntegrationConfig inboxIntegration =
                new ApplicationFolderIntegrationConfig(true, true, mainDescr);
        final ApplicationFolderIntegrationConfig deletedIntegration =
                new ApplicationFolderIntegrationConfig(false);

        final MessageListDemoStore messages =
                MessageListDemoStore.getInstance();
        final ApplicationMessageFolder inbox =
                reg.registerFolder(MessageListDemo.INBOX_FOLDER_ID, "Inbox",
                        messages.getInboxMessages(), inboxIntegration);
        final ApplicationMessageFolder deleted =
                reg.registerFolder(MessageListDemo.DELETED_FOLDER_ID,
                        "Deleted Messages", messages.getDeletedMessages(),
                        deletedIntegration);

        // Register as a listener for callback notifications
        inbox.addListener(
                this,
                ApplicationMessageFolderListener.MESSAGE_DELETED
                        | ApplicationMessageFolderListener.MESSAGE_MARKED_OPENED
                        | ApplicationMessageFolderListener.MESSAGE_MARKED_UNOPENED
                        | ApplicationMessageFolderListener.MESSAGES_MARKED_OLD,
                daemonDescr);
        deleted.addListener(this,
                ApplicationMessageFolderListener.MESSAGE_DELETED, daemonDescr);

        messages.setFolders(inbox, deleted);

        // We've registered two folders, specify root folder name for the
        // [View Folder] screen.
        reg.setRootFolderName(APPLICATION_NAME);

        // 2. Register message icons -------------------------------------------

        final ApplicationIcon newIcon =
                new ApplicationIcon(EncodedImage
                        .getEncodedImageResource("img/new.png"));
        final ApplicationIcon readIcon =
                new ApplicationIcon(EncodedImage
                        .getEncodedImageResource("img/read.png"));
        final ApplicationIcon repliedIcon =
                new ApplicationIcon(EncodedImage
                        .getEncodedImageResource("img/replied.png"));
        final ApplicationIcon deletedIcon =
                new ApplicationIcon(EncodedImage
                        .getEncodedImageResource("img/deleted.png"));

        reg.registerMessageIcon(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_NEW, newIcon);
        reg.registerMessageIcon(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_OPENED, readIcon);
        reg.registerMessageIcon(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_REPLIED, repliedIcon);
        reg.registerMessageIcon(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_DELETED, deletedIcon);

        // 3. Register message menu items --------------------------------------

        final ApplicationMenuItem openMenuItem = new OpenContextMenu(0x230010);
        final ApplicationMenuItem replyMenuItem =
                new ReplyContextMenu(0x230020);
        final ApplicationMenuItem markOpenedMenuItem =
                new MarkOpenedContextMenu(0x230030);
        final ApplicationMenuItem markUnopenedMenuItem =
                new MarkUnreadContextMenu(0x230040);

        final ApplicationMenuItem[] newGuiMenuItems =
                new ApplicationMenuItem[] { openMenuItem };
        final ApplicationMenuItem[] newDaemonMenuItems =
                new ApplicationMenuItem[] { markOpenedMenuItem, replyMenuItem };
        final ApplicationMenuItem[] openedGuiMenuItems =
                new ApplicationMenuItem[] { openMenuItem };
        final ApplicationMenuItem[] openedDaemonMenuItems =
                new ApplicationMenuItem[] { markUnopenedMenuItem, replyMenuItem };
        final ApplicationMenuItem[] repliedGuiMenuItems =
                new ApplicationMenuItem[] { openMenuItem };
        final ApplicationMenuItem[] repliedDaemonMenuItems =
                new ApplicationMenuItem[] { markUnopenedMenuItem };
        final ApplicationMenuItem[] deletedGuiMenuItems =
                new ApplicationMenuItem[] { openMenuItem, };

        reg.registerMessageMenuItems(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_NEW, newGuiMenuItems, uiCallbackDescr);
        reg.registerMessageMenuItems(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_NEW, newDaemonMenuItems, daemonDescr);
        reg.registerMessageMenuItems(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_OPENED, openedGuiMenuItems,
                uiCallbackDescr);
        reg.registerMessageMenuItems(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_OPENED, openedDaemonMenuItems,
                daemonDescr);
        reg.registerMessageMenuItems(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_REPLIED, repliedGuiMenuItems,
                uiCallbackDescr);
        reg.registerMessageMenuItems(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_REPLIED, repliedDaemonMenuItems,
                daemonDescr);
        reg.registerMessageMenuItems(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_DELETED, deletedGuiMenuItems,
                uiCallbackDescr);

        reg.setBulkMarkOperationsSupport(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_NEW, true, false);
        reg.setBulkMarkOperationsSupport(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_OPENED, false, true);
        reg.setBulkMarkOperationsSupport(DemoMessage.DEMO_MESSAGE_TYPE,
                MessageListDemo.STATUS_REPLIED, false, true);
    }
View Full Code Here

                    // Mark the message viewed
                    changeIndicator(-1);
                }

                message.reply("You replied on " + new Date());
                final ApplicationMessageFolderRegistry reg =
                        ApplicationMessageFolderRegistry.getInstance();
                final ApplicationMessageFolder folder =
                        reg.getApplicationFolder(MessageListDemo.INBOX_FOLDER_ID);
                folder.fireElementUpdated(message, message);
            }
            return context;
        }
View Full Code Here

         */
        public Object run(final Object context) {
            if (context instanceof DemoMessage) {
                final DemoMessage message = (DemoMessage) context;
                message.markRead();
                final ApplicationMessageFolderRegistry reg =
                        ApplicationMessageFolderRegistry.getInstance();
                final ApplicationMessageFolder folder =
                        reg.getApplicationFolder(MessageListDemo.INBOX_FOLDER_ID);
                folder.fireElementUpdated(message, message);
                changeIndicator(-1);
            }

            return context;
View Full Code Here

        public Object run(final Object context) {
            if (context instanceof DemoMessage) {
                // Mark the context message unread
                final DemoMessage message = (DemoMessage) context;
                message.markAsNew();
                final ApplicationMessageFolderRegistry reg =
                        ApplicationMessageFolderRegistry.getInstance();
                final ApplicationMessageFolder folder =
                        reg.getApplicationFolder(MessageListDemo.INBOX_FOLDER_ID);
                folder.fireElementUpdated(message, message);
                changeIndicator(1);
            }

            return context;
View Full Code Here

                final DemoMessage message = (DemoMessage) context;

                // Update status if message is new
                if (message.isNew()) {
                    message.markRead();
                    final ApplicationMessageFolderRegistry reg =
                            ApplicationMessageFolderRegistry.getInstance();
                    final ApplicationMessageFolder folder =
                            reg.getApplicationFolder(MessageListDemo.INBOX_FOLDER_ID);
                    folder.fireElementUpdated(message, message);
                    changeIndicator(-1);
                }

                // Show message
View Full Code Here

TOP

Related Classes of net.rim.blackberry.api.messagelist.ApplicationMessageFolderRegistry

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.