package com.example.mynotepad;

import androidx.appcompat.app.AppCompatActivity;
import androidx.room.Room;

import android.animation.ObjectAnimator;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;

import com.example.mynotepad.Menu.CustomMenu;
import com.example.mynotepad.MenuFeatures.AllNotes.DataBase.NoteDataBase;
import com.example.mynotepad.MenuFeatures.Information.InfoClickListener;
import com.example.mynotepad.MenuFeatures.Information.Information;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    private ImageView toolbarListImg;
    private CustomMenu customMenu;
    private TextView wlcTxt;
    private Information informationView;
    public static NoteDataBase noteDataBase;
    private ObjectAnimator objectAnimator;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        init();
        setWlcTxt();
    }

    private void setWlcTxt() {
        //ToDo with shared Prefrences in setting
        //if () else()
        wlcTxt.setText("welcome :)");
        wlcTxt.setTextSize(30);
        wlcTxt.setGravity(Gravity.CENTER);
    }

    private void init() {
        noteDataBase = Room.databaseBuilder(this, NoteDataBase.class, "RoomDb").allowMainThreadQueries().build();
        customMenu = findViewById(R.id.mainListItem);
        customMenu.setVisibility(customMenu.GONE);
        wlcTxt = findViewById(R.id.wlcTxt);
        toolbarListImg = findViewById(R.id.toolbarList);
        informationView = findViewById(R.id.infoView);
        informationView.setVisibility(View.GONE);

        toolbarListImg.setOnClickListener(this);
        findViewById(R.id.main).setOnClickListener(this);
        customMenu.setOnClickListener(this);

        objectAnimator = ObjectAnimator.ofFloat(customMenu , "x" , 400);
        customMenu.setInfoClickListener(new InfoClickListener() {
            @Override
            public void onInfoTvClicked(TextView infoTv) {
                informationView.setVisibility(View.VISIBLE);

            }
        });
    }


    @Override
    public void onClick(View view) {
        if (view.getId() == toolbarListImg.getId() || customMenu.getId() == view.getId()) {
            objectAnimator.setDuration(2000);
            objectAnimator.start();
            customMenu.setVisibility(customMenu.VISIBLE);
            informationView.setVisibility(View.GONE);
        } else if (R.id.main == view.getId()) {
            customMenu.setVisibility(customMenu.GONE);
            informationView.setVisibility(View.GONE);
        }
    }

}