public MainWindow(IOptions_Storage _Options)
        {
            try
            {
                // Preinitialization
                Windows_Manager.Add_MainWindow(this);

                GUI_Bindable_Resources = new Bindable_Resources_Factory(this).Get_Bindable_Resources;

                Options = (new Options_Factory(this)).Get_Options(_Options);

                GUI_Bindable_Resources.Intialize_MainWindow_Size(Options);

                // Initialization

                InitializeComponent();

                // Postinitialization

                this.DataContext = GUI_Bindable_Resources;

                ComplexCalculations.DataContext = GUI_Bindable_Resources;

                Calculator_Buttons_Panel_Setter();


                if (Options.Calculation_Method == Calculation_Method.Single)
                {
                    this.SingleCalculations.IsChecked = true;
                }
                else // calculation_Method == Calculation_Method.Complex
                {
                    this.ComplexCalculations.IsChecked = true;
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message);
            }
        }
        public OptionsWindow(IMainWindow _MainWindow, IOptions_Provider _Options_Provider)
        {
            // Preinitialization

            Parent_MainWindow = _MainWindow;

            Windows_Manager.Add_Children_Window(this);

            Options_Provider = _Options_Provider;

            _Bindable_Resources = new Bindable_Resources(Options_Provider);

            this.DataContext = _Bindable_Resources;

            Option_Change_Command_List = new List <IChange_Option_Command>();

            // Initialization

            InitializeComponent();

            // Postinitialization

            Set_Styles();
        }