Android Open Source - SciProApp-Android Message List Adapter






From Project

Back to project page SciProApp-Android.

License

The source code is released under:

Apache License

If you think the Android project SciProApp-Android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Copyright (c) 2011 Patrick Strang./*w w  w  .  j a v a 2 s .c om*/
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and 
 * limitations under the License.
 */

package se.su.dsv.scipro.android.adapters;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Toast;
import se.su.dsv.scipro.android.R;
import se.su.dsv.scipro.android.dao.PrivateMessage;
import se.su.dsv.scipro.android.json.SciProJSON;
import se.su.dsv.scipro.android.view.MessageListItem;

import java.util.List;

public class MessageListAdapter extends BaseAdapter {
    
    private List<PrivateMessage> messages;
    private Context context;
    
    public MessageListAdapter(List<PrivateMessage> messages, Context context) {
        super();
        this.messages = messages;
        this.context = context;
    }

    public int getCount() {
        return messages.size();
    }

    public PrivateMessage getItem(int position) {
        return messages == null ? null : messages.get(position);
    }

    public long getItemId(int position) {
        return position;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
        MessageListItem mli;
        if (convertView == null) {
            mli = (MessageListItem) View.inflate(context, R.layout.list_item_message, null);
        } else {
            mli = (MessageListItem) convertView;
        }
        mli.setMessage(messages.get(position));
        return mli;
    }

    public void setMessageRead(int position) {
        final PrivateMessage message = getItem(position);
        message.read = true;
        new Thread() {
            @Override
            public void run() {
                SciProJSON.getInstance().setMessageRead(message);
            }
        }.start();
        Toast.makeText(context, "Message marked as read", Toast.LENGTH_SHORT).show();
        notifyDataSetChanged();
    }

}




Java Source Code List

se.su.dsv.scipro.android.IHeaderOnClick.java
se.su.dsv.scipro.android.Preferences.java
se.su.dsv.scipro.android.SciProApplication.java
se.su.dsv.scipro.android.activity.Authenticate.java
se.su.dsv.scipro.android.activity.MainActivity.java
se.su.dsv.scipro.android.activity.NewMessage.java
se.su.dsv.scipro.android.activity.PrivateMessageView.java
se.su.dsv.scipro.android.activity.PrivateMessages.java
se.su.dsv.scipro.android.activity.ProjectView.java
se.su.dsv.scipro.android.activity.StatusCheckIn.java
se.su.dsv.scipro.android.activity.SupervisorHome.java
se.su.dsv.scipro.android.adapters.MessageListAdapter.java
se.su.dsv.scipro.android.adapters.ProjectListAdapter.java
se.su.dsv.scipro.android.dao.FinalSeminar.java
se.su.dsv.scipro.android.dao.PrivateMessage.java
se.su.dsv.scipro.android.dao.Project.java
se.su.dsv.scipro.android.dao.User.java
se.su.dsv.scipro.android.helpers.MenuHelper.java
se.su.dsv.scipro.android.json.SciProJSON.java
se.su.dsv.scipro.android.location.LocationIntentReceiver.java
se.su.dsv.scipro.android.providers.SciProProvider.java
se.su.dsv.scipro.android.services.UpdaterService.java
se.su.dsv.scipro.android.tasks.AuthAsyncTask.java
se.su.dsv.scipro.android.tasks.GetMessagesAsyncTask.java
se.su.dsv.scipro.android.tasks.GetProjectsAsyncTask.java
se.su.dsv.scipro.android.tasks.LoginAsyncTask.java
se.su.dsv.scipro.android.tasks.LoginResponder.java
se.su.dsv.scipro.android.tasks.LoginResult.java
se.su.dsv.scipro.android.tasks.SendMessageAsyncTask.java
se.su.dsv.scipro.android.tasks.SetMessageReadAsyncTask.java
se.su.dsv.scipro.android.tasks.SetStatusAsyncTask.java
se.su.dsv.scipro.android.utils.Base64Coder.java
se.su.dsv.scipro.android.utils.DaoUtils.java
se.su.dsv.scipro.android.utils.SciProUtils.java
se.su.dsv.scipro.android.utils.StringUtils.java
se.su.dsv.scipro.android.view.MessageListItem.java
se.su.dsv.scipro.android.view.ProjectListItem.java