private void AddButtonCommandExecute(object param)
        {
            switch (_selectedTabIndex)
            {
            case 0:
                CreateRadnoMestoDialog createRadnoMestoDialog = new CreateRadnoMestoDialog(_radnoMestoSqlProvider, this);
                createRadnoMestoDialog.ShowDialog();
                break;

            case 1:
                CreateOperacijaDialog createOperacijaDialog = new CreateOperacijaDialog(_operacijaSqlProvider, this);
                createOperacijaDialog.ShowDialog();
                break;

            case 2:
                CreatePredmetRadaDialog createPredmetRadaDialog = new CreatePredmetRadaDialog(_predmetRadaSqlProvider, this);
                createPredmetRadaDialog.ShowDialog();
                break;

            case 3:
                CreateRadnaListaDialog createRadnaListaDialog = new CreateRadnaListaDialog(_radnaListaSqlProvider, radniNalogViewModel.RadniNalogList.Select(x => x.IDRadniNalog).ToList(), operacijaViewModel.OperacijaList, radnikProizvodnjaViewModel.RadnikProizvodnjaList, this);
                createRadnaListaDialog.ShowDialog();
                break;

            case 4:
                CreateRadnikProizvodnjaDialog createRadnikProizvodnjaDialog = new CreateRadnikProizvodnjaDialog(_radnikProizvodnjaSqlProvider, radnoMestoViewModel.RadnoMestoList, this);
                createRadnikProizvodnjaDialog.ShowDialog();
                break;

            case 5:
                CreateRadniNalogDialog createRadniNalogDialog = new CreateRadniNalogDialog(_radniNalogSqlProvider, predmetRadaViewModel.PredmetRadaList, this);
                createRadniNalogDialog.ShowDialog();
                break;

            case 6:
                CreateTehnoloskiPostupakDialog createTehnoloskiPostupakDialog = new CreateTehnoloskiPostupakDialog(_tehnoloskiPostupakSqlProvider, operacijaViewModel.OperacijaList, this);
                createTehnoloskiPostupakDialog.ShowDialog();
                break;

            case 7:
                CreateTrebovanjeDialog createTrebovanjeDialog = new CreateTrebovanjeDialog(_trebovanjeSqlProvider, radniNalogViewModel.RadniNalogList.Select(x => x.IDRadniNalog).ToList(), this);
                createTrebovanjeDialog.ShowDialog();
                break;

            case 8:
                tehnPostupakOperacijaViewModel.OpenDialog(operacijaViewModel.OperacijaList,
                                                          tehnoloskiPostupakViewModel.TehnoloskiPostupakList, true);
                break;
            }
        }
        private void UpdateButtonCommandExecute(object param)
        {
            switch (_selectedTabIndex)
            {
            case 0:
                if (radnoMestoViewModel.ItemSelected != null)
                {
                    CreateRadnoMestoDialog          updateRadnoMestoDialog = new CreateRadnoMestoDialog(_radnoMestoSqlProvider, radnoMestoViewModel.ItemSelected, this);
                    CreateRadnoMestoDialogViewModel viewModelRadnoMesto    = (CreateRadnoMestoDialogViewModel)updateRadnoMestoDialog.DataContext;
                    viewModelRadnoMesto.SetViewForUpdateDialog();
                    updateRadnoMestoDialog.ShowDialog();
                }
                else
                {
                    ShowNotSelectedErrorDialog(false);
                }
                break;

            case 1:
                if (operacijaViewModel.ItemSelected != null)
                {
                    CreateOperacijaDialog          updateOperacijaDialog = new CreateOperacijaDialog(_operacijaSqlProvider, operacijaViewModel.ItemSelected, this);
                    CreateOperacijaDialogViewModel viewModelOperacija    = (CreateOperacijaDialogViewModel)updateOperacijaDialog.DataContext;
                    viewModelOperacija.SetViewForUpdateDialog();
                    updateOperacijaDialog.ShowDialog();
                }
                else
                {
                    ShowNotSelectedErrorDialog(false);
                }
                break;

            case 2:
                if (predmetRadaViewModel.ItemSelected != null)
                {
                    CreatePredmetRadaDialog          updatePredmetRadaDialog = new CreatePredmetRadaDialog(_predmetRadaSqlProvider, predmetRadaViewModel.ItemSelected, this);
                    CreatePredmetRadaDialogViewModel viewModelPredmetRada    = (CreatePredmetRadaDialogViewModel)updatePredmetRadaDialog.DataContext;
                    viewModelPredmetRada.SetViewForUpdateDialog();
                    updatePredmetRadaDialog.ShowDialog();
                }
                else
                {
                    ShowNotSelectedErrorDialog(false);
                }
                break;

            case 3:
                if (radnaListaViewModel.ItemSelected != null)
                {
                    CreateRadnaListaDialog          updateRadnaListaDialog = new CreateRadnaListaDialog(_radnaListaSqlProvider, radniNalogViewModel.RadniNalogList.Select(x => x.IDRadniNalog).ToList(), operacijaViewModel.OperacijaList, radnikProizvodnjaViewModel.RadnikProizvodnjaList, radnaListaViewModel.ItemSelected, this);
                    CreateRadnaListaDialogViewModel viewModelRadnaLista    = (CreateRadnaListaDialogViewModel)updateRadnaListaDialog.DataContext;
                    viewModelRadnaLista.SetViewForUpdateDialog();
                    updateRadnaListaDialog.ShowDialog();
                }
                else
                {
                    ShowNotSelectedErrorDialog(false);
                }
                break;

            case 4:
                if (radnikProizvodnjaViewModel.ItemSelected != null)
                {
                    CreateRadnikProizvodnjaDialog          udpateRadnikProizvodnjaDialog = new CreateRadnikProizvodnjaDialog(_radnikProizvodnjaSqlProvider, radnoMestoViewModel.RadnoMestoList, radnikProizvodnjaViewModel.ItemSelected, this);
                    CreateRadnikProizvodnjaDialogViewModel viewModelRadnik = (CreateRadnikProizvodnjaDialogViewModel)udpateRadnikProizvodnjaDialog.DataContext;
                    viewModelRadnik.SetViewForUpdateDialog();
                    udpateRadnikProizvodnjaDialog.ShowDialog();
                }
                else
                {
                    ShowNotSelectedErrorDialog(false);
                }
                break;

            case 5:
                if (radniNalogViewModel.ItemSelected != null)
                {
                    CreateRadniNalogDialog          updateRadniNalogDialog = new CreateRadniNalogDialog(_radniNalogSqlProvider, predmetRadaViewModel.PredmetRadaList, radniNalogViewModel.ItemSelected, this);
                    CreateRadniNalogDialogViewModel viewModelRadniNalog    = (CreateRadniNalogDialogViewModel)updateRadniNalogDialog.DataContext;
                    viewModelRadniNalog.SetViewForUpdateDialog();
                    updateRadniNalogDialog.ShowDialog();
                }
                else
                {
                    ShowNotSelectedErrorDialog(false);
                }
                break;

            case 6:
                if (tehnoloskiPostupakViewModel.ItemSelected != null)
                {
                    CreateTehnoloskiPostupakDialog    updateTehnoloskiPostupakDialog = new CreateTehnoloskiPostupakDialog(_tehnoloskiPostupakSqlProvider, operacijaViewModel.OperacijaList, tehnoloskiPostupakViewModel.ItemSelected, this);
                    CreateTehnoloskiPostupakViewModel viewModelTehnoloskiPostupak    = (CreateTehnoloskiPostupakViewModel)updateTehnoloskiPostupakDialog.DataContext;
                    viewModelTehnoloskiPostupak.SetViewForUpdateDialog();
                    updateTehnoloskiPostupakDialog.ShowDialog();
                }
                else
                {
                    ShowNotSelectedErrorDialog(false);
                }
                break;

            case 7:
                if (trebovanjeViewModel.ItemSelected != null)
                {
                    CreateTrebovanjeDialog          updateTrebovanjeDialog = new CreateTrebovanjeDialog(_trebovanjeSqlProvider, radniNalogViewModel.RadniNalogList.Select(x => x.IDRadniNalog).ToList(), trebovanjeViewModel.ItemSelected, this);
                    CreateTrebovanjeDialogViewModel viewModelTrebovanje    = (CreateTrebovanjeDialogViewModel)updateTrebovanjeDialog.DataContext;
                    viewModelTrebovanje.SetViewForUpdateDialog();
                    updateTrebovanjeDialog.ShowDialog();
                }
                else
                {
                    ShowNotSelectedErrorDialog(false);
                }
                break;

            case 8:
                if (tehnPostupakOperacijaViewModel.ItemSelected != null)
                {
                    tehnPostupakOperacijaViewModel.OpenDialog(operacijaViewModel.OperacijaList,
                                                              tehnoloskiPostupakViewModel.TehnoloskiPostupakList, false);
                    break;
                }
                else
                {
                    ShowNotSelectedErrorDialog(false);
                }
                break;
            }
        }