diff --git a/.gitignore b/.gitignore index afbdab33e9e7967dafb71706fc99996cf4732d8e..8dfba82bf0ecc2d988bfac839a5f4a6e0a85f2eb 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,5 @@ /.idea/libraries .DS_Store /build + +gradlew.bat \ No newline at end of file diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/CampaignActivity.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/CampaignActivity.java index b62ed86ece6e38afb5ff4ff1ce60ad4abd252eb7..f44b73151c48913bee533092e59ba114bc457064 100644 --- a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/CampaignActivity.java +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/CampaignActivity.java @@ -1,15 +1,17 @@ package com.eyecreate.miceandmystics.miceandmystics; import android.app.AlertDialog; +import android.content.Context; import android.content.DialogInterface; import android.graphics.Typeface; import android.os.Bundle; import android.support.v7.widget.LinearLayoutManager; -import android.view.ContextThemeWrapper; -import android.view.Menu; -import android.view.MenuItem; +import android.view.*; +import android.widget.ArrayAdapter; import android.widget.EditText; +import android.widget.Spinner; import com.eyecreate.miceandmystics.miceandmystics.adapters.CampaignAdapter; +import com.eyecreate.miceandmystics.miceandmystics.model.Enums.CampaignType; public class CampaignActivity extends RecyclerViewActivity { @@ -40,15 +42,18 @@ public class CampaignActivity extends RecyclerViewActivity { //noinspection SimplifiableIfStatement if (id == R.id.action_add_campaign) { - final EditText newName = new EditText(new ContextThemeWrapper(this,R.style.editTextDialogTheme)); - newName.setTypeface(Typeface.createFromAsset(getAssets(),"ArchitectsDaughter.ttf")); + LayoutInflater inflator = (LayoutInflater)(new ContextThemeWrapper(this, R.style.dialogTheme)).getSystemService(Context.LAYOUT_INFLATER_SERVICE); + final View dialogView = inflator.inflate(R.layout.dialog_new_campaign, null, false); + final Spinner typeSpinner = ((Spinner)dialogView.findViewById(R.id.campaign_type)); + typeSpinner.setAdapter(new ArrayAdapter(this, R.layout.simple_spinner_item, CampaignType.values())); + typeSpinner.setSelection(0); AlertDialog addDialog = new AlertDialog.Builder(this,R.style.dialogTheme) .setMessage("Please give your new campaign a unique name:") - .setView(newName) + .setView(dialogView) .setPositiveButton("Ok", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { - ((CampaignAdapter) getAdapter()).addItem(newName.getText().toString()); + ((CampaignAdapter) getAdapter()).addItem(((EditText) dialogView.findViewById(R.id.campagin_name)).getText().toString(), CampaignType.valueOfDisplayName(typeSpinner.getSelectedItem().toString())); } }) .create(); diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/CampaignDetailsActivity.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/CampaignDetailsActivity.java index c8b2aad7ea3f41c17339c09aa3a3be5142a9c57c..8395947252f644bc74599774d030fac236e2418e 100644 --- a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/CampaignDetailsActivity.java +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/CampaignDetailsActivity.java @@ -1,17 +1,22 @@ package com.eyecreate.miceandmystics.miceandmystics; -import android.support.v7.app.ActionBarActivity; import android.os.Bundle; +import android.support.v7.widget.LinearLayoutManager; import android.view.Menu; import android.view.MenuItem; +import com.eyecreate.miceandmystics.miceandmystics.model.Campaign; -public class CampaignDetailsActivity extends ActionBarActivity { +public class CampaignDetailsActivity extends RecyclerViewActivity { + + Campaign campaign; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.activity_campaign_details); + setTitle(getIntent().getStringExtra("campaignName")); + campaign = MiceAndMysticsApplication.getRealmInstance().where(Campaign.class).equalTo("campaignName",getIntent().getStringExtra("campaignName")).findFirst(); + setLayoutManager(new LinearLayoutManager(this)); } @@ -30,7 +35,7 @@ public class CampaignDetailsActivity extends ActionBarActivity { int id = item.getItemId(); //noinspection SimplifiableIfStatement - if (id == R.id.action_settings) { + if (id == R.id.action_add_character) { return true; } diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/adapters/CampaignAdapter.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/adapters/CampaignAdapter.java index 781b3560f92512a2cd77d16d653e01a193fc3a5b..ea1d41c199a957f1349fb522123aed1c03f4c627 100644 --- a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/adapters/CampaignAdapter.java +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/adapters/CampaignAdapter.java @@ -6,6 +6,7 @@ import android.view.LayoutInflater; import android.view.ViewGroup; import com.eyecreate.miceandmystics.miceandmystics.MiceAndMysticsApplication; import com.eyecreate.miceandmystics.miceandmystics.R; +import com.eyecreate.miceandmystics.miceandmystics.model.Enums.CampaignType; import com.eyecreate.miceandmystics.miceandmystics.viewholders.Campaign; import io.realm.RealmResults; @@ -33,10 +34,11 @@ public class CampaignAdapter extends RecyclerView.Adapter { notifyDataSetChanged(); } - public void addItem(String campaignName) { + public void addItem(String campaignName,CampaignType type) { MiceAndMysticsApplication.getRealmInstance().beginTransaction(); com.eyecreate.miceandmystics.miceandmystics.model.Campaign campaign = new com.eyecreate.miceandmystics.miceandmystics.model.Campaign(); campaign.setCampaignName(campaignName); + campaign.setCampaignType(type.displayName()); MiceAndMysticsApplication.getRealmInstance().copyToRealm(campaign); MiceAndMysticsApplication.getRealmInstance().commitTransaction(); fullRefresh(); diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/adapters/CampaignDetailsAdapter.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/adapters/CampaignDetailsAdapter.java new file mode 100644 index 0000000000000000000000000000000000000000..d7bb3ea90262e74bd7c9dd1fbe6c8398ef4be0a1 --- /dev/null +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/adapters/CampaignDetailsAdapter.java @@ -0,0 +1,22 @@ +package com.eyecreate.miceandmystics.miceandmystics.adapters; + +import android.support.v7.widget.RecyclerView; +import android.view.ViewGroup; +import com.eyecreate.miceandmystics.miceandmystics.viewholders.CampaignDetails; + +public class CampaignDetailsAdapter extends RecyclerView.Adapter { + @Override + public CampaignDetails onCreateViewHolder(ViewGroup parent, int viewType) { + return null; + } + + @Override + public void onBindViewHolder(CampaignDetails holder, int position) { + + } + + @Override + public int getItemCount() { + return 0; + } +} diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Campaign.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Campaign.java index e942815688d16b01d242ca189f7c0516e26e80c0..e27df656ae86516c41dad6c459742c4b3c430826 100644 --- a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Campaign.java +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Campaign.java @@ -7,6 +7,7 @@ import io.realm.annotations.PrimaryKey; public class Campaign extends RealmObject { @PrimaryKey private String campaignName; + private String campaignType; private RealmList currentCharacters; private RealmList partyStoryAchievements; @@ -33,4 +34,12 @@ public class Campaign extends RealmObject { public void setCampaignName(String campaignName) { this.campaignName = campaignName; } + + public String getCampaignType() { + return campaignType; + } + + public void setCampaignType(String campaignType) { + this.campaignType = campaignType; + } } diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/Abilities.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/Abilities.java index ba063b7532622d0d45bc3791a6d87c6b1a0cf71a..1e3754389e6249ba283a258a7b831c59b1b84aa7 100644 --- a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/Abilities.java +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/Abilities.java @@ -55,4 +55,5 @@ public enum Abilities { public String displayName() { return displayName; } @Override public String toString() { return displayName; } + public Abilities valueOfDisplayName(String valuedDisplayName) {return Abilities.valueOf(valuedDisplayName.replace(" ","_"));} } diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/Achievement.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/Achievement.java index 89986928639fe0d893a5be9bb345c4f4a8e15826..d797e76a8161ea66062bb1db15d7a902312c55dd 100644 --- a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/Achievement.java +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/Achievement.java @@ -17,4 +17,5 @@ public enum Achievement { public String displayName() { return displayName; } @Override public String toString() { return displayName; } + public Achievement valueOfDisplayName(String valuedDisplayName) {return Achievement.valueOf(valuedDisplayName.replace(" ","_").replace("'",""));} } diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/CampaignType.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/CampaignType.java new file mode 100644 index 0000000000000000000000000000000000000000..6ae3414e3b3fd849816d783a26ace40694e3ea49 --- /dev/null +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/model/Enums/CampaignType.java @@ -0,0 +1,16 @@ +package com.eyecreate.miceandmystics.miceandmystics.model.Enums; + +public enum CampaignType { + Sorrow_and_Remembrance("Sorrow and Remembrance"); + + private String displayName; + + CampaignType(String name) { + this.displayName = name; + } + + public String displayName() { return displayName; } + + @Override public String toString() { return displayName; } + public static CampaignType valueOfDisplayName(String valuedDisplayName) {return CampaignType.valueOf(valuedDisplayName.replace(" ","_"));} +} diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/Campaign.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/Campaign.java index a84ef5e6bc68d9a83f516cf8ef93a2950e9f6c76..31d2ce7f3e508dcc6f350459545ceb8998d4a273 100644 --- a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/Campaign.java +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/Campaign.java @@ -3,12 +3,14 @@ package com.eyecreate.miceandmystics.miceandmystics.viewholders; import android.annotation.TargetApi; import android.app.AlertDialog; import android.content.DialogInterface; +import android.content.Intent; import android.os.Build; import android.support.v7.widget.RecyclerView; import android.view.MotionEvent; import android.view.View; import android.widget.TextView; import com.echo.holographlibrary.PieGraph; +import com.eyecreate.miceandmystics.miceandmystics.CampaignDetailsActivity; import com.eyecreate.miceandmystics.miceandmystics.R; import com.eyecreate.miceandmystics.miceandmystics.adapters.CampaignAdapter; @@ -43,7 +45,9 @@ public class Campaign extends RecyclerView.ViewHolder implements View.OnClickLis @Override public void onClick(View view) { - //TODO:implement next screen + Intent openCampaignDetails = new Intent(view.getContext(), CampaignDetailsActivity.class); + openCampaignDetails.putExtra("campaignName",campaignName.getText().toString()); + view.getContext().startActivity(openCampaignDetails); } public void bindModel(com.eyecreate.miceandmystics.miceandmystics.model.Campaign campaign) { diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/CampaignDetails.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/CampaignDetails.java new file mode 100644 index 0000000000000000000000000000000000000000..1d6d8a422223ffdc068ffc869837a787e4956974 --- /dev/null +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/CampaignDetails.java @@ -0,0 +1,10 @@ +package com.eyecreate.miceandmystics.miceandmystics.viewholders; + +import android.support.v7.widget.RecyclerView; +import android.view.View; + +public class CampaignDetails extends RecyclerView.ViewHolder { + public CampaignDetails(View itemView) { + super(itemView); + } +} diff --git a/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/CampaignHeader.java b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/CampaignHeader.java new file mode 100644 index 0000000000000000000000000000000000000000..149756de28414c12db87a06b745d1548cf8698c3 --- /dev/null +++ b/MiceAndMysticsTracker/src/main/java/com/eyecreate/miceandmystics/miceandmystics/viewholders/CampaignHeader.java @@ -0,0 +1,4 @@ +package com.eyecreate.miceandmystics.miceandmystics.viewholders; + +public class CampaignHeader { +} diff --git a/MiceAndMysticsTracker/src/main/res/layout/activity_campaign_details.xml b/MiceAndMysticsTracker/src/main/res/layout/activity_campaign_details.xml deleted file mode 100644 index 348efdaa980c0f123610530ac53b706a5289cdb3..0000000000000000000000000000000000000000 --- a/MiceAndMysticsTracker/src/main/res/layout/activity_campaign_details.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - diff --git a/MiceAndMysticsTracker/src/main/res/layout/dialog_new_campaign.xml b/MiceAndMysticsTracker/src/main/res/layout/dialog_new_campaign.xml new file mode 100644 index 0000000000000000000000000000000000000000..0b9a1b0213353b2e818ddbb473598d5dfee17f5e --- /dev/null +++ b/MiceAndMysticsTracker/src/main/res/layout/dialog_new_campaign.xml @@ -0,0 +1,14 @@ + + + + + \ No newline at end of file diff --git a/MiceAndMysticsTracker/src/main/res/layout/item_campaign_details.xml b/MiceAndMysticsTracker/src/main/res/layout/item_campaign_details.xml new file mode 100644 index 0000000000000000000000000000000000000000..fb3d8a258054c81b274252adffcf37b375659a36 --- /dev/null +++ b/MiceAndMysticsTracker/src/main/res/layout/item_campaign_details.xml @@ -0,0 +1,7 @@ + + + + \ No newline at end of file diff --git a/MiceAndMysticsTracker/src/main/res/layout/item_campaign_header.xml b/MiceAndMysticsTracker/src/main/res/layout/item_campaign_header.xml new file mode 100644 index 0000000000000000000000000000000000000000..bacd3a758dff2b4a7606a9b0a3865743758099ef --- /dev/null +++ b/MiceAndMysticsTracker/src/main/res/layout/item_campaign_header.xml @@ -0,0 +1,14 @@ + + + + + \ No newline at end of file diff --git a/MiceAndMysticsTracker/src/main/res/layout/simple_spinner_item.xml b/MiceAndMysticsTracker/src/main/res/layout/simple_spinner_item.xml new file mode 100644 index 0000000000000000000000000000000000000000..34502d4725588759cd185df0c6d99b2a2d52e3d0 --- /dev/null +++ b/MiceAndMysticsTracker/src/main/res/layout/simple_spinner_item.xml @@ -0,0 +1,8 @@ + + \ No newline at end of file diff --git a/MiceAndMysticsTracker/src/main/res/menu/menu_campaign_details.xml b/MiceAndMysticsTracker/src/main/res/menu/menu_campaign_details.xml index 0f3b25cb0ca4d1a179cef81d1c4ab1059333437b..0a6d9b4647a697764ff6f66c68511ac060018e2d 100644 --- a/MiceAndMysticsTracker/src/main/res/menu/menu_campaign_details.xml +++ b/MiceAndMysticsTracker/src/main/res/menu/menu_campaign_details.xml @@ -2,8 +2,8 @@ xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" tools:context="com.eyecreate.miceandmystics.miceandmystics.CampaignDetailsActivity"> - + diff --git a/MiceAndMysticsTracker/src/main/res/values/styles.xml b/MiceAndMysticsTracker/src/main/res/values/styles.xml index b0fd55aca5ce4c9e81b571fdada89b222f7549f4..83158003631d188869fa7d797bca874615ff587f 100644 --- a/MiceAndMysticsTracker/src/main/res/values/styles.xml +++ b/MiceAndMysticsTracker/src/main/res/values/styles.xml @@ -22,9 +22,4 @@ @android:color/black - -