From: Tobias Brunner Date: Tue, 27 Jun 2017 11:50:18 +0000 (+0200) Subject: android: Add class that wraps ApplicationInfo for selected apps X-Git-Tag: 5.6.0dr1~24^2~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5561633fcd54636b1a3f917eb5c86980d0c527b9;p=thirdparty%2Fstrongswan.git android: Add class that wraps ApplicationInfo for selected apps --- diff --git a/src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/SelectedApplicationEntry.java b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/SelectedApplicationEntry.java new file mode 100644 index 0000000000..0bfbbcfa50 --- /dev/null +++ b/src/frontends/android/app/src/main/java/org/strongswan/android/ui/adapter/SelectedApplicationEntry.java @@ -0,0 +1,71 @@ +/* + * Copyright (C) 2017 Tobias Brunner + * HSR Hochschule fuer Technik Rapperswil + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. See . + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + */ + +package org.strongswan.android.ui.adapter; + +import android.content.pm.ApplicationInfo; +import android.content.pm.PackageManager; +import android.graphics.drawable.Drawable; +import android.support.annotation.NonNull; + +import java.text.Collator; + +public class SelectedApplicationEntry implements Comparable +{ + private final ApplicationInfo mInfo; + private final Drawable mIcon; + private final String mName; + private boolean mSelected; + + public SelectedApplicationEntry(PackageManager packageManager, ApplicationInfo info) + { + mInfo = info; + CharSequence name = info.loadLabel(packageManager); + mName = name == null ? info.packageName : name.toString(); + mIcon = info.loadIcon(packageManager); + } + + public void setSelected(boolean selected) + { + mSelected = selected; + } + + public boolean isSelected() + { + return mSelected; + } + + public ApplicationInfo getInfo() + { + return mInfo; + } + + public Drawable getIcon() + { + return mIcon; + } + + @Override + public String toString() + { + return mName; + } + + @Override + public int compareTo(@NonNull SelectedApplicationEntry another) + { + return Collator.getInstance().compare(toString(), another.toString()); + } +}