1
0
mirror of https://github.com/XFox111/GUTSchedule.git synced 2026-04-22 06:58:01 +03:00

Added icons, repository and code cleanup

This commit is contained in:
Michael Gordeev
2019-12-23 12:21:46 +03:00
parent 66bf57c7d0
commit 32c97aa6cf
29 changed files with 347 additions and 250 deletions
@@ -10,7 +10,7 @@ namespace GUT.Schedule
/// <summary> /// <summary>
/// Shows status of schedule export process /// Shows status of schedule export process
/// </summary> /// </summary>
[Activity(Theme = "@style/AppTheme.NoActionBar")] [Activity]
public class ExportActivity : Activity public class ExportActivity : Activity
{ {
TextView status; TextView status;
@@ -14,6 +14,7 @@ namespace GUT.Schedule
public class MainActivity : AppCompatActivity public class MainActivity : AppCompatActivity
{ {
Button start, end, export; Button start, end, export;
Button forDay, forWeek, forMonth, forSemester;
Spinner faculty, course, group, reminder, calendar; Spinner faculty, course, group, reminder, calendar;
CheckBox groupTitle; CheckBox groupTitle;
TextView error; TextView error;
@@ -93,6 +94,12 @@ namespace GUT.Schedule
group.SetList(this, Data.Groups.Select(i => i.Name)); group.SetList(this, Data.Groups.Select(i => i.Name));
} }
private void SetDate(int days)
{
Data.EndDate = Data.StartDate.AddDays(days);
end.Text = Data.EndDate.ToShortDateString();
}
#region Init stuff #region Init stuff
private void AssignVariables() private void AssignVariables()
{ {
@@ -100,6 +107,11 @@ namespace GUT.Schedule
end = FindViewById<Button>(Resource.Id.end); end = FindViewById<Button>(Resource.Id.end);
export = FindViewById<Button>(Resource.Id.export); export = FindViewById<Button>(Resource.Id.export);
forDay = FindViewById<Button>(Resource.Id.forDay);
forWeek = FindViewById<Button>(Resource.Id.forWeek);
forMonth = FindViewById<Button>(Resource.Id.forMonth);
forSemester = FindViewById<Button>(Resource.Id.forSemester);
faculty = FindViewById<Spinner>(Resource.Id.faculty); faculty = FindViewById<Spinner>(Resource.Id.faculty);
course = FindViewById<Spinner>(Resource.Id.course); course = FindViewById<Spinner>(Resource.Id.course);
group = FindViewById<Spinner>(Resource.Id.group); group = FindViewById<Spinner>(Resource.Id.group);
@@ -115,6 +127,15 @@ namespace GUT.Schedule
faculty.ItemSelected += UpdateGroupsList; faculty.ItemSelected += UpdateGroupsList;
course.ItemSelected += UpdateGroupsList; course.ItemSelected += UpdateGroupsList;
forDay.Click += (s, e) => SetDate(0);
forWeek.Click += (s, e) => SetDate(6);
forMonth.Click += (s, e) => SetDate(30);
forSemester.Click += (s, e) =>
{
Data.EndDate = DateTime.Today.Month > 8 ? new DateTime(DateTime.Today.Year + 1, 1, 1) : new DateTime(DateTime.Today.Year, 8, 31);
end.Text = Data.EndDate.ToShortDateString();
};
start.Click += Start_Click; start.Click += Start_Click;
end.Click += End_Click; end.Click += End_Click;
@@ -131,10 +152,14 @@ namespace GUT.Schedule
public override bool OnOptionsItemSelected(IMenuItem item) public override bool OnOptionsItemSelected(IMenuItem item)
{ {
if (item.ItemId == Resource.Id.github) switch (item.ItemId)
{ {
case Resource.Id.github:
StartActivity(new Intent(Intent.ActionView, Android.Net.Uri.Parse("https://github.com/xfox111/GUTSchedule"))); StartActivity(new Intent(Intent.ActionView, Android.Net.Uri.Parse("https://github.com/xfox111/GUTSchedule")));
return true; return true;
case Resource.Id.email:
StartActivity(new Intent(Intent.CategoryAppEmail, Android.Net.Uri.Parse("feedback@xfox111.net")));
return true;
} }
return base.OnOptionsItemSelected(item); return base.OnOptionsItemSelected(item);
@@ -16,7 +16,7 @@ namespace GUT.Schedule
/// <summary> /// <summary>
/// Splash screen activity. Loads init data /// Splash screen activity. Loads init data
/// </summary> /// </summary>
[Activity(MainLauncher = true, Theme = "@style/AppTheme.NoActionBar")] [Activity(MainLauncher = true)]
public class StartActivity : AppCompatActivity public class StartActivity : AppCompatActivity
{ {
TextView status; TextView status;
+2 -3
View File
@@ -63,13 +63,12 @@ namespace GUT.Schedule
item.Name, item.Name,
item.Type)); item.Type));
eventValues.Put(CalendarContract.Events.InterfaceConsts.Description, string.Join(';', item.Professor)); eventValues.Put(CalendarContract.Events.InterfaceConsts.Description, item.Professor);
eventValues.Put(CalendarContract.Events.InterfaceConsts.EventLocation, string.Join(';', item.Cabinets)); eventValues.Put(CalendarContract.Events.InterfaceConsts.EventLocation, string.Join(';', item.Cabinets));
eventValues.Put(CalendarContract.Events.InterfaceConsts.Availability, 0); eventValues.Put(CalendarContract.Events.InterfaceConsts.Availability, 0);
if (data.Reminder.HasValue) eventValues.Put(CalendarContract.Events.InterfaceConsts.HasAlarm, System.Convert.ToInt32(data.Reminder.HasValue));
eventValues.Put(CalendarContract.Events.InterfaceConsts.HasAlarm, true);
eventValues.Put(CalendarContract.Events.InterfaceConsts.Dtstart, item.StartTime.ToUnixTime()); eventValues.Put(CalendarContract.Events.InterfaceConsts.Dtstart, item.StartTime.ToUnixTime());
eventValues.Put(CalendarContract.Events.InterfaceConsts.Dtend, Extensions.ToUnixTime(item.EndTime)); eventValues.Put(CalendarContract.Events.InterfaceConsts.Dtend, Extensions.ToUnixTime(item.EndTime));
@@ -3,6 +3,7 @@ using Android.OS;
using Android.Widget; using Android.Widget;
using Android.App; using Android.App;
using System.Threading.Tasks; using System.Threading.Tasks;
using Android.Content;
namespace GUT.Schedule namespace GUT.Schedule
{ {
@@ -23,6 +24,12 @@ namespace GUT.Schedule
dismissed = true; dismissed = true;
} }
public override void OnCancel(IDialogInterface dialog)
{
base.OnCancel(dialog);
dismissed = true;
}
/// <summary> /// <summary>
/// Shows date picker and waits for user input /// Shows date picker and waits for user input
/// </summary> /// </summary>
@@ -37,7 +44,7 @@ namespace GUT.Schedule
while (!dismissed) while (!dismissed)
await Task.Delay(100); await Task.Delay(100);
return date; return _date;
} }
} }
} }
@@ -100,9 +100,7 @@
<AndroidResource Include="Resources\mipmap-xxxhdpi\ic_launcher_foreground.png" /> <AndroidResource Include="Resources\mipmap-xxxhdpi\ic_launcher_foreground.png" />
<AndroidResource Include="Resources\mipmap-xxxhdpi\ic_launcher_round.png" /> <AndroidResource Include="Resources\mipmap-xxxhdpi\ic_launcher_round.png" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup />
<Folder Include="Resources\drawable\" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="AngleSharp"> <PackageReference Include="AngleSharp">
<Version>0.13.0</Version> <Version>0.13.0</Version>
@@ -128,6 +126,9 @@
<SubType>Designer</SubType> <SubType>Designer</SubType>
</AndroidResource> </AndroidResource>
</ItemGroup> </ItemGroup>
<ItemGroup>
<AndroidResource Include="Resources\drawable\logo.png" />
</ItemGroup>
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" /> <Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it. <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets. Other similar extension points exist, see Microsoft.Common.targets.
@@ -0,0 +1,12 @@
namespace GUT.Schedule.Models
{
public class DataSet
{
public string Calendar { get; set; }
public string Faculty { get; set; }
public int Course { get; set; }
public string Group { get; set; }
public int? Reminder { get; set; }
public bool AddGroupToTitle { get; set; }
}
}
+13 -11
View File
@@ -1,6 +1,7 @@
using AngleSharp.Dom; using AngleSharp.Dom;
using AngleSharp.Html.Dom; using AngleSharp.Html.Dom;
using AngleSharp.Html.Parser; using AngleSharp.Html.Parser;
using GUT.Schedule.Models;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
@@ -12,17 +13,17 @@ namespace GUT.Schedule
{ {
public static class Parser public static class Parser
{ {
public static async Task LoadSchedule() public static async Task<List<Subject>> LoadSchedule()
{ {
Data.Schedule = new List<Subject>(); List<Subject> schedule = new List<Subject>();
using HttpClient client = new HttpClient(); using HttpClient client = new HttpClient();
Dictionary<string, string> requestBody = new Dictionary<string, string> Dictionary<string, string> requestBody = new Dictionary<string, string>
{ {
{ "group_el", "0" }, { "group_el", "0" },
{ "kurs", Data.Course.ToString() }, { "kurs", Data.DataSet.Course.ToString() },
{ "type_z", "1" }, { "type_z", "1" },
{ "faculty", Data.Faculties[Data.Faculty].Id }, { "faculty", Data.DataSet.Faculty },
{ "group", Data.Groups[Data.Group].Id }, { "group", Data.DataSet.Group },
{ "ok", "Показать" }, { "ok", "Показать" },
{ "schet", GetCurrentSemester() } { "schet", GetCurrentSemester() }
}; };
@@ -33,12 +34,10 @@ namespace GUT.Schedule
request.Content.Headers.ContentType = new MediaTypeHeaderValue("application/x-www-form-urlencoded"); request.Content.Headers.ContentType = new MediaTypeHeaderValue("application/x-www-form-urlencoded");
HttpResponseMessage response = await client.SendAsync(request); HttpResponseMessage response = await client.SendAsync(request);
string responseBody = await response.Content.ReadAsStringAsync();
HtmlParser parser = new HtmlParser(); IHtmlDocument doc = new HtmlParser().ParseDocument(await response.Content.ReadAsStringAsync());
IHtmlDocument doc = parser.ParseDocument(responseBody);
string groupName = doc.QuerySelectorAll("#group option").FirstOrDefault(i => i.HasAttribute("selected")).TextContent; string groupName = Data.Groups.First(i => i.Id == Data.DataSet.Group).Name;
IHtmlCollection<IElement> pairs = doc.QuerySelectorAll(".pair"); IHtmlCollection<IElement> pairs = doc.QuerySelectorAll(".pair");
foreach (IElement item in pairs) foreach (IElement item in pairs)
@@ -51,11 +50,14 @@ namespace GUT.Schedule
type = item.QuerySelector(".type").TextContent.Replace("(", "").Replace(")", ""); type = item.QuerySelector(".type").TextContent.Replace("(", "").Replace(")", "");
professor = item.QuerySelector(".teacher")?.GetAttribute("title") ?? ""; professor = item.QuerySelector(".teacher")?.GetAttribute("title") ?? "";
place = item.QuerySelector(".aud")?.TextContent ?? "СПбГУТ"; place = item.QuerySelector(".aud")?.TextContent ?? "СПбГУТ";
order = int.Parse(item.GetAttribute("pair") ?? "2") - 1; order = int.Parse(item.GetAttribute("pair")) - 1;
weeks = item.QuerySelector(".weeks").TextContent.Replace("(", "").Replace("н)", "").Split(", "); weeks = item.QuerySelector(".weeks").TextContent.Replace("(", "").Replace("н)", "").Split(", ");
weekday = int.Parse(item.GetAttribute("weekday")); weekday = int.Parse(item.GetAttribute("weekday"));
Data.Schedule.AddRange(Subject.GetSubject(name, type, professor, place, order, weeks, weekday, groupName));
schedule.AddRange(Subject.GetSubject(name, type, professor, place, order, weeks, weekday, groupName));
} }
return schedule;
} }
public static async Task LoadFaculties() public static async Task LoadFaculties()
+235 -217
View File
@@ -3154,55 +3154,58 @@ namespace GUT.Schedule
public const int ic_mtrl_chip_close_circle = 2131165284; public const int ic_mtrl_chip_close_circle = 2131165284;
// aapt resource value: 0x7F070065 // aapt resource value: 0x7F070065
public const int mtrl_snackbar_background = 2131165285; public const int logo = 2131165285;
// aapt resource value: 0x7F070066 // aapt resource value: 0x7F070066
public const int mtrl_tabs_default_indicator = 2131165286; public const int mtrl_snackbar_background = 2131165286;
// aapt resource value: 0x7F070067 // aapt resource value: 0x7F070067
public const int navigation_empty_icon = 2131165287; public const int mtrl_tabs_default_indicator = 2131165287;
// aapt resource value: 0x7F070068 // aapt resource value: 0x7F070068
public const int notification_action_background = 2131165288; public const int navigation_empty_icon = 2131165288;
// aapt resource value: 0x7F070069 // aapt resource value: 0x7F070069
public const int notification_bg = 2131165289; public const int notification_action_background = 2131165289;
// aapt resource value: 0x7F07006A // aapt resource value: 0x7F07006A
public const int notification_bg_low = 2131165290; public const int notification_bg = 2131165290;
// aapt resource value: 0x7F07006B // aapt resource value: 0x7F07006B
public const int notification_bg_low_normal = 2131165291; public const int notification_bg_low = 2131165291;
// aapt resource value: 0x7F07006C // aapt resource value: 0x7F07006C
public const int notification_bg_low_pressed = 2131165292; public const int notification_bg_low_normal = 2131165292;
// aapt resource value: 0x7F07006D // aapt resource value: 0x7F07006D
public const int notification_bg_normal = 2131165293; public const int notification_bg_low_pressed = 2131165293;
// aapt resource value: 0x7F07006E // aapt resource value: 0x7F07006E
public const int notification_bg_normal_pressed = 2131165294; public const int notification_bg_normal = 2131165294;
// aapt resource value: 0x7F07006F // aapt resource value: 0x7F07006F
public const int notification_icon_background = 2131165295; public const int notification_bg_normal_pressed = 2131165295;
// aapt resource value: 0x7F070070 // aapt resource value: 0x7F070070
public const int notification_template_icon_bg = 2131165296; public const int notification_icon_background = 2131165296;
// aapt resource value: 0x7F070071 // aapt resource value: 0x7F070071
public const int notification_template_icon_low_bg = 2131165297; public const int notification_template_icon_bg = 2131165297;
// aapt resource value: 0x7F070072 // aapt resource value: 0x7F070072
public const int notification_tile_bg = 2131165298; public const int notification_template_icon_low_bg = 2131165298;
// aapt resource value: 0x7F070073 // aapt resource value: 0x7F070073
public const int notify_panel_notification_icon_bg = 2131165299; public const int notification_tile_bg = 2131165299;
// aapt resource value: 0x7F070074 // aapt resource value: 0x7F070074
public const int tooltip_frame_dark = 2131165300; public const int notify_panel_notification_icon_bg = 2131165300;
// aapt resource value: 0x7F070075 // aapt resource value: 0x7F070075
public const int tooltip_frame_light = 2131165301; public const int tooltip_frame_dark = 2131165301;
// aapt resource value: 0x7F070076
public const int tooltip_frame_light = 2131165302;
static Drawable() static Drawable()
{ {
@@ -3401,421 +3404,436 @@ namespace GUT.Schedule
public const int edit_query = 2131230784; public const int edit_query = 2131230784;
// aapt resource value: 0x7F080041 // aapt resource value: 0x7F080041
public const int end = 2131230785; public const int email = 2131230785;
// aapt resource value: 0x7F080042 // aapt resource value: 0x7F080042
public const int enterAlways = 2131230786; public const int end = 2131230786;
// aapt resource value: 0x7F080043 // aapt resource value: 0x7F080043
public const int enterAlwaysCollapsed = 2131230787; public const int enterAlways = 2131230787;
// aapt resource value: 0x7F080044 // aapt resource value: 0x7F080044
public const int error = 2131230788; public const int enterAlwaysCollapsed = 2131230788;
// aapt resource value: 0x7F080045 // aapt resource value: 0x7F080045
public const int exitUntilCollapsed = 2131230789; public const int error = 2131230789;
// aapt resource value: 0x7F080047
public const int expanded_menu = 2131230791;
// aapt resource value: 0x7F080046 // aapt resource value: 0x7F080046
public const int expand_activities_button = 2131230790; public const int exitUntilCollapsed = 2131230790;
// aapt resource value: 0x7F080048 // aapt resource value: 0x7F080048
public const int export = 2131230792; public const int expanded_menu = 2131230792;
// aapt resource value: 0x7F080047
public const int expand_activities_button = 2131230791;
// aapt resource value: 0x7F080049 // aapt resource value: 0x7F080049
public const int faculty = 2131230793; public const int export = 2131230793;
// aapt resource value: 0x7F08004A // aapt resource value: 0x7F08004A
public const int fill = 2131230794; public const int faculty = 2131230794;
// aapt resource value: 0x7F08004D
public const int filled = 2131230797;
// aapt resource value: 0x7F08004B // aapt resource value: 0x7F08004B
public const int fill_horizontal = 2131230795; public const int fill = 2131230795;
// aapt resource value: 0x7F08004C
public const int fill_vertical = 2131230796;
// aapt resource value: 0x7F08004E // aapt resource value: 0x7F08004E
public const int @fixed = 2131230798; public const int filled = 2131230798;
// aapt resource value: 0x7F08004C
public const int fill_horizontal = 2131230796;
// aapt resource value: 0x7F08004D
public const int fill_vertical = 2131230797;
// aapt resource value: 0x7F08004F // aapt resource value: 0x7F08004F
public const int forever = 2131230799; public const int @fixed = 2131230799;
// aapt resource value: 0x7F080050
public const int forDay = 2131230800;
// aapt resource value: 0x7F080054
public const int forever = 2131230804;
// aapt resource value: 0x7F080051
public const int forMonth = 2131230801;
// aapt resource value: 0x7F080052
public const int forSemester = 2131230802;
// aapt resource value: 0x7F080053
public const int forWeek = 2131230803;
// aapt resource value: 0x7F080002 // aapt resource value: 0x7F080002
public const int FUNCTION = 2131230722; public const int FUNCTION = 2131230722;
// aapt resource value: 0x7F080050
public const int ghost_view = 2131230800;
// aapt resource value: 0x7F080051
public const int github = 2131230801;
// aapt resource value: 0x7F080052
public const int group = 2131230802;
// aapt resource value: 0x7F080053
public const int groupTitle = 2131230803;
// aapt resource value: 0x7F080054
public const int group_divider = 2131230804;
// aapt resource value: 0x7F080055 // aapt resource value: 0x7F080055
public const int home = 2131230805; public const int ghost_view = 2131230805;
// aapt resource value: 0x7F080056 // aapt resource value: 0x7F080056
public const int homeAsUp = 2131230806; public const int github = 2131230806;
// aapt resource value: 0x7F080057 // aapt resource value: 0x7F080057
public const int icon = 2131230807; public const int group = 2131230807;
// aapt resource value: 0x7F080058 // aapt resource value: 0x7F080058
public const int icon_group = 2131230808; public const int groupTitle = 2131230808;
// aapt resource value: 0x7F080059 // aapt resource value: 0x7F080059
public const int ifRoom = 2131230809; public const int group_divider = 2131230809;
// aapt resource value: 0x7F08005A // aapt resource value: 0x7F08005A
public const int image = 2131230810; public const int home = 2131230810;
// aapt resource value: 0x7F08005B // aapt resource value: 0x7F08005B
public const int info = 2131230811; public const int homeAsUp = 2131230811;
// aapt resource value: 0x7F08005C // aapt resource value: 0x7F08005C
public const int italic = 2131230812; public const int icon = 2131230812;
// aapt resource value: 0x7F08005D // aapt resource value: 0x7F08005D
public const int item_touch_helper_previous_elevation = 2131230813; public const int icon_group = 2131230813;
// aapt resource value: 0x7F08005E // aapt resource value: 0x7F08005E
public const int labeled = 2131230814; public const int ifRoom = 2131230814;
// aapt resource value: 0x7F08005F // aapt resource value: 0x7F08005F
public const int largeLabel = 2131230815; public const int image = 2131230815;
// aapt resource value: 0x7F080060 // aapt resource value: 0x7F080060
public const int left = 2131230816; public const int info = 2131230816;
// aapt resource value: 0x7F080061 // aapt resource value: 0x7F080061
public const int line1 = 2131230817; public const int italic = 2131230817;
// aapt resource value: 0x7F080062 // aapt resource value: 0x7F080062
public const int line3 = 2131230818; public const int item_touch_helper_previous_elevation = 2131230818;
// aapt resource value: 0x7F080063 // aapt resource value: 0x7F080063
public const int listMode = 2131230819; public const int labeled = 2131230819;
// aapt resource value: 0x7F080064 // aapt resource value: 0x7F080064
public const int list_item = 2131230820; public const int largeLabel = 2131230820;
// aapt resource value: 0x7F080065 // aapt resource value: 0x7F080065
public const int masked = 2131230821; public const int left = 2131230821;
// aapt resource value: 0x7F080066 // aapt resource value: 0x7F080066
public const int message = 2131230822; public const int line1 = 2131230822;
// aapt resource value: 0x7F080067
public const int line3 = 2131230823;
// aapt resource value: 0x7F080068
public const int listMode = 2131230824;
// aapt resource value: 0x7F080069
public const int list_item = 2131230825;
// aapt resource value: 0x7F08006A
public const int masked = 2131230826;
// aapt resource value: 0x7F08006B
public const int message = 2131230827;
// aapt resource value: 0x7F080003 // aapt resource value: 0x7F080003
public const int META = 2131230723; public const int META = 2131230723;
// aapt resource value: 0x7F080067
public const int middle = 2131230823;
// aapt resource value: 0x7F080068
public const int mini = 2131230824;
// aapt resource value: 0x7F080069
public const int mtrl_child_content_container = 2131230825;
// aapt resource value: 0x7F08006A
public const int mtrl_internal_children_alpha_tag = 2131230826;
// aapt resource value: 0x7F08006B
public const int multiply = 2131230827;
// aapt resource value: 0x7F08006C // aapt resource value: 0x7F08006C
public const int navigation_header_container = 2131230828; public const int middle = 2131230828;
// aapt resource value: 0x7F08006D // aapt resource value: 0x7F08006D
public const int never = 2131230829; public const int mini = 2131230829;
// aapt resource value: 0x7F08006E // aapt resource value: 0x7F08006E
public const int none = 2131230830; public const int mtrl_child_content_container = 2131230830;
// aapt resource value: 0x7F08006F // aapt resource value: 0x7F08006F
public const int normal = 2131230831; public const int mtrl_internal_children_alpha_tag = 2131230831;
// aapt resource value: 0x7F080070 // aapt resource value: 0x7F080070
public const int notification_background = 2131230832; public const int multiply = 2131230832;
// aapt resource value: 0x7F080071 // aapt resource value: 0x7F080071
public const int notification_main_column = 2131230833; public const int navigation_header_container = 2131230833;
// aapt resource value: 0x7F080072 // aapt resource value: 0x7F080072
public const int notification_main_column_container = 2131230834; public const int never = 2131230834;
// aapt resource value: 0x7F080073 // aapt resource value: 0x7F080073
public const int outline = 2131230835; public const int none = 2131230835;
// aapt resource value: 0x7F080074 // aapt resource value: 0x7F080074
public const int parallax = 2131230836; public const int normal = 2131230836;
// aapt resource value: 0x7F080075 // aapt resource value: 0x7F080075
public const int parentPanel = 2131230837; public const int notification_background = 2131230837;
// aapt resource value: 0x7F080076 // aapt resource value: 0x7F080076
public const int parent_matrix = 2131230838; public const int notification_main_column = 2131230838;
// aapt resource value: 0x7F080077 // aapt resource value: 0x7F080077
public const int pin = 2131230839; public const int notification_main_column_container = 2131230839;
// aapt resource value: 0x7F080078 // aapt resource value: 0x7F080078
public const int progress_circular = 2131230840; public const int outline = 2131230840;
// aapt resource value: 0x7F080079 // aapt resource value: 0x7F080079
public const int progress_horizontal = 2131230841; public const int parallax = 2131230841;
// aapt resource value: 0x7F08007A // aapt resource value: 0x7F08007A
public const int radio = 2131230842; public const int parentPanel = 2131230842;
// aapt resource value: 0x7F08007B // aapt resource value: 0x7F08007B
public const int reminder = 2131230843; public const int parent_matrix = 2131230843;
// aapt resource value: 0x7F08007C // aapt resource value: 0x7F08007C
public const int right = 2131230844; public const int pin = 2131230844;
// aapt resource value: 0x7F08007D // aapt resource value: 0x7F08007D
public const int right_icon = 2131230845; public const int progress_circular = 2131230845;
// aapt resource value: 0x7F08007E // aapt resource value: 0x7F08007E
public const int right_side = 2131230846; public const int progress_horizontal = 2131230846;
// aapt resource value: 0x7F08007F // aapt resource value: 0x7F08007F
public const int save_image_matrix = 2131230847; public const int radio = 2131230847;
// aapt resource value: 0x7F080080 // aapt resource value: 0x7F080080
public const int save_non_transition_alpha = 2131230848; public const int reminder = 2131230848;
// aapt resource value: 0x7F080081 // aapt resource value: 0x7F080081
public const int save_scale_type = 2131230849; public const int right = 2131230849;
// aapt resource value: 0x7F080082 // aapt resource value: 0x7F080082
public const int screen = 2131230850; public const int right_icon = 2131230850;
// aapt resource value: 0x7F080083 // aapt resource value: 0x7F080083
public const int scroll = 2131230851; public const int right_side = 2131230851;
// aapt resource value: 0x7F080087
public const int scrollable = 2131230855;
// aapt resource value: 0x7F080084 // aapt resource value: 0x7F080084
public const int scrollIndicatorDown = 2131230852; public const int save_image_matrix = 2131230852;
// aapt resource value: 0x7F080085 // aapt resource value: 0x7F080085
public const int scrollIndicatorUp = 2131230853; public const int save_non_transition_alpha = 2131230853;
// aapt resource value: 0x7F080086 // aapt resource value: 0x7F080086
public const int scrollView = 2131230854; public const int save_scale_type = 2131230854;
// aapt resource value: 0x7F080087
public const int screen = 2131230855;
// aapt resource value: 0x7F080088 // aapt resource value: 0x7F080088
public const int search_badge = 2131230856; public const int scroll = 2131230856;
// aapt resource value: 0x7F080089
public const int search_bar = 2131230857;
// aapt resource value: 0x7F08008A
public const int search_button = 2131230858;
// aapt resource value: 0x7F08008B
public const int search_close_btn = 2131230859;
// aapt resource value: 0x7F08008C // aapt resource value: 0x7F08008C
public const int search_edit_frame = 2131230860; public const int scrollable = 2131230860;
// aapt resource value: 0x7F080089
public const int scrollIndicatorDown = 2131230857;
// aapt resource value: 0x7F08008A
public const int scrollIndicatorUp = 2131230858;
// aapt resource value: 0x7F08008B
public const int scrollView = 2131230859;
// aapt resource value: 0x7F08008D // aapt resource value: 0x7F08008D
public const int search_go_btn = 2131230861; public const int search_badge = 2131230861;
// aapt resource value: 0x7F08008E // aapt resource value: 0x7F08008E
public const int search_mag_icon = 2131230862; public const int search_bar = 2131230862;
// aapt resource value: 0x7F08008F // aapt resource value: 0x7F08008F
public const int search_plate = 2131230863; public const int search_button = 2131230863;
// aapt resource value: 0x7F080090 // aapt resource value: 0x7F080090
public const int search_src_text = 2131230864; public const int search_close_btn = 2131230864;
// aapt resource value: 0x7F080091 // aapt resource value: 0x7F080091
public const int search_voice_btn = 2131230865; public const int search_edit_frame = 2131230865;
// aapt resource value: 0x7F080093
public const int selected = 2131230867;
// aapt resource value: 0x7F080092 // aapt resource value: 0x7F080092
public const int select_dialog_listview = 2131230866; public const int search_go_btn = 2131230866;
// aapt resource value: 0x7F080093
public const int search_mag_icon = 2131230867;
// aapt resource value: 0x7F080094
public const int search_plate = 2131230868;
// aapt resource value: 0x7F080095
public const int search_src_text = 2131230869;
// aapt resource value: 0x7F080096
public const int search_voice_btn = 2131230870;
// aapt resource value: 0x7F080098
public const int selected = 2131230872;
// aapt resource value: 0x7F080097
public const int select_dialog_listview = 2131230871;
// aapt resource value: 0x7F080004 // aapt resource value: 0x7F080004
public const int SHIFT = 2131230724; public const int SHIFT = 2131230724;
// aapt resource value: 0x7F080094
public const int shortcut = 2131230868;
// aapt resource value: 0x7F080095
public const int showCustom = 2131230869;
// aapt resource value: 0x7F080096
public const int showHome = 2131230870;
// aapt resource value: 0x7F080097
public const int showTitle = 2131230871;
// aapt resource value: 0x7F080098
public const int smallLabel = 2131230872;
// aapt resource value: 0x7F080099 // aapt resource value: 0x7F080099
public const int snackbar_action = 2131230873; public const int shortcut = 2131230873;
// aapt resource value: 0x7F08009A // aapt resource value: 0x7F08009A
public const int snackbar_text = 2131230874; public const int showCustom = 2131230874;
// aapt resource value: 0x7F08009B // aapt resource value: 0x7F08009B
public const int snap = 2131230875; public const int showHome = 2131230875;
// aapt resource value: 0x7F08009C // aapt resource value: 0x7F08009C
public const int snapMargins = 2131230876; public const int showTitle = 2131230876;
// aapt resource value: 0x7F08009D // aapt resource value: 0x7F08009D
public const int spacer = 2131230877; public const int smallLabel = 2131230877;
// aapt resource value: 0x7F08009E // aapt resource value: 0x7F08009E
public const int split_action_bar = 2131230878; public const int snackbar_action = 2131230878;
// aapt resource value: 0x7F08009F // aapt resource value: 0x7F08009F
public const int src_atop = 2131230879; public const int snackbar_text = 2131230879;
// aapt resource value: 0x7F0800A0 // aapt resource value: 0x7F0800A0
public const int src_in = 2131230880; public const int snap = 2131230880;
// aapt resource value: 0x7F0800A1 // aapt resource value: 0x7F0800A1
public const int src_over = 2131230881; public const int snapMargins = 2131230881;
// aapt resource value: 0x7F0800A2 // aapt resource value: 0x7F0800A2
public const int start = 2131230882; public const int spacer = 2131230882;
// aapt resource value: 0x7F0800A3 // aapt resource value: 0x7F0800A3
public const int status = 2131230883; public const int split_action_bar = 2131230883;
// aapt resource value: 0x7F0800A4 // aapt resource value: 0x7F0800A4
public const int stretch = 2131230884; public const int src_atop = 2131230884;
// aapt resource value: 0x7F0800A5 // aapt resource value: 0x7F0800A5
public const int submenuarrow = 2131230885; public const int src_in = 2131230885;
// aapt resource value: 0x7F0800A6 // aapt resource value: 0x7F0800A6
public const int submit_area = 2131230886; public const int src_over = 2131230886;
// aapt resource value: 0x7F0800A7
public const int start = 2131230887;
// aapt resource value: 0x7F0800A8
public const int status = 2131230888;
// aapt resource value: 0x7F0800A9
public const int stretch = 2131230889;
// aapt resource value: 0x7F0800AA
public const int submenuarrow = 2131230890;
// aapt resource value: 0x7F0800AB
public const int submit_area = 2131230891;
// aapt resource value: 0x7F080005 // aapt resource value: 0x7F080005
public const int SYM = 2131230725; public const int SYM = 2131230725;
// aapt resource value: 0x7F0800A7
public const int tabMode = 2131230887;
// aapt resource value: 0x7F0800A8
public const int tag_transition_group = 2131230888;
// aapt resource value: 0x7F0800A9
public const int tag_unhandled_key_event_manager = 2131230889;
// aapt resource value: 0x7F0800AA
public const int tag_unhandled_key_listeners = 2131230890;
// aapt resource value: 0x7F0800AB
public const int text = 2131230891;
// aapt resource value: 0x7F0800AC // aapt resource value: 0x7F0800AC
public const int text2 = 2131230892; public const int tabMode = 2131230892;
// aapt resource value: 0x7F0800B1
public const int textinput_counter = 2131230897;
// aapt resource value: 0x7F0800B2
public const int textinput_error = 2131230898;
// aapt resource value: 0x7F0800B3
public const int textinput_helper_text = 2131230899;
// aapt resource value: 0x7F0800AD // aapt resource value: 0x7F0800AD
public const int textSpacerNoButtons = 2131230893; public const int tag_transition_group = 2131230893;
// aapt resource value: 0x7F0800AE // aapt resource value: 0x7F0800AE
public const int textSpacerNoTitle = 2131230894; public const int tag_unhandled_key_event_manager = 2131230894;
// aapt resource value: 0x7F0800AF // aapt resource value: 0x7F0800AF
public const int textStart = 2131230895; public const int tag_unhandled_key_listeners = 2131230895;
// aapt resource value: 0x7F0800B0 // aapt resource value: 0x7F0800B0
public const int text_input_password_toggle = 2131230896; public const int text = 2131230896;
// aapt resource value: 0x7F0800B4 // aapt resource value: 0x7F0800B1
public const int time = 2131230900; public const int text2 = 2131230897;
// aapt resource value: 0x7F0800B5
public const int title = 2131230901;
// aapt resource value: 0x7F0800B6 // aapt resource value: 0x7F0800B6
public const int titleDividerNoCustom = 2131230902; public const int textinput_counter = 2131230902;
// aapt resource value: 0x7F0800B7 // aapt resource value: 0x7F0800B7
public const int title_template = 2131230903; public const int textinput_error = 2131230903;
// aapt resource value: 0x7F0800B8 // aapt resource value: 0x7F0800B8
public const int top = 2131230904; public const int textinput_helper_text = 2131230904;
// aapt resource value: 0x7F0800B2
public const int textSpacerNoButtons = 2131230898;
// aapt resource value: 0x7F0800B3
public const int textSpacerNoTitle = 2131230899;
// aapt resource value: 0x7F0800B4
public const int textStart = 2131230900;
// aapt resource value: 0x7F0800B5
public const int text_input_password_toggle = 2131230901;
// aapt resource value: 0x7F0800B9 // aapt resource value: 0x7F0800B9
public const int topPanel = 2131230905; public const int time = 2131230905;
// aapt resource value: 0x7F0800BA // aapt resource value: 0x7F0800BA
public const int touch_outside = 2131230906; public const int title = 2131230906;
// aapt resource value: 0x7F0800BB // aapt resource value: 0x7F0800BB
public const int transition_current_scene = 2131230907; public const int titleDividerNoCustom = 2131230907;
// aapt resource value: 0x7F0800BC // aapt resource value: 0x7F0800BC
public const int transition_layout_save = 2131230908; public const int title_template = 2131230908;
// aapt resource value: 0x7F0800BD // aapt resource value: 0x7F0800BD
public const int transition_position = 2131230909; public const int top = 2131230909;
// aapt resource value: 0x7F0800BE // aapt resource value: 0x7F0800BE
public const int transition_scene_layoutid_cache = 2131230910; public const int topPanel = 2131230910;
// aapt resource value: 0x7F0800BF // aapt resource value: 0x7F0800BF
public const int transition_transform = 2131230911; public const int touch_outside = 2131230911;
// aapt resource value: 0x7F0800C0 // aapt resource value: 0x7F0800C0
public const int uniform = 2131230912; public const int transition_current_scene = 2131230912;
// aapt resource value: 0x7F0800C1 // aapt resource value: 0x7F0800C1
public const int unlabeled = 2131230913; public const int transition_layout_save = 2131230913;
// aapt resource value: 0x7F0800C2 // aapt resource value: 0x7F0800C2
public const int up = 2131230914; public const int transition_position = 2131230914;
// aapt resource value: 0x7F0800C3 // aapt resource value: 0x7F0800C3
public const int useLogo = 2131230915; public const int transition_scene_layoutid_cache = 2131230915;
// aapt resource value: 0x7F0800C4 // aapt resource value: 0x7F0800C4
public const int view_offset_helper = 2131230916; public const int transition_transform = 2131230916;
// aapt resource value: 0x7F0800C5 // aapt resource value: 0x7F0800C5
public const int visible = 2131230917; public const int uniform = 2131230917;
// aapt resource value: 0x7F0800C6 // aapt resource value: 0x7F0800C6
public const int withText = 2131230918; public const int unlabeled = 2131230918;
// aapt resource value: 0x7F0800C7 // aapt resource value: 0x7F0800C7
public const int wrap_content = 2131230919; public const int up = 2131230919;
// aapt resource value: 0x7F0800C8
public const int useLogo = 2131230920;
// aapt resource value: 0x7F0800C9
public const int view_offset_helper = 2131230921;
// aapt resource value: 0x7F0800CA
public const int visible = 2131230922;
// aapt resource value: 0x7F0800CB
public const int withText = 2131230923;
// aapt resource value: 0x7F0800CC
public const int wrap_content = 2131230924;
static Id() static Id()
{ {
Binary file not shown.

After

Width:  |  Height:  |  Size: 129 KiB

@@ -73,11 +73,37 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="20-Dec-2019"/> android:text="20-Dec-2019"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<Button <Button
android:id="@+id/end" android:id="@+id/end"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="31-Dec-2019"/> android:text="31-Dec-2019"/>
<Button
android:id="@+id/forDay"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="На день"/>
<Button
android:id="@+id/forWeek"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="На неделю"/>
<Button
android:id="@+id/forMonth"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="На месяц"/>
<Button
android:id="@+id/forSemester"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="На семестр"/>
</LinearLayout>
</TableRow> </TableRow>
</TableLayout> </TableLayout>
@@ -95,7 +121,7 @@
android:id="@+id/groupTitle" android:id="@+id/groupTitle"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="Добавлять номер группы в заголовок"/> android:text="Добавить номер группы в заголовок"/>
<TextView <TextView
android:layout_width="match_parent" android:layout_width="match_parent"
@@ -2,7 +2,8 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:orientation="vertical"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent"
android:theme="@style/AppTheme.NoActionBar">
<LinearLayout <LinearLayout
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -14,7 +15,7 @@
android:layout_width="100dp" android:layout_width="100dp"
android:layout_height="100dp" android:layout_height="100dp"
android:indeterminateTint="#fff" android:indeterminateTint="#fff"
android:layout_gravity="fill_horizontal" android:layout_gravity="center_horizontal"
android:layout_margin="20dp"/> android:layout_margin="20dp"/>
<TextView <TextView
@@ -1,7 +1,8 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:orientation="vertical"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent"
android:theme="@style/AppTheme.NoActionBar">
<LinearLayout <LinearLayout
android:layout_width="wrap_content" android:layout_width="wrap_content"
@@ -12,7 +13,8 @@
<ImageView <ImageView
android:layout_width="150dp" android:layout_width="150dp"
android:layout_height="150dp" android:layout_height="150dp"
android:src="@mipmap/ic_launcher"/> android:layout_gravity="center_horizontal"
android:src="@drawable/logo"/>
<ProgressBar <ProgressBar
android:layout_width="50dp" android:layout_width="50dp"
@@ -5,4 +5,8 @@
android:id="@+id/github" android:id="@+id/github"
android:title="Посмотреть исходный код на GitHub" android:title="Посмотреть исходный код на GitHub"
app:showAsAction="never" /> app:showAsAction="never" />
<item
android:id="@+id/email"
android:title="Сообщить об ошибке"
app:showAsAction="never" />
</menu> </menu>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 958 B

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.8 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 29 KiB