diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index dd0c6b9..bfa8501 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -20,6 +20,10 @@ android:name=".DatabaseActivity" android:label="@string/title_activity_database" > </activity> + <activity + android:name=".TableActivity" + android:label="@string/title_activity_table" > + </activity> </application> </manifest> diff --git a/app/src/main/java/info/nerull7/mysqlbrowser/DatabaseFragment.java b/app/src/main/java/info/nerull7/mysqlbrowser/DatabaseFragment.java index 199c860..db35900 100644 --- a/app/src/main/java/info/nerull7/mysqlbrowser/DatabaseFragment.java +++ b/app/src/main/java/info/nerull7/mysqlbrowser/DatabaseFragment.java @@ -2,11 +2,14 @@ package info.nerull7.mysqlbrowser; import android.app.Activity; import android.app.Fragment; +import android.content.Intent; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.AdapterView; import android.widget.ArrayAdapter; +import android.widget.EditText; import android.widget.ListAdapter; import android.widget.ListView; @@ -15,22 +18,31 @@ import info.nerull7.mysqlbrowser.db.DatabaseConnector; /** * Created by nerull7 on 14.07.14. */ -public class DatabaseFragment extends Fragment { +public class DatabaseFragment extends Fragment implements AdapterView.OnItemClickListener { ListView databasesListView; + ListAdapter listAdapter; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){ //Inflate the layout for this fragment View V = inflater.inflate(R.layout.fragment_database, container, false); - databasesListView = (ListView)V.findViewById(R.id.databaseList); + databasesListView = (ListView) V.findViewById(R.id.databaseList); + setupListViewDatabase(); return V; } private void setupListViewDatabase(){ - // TODO not local constuction!!! - DatabaseConnector databaseConnector = new DatabaseConnector("FIXME","FIXME","FIXME"); - ListAdapter listAdapter = new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1, databaseConnector.getDatabases()); + listAdapter = new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1, Static.databaseConnector.getDatabases()); databasesListView.setAdapter(listAdapter); + databasesListView.setOnItemClickListener(this); + } + + @Override + public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) { + listAdapter.getItem(position); + Intent intent = new Intent(getActivity(), TableActivity.class); + intent.putExtra("DatabaseName", (String) listAdapter.getItem(position)); + startActivity(intent); } } diff --git a/app/src/main/java/info/nerull7/mysqlbrowser/TableActivity.java b/app/src/main/java/info/nerull7/mysqlbrowser/TableActivity.java new file mode 100644 index 0000000..4e59504 --- /dev/null +++ b/app/src/main/java/info/nerull7/mysqlbrowser/TableActivity.java @@ -0,0 +1,53 @@ +package info.nerull7.mysqlbrowser; + +import android.app.Activity; +import android.app.ActionBar; +import android.app.Fragment; +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.Menu; +import android.view.MenuItem; +import android.view.View; +import android.view.ViewGroup; +import android.os.Build; + +import info.nerull7.mysqlbrowser.R; + +public class TableActivity extends Activity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_table); + TableFragment tableFragment = new TableFragment(); + tableFragment.setArguments(getIntent().getExtras()); +// Bundle bundle = new Bundle(); + + if (savedInstanceState == null) { + getFragmentManager().beginTransaction() + .add(R.id.container, tableFragment) + .commit(); + } + } + + + @Override + public boolean onCreateOptionsMenu(Menu menu) { + // Inflate the menu; this adds items to the action bar if it is present. + getMenuInflater().inflate(R.menu.table, menu); + return true; + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + // Handle action bar item clicks here. The action bar will + // automatically handle clicks on the Home/Up button, so long + // as you specify a parent activity in AndroidManifest.xml. + int id = item.getItemId(); + if (id == R.id.action_settings) { + return true; + } + return super.onOptionsItemSelected(item); + } + +} diff --git a/app/src/main/java/info/nerull7/mysqlbrowser/TableFragment.java b/app/src/main/java/info/nerull7/mysqlbrowser/TableFragment.java new file mode 100644 index 0000000..21fa092 --- /dev/null +++ b/app/src/main/java/info/nerull7/mysqlbrowser/TableFragment.java @@ -0,0 +1,23 @@ +package info.nerull7.mysqlbrowser; + +import android.app.Fragment; +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; + +/** + * Created by nerull7 on 14.07.14. + */ +public class TableFragment extends Fragment{ + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, + Bundle savedInstanceState) { + View rootView = inflater.inflate(R.layout.fragment_table, container, false); + TextView text = (TextView) rootView.findViewById(R.id.dumbText); + text.setText(getArguments().getString("DatabaseName")); + return rootView; + } +} diff --git a/app/src/main/res/layout/activity_table.xml b/app/src/main/res/layout/activity_table.xml new file mode 100644 index 0000000..e80cef3 --- /dev/null +++ b/app/src/main/res/layout/activity_table.xml @@ -0,0 +1,7 @@ +<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + android:id="@+id/container" + android:layout_width="match_parent" + android:layout_height="match_parent" + tools:context="info.nerull7.mysqlbrowser.TableActivity" + tools:ignore="MergeRootFrame" /> diff --git a/app/src/main/res/layout/fragment_table.xml b/app/src/main/res/layout/fragment_table.xml new file mode 100644 index 0000000..f3aa113 --- /dev/null +++ b/app/src/main/res/layout/fragment_table.xml @@ -0,0 +1,17 @@ +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:paddingLeft="@dimen/activity_horizontal_margin" + android:paddingRight="@dimen/activity_horizontal_margin" + android:paddingTop="@dimen/activity_vertical_margin" + android:paddingBottom="@dimen/activity_vertical_margin" + tools:context="info.nerull7.mysqlbrowser.TableFragment"> + + <TextView + android:text="@string/hello_world" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:id="@+id/dumbText"/> + +</RelativeLayout> diff --git a/app/src/main/res/menu/table.xml b/app/src/main/res/menu/table.xml new file mode 100644 index 0000000..8888e00 --- /dev/null +++ b/app/src/main/res/menu/table.xml @@ -0,0 +1,8 @@ +<menu xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + tools:context="info.nerull7.mysqlbrowser.TableActivity" > + <item android:id="@+id/action_settings" + android:title="@string/action_settings" + android:orderInCategory="100" + android:showAsAction="never" /> +</menu> diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 6831380..de5ac24 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -13,5 +13,6 @@ <string name="login_error">Wrong login/password</string> <string name="ok">OK</string> <string name="error">Error</string> + <string name="title_activity_table">TableActivity</string> </resources>