Compare commits

..

12 Commits

28 changed files with 2442 additions and 2393 deletions

View File

@ -2,6 +2,7 @@ package com.safemobile.activities;
import java.util.ArrayList;
import com.google.android.gms.maps.GoogleMap;
import com.safemobile.lib.Vehicle;
import android.app.Activity;
@ -23,7 +24,7 @@ public abstract class AbstractLiveActivity extends AppCompatActivity {
public abstract void pollReceived(int position, double lat, double lng); // --> UpdatePoll
public abstract void vehicleStatusReceived(long imei, int opCode, int status); // --> UpdateOptions
public abstract void emergencyAlarmReceived(int position, double lat, double lng); // --> UpdateEmergencyAlarm
public abstract GoogleMap getMap(); // --> UpdateEmergencyAlarm
/** Misc */
public AbstractSDParentActivity getParentTab() {

View File

@ -6,7 +6,6 @@ import java.util.Calendar;
import java.util.Hashtable;
import android.app.Activity;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -19,23 +18,21 @@ import com.safemobile.lib.Msg;
import com.safemobile.lib.R;
import com.safemobile.lib.SM;
public class ConversationGridViewAdapter extends BaseAdapter
{
private ArrayList<Msg> listMessages;
private Activity activity;
//public String time;
private ArrayList<Boolean> dispatcher_positions = new ArrayList<Boolean>();
private ArrayList<Boolean> ackPositions = new ArrayList<Boolean>();
private Hashtable<Integer, View> hash = new Hashtable<Integer, View>();
public ConversationGridViewAdapter(Activity activity, ArrayList<Msg> listMessages, Context context, long sc_id, int unit_type, ArrayList<Boolean> dispatcher_positions, ArrayList<Boolean> ackPositions) {
public class ConversationGridViewAdapter extends BaseAdapter {
private final ArrayList<Msg> listMessages;
private final Activity activity;
private final ArrayList<Boolean> dispatcherPositions;
private final ArrayList<Boolean> ackPositions;
private final Hashtable<Integer, View> hash = new Hashtable<>();
public ConversationGridViewAdapter(Activity activity, ArrayList<Msg> listMessages, ArrayList<Boolean> dispatcherPositions, ArrayList<Boolean> ackPositions) {
this.activity = activity;
this.listMessages = listMessages;
this.dispatcher_positions = dispatcher_positions;
this.ackPositions = ackPositions;
this.dispatcherPositions = dispatcherPositions;
this.ackPositions = ackPositions;
}
@Override
public int getCount() {
return listMessages.size();
@ -51,149 +48,230 @@ public class ConversationGridViewAdapter extends BaseAdapter
return 0;
}
public static class ViewHolder
{
public ImageView imgViewContact;
public TextView txtViewMsg;
public TextView txtViewDateTime;
public ImageView imgViewReceivedContact;
public TextView txtViewReceivedMsg;
public TextView txtViewReceivedDateTime;
public ImageView imageAck;
public TextView textViewNotACK;
public LinearLayout layoutSend;
public LinearLayout layoutReceived;
public static class ViewHolder {
private ImageView imgViewContact;
private TextView txtViewMsg;
private TextView txtViewDateTime;
private ImageView imgViewReceivedContact;
private TextView txtViewReceivedMsg;
private TextView txtViewReceivedDateTime;
private ImageView imageAck;
private TextView textViewNotACK;
private LinearLayout layoutSend;
private LinearLayout layoutReceived;
public ImageView getImgViewContact() {
return imgViewContact;
}
public void setImgViewContact(ImageView imgViewContact) {
this.imgViewContact = imgViewContact;
}
public TextView getTxtViewMsg() {
return txtViewMsg;
}
public void setTxtViewMsg(TextView txtViewMsg) {
this.txtViewMsg = txtViewMsg;
}
public TextView getTxtViewDateTime() {
return txtViewDateTime;
}
public void setTxtViewDateTime(TextView txtViewDateTime) {
this.txtViewDateTime = txtViewDateTime;
}
public ImageView getImgViewReceivedContact() {
return imgViewReceivedContact;
}
public void setImgViewReceivedContact(ImageView imgViewReceivedContact) {
this.imgViewReceivedContact = imgViewReceivedContact;
}
public TextView getTxtViewReceivedMsg() {
return txtViewReceivedMsg;
}
public void setTxtViewReceivedMsg(TextView txtViewReceivedMsg) {
this.txtViewReceivedMsg = txtViewReceivedMsg;
}
public TextView getTxtViewReceivedDateTime() {
return txtViewReceivedDateTime;
}
public void setTxtViewReceivedDateTime(TextView txtViewReceivedDateTime) {
this.txtViewReceivedDateTime = txtViewReceivedDateTime;
}
public ImageView getImageAck() {
return imageAck;
}
public void setImageAck(ImageView imageAck) {
this.imageAck = imageAck;
}
public TextView getTextViewNotACK() {
return textViewNotACK;
}
public void setTextViewNotACK(TextView textViewNotACK) {
this.textViewNotACK = textViewNotACK;
}
public LinearLayout getLayoutSend() {
return layoutSend;
}
public void setLayoutSend(LinearLayout layoutSend) {
this.layoutSend = layoutSend;
}
public LinearLayout getLayoutReceived() {
return layoutReceived;
}
public void setLayoutReceived(LinearLayout layoutReceived) {
this.layoutReceived = layoutReceived;
}
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder view;
LayoutInflater inflator = activity.getLayoutInflater();
if(convertView==null)
{
LayoutInflater inflater = activity.getLayoutInflater();
if (convertView == null) {
view = new ViewHolder();
convertView = inflator.inflate(R.layout.row_conversation, null);
view.imgViewContact = (ImageView) convertView.findViewById(R.id.imageViewSenderIco);
view.txtViewMsg = (TextView) convertView.findViewById(R.id.textViewSendMsg);
view.txtViewDateTime = (TextView) convertView.findViewById(R.id.textViewSendDate);
view.imgViewReceivedContact = (ImageView) convertView.findViewById(R.id.imageViewReceivedIco);
view.txtViewReceivedMsg = (TextView) convertView.findViewById(R.id.textViewReceivedMsg);
view.txtViewReceivedDateTime = (TextView) convertView.findViewById(R.id.textViewReceivedDate);
view.layoutSend = (LinearLayout) convertView.findViewById(R.id.layoutSend);
view.layoutReceived = (LinearLayout) convertView.findViewById(R.id.layoutReceived);
view.textViewNotACK = (TextView) convertView.findViewById(R.id.textViewNotACKSendMsg);
view.imageAck = (ImageView) convertView.findViewById(R.id.imageAck);
convertView = inflater.inflate(R.layout.row_conversation, null);
view.setImgViewContact(convertView.findViewById(R.id.imageViewSenderIco));
view.setTxtViewMsg(convertView.findViewById(R.id.textViewSendMsg));
view.setTxtViewDateTime(convertView.findViewById(R.id.textViewSendDate));
view.setImgViewReceivedContact(convertView.findViewById(R.id.imageViewReceivedIco));
view.setTxtViewReceivedMsg(convertView.findViewById(R.id.textViewReceivedMsg));
view.setTxtViewReceivedDateTime(convertView.findViewById(R.id.textViewReceivedDate));
view.setLayoutSend(convertView.findViewById(R.id.layoutSend));
view.setLayoutReceived(convertView.findViewById(R.id.layoutReceived));
view.setTextViewNotACK(convertView.findViewById(R.id.textViewNotACK));
view.setImageAck(convertView.findViewById(R.id.imageAck));
convertView.setTag(view);
}
else
{
} else {
view = (ViewHolder) convertView.getTag();
}
try
{
try {
hash.put(position, convertView);
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm MMM-dd");
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY,0);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
if(listMessages.get(position).received.after(calendar.getTime()))
if (listMessages.get(position).received.after(calendar.getTime()))
sdf = new SimpleDateFormat("HH:mm:ss");
else
sdf = new SimpleDateFormat("HH:mm MMM-dd");
//view.imgViewContact.setImageResource(getIcon(listMessages.get(position).from.user_type));
view.imgViewContact.setImageResource(R.drawable.peoplegreen_large);
view.txtViewMsg.setText(listMessages.get(position).message);
view.txtViewDateTime.setText(sdf.format(listMessages.get(position).received));
//view.imgViewReceivedContact.setImageResource(getIcon(listMessages.get(position).from.user_type));
view.imgViewReceivedContact.setImageResource(listMessages.get(position).from.getLargeIcon());
view.txtViewReceivedMsg.setText(listMessages.get(position).message);
view.txtViewReceivedDateTime.setText(sdf.format(listMessages.get(position).received));
if(ackPositions.size() > 0)
switch(ackPositions.get(position) ? 1: 0) {
case 0:
// show not ack
view.textViewNotACK.setVisibility(View.VISIBLE);
view.imageAck.setVisibility(View.VISIBLE);
break;
case 1:
// show not ack
view.textViewNotACK.setVisibility(View.INVISIBLE);
view.imageAck.setVisibility(View.INVISIBLE);
view.getImgViewContact().setImageResource(R.drawable.peoplegreen_large);
view.getTxtViewMsg().setText(listMessages.get(position).message);
view.getTxtViewDateTime().setText(sdf.format(listMessages.get(position).received));
view.getImgViewReceivedContact().setImageResource(listMessages.get(position).from.getLargeIcon());
view.getTxtViewReceivedMsg().setText(listMessages.get(position).message);
view.getTxtViewReceivedDateTime().setText(sdf.format(listMessages.get(position).received));
if (!ackPositions.isEmpty())
switch (Boolean.TRUE.equals(ackPositions.get(position)) ? 1 : 0) {
case 0:
// show not ack
view.getTextViewNotACK().setVisibility(View.VISIBLE);
view.getImageAck().setVisibility(View.VISIBLE);
break;
case 1:
// show not ack
view.getTextViewNotACK().setVisibility(View.INVISIBLE);
view.getImageAck().setVisibility(View.INVISIBLE);
break;
default:
throw new IllegalStateException("Unexpected value: " + (Boolean.TRUE.equals(ackPositions.get(position)) ? 1 : 0));
}
switch(dispatcher_positions.get(position) ? 1 : 0) {
case 1:
view.layoutReceived.setVisibility(View.GONE);
view.layoutSend.setVisibility(View.VISIBLE);
break;
case 0:
view.layoutReceived.setVisibility(View.VISIBLE);
view.layoutSend.setVisibility(View.GONE);
break;
}
}
catch(Exception ex)
{
switch (Boolean.TRUE.equals(dispatcherPositions.get(position)) ? 1 : 0) {
case 1:
view.getLayoutReceived().setVisibility(View.GONE);
view.getLayoutSend().setVisibility(View.VISIBLE);
break;
case 0:
view.getLayoutReceived().setVisibility(View.VISIBLE);
view.getLayoutSend().setVisibility(View.GONE);
break;
default:
throw new IllegalStateException("Unexpected value: " + (Boolean.TRUE.equals(dispatcherPositions.get(position)) ? 1 : 0));
}
} catch (Exception ex) {
SM.Exception(ex.toString());
}
return convertView;
}
public void setACK(String seqID)
{
int position = -1, i=0;
for(Msg msg: listMessages)
{
if(msg.seqID.equals(seqID))
public void setACK(String seqID) {
int position = -1;
int i = 0;
for (Msg msg : listMessages) {
if (msg.seqID.equals(seqID))
position = i;
i++;
}
if(position > -1 && position < ackPositions.size()) {
if (position > -1 && position < ackPositions.size()) {
ackPositions.remove(position);
ackPositions.add(position, true);
}
}
public void changeView(String seqID)
{
int position = -1, i=0;
for(Msg msg: listMessages)
{
if(msg.seqID.equals(seqID))
public void changeView(String seqID) {
int position = -1;
int i = 0;
for (Msg msg : listMessages) {
if (msg.seqID.equals(seqID))
position = i;
i++;
}
if(position != -1 && hash.size() > position)
{
if (position != -1 && hash.size() > position) {
SM.Debug("POSITON : " + position);
View con = hash.get(position);
ViewHolder view = (ViewHolder) con.getTag();
switch(ackPositions.get(position) ? 1 : 0)
{
ViewHolder view = null;
if (con != null) {
view = (ViewHolder) con.getTag();
}
switch (Boolean.TRUE.equals(ackPositions.get(position)) ? 1 : 0) {
case 1:
view.imageAck.setVisibility(View.INVISIBLE);
view.textViewNotACK.setVisibility(View.INVISIBLE);
if (view != null) {
view.getImageAck().setVisibility(View.INVISIBLE);
view.getTextViewNotACK().setVisibility(View.INVISIBLE);
}
break;
case 0:
view.imageAck.setVisibility(View.VISIBLE);
view.textViewNotACK.setVisibility(View.VISIBLE);
if (view != null) {
view.getImageAck().setVisibility(View.VISIBLE);
view.getTextViewNotACK().setVisibility(View.VISIBLE);
}
break;
default:
throw new IllegalStateException("Unexpected value: " + (Boolean.TRUE.equals(ackPositions.get(position)) ? 1 : 0));
}
}
}

View File

@ -5,7 +5,6 @@ import java.util.ArrayList;
import java.util.Calendar;
import android.app.Activity;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -18,20 +17,16 @@ import com.safemobile.lib.Msg;
import com.safemobile.lib.R;
import com.safemobile.lib.SM;
public class MessagesGridViewAdapter extends BaseAdapter
{
private ArrayList<Msg> listMessages;
private Activity activity;
//public String time;
//private int[] colors = new int[] { Color.parseColor("#FFFFFF"), Color.parseColor("#D2E4FC") };
public MessagesGridViewAdapter(Activity activity, ArrayList<Msg> listMessages, Context context) {
public class MessagesGridViewAdapter extends BaseAdapter {
private final ArrayList<Msg> listMessages;
private final Activity activity;
public MessagesGridViewAdapter(Activity activity, ArrayList<Msg> listMessages) {
super();
this.activity = activity;
this.listMessages = listMessages;
}
@Override
public int getCount() {
return listMessages.size();
@ -47,86 +42,58 @@ public class MessagesGridViewAdapter extends BaseAdapter
return 0;
}
public static class ViewHolder
{
public static class ViewHolder {
public ImageView imgViewContact;
public TextView txtViewContact;
public TextView txtViewDateTime;
public TextView txtViewLastMsg;
public LinearLayout layoutMessage;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder view;
LayoutInflater inflator = activity.getLayoutInflater();
if(convertView==null)
{
if (convertView == null) {
view = new ViewHolder();
convertView = inflator.inflate(R.layout.row_message, null);
view.imgViewContact = (ImageView) convertView.findViewById(R.id.imageViewContact);
view.txtViewContact = (TextView) convertView.findViewById(R.id.textViewContact);
view.txtViewDateTime = (TextView) convertView.findViewById(R.id.textViewLastDate);
view.txtViewLastMsg = (TextView) convertView.findViewById(R.id.textViewLastMsg);
view.layoutMessage = (LinearLayout) convertView.findViewById(R.id.layoutMessage);
view.imgViewContact = convertView.findViewById(R.id.imageViewContact);
view.txtViewContact = convertView.findViewById(R.id.textViewContact);
view.txtViewDateTime = convertView.findViewById(R.id.textViewLastDate);
view.txtViewLastMsg = convertView.findViewById(R.id.textViewLastMsg);
view.layoutMessage = convertView.findViewById(R.id.layoutMessage);
convertView.setTag(view);
}
else
{
} else {
view = (ViewHolder) convertView.getTag();
}
try
{
try {
view.imgViewContact.setImageResource(listMessages.get(position).from.getLargeIcon());
//view.imgViewContact.setImageResource(R.drawable.peopleblue);
view.txtViewContact.setText(listMessages.get(position).from.name+ " :");
if(listMessages.get(position).message.length() > 25)
view.txtViewLastMsg.setText(listMessages.get(position).message.substring(0, 25) + "...");
view.txtViewContact.setText(String.format("%s :", listMessages.get(position).from.name));
if (listMessages.get(position).message.length() > 25)
view.txtViewLastMsg.setText(String.format("%s...", listMessages.get(position).message.substring(0, 25)));
else
view.txtViewLastMsg.setText(listMessages.get(position).message);
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY,0);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
if(listMessages.get(position).received.after(calendar.getTime()))
if (listMessages.get(position).received.after(calendar.getTime()))
sdf = new SimpleDateFormat("HH:mm:ss");
else
sdf = new SimpleDateFormat("MMM-dd HH:mm");
view.txtViewDateTime.setText(sdf.format(listMessages.get(position).received));
}
catch(Exception ex)
{
} catch (Exception ex) {
SM.Exception(ex.toString());
}
return convertView;
}
public int getIcon(int user_type, String username)
{
// if request was send by MessagesActivity -> Spinner
if(user_type == -1)
{
// get unit_type for selected username
for (Msg mes: listMessages)
{
// if user is selected
if(mes.from.name.equals(username))
{
user_type = (int) mes.from.driver_id; // save user_type
return mes.from.getLargeIcon();
}
}
}
return 0;
}
}

View File

@ -1,215 +0,0 @@
package com.safemobile.adapters;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.Hashtable;
import java.util.Locale;
import android.app.Activity;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.safemobile.lib.R;
import com.safemobile.lib.SM;
import com.safemobile.libpad.PadTextMessage;
public class PadConversationGridViewAdapter extends BaseAdapter
{
private ArrayList<PadTextMessage> listMessages;
private Activity activity;
//public String time;
private ArrayList<Boolean> outgoingPositions = new ArrayList<Boolean>();
private ArrayList<Boolean> ackPositions = new ArrayList<Boolean>();
private Hashtable<Integer, View> hash = new Hashtable<Integer, View>();
public PadConversationGridViewAdapter(Activity activity, ArrayList<PadTextMessage> listMessages, Context context, ArrayList<Boolean> outgoingPositions, ArrayList<Boolean> ackPositions) {
this.activity = activity;
this.listMessages = listMessages;
this.outgoingPositions = outgoingPositions;
this.ackPositions = ackPositions;
}
@Override
public int getCount() {
return listMessages.size();
}
@Override
public PadTextMessage getItem(int position) {
return listMessages.get(position);
}
@Override
public long getItemId(int position) {
return 0;
}
/** return the list of messages in the adapter
* @return an ArrayList of PadTextMessages
*/
public ArrayList<PadTextMessage> getMessages() {
return listMessages;
}
public static class ViewHolder
{
public ImageView imgViewContact;
public TextView txtViewMsg;
public TextView txtViewDateTime;
public ImageView imgViewReceivedContact;
public TextView txtViewReceivedMsg;
public TextView txtViewReceivedDateTime;
public ImageView imageAck;
public TextView textViewNotACK;
public LinearLayout layoutSend;
public LinearLayout layoutReceived;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder view;
LayoutInflater inflator = activity.getLayoutInflater();
if(convertView==null)
{
view = new ViewHolder();
convertView = inflator.inflate(R.layout.row_conversation, null);
view.imgViewContact = (ImageView) convertView.findViewById(R.id.imageViewSenderIco);
view.txtViewMsg = (TextView) convertView.findViewById(R.id.textViewSendMsg);
view.txtViewDateTime = (TextView) convertView.findViewById(R.id.textViewSendDate);
view.imgViewReceivedContact = (ImageView) convertView.findViewById(R.id.imageViewReceivedIco);
view.txtViewReceivedMsg = (TextView) convertView.findViewById(R.id.textViewReceivedMsg);
view.txtViewReceivedDateTime = (TextView) convertView.findViewById(R.id.textViewReceivedDate);
view.layoutSend = (LinearLayout) convertView.findViewById(R.id.layoutSend);
view.layoutReceived = (LinearLayout) convertView.findViewById(R.id.layoutReceived);
view.textViewNotACK = (TextView) convertView.findViewById(R.id.textViewNotACKSendMsg);
view.imageAck = (ImageView) convertView.findViewById(R.id.imageAck);
convertView.setTag(view);
}
else
{
view = (ViewHolder) convertView.getTag();
}
try
{
hash.put(position, convertView);
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm MMM-dd", Locale.getDefault());
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY,0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
Date date = new Date(listMessages.get(position).timeGMT * 1000);
if(date.after(calendar.getTime()))
sdf = new SimpleDateFormat("HH:mm:ss", Locale.getDefault());
else
sdf = new SimpleDateFormat("HH:mm MMM-dd", Locale.getDefault());
// set gmt time
//sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
//view.imgViewContact.setImageResource(getIcon(listMessages.get(position).from.user_type));
view.imgViewContact.setImageResource(R.drawable.peoplegreen_large);
view.txtViewMsg.setText(listMessages.get(position).message);
view.txtViewDateTime.setText(sdf.format(date));
//view.imgViewReceivedContact.setImageResource(getIcon(listMessages.get(position).from.user_type));
view.imgViewReceivedContact.setImageResource(R.drawable.peopleblue_large);
view.txtViewReceivedMsg.setText(listMessages.get(position).message);
view.txtViewReceivedDateTime.setText(sdf.format(date));
if(ackPositions.size() > 0)
switch(ackPositions.get(position) ? 1: 0) {
case 0:
// show not ack
view.textViewNotACK.setVisibility(View.VISIBLE);
view.imageAck.setVisibility(View.VISIBLE);
break;
case 1:
// show not ack
view.textViewNotACK.setVisibility(View.INVISIBLE);
view.imageAck.setVisibility(View.INVISIBLE);
}
switch(outgoingPositions.get(position) ? 1 : 0) {
case 1:
view.layoutReceived.setVisibility(View.GONE);
view.layoutSend.setVisibility(View.VISIBLE);
break;
case 0:
view.layoutReceived.setVisibility(View.VISIBLE);
view.layoutSend.setVisibility(View.GONE);
break;
}
}
catch(Exception ex)
{
SM.Exception(ex.toString());
}
return convertView;
}
/*
public void setACK(String seqID)
{
int position = -1, i=0;
for(Msg msg: listMessages)
{
if(msg.seqID.equals(seqID))
position = i;
i++;
}
ackPositions.remove(position);
ackPositions.add(position, true);
}
public void changeView(String seqID)
{
int position = -1, i=0;
for(Msg msg: listMessages)
{
if(msg.seqID.equals(seqID))
position = i;
i++;
}
if(position != -1 && hash.size() > position)
{
SM.Debug("POSITON : " + position);
View con = hash.get(position);
ViewHolder view = (ViewHolder) con.getTag();
switch(ackPositions.get(position) ? 1 : 0)
{
case 1:
view.imageAck.setVisibility(View.INVISIBLE);
view.textViewNotACK.setVisibility(View.INVISIBLE);
break;
case 0:
view.imageAck.setVisibility(View.VISIBLE);
view.textViewNotACK.setVisibility(View.VISIBLE);
break;
}
}
}
*/
}

View File

@ -21,36 +21,28 @@ public class SuperVehicle extends Vehicle{
// TODO Auto-generated constructor stub
}
public void SetDataFromLastPos(Double _lat,Double _lng,long _time,int _speed,String _Address,Boolean _isON)
{
try
{
public void SetDataFromLastPos(Double _lat,Double _lng,long _time,int _speed,String _Address,Boolean _isON) {
try {
lat = _lat;
lng = _lng;
timeGMT = _time;
speed = _speed;
Address = _Address;
isON = _isON;
}
catch (Exception ex)
{
Log.d("Erorr", "Contert Error:"+ex.toString());
} catch (Exception ex) {
Log.d("Erorr", "Contert Error: "+ ex);
}
}
public void SetNewPosition(Double _lat,Double _lng,long _time,int _speed)
{
try
{
public void SetNewPosition(Double _lat,Double _lng,long _time,int _speed) {
try {
lat = _lat;
lng = _lng;
timeGMT = _time;
speed = _speed;
isON = true;
}
catch (Exception ex)
{
Log.d("Erorr", "Contert Error:"+ex.toString());
} catch (Exception ex) {
Log.d("Erorr", "Contert Error: " + ex);
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@ -0,0 +1,140 @@
<?xml version="1.0" encoding="utf-8"?><!--
Copyright (C) 2012 The Android Open Source Project
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.
-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
xmlns:tools="http://schemas.android.com/tools"
android:background="@drawable/custom_info_bubble"
android:paddingLeft="7dp"
android:paddingRight="7dp"
android:paddingTop="9dp"
android:orientation="vertical">
<LinearLayout
android:id="@+id/containerTop"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/l_bg_gps"
android:orientation="vertical">
<TextView
android:id="@+id/tvUnitName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:ellipsize="end"
android:fontFamily="sans-serif-smallcaps"
android:maxLines="1"
android:paddingTop="5dp"
tools:text="Linux 9910"
android:textColor="#FFFFFF"
android:textSize="18sp"
android:textStyle="bold" />
<TextView
android:id="@+id/tvGPSLocation"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:ellipsize="end"
android:fontFamily="sans-serif-smallcaps"
android:maxLines="1"
tools:text="[44.41857,26.09585]"
android:textColor="#FFFFFF"
android:textSize="10sp"
tools:ignore="SmallSp" />
</LinearLayout>
<RelativeLayout
android:layout_width="225dp"
android:layout_height="wrap_content"
android:padding="10dp"
android:id="@+id/rlMapInfoBubbleInfo">
<ImageView
android:id="@+id/time"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginRight="5dp"
android:adjustViewBounds="true"
android:src="@drawable/l_time"
android:layout_marginEnd="5dp" />
<TextView
android:id="@+id/tvTimeAgo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/time"
android:layout_alignTop="@+id/time"
android:layout_gravity="center_horizontal"
android:layout_toEndOf="@+id/time"
android:layout_toRightOf="@+id/time"
android:ellipsize="end"
android:gravity="center_vertical"
android:maxLines="1"
tools:text="a year ago [01:05:01]"
android:textColor="#ff000000"
android:textSize="10sp" />
<ImageView
android:id="@+id/speed"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_below="@+id/time"
android:layout_marginRight="5dp"
android:layout_marginTop="5dp"
android:adjustViewBounds="true"
android:src="@drawable/l_speed" />
<TextView
android:id="@+id/tvSpeed"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/speed"
android:layout_alignTop="@+id/speed"
android:layout_gravity="center_horizontal"
android:layout_toRightOf="@+id/speed"
android:ellipsize="end"
android:gravity="center_vertical"
android:maxLines="1"
tools:text="24 kph"
android:textColor="#ff000000"
android:textSize="10sp" />
<ImageView
android:id="@+id/streetView"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_below="@+id/speed"
android:layout_marginTop="5dp"
android:layout_marginRight="5dp"
android:adjustViewBounds="true"
android:src="@drawable/l_street"
android:visibility="visible" />
<TextView
android:id="@+id/tvStreetView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/streetView"
android:layout_gravity="center_horizontal"
android:layout_toRightOf="@+id/streetView"
android:ellipsize="end"
android:gravity="center_vertical"
android:maxLines="5"
tools:text="3601 E Algonquin Rd., Suite 800 Rolling Meadows, IL 60008"
android:textColor="#ff000000"
android:textSize="10sp"
android:visibility="visible" />
</RelativeLayout>
</LinearLayout>

View File

@ -1,13 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="#ffffff"
android:paddingTop="5dp"
android:paddingBottom="5dp">
<LinearLayout
android:id="@+id/layoutSend"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="#ffffff"
android:paddingTop="5dp"
android:paddingBottom="5dp">
<LinearLayout
android:id="@+id/layoutSend"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:paddingRight="13dp"
@ -19,147 +20,151 @@
android:background="#ffffff"
android:layout_marginLeft="5dp"
android:layout_weight="0">
<ImageView
android:id="@+id/imageViewSenderIco"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ambulance_large"
android:adjustViewBounds="true"
android:scaleType="center"
android:background="#ffffff"
android:layout_margin="3dp"
android:layout_gravity="top"
android:layout_weight="0" />
<ImageView
android:id="@+id/imageViewSenderIco"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ambulance_large"
android:adjustViewBounds="true"
android:scaleType="center"
android:background="#ffffff"
android:layout_margin="3dp"
android:layout_gravity="top"
android:layout_weight="0" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:padding="5dp"
android:layout_gravity="center_vertical"
android:background="@layout/row_conversation_style_send"
android:orientation="vertical"
android:layout_weight="1" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:padding="5dp"
android:layout_gravity="center_vertical"
android:background="@layout/row_conversation_style_send"
android:orientation="vertical"
android:layout_weight="1" >
<TextView
android:id="@+id/textViewSendMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Medium Text"
android:textColor="#000000"
android:textSize="16dp" />
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/imageAckSendMsg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="center"
android:paddingTop="2dp"
android:src="@drawable/exclamation_small"
android:layout_weight="0"
android:visibility="invisible"/>
<TextView
android:id="@+id/textViewNotACKSendMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/notAck"
android:textColor="#000000"
android:textSize="13dp"
android:layout_toRightOf="@+id/imageAck"
android:visibility="invisible" />
<TextView
android:id="@+id/textViewSendDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:text="Small Text"
android:textColor="#4c4c4c"
android:textSize="13dp"
android:layout_alignParentRight="true"/>
</RelativeLayout>
</LinearLayout>
<TextView
android:id="@+id/textViewSendMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Medium Text"
android:textColor="#000000"
android:textSize="16dp" />
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/imageAck"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="center"
android:paddingTop="2dp"
android:src="@drawable/exclamation_small"
android:layout_weight="0"
android:visibility="invisible"
tools:ignore="DuplicateIds" />
<TextView
android:id="@+id/textViewNotACK"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/notAck"
android:textColor="#000000"
android:textSize="13dp"
android:layout_toRightOf="@+id/imageAck"
android:visibility="invisible"
tools:ignore="DuplicateIds" />
<TextView
android:id="@+id/textViewSendDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:text="Small Text"
android:textColor="#4c4c4c"
android:textSize="13dp"
android:layout_alignParentRight="true"/>
</RelativeLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:paddingLeft="13dp"
android:layout_weight="0"
android:orientation="horizontal"
android:id="@+id/layoutReceived">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:padding="5dp"
android:layout_gravity="center_vertical"
android:background="@layout/row_conversation_style_rec"
android:orientation="vertical"
android:layout_weight="1" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:padding="5dp"
android:layout_gravity="center_vertical"
android:background="@layout/row_conversation_style_rec"
android:orientation="vertical"
android:layout_weight="1" >
<TextView
android:id="@+id/textViewReceivedMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Medium Text"
android:textColor="#000000"
android:textSize="16dp" />
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/imageAckReceiveMsg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="center"
android:paddingTop="2dp"
android:src="@drawable/exclamation_small"
android:layout_weight="0"
android:visibility="invisible"/>
<TextView
android:id="@+id/textViewNotACKReceiveMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/notAck"
android:textColor="#000000"
android:textSize="13dp"
android:layout_toRightOf="@+id/imageAck"
android:visibility="invisible"/>
<TextView
android:id="@+id/textViewReceivedDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:text="Small Text"
android:textColor="#4c4c4c"
android:textSize="13dp"
android:layout_alignParentRight="true"/>
</RelativeLayout>
</LinearLayout>
<LinearLayout
<TextView
android:id="@+id/textViewReceivedMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Medium Text"
android:textColor="#000000"
android:textSize="16dp" />
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/imageAck"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="center"
android:paddingTop="2dp"
android:src="@drawable/exclamation_small"
android:layout_weight="0"
android:visibility="invisible"
tools:ignore="DuplicateIds" />
<TextView
android:id="@+id/textViewNotACK"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/notAck"
android:textColor="#000000"
android:textSize="13dp"
android:layout_toRightOf="@+id/imageAck"
android:visibility="invisible"
tools:ignore="DuplicateIds" />
<TextView
android:id="@+id/textViewReceivedDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:text="Small Text"
android:textColor="#4c4c4c"
android:textSize="13dp"
android:layout_alignParentRight="true"/>
</RelativeLayout>
</LinearLayout>
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:background="#ffffff"
android:layout_marginRight="5dp"
android:layout_weight="0">
<ImageView
android:id="@+id/imageViewReceivedIco"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="center"
android:src="@drawable/error"
android:background="#ffffff"
android:layout_margin="3dp"
android:layout_weight="0"
android:layout_gravity="top"
/>
</LinearLayout>
<ImageView
android:id="@+id/imageViewReceivedIco"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="center"
android:src="@drawable/error"
android:background="#ffffff"
android:layout_margin="3dp"
android:layout_weight="0"
android:layout_gravity="top"
/>
</LinearLayout>
</LinearLayout>
</LinearLayout>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="white">#FFFFFF</color>
<color name="black">#000000</color>
</resources>

View File

@ -0,0 +1,93 @@
package com.safemobile.dispatch;
import android.content.Context;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.model.Marker;
import com.safemobile.lib.SuperVehicle;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Hashtable;
import java.util.Locale;
public class GoogleMapsInfoBubble implements GoogleMap.InfoWindowAdapter {
private final String TAG = GoogleMapsInfoBubble.class.getName();
private final View mWindow;
private final Hashtable<Long, SuperVehicle> superVehHash;
private final Context context;
public GoogleMapsInfoBubble(LayoutInflater layoutInflater, Context context, Hashtable<Long, SuperVehicle> vehicles) {
this.context = context;
this.superVehHash = vehicles;
mWindow = layoutInflater.inflate(R.layout.map_marker_info_bubble, null);
}
@Override
public View getInfoWindow(@NonNull Marker marker) {
render(marker, mWindow);
return mWindow;
}
@Override
public View getInfoContents(@NonNull Marker marker) {
render(marker, mWindow);
return mWindow;
}
private void render(Marker marker, View view) {
long key = 0;
try {
key = Long.parseLong(marker.getTitle());
} catch (Exception ex) {
Log.v(TAG, "Unable to parse Google Maps Info Bubble title");
}
SuperVehicle vehicle = superVehHash.get(key);
RelativeLayout rlMapInfoBubbleInfo = view.findViewById(R.id.rlMapInfoBubbleInfo);
TextView tvUnitName = view.findViewById(R.id.tvUnitName);
TextView tvGPSLocation = view.findViewById(R.id.tvGPSLocation);
TextView tvTimeAgo = view.findViewById(R.id.tvTimeAgo);
TextView tvSpeed = view.findViewById(R.id.tvSpeed);
TextView tvStreetView = view.findViewById(R.id.tvStreetView);
ImageView streetView = view.findViewById(R.id.streetView);
rlMapInfoBubbleInfo.setVisibility(View.VISIBLE);
boolean isMilitaryTime = false;
Date positionTime = new Date(vehicle.timeGMT);
String timeFormat = isMilitaryTime
? "HH:mm:ss dd.MMM.yyyy"
: "hh:mm:ss a dd.MMM.yyy";
DateFormat format = new SimpleDateFormat(timeFormat, Locale.ENGLISH);
tvTimeAgo.setText(format.format(positionTime));
tvSpeed.setText(String.format(context.getResources().getString(R.string.speedMph), vehicle.speed));
String address = vehicle.Address != null ? vehicle.Address : "";
tvStreetView.setText(address);
streetView.setVisibility(address.length() > 0 ? View.VISIBLE : View.GONE);
tvStreetView.setVisibility(address.length() > 0 ? View.VISIBLE : View.GONE);
tvUnitName.setText(vehicle.name);
tvGPSLocation.setText("[" + String.format("%.4f", vehicle.lat)
+ "," + String.format("%.4f",vehicle.lng) + "]");
}
}

View File

@ -3,18 +3,145 @@ package com.safemobile.dispatch;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.Spinner;
import android.widget.TextView;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.SupportMapFragment;
import com.safemobile.lib.AppParams;
import com.safemobile.lib.SM;
import com.safemobile.lib.Vehicle;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;
public class HistoryActivity extends AppCompatActivity {
public Bundle savedInstanceState;
private TabLayoutActivity parentTab;
private GoogleMap googleMap;
private Spinner spinnerVehicle;
private ImageView changeMapType, checkTraffic, slideLayoutImage;
private LinearLayout layoutTraffic, slidelayout, layoutVehicles;
private ArrayList<Vehicle> allVehicle = new ArrayList<>();
private ArrayList<String> allVehicleNames = new ArrayList<>();
private ArrayAdapter<String> adapter;
private boolean showVehicle = true;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.savedInstanceState = savedInstanceState;
setContentView(R.layout.tabhistory);
parentTab = (TabLayoutActivity) getParent();
parentTab.historyActivity = this;
Locale locale = new Locale(AppParams.LANGUAGETMP);
Locale.setDefault(locale);
googleMap = parentTab.liveActivity.getMap();
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
spinnerVehicle = findViewById(R.id.spinnerVehicle);
getVehicles();
adapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, allVehicleNames);
adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
spinnerVehicle.setAdapter(adapter);
spinnerVehicle.setSelection(0);
changeMapType();
changeTraffic();
slidelayout = findViewById(R.id.slidelayout);
slideLayoutImage = findViewById(R.id.slideLayoutImage);
layoutVehicles = findViewById(R.id.layoutBig);
// slidelayout.setOnTouchListener((v, event) -> {
// if (showVehicle) {
// layoutVehicles.setVisibility(View.GONE);
// slideLayoutImage.setImageResource(R.drawable.arrow_right);
// showVehicle = false;
// } else {
// layoutVehicles.setVisibility(View.VISIBLE);
// slideLayoutImage.setImageResource(R.drawable.arrow_left);
// showVehicle = true;
// }
// return false;
// });
setDate();
}
private void setDate() {
Calendar calendar = Calendar.getInstance();
Date endDate = calendar.getTime();
calendar.add(Calendar.DATE, -1);
Date startDate = calendar.getTime();
LinearLayout layoutStartPicker = findViewById(R.id.layoutStartPicker);
TextView textViewDate = findViewById(R.id.textViewStartDate);
textViewDate.setText(new SimpleDateFormat("HH:mm, dd.MM.yyyy").format(startDate));
// layoutStartPicker.setOnTouchListener((v, event) -> {
// showDialog(layoutStartPicker);
// return false;
// });
// layoutEndPicker.setOnTouchListener(new OnTouchListener() {
// @Override
// public boolean onTouch(View v, MotionEvent event) {
// showDialog(layoutEndPicker);
// return false;
// }
// });
}
private void changeTraffic() {
ImageView changeTrafficImageView = findViewById(R.id.changeTraffic);
changeTrafficImageView.setOnClickListener(v -> {
if (googleMap.isTrafficEnabled()) {
changeTrafficImageView.setImageResource(R.drawable.traffic_off);
googleMap.setTrafficEnabled(false);
} else {
changeTrafficImageView.setImageResource(R.drawable.traffic);
googleMap.setTrafficEnabled(true);
}
});
}
private void changeMapType() {
changeMapType = findViewById(R.id.changeMapType);
ImageView changeMapTypeImageView = findViewById(R.id.changeMapType);
changeMapType.setOnClickListener(view -> {
if (googleMap.getMapType() == GoogleMap.MAP_TYPE_SATELLITE) {
changeMapTypeImageView.setImageResource(R.drawable.satellite);
googleMap.setMapType(GoogleMap.MAP_TYPE_SATELLITE);
} else {
changeMapTypeImageView.setImageResource(R.drawable.map);
googleMap.setMapType(GoogleMap.MAP_TYPE_NORMAL);
}
});
}
public void getVehicles() {
try {
for (Vehicle vehicle : parentTab.getAllVehicle()) {
allVehicleNames.add(vehicle.name);
allVehicle.add(vehicle);
}
} catch (Exception ex) { }
}
public void UpdateMap() {

View File

@ -42,10 +42,9 @@ public class IconContextMenu implements DialogInterface.OnCancelListener,
private static final int LIST_PREFERED_HEIGHT = 65;
private IconMenuAdapter menuAdapter = null;
private Activity parentActivity = null;
private int dialogId = 0;
private IconMenuAdapter menuAdapter;
private Activity parentActivity;
private IconContextMenuOnClickListener clickHandler = null;
/**
@ -55,8 +54,7 @@ public class IconContextMenu implements DialogInterface.OnCancelListener,
*/
public IconContextMenu(Activity parent, int id) {
this.parentActivity = parent;
this.dialogId = id;
menuAdapter = new IconMenuAdapter(parentActivity);
}
@ -89,19 +87,13 @@ public class IconContextMenu implements DialogInterface.OnCancelListener,
public Dialog createMenu(String menuItitle) {
final AlertDialog.Builder builder = new AlertDialog.Builder(parentActivity);
builder.setTitle(menuItitle);
builder.setAdapter(menuAdapter, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialoginterface, int i) {
IconContextMenuItem item = (IconContextMenuItem) menuAdapter.getItem(i);
if (clickHandler != null) {
clickHandler.onClick(item.actionTag);
}
}
builder.setAdapter(menuAdapter, (dialoginterface, i) -> {
IconContextMenuItem item = (IconContextMenuItem) menuAdapter.getItem(i);
if (clickHandler != null)
clickHandler.onClick(item.actionTag);
});
builder.setInverseBackgroundForced(true);
AlertDialog dialog = builder.create();
dialog.setOnCancelListener(this);
dialog.setOnDismissListener(this);
@ -117,7 +109,7 @@ public class IconContextMenu implements DialogInterface.OnCancelListener,
}
private void cleanup() {
parentActivity.dismissDialog(dialogId);
// parentActivity.dismissDialog(dialogId);
}
/**
@ -131,7 +123,7 @@ public class IconContextMenu implements DialogInterface.OnCancelListener,
* Menu-like list adapter with icon
*/
protected class IconMenuAdapter extends BaseAdapter {
private Context context = null;
private Context context;
private ArrayList<IconContextMenuItem> mItems = new ArrayList<IconContextMenuItem>();
@ -193,6 +185,7 @@ public class IconContextMenu implements DialogInterface.OnCancelListener,
textView.setTag(item);
textView.setText(item.text);
textView.setCompoundDrawablesWithIntrinsicBounds(item.image, null, null, null);
textView.setTextColor(R.color.black);
return textView;
}

View File

@ -9,13 +9,19 @@ import android.content.Intent;
import android.content.IntentFilter;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.Rect;
import android.graphics.Typeface;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.view.View;
import android.view.Window;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.GridView;
import android.widget.ImageButton;
@ -26,11 +32,13 @@ import android.widget.Toast;
import androidx.annotation.NonNull;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.BitmapDescriptor;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.Marker;
import com.google.android.gms.maps.model.MarkerOptions;
import com.safemobile.activities.AbstractLiveActivity;
import com.safemobile.activities.AbstractSDParentActivity;
@ -94,6 +102,7 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
//value poll
private double latPoll = 0;
private double lngPoll = 0;
private ArrayList<Marker> markers = new ArrayList<>();
@Override
@ -130,12 +139,11 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
mapFragment.getMapAsync(this);
}
// create on vehicle long click menu
createIconContextMenu();
// image View for changing map type satellite or map
ImageView changeMapTypeImageView = (ImageView) findViewById(R.id.changeMapType);
ImageView changeMapTypeImageView = findViewById(R.id.changeMapType);
changeMapTypeImageView.setOnClickListener(v -> {
if (googleMap.getMapType() == GoogleMap.MAP_TYPE_SATELLITE) {
changeMapTypeImageView.setImageResource(R.drawable.satellite);
@ -146,7 +154,7 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
}
});
ImageView changeTrafficImageView = (ImageView) findViewById(R.id.changeTraffic);
ImageView changeTrafficImageView = findViewById(R.id.changeTraffic);
changeTrafficImageView.setOnClickListener(v -> {
if (googleMap.isTrafficEnabled()) {
changeTrafficImageView.setImageResource(R.drawable.traffic_off);
@ -158,12 +166,12 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
});
// change tab header font
TextView textView1 = (TextView) findViewById(R.id.textView1);
TextView textView1 = findViewById(R.id.textView1);
textView1.setTypeface(Typeface.createFromAsset(getAssets(), "Sketch_Block.ttf"));
textView1.setTextSize(24);
// get grid view and set empty data adapter
gridVehicle = (GridView) findViewById(R.id.gridVehicle);
gridVehicle = findViewById(R.id.gridVehicle);
if (AppParams.DEMO) {
disabledVehicles = new ArrayList<>();
@ -185,14 +193,16 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
threadUI.start();
});
// get vehicle menu creation
gridVehicle.setOnItemLongClickListener(itemLongClickHandler);
gridVehicle.setOnItemLongClickListener((adapterView, view, i, l) -> {
contextMenuPosition = position;
iconContextMenu.createMenu(getString(R.string.options)).show();
return true;
});
LinearLayout slideLayout = (LinearLayout) findViewById(R.id.slidelayout);
ImageView slideLayoutImageView = (ImageView) findViewById(R.id.slideLayoutImage);
LinearLayout linearLayoutVehicles = (LinearLayout) findViewById(R.id.layoutBig);
LinearLayout slideLayout = findViewById(R.id.slidelayout);
ImageView slideLayoutImageView = findViewById(R.id.slideLayoutImage);
LinearLayout linearLayoutVehicles = findViewById(R.id.layoutBig);
slideLayout.setOnClickListener(v -> {
if (showVehicle) {
linearLayoutVehicles.setVisibility(View.GONE);
@ -205,7 +215,7 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
}
});
imageViewCheckAll = (ImageButton) findViewById(R.id.imageCheckAll);
imageViewCheckAll = findViewById(R.id.imageCheckAll);
imageViewCheckAll.setSelected(false);
imageViewCheckAll.setOnClickListener(arg0 -> {
for (int i = 0; i < displayedVehicles.size(); i++)
@ -223,7 +233,7 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
Enumeration<Long> keyList = getParentTab().getSuperVehHash().keys();
while (keyList.hasMoreElements()) {
(Objects.requireNonNull(getParentTab().getSuperVehHash().get((long) keyList.nextElement()))).needUpdate = true;
(Objects.requireNonNull(getParentTab().getSuperVehHash().get(keyList.nextElement()))).needUpdate = true;
}
// change button title
@ -247,7 +257,7 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
displayVehicle(true, LAT_OUTLIMIT, LNG_OUTLIMIT);
});
displayButton = (Button) findViewById(R.id.buttonDisplay);
displayButton = findViewById(R.id.buttonDisplay);
displayButton.setText(getString(R.string.displayAll));
@ -259,7 +269,7 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
Enumeration<Long> keyList = getParentTab().getSuperVehHash().keys();
while (keyList.hasMoreElements())
(Objects.requireNonNull(getParentTab().getSuperVehHash().get((long) keyList.nextElement()))).needUpdate = true;
(Objects.requireNonNull(getParentTab().getSuperVehHash().get(keyList.nextElement()))).needUpdate = true;
// change button title
if (displayButton.getText().toString().equals(getString(R.string.displayAll))) {
@ -297,11 +307,8 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
@Override
public void onMapReady(@NonNull GoogleMap googleMap) {
this.googleMap = googleMap;
// Add a marker in Sydney and move the camera
LatLng sydney = new LatLng(-34, 151);
this.googleMap.addMarker(new MarkerOptions().position(sydney).title("Marker in Sydney"));
this.googleMap.moveCamera(CameraUpdateFactory.newLatLng(sydney));
GoogleMapsInfoBubble infoBubble = new GoogleMapsInfoBubble(getLayoutInflater(), this, getParentTab().getSuperVehHash());
this.googleMap.setInfoWindowAdapter(infoBubble);
}
@ -433,36 +440,101 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
});
}
/**
* create context menu
*/
@Override
public Dialog onCreateDialog(int id) {
if (id == 1) {
return iconContextMenu.createMenu(getString(R.string.options));
}
return super.onCreateDialog(id);
}
/* list item long click handler
* used to show the context menu
*/
private final AdapterView.OnItemLongClickListener itemLongClickHandler = ((parent, view, position, id) -> {
// save position
contextMenuPosition = position;
showDialog(1);
return true;
});
public void displayVehicle(boolean withZoom, double latZoom, double lngZoom) {
//TODO: add makers for vehicles
if (googleMap != null) {
String openWindow = "";
for (Marker marker : markers) {
if (marker.isInfoWindowShown()) {
openWindow = marker.getTitle();
}
}
googleMap.clear();
for (int i = 0; i < displayedVehicles.size(); i++) {
if (displayedVehicles.get(i)) {
SuperVehicle tmpSuper = getParentTab().getSuperVehHash().get(Long.valueOf(liveVehicle.get(i).imei));
if (tmpSuper != null) {
LatLng newLocation = new LatLng(tmpSuper.lat, tmpSuper.lng);
MarkerOptions markerOptions = new MarkerOptions().position(newLocation).title(liveVehicle.get(i).imei);
BitmapDescriptor markerIcon = getProperBitmap(tmpSuper.getLargeIcon(), tmpSuper.name);
markerOptions.icon(markerIcon);
Marker marker = this.googleMap.addMarker(markerOptions);
if (openWindow.equals(marker.getTitle()))
marker.showInfoWindow();
markers.add(marker);
}
}
}
}
}
public void showOpenedBalloon(boolean demo) {
//TODO: add show balloon
}
private BitmapDescriptor getProperBitmap(int largeIcon, String text) {
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), largeIcon);
Bitmap textBitmap = getTextAsDrawable(this, text);
Bitmap b3 = overlay(bitmap, textBitmap);
return BitmapDescriptorFactory.fromBitmap(b3);
}
public static Bitmap overlay(Bitmap bmp1, Bitmap bmp2) {
int maxWidth = Math.max(bmp1.getWidth(), bmp2.getWidth());
Bitmap bmOverlay = Bitmap.createBitmap(maxWidth, bmp1.getHeight() + bmp2.getHeight(), bmp1.getConfig());
Canvas canvas = new Canvas(bmOverlay);
canvas.drawBitmap(bmp1, new Matrix(), null);
canvas.drawBitmap(bmp2, 0, bmp1.getHeight(), null);
bmp1.recycle();
bmp2.recycle();
return bmOverlay;
}
public Bitmap getTextAsDrawable(Context context, String text) {
Typeface tf = Typeface.create("Helvetica", Typeface.BOLD);
Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);
paint.setColor(Color.WHITE);
paint.setTypeface(tf);
paint.setTextSize(convertToPixels(context, 16));
Rect textRect = new Rect();
paint.getTextBounds(text, 0, text.length(), textRect);
Bitmap bitmap = Bitmap.createBitmap(textRect.width(), textRect.height() + 5,
Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
paint.setColor(getResources().getColor(R.color.cardview_dark_background));
canvas.drawRect(0, 0, bitmap.getWidth(), bitmap.getHeight(), paint);
float scale = context.getResources().getDisplayMetrics().density;
// text color - #3D3D3D
paint.setColor(Color.rgb(255, 255, 255));
// text size in pixels
// draw text to the Canvas center
Rect bounds = new Rect();
paint.getTextBounds(text, 0, text.length(), bounds);
int x = (bitmap.getWidth() - bounds.width()) / 2;
int y = (bitmap.getHeight() + bounds.height()) / 2;
canvas.drawText(text, x, y, paint);
return bitmap;
}
public int convertToPixels(Context context, int nDP) {
final float conversionScale = context.getResources().getDisplayMetrics().density;
return (int) ((nDP * conversionScale) + 0.5f);
}
public void showLoadingDialog(String message) {
loadingDialog = new Dialog(context);
loadingDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
@ -470,9 +542,9 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
loadingDialog.setCancelable(true);
loadingDialog.setCanceledOnTouchOutside(false);
Button cancel = (Button) loadingDialog.findViewById(R.id.buttonCancel);
Button cancel = loadingDialog.findViewById(R.id.buttonCancel);
cancel.setVisibility(View.GONE);
TextView textView1 = (TextView) loadingDialog.findViewById(R.id.textView1);
TextView textView1 = loadingDialog.findViewById(R.id.textView1);
textView1.setText(message);
loadingDialog.show();
@ -501,8 +573,7 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
disabledVehicles.add(!veh.status);
// add vehicle to hash Table according to driver_id
if (tableHashOverlay.get((int) veh.driver_id) == null) // if doesn't exist
{
if (tableHashOverlay.get((int) veh.driver_id) == null) {
ArrayList<SuperVehicle> array = new ArrayList<>();
SuperVehicle superVehicle = new SuperVehicle(veh.sc_id, veh.imei, veh.lp, veh.name, veh.driver_id, veh.time_route, veh.GPS_reporting_interval, veh.is_stolen);
array.add(superVehicle);
@ -519,7 +590,6 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
}
// set adapter
adapter = new VehiclesGridViewAdapter(activity, context, list, disabledVehicles);
adapter.notifyDataSetChanged();
@ -538,7 +608,6 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
// show vehicles in gridView
private void updateResultsUI() {
gridVehicle.setAdapter(adapter);
try {
// hide loading dialog
loadingDialog.cancel();
@ -576,7 +645,6 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
pollReceived(position,lat,lng);
}
public void updatePosition(int pos) {
contextMenuPosition = pos;
}
@ -598,11 +666,9 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
final Runnable updateOptionsRUN = this::updateOptionsUI;
private void updateOptionsUI() {
SM.Debug("REFRESHDisableEnable" + (Boolean.TRUE.equals(disabledVehicles.get(contextMenuPosition)) ? "true" : "false"));
// change Enable/Disable in adapter
adapter.changeDisabled(contextMenuPosition, disabledVehicles.get(contextMenuPosition));
}
/**
@ -692,7 +758,6 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
// zone and channel change intent
IntentFilter intentFilter = new IntentFilter(OperationCodes.UNIT_STATUS_UPDATE + "");
this.registerReceiver(mReceiver, intentFilter);
}
//The BroadcastReceiver that listens for Notification broadcasts
@ -723,4 +788,9 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
}
}
};
@Override
public GoogleMap getMap() {
return googleMap;
}
}

View File

@ -265,11 +265,11 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
tabHost = getTabHost(); // The activity TabHost
tabHost.setTag("Tab Panel");
tabWidget = (TabWidget) findViewById(android.R.id.tabs);
tabWidget = findViewById(android.R.id.tabs);
tabWidget.setVisibility(View.GONE);
intent = new Intent[7];
tabspecs = new TabSpec[7];
intent = new Intent[8];
tabspecs = new TabSpec[8];
// add live tab
try
@ -288,23 +288,6 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
.setContent(intent[0]);
}
// add history tab
try
{
//intent[1] = new Intent(context, HistoryActivity.class);
//tabspecs[1] = tabHost.newTabSpec("History")
// .setIndicator("History", res.getDrawable(R.drawable.ic_tab_history_selected))
// .setContent(intent[1]);
}
catch(NoClassDefFoundError e)
{
// exception when GoogleApi not exists
//intent[1] = new Intent(context, AbstractEmptyActivity.class);
//tabspecs[1] = tabHost.newTabSpec("History")
// .setIndicator("History", res.getDrawable(R.drawable.ic_tab_history_selected))
// .setContent(intent[1]);
}
// add text tab
intent[1] = new Intent(context, MessagesActivity.class);
tabspecs[1] = tabHost.newTabSpec("Text")
@ -340,6 +323,21 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
tabspecs[6] = tabHost.newTabSpec("SafeMobile")
.setIndicator("SafeMobile", res.getDrawable(AppParams.DEMO ? R.drawable.icon_demo : R.drawable.ic_launcher))
.setContent(intent[6]);
// add history tab
try
{
intent[7] = new Intent(context, HistoryActivity.class);
tabspecs[7] = tabHost.newTabSpec("History")
.setIndicator("History", res.getDrawable(R.drawable.ic_tab_history_selected))
.setContent(intent[7]);
} catch(NoClassDefFoundError e) {
// exception when GoogleApi not exists
intent[7] = new Intent(context, AbstractEmptyActivity.class);
tabspecs[7] = tabHost.newTabSpec("History")
.setIndicator("History", res.getDrawable(R.drawable.ic_tab_history_selected))
.setContent(intent[1]);
}
// add tab in tabHost
// for(int i=0;i<7;i++
@ -353,58 +351,61 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
imageViewSlideMenu = (ImageView) findViewById(R.id.imageViewSlideMenu);
// get Live Button
buttonLive = (ImageButton) findViewById(R.id.buttonLive);
buttonLive.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(!buttonLive.isSelected())
{
// select button
buttonLive.setSelected(true);
// deselect other buttons
buttonAlarms.setSelected(false);
buttonHistory.setSelected(false);
buttonRadio.setSelected(false);
buttonRecordings.setSelected(false);
buttonSetup.setSelected(false);
buttonText.setSelected(false);
// select tab
tabHost.setCurrentTabByTag("Live");
AppParams.crtTab = AppParams.Tabs.live;
}
buttonLive = findViewById(R.id.buttonLive);
buttonLive.setOnClickListener(v -> {
if (!buttonLive.isSelected()) {
// select button
buttonLive.setSelected(true);
// deselect other buttons
buttonAlarms.setSelected(false);
buttonHistory.setSelected(false);
buttonRadio.setSelected(false);
buttonRecordings.setSelected(false);
buttonSetup.setSelected(false);
buttonText.setSelected(false);
// select tab
tabHost.setCurrentTabByTag("Live");
AppParams.crtTab = AppParams.Tabs.live;
}
});
// get History Button
buttonHistory = (ImageButton) findViewById(R.id.buttonHistory);
buttonHistory.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(!buttonHistory.isSelected())
{
// select button
buttonHistory.setSelected(true);
// deselect other buttons
buttonAlarms.setSelected(false);
buttonLive.setSelected(false);
buttonRadio.setSelected(false);
buttonRecordings.setSelected(false);
buttonSetup.setSelected(false);
buttonText.setSelected(false);
// select tab
tabHost.setCurrentTabByTag("History");
AppParams.crtTab = AppParams.Tabs.history;
}
buttonHistory = findViewById(R.id.buttonHistory);
buttonHistory.setOnClickListener(v -> {
if (!buttonHistory.isSelected()) {
// select button
buttonHistory.setSelected(true);
// deselect other buttons
buttonAlarms.setSelected(false);
buttonLive.setSelected(false);
buttonRadio.setSelected(false);
buttonRecordings.setSelected(false);
buttonSetup.setSelected(false);
buttonText.setSelected(false);
// select tab
tabHost.setCurrentTabByTag("History");
AppParams.crtTab = AppParams.Tabs.history;
}
});
// get Text Button
buttonText= (ImageButton) findViewById(R.id.buttonText);
buttonText.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(!buttonText.isSelected())
{
buttonText= findViewById(R.id.buttonText);
buttonText.setOnClickListener(v -> {
if (!buttonText.isSelected()) {
// select button
buttonText.setSelected(true);
// deselect other buttons
buttonAlarms.setSelected(false);
buttonLive.setSelected(false);
buttonRadio.setSelected(false);
buttonRecordings.setSelected(false);
buttonSetup.setSelected(false);
buttonHistory.setSelected(false);
// select tab
tabHost.setCurrentTabByTag("Text");
AppParams.crtTab = AppParams.Tabs.message;
if (AppParams.DEMO && messageActivity.getAllVehicle().size()== 0) {
// select button
buttonText.setSelected(true);
// deselect other buttons
@ -418,10 +419,9 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
tabHost.setCurrentTabByTag("Text");
AppParams.crtTab = AppParams.Tabs.message;
if(AppParams.DEMO && messageActivity.allVehicle.size()== 0)
{
messageActivity.UpdateVehs(getAllVehicle());
messageActivity.UpdateSMS(listSMS);
if (AppParams.DEMO && messageActivity.getAllVehicle().size()== 0) {
messageActivity.updateVehicles(getAllVehicle());
messageActivity.updateSMS(listSMS);
}
}
}
@ -609,24 +609,21 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
});
// get About Button
buttonLogo = (ImageButton) findViewById(R.id.buttonLogo);
buttonLogo.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// create dialog
final Dialog dialog = new Dialog(context);
dialog.setTitle(AppParams.DEMO ? getString(R.string.app_name_demo) : getString(R.string.app_name));
dialog.setContentView(R.layout.dialog);
ImageView image = (ImageView) dialog.findViewById(R.id.image);
image.setImageResource(AppParams.DEMO ? R.drawable.icon_demo : R.drawable.ic_launcher);
TextView text = (TextView) dialog.findViewById(R.id.text);
TextView text2 = (TextView) dialog.findViewById(R.id.text2);
text.setText(getString(R.string.version) + "1.0.8");
text2.setText(getString(R.string.email) + ": support@safemobile.com");
dialog.setCancelable(true);
dialog.setCanceledOnTouchOutside(true);
dialog.show();
}
buttonLogo = findViewById(R.id.buttonLogo);
buttonLogo.setOnClickListener(v -> {
// create dialog
final Dialog dialog = new Dialog(context);
dialog.setTitle(AppParams.DEMO ? getString(R.string.app_name_demo) : getString(R.string.app_name));
dialog.setContentView(R.layout.dialog);
ImageView image = dialog.findViewById(R.id.image);
image.setImageResource(AppParams.DEMO ? R.drawable.icon_demo : R.drawable.ic_launcher);
TextView text = dialog.findViewById(R.id.text);
TextView text2 = dialog.findViewById(R.id.text2);
text.setText(getString(R.string.version) + "1.0.8");
text2.setText(getString(R.string.email) + ": support@safemobile.com");
dialog.setCancelable(true);
dialog.setCanceledOnTouchOutside(true);
dialog.show();
});
imageViewClose.setOnTouchListener(new OnTouchListener() {
@ -677,8 +674,8 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
//list for SMS
if(currentActivity instanceof MessagesActivity)
{
// run update showSMS4unit(int sc_id) form MessageActivity
((MessagesActivity)currentActivity).showSMS4unit(getVehicle4Imei(imei).sc_id);
// run update showSMS4unit(int scId) form MessageActivity
((MessagesActivity)currentActivity).showSMS4unit(getVehicle4Imei(imei).scId);
}
*/
}
@ -824,9 +821,9 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
tabHost.setCurrentTabByTag("Text");
AppParams.crtTab = AppParams.Tabs.message;
messageActivity.sc_id = getVehicle4Imei(getImei()).sc_id;
messageActivity.setScId(getVehicle4Imei(getImei()).sc_id);
messageActivity.LASTMESSAGES = false;
messageActivity.GetLastSMS();
messageActivity.getLastSMS();
// disable notification
if(mNotificationManager!=null)
@ -1022,7 +1019,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
if(radioActivity!=null)
radioActivity.onCreate(radioActivity.savedInstanceState);
if(messageActivity!=null)
messageActivity.onCreate(messageActivity.savedInstanceState);
messageActivity.onCreate(messageActivity.getSavedInstanceState());
if(recordingsActivity!=null)
recordingsActivity.onCreate(recordingsActivity.savedInstanceState);
if(alarmActivity!=null)
@ -1234,36 +1231,28 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
GPSmsg GPSPos= new GPSmsg(msg);
//SM.Debug("Got new GPS pos data:" + GPSPos.data);
if(getSuperVehHash().get(GPSPos.gpsValue.imei) != null)
{
((SuperVehicle) getSuperVehHash().get(GPSPos.gpsValue.imei)).SetNewPosition(GPSPos.gpsValue.lat, GPSPos.gpsValue.lng, GPSPos.gpsValue.timeGMT, GPSPos.gpsValue.speed);
if (getSuperVehHash().get(GPSPos.gpsValue.imei) != null) {
getSuperVehHash().get(GPSPos.gpsValue.imei).SetNewPosition(GPSPos.gpsValue.lat, GPSPos.gpsValue.lng, GPSPos.gpsValue.timeGMT, GPSPos.gpsValue.speed);
if(getSuperVehHash().get(GPSPos.gpsValue.imei).needUpdate)
{
//list for live
if(AppParams.crtTab == AppParams.Tabs.live)
{
//SM.Debug("+++++ duda +++++");
SM.Debug("currentActivity instanceof LiveActivity");
try
{
if(liveActivity != null)
liveActivity.refreshMap();
}
catch (Exception ex)
{
SM.Debug("Error load hash:"+ex.toString());
}
}
}
if (getSuperVehHash().get(GPSPos.gpsValue.imei).needUpdate) {
//list for live
if (AppParams.crtTab == AppParams.Tabs.live) {
//SM.Debug("+++++ duda +++++");
SM.Debug("currentActivity instanceof LiveActivity");
try {
if(liveActivity != null)
liveActivity.refreshMap();
} catch (Exception ex) {
SM.Debug("Error load hash:"+ex.toString());
}
}
}
}
}
@Override
public void onPollReceived(TCPEvent event)
{
public void onPollReceived(TCPEvent event) {
SM.Debug("Got POLL GPS message");
TCPmsg msg= event.msg();
GPSmsg GPSPos= new GPSmsg(msg);
@ -1271,13 +1260,12 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
setMess("LAT:"+Double.toString(GPSPos.gpsValue.lat)+" LNG:"+Double.toString(GPSPos.gpsValue.lng));
SM.Debug("Got new Poll pos data:" + GPSPos.data);
if(getSuperVehHash().get(GPSPos.gpsValue.imei) != null)
{
if(getSuperVehHash().get(GPSPos.gpsValue.imei) != null) {
((SuperVehicle) getSuperVehHash().get(GPSPos.gpsValue.imei)).SetNewPosition(GPSPos.gpsValue.lat, GPSPos.gpsValue.lng, GPSPos.gpsValue.timeGMT, GPSPos.gpsValue.speed);
//if is not check i need to force check to put on the map
Boolean forceChecked =false;
if (!getSuperVehHash().get(GPSPos.gpsValue.imei).needUpdate)
{
if (!getSuperVehHash().get(GPSPos.gpsValue.imei).needUpdate) {
getSuperVehHash().get(GPSPos.gpsValue.imei).needUpdate =true;
forceChecked =true;
}
@ -1331,9 +1319,9 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
//list for SMS
if(AppParams.crtTab == AppParams.Tabs.message)
{
//SM.Debug("currentActivity instanceof MessagesActivity - NewSMS");
//SM.Debug("currentActivity instanceof MessagesActivity - newSMS");
if(messageActivity != null)
messageActivity.UpdateSMS(sms.smsList);
messageActivity.updateSMS(sms.smsList);
}
}
catch(Exception ex)
@ -1382,7 +1370,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
{
SM.Debug("currentActivity instanceof MessagesActivity");
if(messageActivity != null)
messageActivity.UpdateVehs(vMSG.vehList);
messageActivity.updateVehicles(vMSG.vehList);
}
setAllVehicle(vMSG.vehList);
}
@ -1399,7 +1387,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
{
//SM.Debug("currentActivity instanceof MessagesActivity");
if(messageActivity != null)
messageActivity.UpdateSMS(sms.smsList);
messageActivity.updateSMS(sms.smsList);
}
}
catch (Exception ex)
@ -1445,7 +1433,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
SM.Debug("Got smsComfirm msg.data:" + msg.data);
if (messageActivity != null)
messageActivity.ConfirmSMS(sms.data, msg.seqID);
messageActivity.confirmSMS(sms.data, msg.seqID);
}
@Override
@ -1468,28 +1456,19 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
}
// if tab is not TextTab
if(tabHost.getCurrentTab() != 2)
{
if(tabHost.getCurrentTab() != 2) {
myHandler.post(UpdateResults);
//mHandler.dispatchMessage(new Message());
}
else
myHandler.post(new Runnable() {
@Override
public void run() {
// create Notification
createNotification(AppParams.messageNotif);
}
} else
myHandler.post(() -> {
// create Notification
createNotification(AppParams.messageNotif);
});
//list for SMS
if(AppParams.crtTab == AppParams.Tabs.message && messageActivity!= null)
{
SM.Debug("currentActivity instanceof MessagesActivity - NewSMS | " + tempArr[0] + " | " + tempArr[1]);
messageActivity.NewSMS(tempArr[0], tempArr[1], time);
if(AppParams.crtTab == AppParams.Tabs.message && messageActivity!= null) {
SM.Debug("currentActivity instanceof MessagesActivity - newSMS | " + tempArr[0] + " | " + tempArr[1]);
messageActivity.newSMS(tempArr[0], tempArr[1], time);
}
}
@Override
@ -1523,15 +1502,13 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
@Override
public void onLastPositionsReceived(TCPEvent event) {
TCPmsg msg= event.msg();
SM.Debug("Got lastpos");
//SM.Debug("Got lastpos :" + msg.allData);
SM.Debug("Got last pos");
LastPosmsg lastPos= new LastPosmsg(msg);
//SM.Debug("Got LastPost msg.data:" + msg.data);
for(LastPos posMsg: lastPos.PosList)
{
for(LastPos posMsg: lastPos.PosList) {
if(getSuperVehHash().get(posMsg.imei) != null)
((SuperVehicle) getSuperVehHash().get(posMsg.imei)).SetDataFromLastPos(posMsg.lat, posMsg.lng, posMsg.timeGMT, posMsg.speed, posMsg.Address, posMsg.isON);
getSuperVehHash().get(posMsg.imei).SetDataFromLastPos(posMsg.lat, posMsg.lng, posMsg.timeGMT, posMsg.speed, posMsg.Address, posMsg.isON);
}
}
@ -1881,7 +1858,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
//list for SMS
if(AppParams.crtTab == AppParams.Tabs.alarms)
{
SM.Debug("currentActivity instanceof AlarmActivity - NewSMS | " + tempArr[0] + " | " + tempArr[1]);
SM.Debug("currentActivity instanceof AlarmActivity - newSMS | " + tempArr[0] + " | " + tempArr[1]);
getAlarms(AppParams.USERID);
}
// if tab is not TextTab
@ -2338,19 +2315,19 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
}
}
public void optionForUnit(int radioCode, int opCode, int sc_id, int value)
public void optionForUnit(int radioCode, int opCode, int scId, int value)
{
boolean res = tcp.Write("0.0", "#"+radioCode+"#"+opCode+"#" + sc_id+"#" +value + "#");
boolean res = tcp.Write("0.0", "#"+radioCode+"#"+opCode+"#" + scId+"#" +value + "#");
if(res){
SM.Debug("Message (optionForUnit) sent to app server radioCode:"+radioCode+ " opCode:"+opCode+ " sc_id:"+sc_id+ " value:"+value);
SM.Debug("Message (optionForUnit) sent to app server radioCode:"+radioCode+ " opCode:"+opCode+ " scId:"+scId+ " value:"+value);
}else{
SM.Debug("Could not send message(optionForUnit)!!");
}
}
public void getSMS4unit(int sc_id, long timeGMT)
public void getSMS4unit(int scId, long timeGMT)
{
boolean res = tcp.Write("0.0", "#22#"+sc_id+"#" +timeGMT+"#");
boolean res = tcp.Write("0.0", "#22#"+scId+"#" +timeGMT+"#");
if(res){
SM.Debug("Message (getLastSMS) sent to app server");
}else{
@ -2368,11 +2345,11 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
}
}
public void SendSMS(String seqID,int sc_id, String txt)
public void SendSMS(String seqID,int scId, String txt)
{
boolean res = tcp.Write(seqID, "#24#" + AppParams.USERID + "#" + sc_id + "#" + txt + "#");
boolean res = tcp.Write(seqID, "#24#" + AppParams.USERID + "#" + scId + "#" + txt + "#");
if(res){
SM.Debug("Message (SendSMS) sent to app server sc_id:"+sc_id+ " txt:"+txt);
SM.Debug("Message (SendSMS) sent to app server scId:"+scId+ " txt:"+txt);
}else{
SM.Debug("Could not send message(getLastSMS)!!");
}
@ -2408,10 +2385,10 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
}
}
public void getHistoryPos(int sc_id, long timeGMTStart, long timeGMTStop)
public void getHistoryPos(int scId, long timeGMTStart, long timeGMTStop)
{
HistSeqID = "1."+Integer.toString((int) (System.currentTimeMillis() / 1000L));
boolean res = tcp.Write(HistSeqID,"#26#"+sc_id+"#"+timeGMTStart+"#"+timeGMTStop+"#");
boolean res = tcp.Write(HistSeqID,"#26#"+scId+"#"+timeGMTStart+"#"+timeGMTStop+"#");
if(res){
SM.Debug("Message (getHistoryPos) sent to app server");
}else{

View File

@ -1,243 +1,244 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" android:weightSum="1"
android:id="@+id/layoutMain"
style="?bg">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header"
android:id="@+id/layoutHeader">
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" android:weightSum="1"
android:id="@+id/layoutMain"
style="?bg">
<ImageView
android:id="@+id/imageViewMsg"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:src="@drawable/message"
android:paddingLeft="0dp"
android:layout_margin="3dp"
android:layout_weight="0" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="@string/textMessaging"
android:layout_marginLeft="5dp"
android:textStyle="bold"
android:paddingTop="7dp"
android:textColor="#FFFFFF"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header"
android:id="@+id/layoutHeader">
<ImageView
android:id="@+id/imageViewSeparator"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:src="@drawable/separator_white"
android:layout_margin="2dp"
android:layout_weight="0"
android:visibility="invisible"
android:focusable="false" />
<ImageView
android:id="@+id/imageViewMsg"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:src="@drawable/message"
android:paddingLeft="0dp"
android:layout_margin="3dp"
android:layout_weight="0" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="@string/textMessaging"
android:layout_marginLeft="5dp"
android:textStyle="bold"
android:paddingTop="7dp"
android:textColor="#FFFFFF"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"/>
<ImageView
android:id="@+id/imageViewSeparator"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:src="@drawable/separator_white"
android:layout_margin="2dp"
android:layout_weight="0"
android:visibility="invisible"
android:focusable="false" />
<ImageView
android:id="@+id/imageViewDown"
android:layout_width="20dp"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginBottom="2dp"
android:layout_marginTop="2dp"
android:focusable="false"
android:visibility="invisible"
android:src="@drawable/arrow_menu_down" />
<ImageButton
android:id="@+id/imageButtonAdd2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:scaleType="centerInside"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:visibility="invisible"
android:background="@drawable/addmessage_selector"/>
<TextView
android:id="@+id/textViewNew"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="New"
android:textStyle="bold"
android:paddingTop="7dp"
android:textColor="#FFFFFF"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"
android:paddingRight="5dp"
android:visibility="gone"/>
<ImageButton
android:id="@+id/imageButtonAdd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:scaleType="centerInside"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:background="@drawable/addmessage_selector"/>
<!-- android:background="@drawable/addmessage_selector" -->
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header"
android:id="@+id/layoutHeaderConversation">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical">
<ImageButton
android:id="@+id/imageButtonBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:background="@drawable/messageback_selector"/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_horizontal"
android:layout_weight="1"
android:gravity="right|center_vertical"
android:orientation="horizontal"
android:paddingBottom="2dp"
android:paddingRight="15dp"
android:paddingTop="3dp" >
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="0">
<ImageView
android:id="@+id/imageViewDown"
android:layout_width="20dp"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginBottom="2dp"
android:layout_marginTop="2dp"
android:focusable="false"
android:visibility="invisible"
android:src="@drawable/arrow_menu_down" />
<ImageButton
android:id="@+id/imageButtonAdd2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:scaleType="centerInside"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:visibility="invisible"
android:background="@drawable/addmessage_selector"/>
<TextView
android:id="@+id/textViewNew"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="New"
android:textStyle="bold"
android:paddingTop="7dp"
android:textColor="#FFFFFF"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"
android:paddingRight="5dp"
android:visibility="gone"/>
<ImageButton
android:id="@+id/imageButtonAdd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:scaleType="centerInside"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:background="@drawable/addmessage_selector"/>
<!-- android:background="@drawable/addmessage_selector" -->
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header"
android:id="@+id/layoutHeaderConversation">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical">
<ImageButton
android:id="@+id/imageButtonBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:background="@drawable/messageback_selector"/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_horizontal"
android:layout_weight="1"
android:gravity="right|center_vertical"
android:orientation="horizontal"
android:paddingBottom="2dp"
android:paddingRight="15dp"
android:paddingTop="3dp" >
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="0">
<ImageView
android:id="@+id/imageViewSelectedContact"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ambulance_large"
android:layout_margin="3dp" />
</LinearLayout>
<TextView
android:id="@+id/textViewSelectedContact"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:text="Large Text"
android:gravity="center_vertical"
android:paddingLeft="3dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"/>
</LinearLayout>
<!-- android:background="@drawable/addmessage_selector" -->
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/layoutConversations"
android:layout_weight="1"
android:orientation="vertical">
android:id="@+id/imageViewSelectedContact"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ambulance_large"
android:layout_margin="3dp" />
</LinearLayout>
<TextView
android:id="@+id/textViewSelectedContact"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:text="Large Text"
android:gravity="center_vertical"
android:paddingLeft="3dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"/>
<GridView
android:id="@+id/gridView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#999999"
android:drawSelectorOnTop="false"
android:horizontalSpacing="0dp"
android:numColumns="1"
android:verticalSpacing="1dp" >
</GridView>
</LinearLayout>
<LinearLayout
android:id="@+id/layoutSendMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header">
<LinearLayout
android:layout_weight="0"
android:layout_width="wrap_content"
android:layout_height="fill_parent">
<TextView
android:id="@+id/textViewSendMsg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="@string/message"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:textAppearance="?android:attr/textAppearanceLarge"
/>
</LinearLayout>
<LinearLayout
android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingTop="4dp">
<EditText
android:id="@+id/editTextMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="center_vertical"
android:inputType="text" >
</EditText>
</LinearLayout>
<LinearLayout
android:layout_weight="0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingTop="4dp">
<ImageView
android:id="@+id/imageBarcode"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:src="@drawable/barcode"
android:paddingTop="2dp"
android:layout_margin="3dp" />
</LinearLayout>
<Button
android:id="@+id/imageButtonSend"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:text="@string/send"
android:layout_marginRight="5dp"
android:layout_gravity="center"
android:paddingLeft="6dp"
android:textColor="#000000"
style="?login"
/>
</LinearLayout>
</LinearLayout>
<!-- android:background="@drawable/addmessage_selector" -->
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/layoutConversations"
android:layout_weight="1"
android:orientation="vertical">
<GridView
android:id="@+id/gridView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#999999"
android:drawSelectorOnTop="false"
android:horizontalSpacing="0dp"
android:numColumns="1"
android:verticalSpacing="1dp" >
</GridView>
</LinearLayout>
<LinearLayout
android:id="@+id/layoutSendMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header">
<LinearLayout
android:layout_weight="0"
android:layout_width="wrap_content"
android:layout_height="fill_parent">
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="@string/message"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:textAppearance="?android:attr/textAppearanceLarge"
/>
</LinearLayout>
<LinearLayout
android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingTop="4dp">
<EditText
android:id="@+id/editTextMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="center_vertical"
android:inputType="text"
android:autofillHints="">
</EditText>
</LinearLayout>
<LinearLayout
android:layout_weight="0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingTop="4dp">
<ImageView
android:id="@+id/imageBarcode"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:src="@drawable/barcode"
android:paddingTop="2dp"
android:layout_margin="3dp" />
</LinearLayout>
<Button
android:id="@+id/imageButtonSend"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:text="@string/send"
android:layout_marginRight="5dp"
android:layout_gravity="center"
android:paddingLeft="6dp"
android:textColor="#000000"
style="?login"
/>
</LinearLayout>
</LinearLayout>

View File

@ -5,337 +5,328 @@
android:id="@+id/tab1Layout" android:orientation="horizontal"
style="?bg">
<RelativeLayout
android:id="@+id/relativeHeader"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true">
<RelativeLayout
android:id="@+id/relativeHeader"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header"
android:id="@+id/layoutHeader">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header"
android:id="@+id/layoutHeader">
<ImageView
android:id="@+id/imageViewMsg"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:src="@drawable/calendar_48_red"
android:paddingLeft="0dp"
android:layout_margin="3dp"
android:layout_weight="0" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="@string/history"
android:layout_marginLeft="5dp"
android:textStyle="bold"
android:paddingTop="7dp"
android:textColor="#FFFFFF"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"/>
<ImageView
android:id="@+id/imageViewMsg"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:src="@drawable/calendar_48_red"
android:paddingLeft="0dp"
android:layout_margin="3dp"
android:layout_weight="0" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="@string/history"
android:layout_marginLeft="5dp"
android:textStyle="bold"
android:paddingTop="7dp"
android:textColor="#FFFFFF"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"/>
<ImageView
android:id="@+id/imageViewSeparator"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:src="@drawable/separator_white"
android:layout_margin="2dp"
android:layout_weight="0"
android:visibility="invisible"
android:focusable="false" />
<ImageView
android:id="@+id/imageViewSeparator"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:src="@drawable/separator_white"
android:layout_margin="2dp"
android:layout_weight="0"
android:visibility="invisible"
android:focusable="false" />
<ImageView
android:id="@+id/imageViewDown"
android:layout_width="20dp"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginBottom="2dp"
android:layout_marginTop="2dp"
android:focusable="false"
android:visibility="invisible"
android:src="@drawable/arrow_menu_down" />
<ImageView
android:id="@+id/imageViewDown"
android:layout_width="20dp"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginBottom="2dp"
android:layout_marginTop="2dp"
android:focusable="false"
android:visibility="invisible"
android:src="@drawable/arrow_menu_down" />
<ImageButton
android:id="@+id/imageButtonAdd2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:scaleType="centerInside"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:visibility="invisible"
android:background="@drawable/addmessage_selector"/>
<ImageButton
android:id="@+id/imageButtonAdd2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:scaleType="centerInside"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:visibility="invisible"
android:background="@drawable/addmessage_selector"/>
<ImageView
android:id="@+id/changeTraffic"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:padding="3dp"
android:layout_weight="0"
android:src="@drawable/traffic_off"
android:adjustViewBounds="true"/>
<ImageView
android:id="@+id/changeTraffic"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:padding="3dp"
android:layout_weight="0"
android:src="@drawable/traffic_off"
android:adjustViewBounds="true"/>
<ImageView
android:id="@+id/changeMapTypeHeader"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:padding="3dp"
android:layout_weight="0"
android:src="@drawable/satellite"
android:adjustViewBounds="true"/>
<ImageView
android:id="@+id/changeMapTypeHeader"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:padding="3dp"
android:layout_weight="0"
android:src="@drawable/satellite"
android:adjustViewBounds="true"/>
<TextView
android:id="@+id/textViewNew"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="New"
android:textStyle="bold"
android:paddingTop="7dp"
android:textColor="#FFFFFF"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"
android:paddingRight="5dp"
android:visibility="gone"/>
<!-- android:background="@drawable/addmessage_selector" -->
</LinearLayout>
</RelativeLayout>
<TextView
android:id="@+id/textViewNew"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="New"
android:textStyle="bold"
android:paddingTop="7dp"
android:textColor="#FFFFFF"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"
android:paddingRight="5dp"
android:visibility="gone"/>
</LinearLayout>
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/relativeHeader">
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/relativeHeader">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:weightSum="1">
<LinearLayout
android:layout_width="200dp"
android:layout_height="fill_parent"
android:id="@+id/layoutBig"
android:orientation="vertical"
android:visibility="visible">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/liveVehicle"
android:background="#ffffff"
android:orientation="vertical">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:weightSum="1">
<LinearLayout
android:layout_width="200dp"
android:layout_height="fill_parent"
android:id="@+id/layoutBig"
android:orientation="vertical"
android:visibility="visible">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/liveVehicle"
android:background="#ffffff"
android:orientation="vertical">
<LinearLayout
android:id="@+id/LayoutSpinner"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:paddingTop="10dp"
android:gravity="top"
android:layout_weight="1">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/vehicle"
android:textSize="20dp"
android:paddingLeft="5dp"
android:textColor="#000000"
android:gravity="left"
android:id="@+id/labelVehicle"/>
android:id="@+id/LayoutSpinner"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:paddingTop="10dp"
android:gravity="top"
android:layout_weight="1">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/vehicle"
android:textSize="20dp"
android:paddingLeft="5dp"
android:textColor="#000000"
android:gravity="left"
android:id="@+id/labelVehicle"/>
<Spinner
android:id="@+id/spinnerVehicle"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:entries="@array/arrayLanguages"
android:gravity="center_horizontal"
android:prompt="@string/selUsername"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="@string/startDate"
android:textSize="22dp"
android:paddingLeft="5dp"
android:textColor="#000000"
android:gravity="left"
android:id="@+id/labelStartDate"
android:visibility="gone"/>
<LinearLayout
android:id="@+id/layoutStartPicker"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_gravity="left"
android:gravity="right"
android:layout_marginLeft="2sp"
android:layout_marginRight="3sp"
android:orientation="horizontal"
android:background="@drawable/style_spinner">
<ImageView
android:id="@+id/imageViewStartDate"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:src="@drawable/calendar_48" />
<TextView
android:id="@+id/textViewStartDate"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:text="10:41, 12.12.2011"
android:textSize="18sp"
android:paddingLeft="1dp"
android:textColor="#000000"/>
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="@string/endDate"
android:textSize="22dp"
android:paddingLeft="5dp"
android:textColor="#000000"
android:gravity="left"
android:id="@+id/labelEndDate"
android:visibility="gone"/>
<LinearLayout
android:id="@+id/layoutEndPicker"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_gravity="left"
android:gravity="right"
android:layout_marginTop="3sp"
android:layout_marginLeft="2sp"
android:layout_marginRight="3sp"
android:orientation="horizontal"
android:background="@drawable/style_spinner">
<ImageView
android:id="@+id/imageViewEndDate"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:src="@drawable/calendar_48_red" />
<TextView
android:id="@+id/textViewEndDate"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:text="10:00, 13.12.2011"
android:textSize="18sp"
android:paddingLeft="1dp"
android:textColor="#000000" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="bottom">
<TextView
android:id="@+id/textViewSearch"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="bottom"
android:text=""
android:textSize="16dp"
android:paddingLeft="5dp"
android:textColor="#000000"/>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_weight="0"
style="?header"
android:gravity="center"
android:paddingTop="4dp">
<Spinner
android:id="@+id/spinnerVehicle"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:entries="@array/arrayLanguages"
android:gravity="center_horizontal"
android:prompt="@string/selUsername"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="@string/startDate"
android:textSize="22dp"
android:paddingLeft="5dp"
android:textColor="#000000"
android:gravity="left"
android:id="@+id/labelStartDate"
android:visibility="gone"/>
<LinearLayout
android:id="@+id/layoutStartPicker"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_gravity="left"
android:gravity="right"
android:layout_marginLeft="2sp"
android:layout_marginRight="3sp"
android:orientation="horizontal"
android:background="@drawable/style_spinner">
<ImageView
android:id="@+id/imageViewStartDate"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:src="@drawable/calendar_48" />
<TextView
android:id="@+id/textViewStartDate"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:text="10:41, 12.12.2011"
android:textSize="18sp"
android:paddingLeft="1dp"
android:textColor="#000000"/>
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="@string/endDate"
android:textSize="22dp"
android:paddingLeft="5dp"
android:textColor="#000000"
android:gravity="left"
android:id="@+id/labelEndDate"
android:visibility="gone"/>
<LinearLayout
android:id="@+id/layoutEndPicker"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_gravity="left"
android:gravity="right"
android:layout_marginTop="3sp"
android:layout_marginLeft="2sp"
android:layout_marginRight="3sp"
android:orientation="horizontal"
android:background="@drawable/style_spinner">
<ImageView
android:id="@+id/imageViewEndDate"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:src="@drawable/calendar_48_red" />
<TextView
android:id="@+id/textViewEndDate"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:text="10:00, 13.12.2011"
android:textSize="18sp"
android:paddingLeft="1dp"
android:textColor="#000000" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="bottom">
<TextView
android:id="@+id/textViewSearch"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="bottom"
android:text=""
android:textSize="16dp"
android:paddingLeft="5dp"
android:textColor="#000000"/>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_weight="0"
style="?header"
android:gravity="center"
android:paddingTop="4dp">
<Button
android:id="@+id/buttonDisplay"
style="?login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_weight="0"
android:text="@string/display" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="20dp"
android:layout_height="fill_parent"
android:id="@+id/slidelayout"
android:layout_toRightOf="@id/liveVehicle"
android:gravity="center_vertical"
android:orientation="vertical"
android:layout_weight="0">
<ImageView
android:id="@+id/slideLayoutImage"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_horizontal"
android:src="@drawable/arrow_left"
android:layout_weight="1"
style="?sliders" />
</LinearLayout>
<fragment
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/map"
android:layout_toRightOf="@id/slidelayout"
android:layout_weight="1"
android:name="com.google.android.gms.maps.SupportMapFragment" />
<Button
android:id="@+id/buttonDisplay"
style="?login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_weight="0"
android:text="@string/display" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="20dp"
android:layout_height="fill_parent"
android:id="@+id/slidelayout"
android:layout_toRightOf="@id/liveVehicle"
android:gravity="center_vertical"
android:orientation="vertical"
android:layout_weight="0">
<ImageView
android:id="@+id/slideLayoutImage"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_horizontal"
android:src="@drawable/arrow_left"
android:layout_weight="1"
style="?sliders" />
</LinearLayout>
<LinearLayout
android:id="@+id/layoutGoogleMaps"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_toRightOf="@id/slidelayout"
android:layout_weight="1"
android:orientation="horizontal" >
</LinearLayout>
</LinearLayout>
<ImageView
android:id="@+id/changeMapType"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:padding="3dp"
android:src="@drawable/satellite"
android:visibility="gone"/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="30dp"
android:layout_margin="3dp"
android:layout_alignLeft="@+id/changeMapType"
android:layout_below="@+id/changeMapType"
android:background="#fff"
android:orientation="horizontal"
android:id="@+id/layoutTraffic"
android:visibility="gone">
<ImageView
android:id="@+id/checkTraffic"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:padding="1dp"
android:src="@drawable/checked"/>
<TextView
android:id="@+id/changeTraffic2"
android:text="Traffic"
android:textSize="16dp"
android:textColor="#000"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical"/>
<ImageView
android:id="@+id/changeMapType"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:padding="3dp"
android:src="@drawable/satellite"
android:visibility="gone"/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="30dp"
android:layout_margin="3dp"
android:layout_alignLeft="@+id/changeMapType"
android:layout_below="@+id/changeMapType"
android:background="#fff"
android:orientation="horizontal"
android:id="@+id/layoutTraffic"
android:visibility="gone">
<ImageView
android:id="@+id/checkTraffic"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:padding="1dp"
android:src="@drawable/checked"/>
<TextView
android:id="@+id/changeTraffic2"
android:text="Traffic"
android:textSize="16dp"
android:textColor="#000"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical"/>
</LinearLayout>
</RelativeLayout>
</LinearLayout>
</RelativeLayout>
</RelativeLayout>

View File

@ -5,90 +5,70 @@
android:orientation="vertical" >
<LinearLayout
android:id="@+id/linearLayout1"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#000000">
<LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/linearLayout2" android:orientation="vertical">
<!--
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/linearLayout3">
<LinearLayout android:layout_width="80dp" android:id="@+id/linearLayout4" android:layout_height="wrap_content">
<Button android:layout_width="wrap_content" android:text="Create tabs" android:layout_height="wrap_content" android:id="@+id/button1"></Button>
</LinearLayout>
<LinearLayout android:layout_height="match_parent" android:id="@+id/linearLayout5" android:layout_width="match_parent">
<LinearLayout android:layout_width="100dp" android:layout_height="match_parent" android:id="@+id/linearLayout7" android:layout_weight="0.29" android:weightSum="1">
<Button android:text="Remove selected tab" android:layout_height="wrap_content" android:id="@+id/button3" android:layout_width="wrap_content"></Button>
</LinearLayout>
<EditText android:layout_width="wrap_content" android:id="@+id/editText1" android:layout_height="wrap_content" android:inputType="number" android:layout_weight="13.86">
<requestFocus></requestFocus>
</EditText>
<LinearLayout android:layout_width="80dp" android:layout_height="match_parent" android:id="@+id/linearLayout7" android:layout_weight="0.29" android:weightSum="1">
<Button android:layout_width="wrap_content" android:text="Add tab" android:layout_height="wrap_content" android:id="@+id/button2" android:layout_weight="0.25"></Button>
</LinearLayout>
</LinearLayout>
</LinearLayout>
-->
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:id="@+id/linearLayout6"
android:orientation="horizontal"
android:layout_height="fill_parent">
<TabHost
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@android:id/tabhost"
android:layout_weight="1">
<RelativeLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="0dp">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="390dp"
android:layout_height="wrap_content"/>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@android:id/tabs"/>
android:id="@+id/linearLayout1"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#000000">
</RelativeLayout>
</TabHost>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="0"
android:orientation="horizontal">
<LinearLayout
android:layout_width="20dp"
android:layout_height="fill_parent"
android:id="@+id/layoutSlideMenu"
android:gravity="center_vertical"
android:orientation="vertical"
android:layout_weight="0">
<ImageView
android:id="@+id/imageViewSlideMenu"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_horizontal"
android:src="@drawable/arrow_right"
android:layout_weight="1"
style="?sliders" />
</LinearLayout>
<include
android:id="@+id/layoutMenu"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
layout="@layout/menu" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:id="@+id/linearLayout6"
android:orientation="horizontal"
android:layout_height="fill_parent">
<TabHost
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@android:id/tabhost"
android:layout_weight="1">
<RelativeLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="0dp">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="390dp"
android:layout_height="wrap_content"/>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@android:id/tabs"/>
</RelativeLayout>
</TabHost>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="0"
android:orientation="horizontal">
<LinearLayout
android:layout_width="20dp"
android:layout_height="fill_parent"
android:id="@+id/layoutSlideMenu"
android:gravity="center_vertical"
android:orientation="vertical"
android:layout_weight="0">
<ImageView
android:id="@+id/imageViewSlideMenu"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_horizontal"
android:src="@drawable/arrow_right"
android:layout_weight="1"
style="?sliders" />
</LinearLayout>
<include
android:id="@+id/layoutMenu"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
layout="@layout/menu" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<RelativeLayout
android:id="@+id/layoutNewMessage"
android:layout_width="250dp"
@ -100,20 +80,20 @@
android:layout_margin="2dp"
android:visibility="invisible"
android:background="@drawable/alert_message">
android:visibility="invisible"
android:background="@drawable/alert_message">
<ImageView
android:id="@+id/imageViewClose"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/balloon_overlay_close"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
<ImageView
android:id="@+id/imageViewClose"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/balloon_overlay_close"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:visibility="invisible"
android:background="@drawable/balloon_close_bg_selector" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_height="wrap_content"
android:padding="3dp">
<TextView
android:id="@+id/slideTabsText"
@ -127,15 +107,15 @@
android:gravity="center_vertical"
android:layout_above="@android:id/tabs"/>
<LinearLayout
android:layout_above="@android:id/tabs"/>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:id="@+id/imageViewPopUp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:id="@+id/imageViewPopUp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/message"
android:layout_gravity="center_vertical" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@ -162,7 +142,6 @@
android:layout_gravity="center_vertical"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</RelativeLayout>
</RelativeLayout>

View File

@ -1,240 +1,241 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" android:weightSum="1"
android:id="@+id/layoutMain"
style="?bg">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header"
android:id="@+id/layoutHeader">
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" android:weightSum="1"
android:id="@+id/layoutMain"
style="?bg">
<ImageView
android:id="@+id/imageViewMsg"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:src="@drawable/message"
android:paddingLeft="5dp"
android:layout_margin="3dp"
android:layout_weight="0" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="@string/textMessaging"
android:layout_marginLeft="5dp"
android:textStyle="bold"
android:paddingTop="7dp"
android:textColor="#FFFFFF"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header"
android:id="@+id/layoutHeader">
<ImageView
android:id="@+id/imageViewSeparator"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:src="@drawable/separator_white"
android:layout_margin="2dp"
android:layout_weight="0"
android:visibility="invisible"
android:focusable="false" />
<ImageView
android:id="@+id/imageViewMsg"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:src="@drawable/message"
android:paddingLeft="5dp"
android:layout_margin="3dp"
android:layout_weight="0" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="@string/textMessaging"
android:layout_marginLeft="5dp"
android:textStyle="bold"
android:paddingTop="7dp"
android:textColor="#FFFFFF"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"/>
<ImageView
android:id="@+id/imageViewSeparator"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:src="@drawable/separator_white"
android:layout_margin="2dp"
android:layout_weight="0"
android:visibility="invisible"
android:focusable="false" />
<ImageView
android:id="@+id/imageViewDown"
android:layout_width="20dp"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginBottom="2dp"
android:layout_marginTop="2dp"
android:focusable="false"
android:visibility="invisible"
android:src="@drawable/arrow_menu_down" />
<ImageButton
android:id="@+id/imageButtonAdd2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:scaleType="centerInside"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:visibility="invisible"
android:background="@drawable/addmessage_selector"/>
<ImageButton
android:id="@+id/imageButtonAdd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:scaleType="centerInside"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:background="@drawable/addmessage_selector"/>
<TextView
android:id="@+id/textViewNew"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="New"
android:textStyle="bold"
android:paddingTop="7dp"
android:textColor="#FFFFFF"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"
android:paddingRight="5dp"
android:visibility="gone"/>
<!-- android:background="@drawable/addmessage_selector" -->
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header"
android:id="@+id/layoutHeaderConversation">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical">
<ImageButton
android:id="@+id/imageButtonBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:background="@drawable/messageback_selector"/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_horizontal"
android:layout_weight="1"
android:gravity="right|center_vertical"
android:orientation="horizontal"
android:paddingBottom="0dp"
android:paddingRight="15dp"
android:paddingTop="0dp" >
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="0">
<ImageView
android:id="@+id/imageViewDown"
android:layout_width="20dp"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginBottom="2dp"
android:layout_marginTop="2dp"
android:focusable="false"
android:visibility="invisible"
android:src="@drawable/arrow_menu_down" />
<ImageButton
android:id="@+id/imageButtonAdd2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:scaleType="centerInside"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:visibility="invisible"
android:background="@drawable/addmessage_selector"/>
<ImageButton
android:id="@+id/imageButtonAdd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:scaleType="centerInside"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:background="@drawable/addmessage_selector"/>
<TextView
android:id="@+id/textViewNew"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:text="New"
android:textStyle="bold"
android:paddingTop="7dp"
android:textColor="#FFFFFF"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"
android:paddingRight="5dp"
android:visibility="gone"/>
<!-- android:background="@drawable/addmessage_selector" -->
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header"
android:id="@+id/layoutHeaderConversation">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical">
<ImageButton
android:id="@+id/imageButtonBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginRight="5dp"
android:paddingLeft="2dp"
android:background="@drawable/messageback_selector"/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_horizontal"
android:layout_weight="1"
android:gravity="right|center_vertical"
android:orientation="horizontal"
android:paddingBottom="0dp"
android:paddingRight="15dp"
android:paddingTop="0dp" >
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="0">
<ImageView
android:id="@+id/imageViewSelectedContact"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:src="@drawable/ambulance_large"
android:layout_margin="3dp" />
</LinearLayout>
<TextView
android:id="@+id/textViewSelectedContact"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:text="Large Text"
android:gravity="center_vertical"
android:paddingLeft="3dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"/>
</LinearLayout>
<!-- android:background="@drawable/addmessage_selector" -->
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/layoutConversations"
android:layout_weight="1"
android:orientation="vertical">
android:id="@+id/imageViewSelectedContact"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:src="@drawable/ambulance_large"
android:layout_margin="3dp" />
</LinearLayout>
<TextView
android:id="@+id/textViewSelectedContact"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:text="Large Text"
android:gravity="center_vertical"
android:paddingLeft="3dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="0"/>
<GridView
android:id="@+id/gridView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#999999"
android:drawSelectorOnTop="false"
android:horizontalSpacing="0dp"
android:numColumns="1"
android:verticalSpacing="1dp" >
</GridView>
</LinearLayout>
<LinearLayout
android:id="@+id/layoutSendMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header">
<LinearLayout
android:layout_weight="0"
android:layout_width="wrap_content"
android:layout_height="fill_parent">
<TextView
android:id="@+id/textViewSendMsg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="@string/message"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:textSize="18dp"
/>
</LinearLayout>
<LinearLayout
android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingTop="4dp">
<EditText
android:id="@+id/editTextMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="center_vertical"
android:inputType="text"
android:maxLength="255" >
</EditText>
</LinearLayout>
<LinearLayout
android:layout_weight="0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingTop="4dp">
<ImageView
android:id="@+id/imageBarcode"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:src="@drawable/barcode"
android:layout_margin="3dp" />
</LinearLayout>
<Button
android:id="@+id/imageButtonSend"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:text="@string/send"
android:layout_marginRight="5dp"
android:layout_gravity="center"
android:paddingLeft="6dp"
android:textColor="#000000"
style="?login"/>
</LinearLayout>
</LinearLayout>
<!-- android:background="@drawable/addmessage_selector" -->
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/layoutConversations"
android:layout_weight="1"
android:orientation="vertical">
<GridView
android:id="@+id/gridView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#999999"
android:drawSelectorOnTop="false"
android:horizontalSpacing="0dp"
android:numColumns="1"
android:verticalSpacing="1dp" >
</GridView>
</LinearLayout>
<LinearLayout
android:id="@+id/layoutSendMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="left"
android:layout_weight="0"
android:orientation="horizontal"
style="?header">
<LinearLayout
android:layout_weight="0"
android:layout_width="wrap_content"
android:layout_height="fill_parent">
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="@string/message"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:textSize="18dp"
/>
</LinearLayout>
<LinearLayout
android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingTop="4dp">
<EditText
android:id="@+id/editTextMsg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="center_vertical"
android:inputType="text"
android:maxLength="255"
android:autofillHints="">
</EditText>
</LinearLayout>
<LinearLayout
android:layout_weight="0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingTop="4dp">
<ImageView
android:id="@+id/imageBarcode"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:src="@drawable/barcode"
android:layout_margin="3dp" />
</LinearLayout>
<Button
android:id="@+id/imageButtonSend"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0"
android:text="@string/send"
android:layout_marginRight="5dp"
android:layout_gravity="center"
android:paddingLeft="6dp"
android:textColor="#000000"
style="?login"/>
</LinearLayout>
</LinearLayout>

View File

@ -232,4 +232,7 @@
<item >German</item>
<item >Romanian</item>
</string-array>
<string name="speedMph">%1$d mph</string>
</resources>

View File

@ -236,4 +236,7 @@
<item >Spanish</item>
<item >Russian</item>
</string-array>
<string name="speedMph">%1$d mph</string>
</resources>

View File

@ -233,4 +233,7 @@
<item >Turca</item>
<item >Romana</item>
</string-array>
<string name="speedMph">%1$d mph</string>
</resources>

View File

@ -232,4 +232,7 @@
<item >German</item>
<item >Romanian</item>
</string-array>
<string name="speedMph">%1$d mph</string>
</resources>

View File

@ -254,4 +254,8 @@
</string-array>
<string name="title_activity_new_live">NewLiveActivity</string>
<string name="title_activity_google_maps">GoogleMapsActivity</string>
<string name="speedMph">%1$d mph</string>
</resources>