SetSizeHints(wxDefaultSize, wxDefaultSize); $this->_create_menu(); $sbar = $this->CreateStatusBar(2); $sbar->SetStatusText("OpenSQLManager"); $this->settings =& \Settings::get_instance(); // Layout the interface $this->_main_layout(); } // -------------------------------------------------------------------------- /** * Some cleanup for when the main window is closed * * @return void */ public function __destruct() { $this->Destroy(); } // -------------------------------------------------------------------------- /** * Exits the wx loop * * @return void */ public function quit() { $this->Destroy(); } // -------------------------------------------------------------------------- /** * Display About menu with version information * * @return void */ function about() { $dlg = new \wxAboutDialogInfo(); $dlg->SetName(PROGRAM_NAME); $dlg->SetVersion(VERSION); $dlg->SetCopyright("Copyright (c) ".date('Y')." Timothy J. Warren"); $dlg->SetWebSite('https://github.com/aviat4ion/OpenSQLManager','Fork on Github'); $dlg->SetLicense(file_get_contents(BASE_DIR . "/LICENSE")); $dlg->SetDevelopers(array( 'Timothy J. Warren', )); \wxAboutBox($dlg); } // -------------------------------------------------------------------------- /** * Layout the main interface * Create menus, hboxes, vboxs and other widgets * * @return void */ private function _main_layout() { // Set up the main menu $this->_create_menu(); // Create a split window $win = new \wxSplitterWindow($this, wxID_ANY, wxDefaultPosition, wxDefaultSize); $win->setSplitMode(wxSPLIT_HORIZONTAL); // Add a sizer $bSizer1 = new \wxBoxSizer(wxHORIZONTAL); $bSizer1->Add($win, 1, wxALL|wxEXPAND, 0); $this->SetSizer($bSizer1); $this->Layout(); $this->Centre(wxBOTH); //$tabs = new \wxNotebook($win, 2); // Add the connection sidebar $this->connection_sidebar =& Connection_Sidebar::get_instance(); } // -------------------------------------------------------------------------- /** * Create the menu for the program * * @return GtkMenuBar */ private function _create_menu() { // Menu Bar $menu_bar = new \wxMenuBar(); // Menu Bar Top Items $top_file_menu = new \wxMenu(); $top_help_menu = new \wxMenu(); // File Menu { // Set up the quit item $top_file_menu->Append(2, "&Quit", "Exit the program"); $this->Connect(2, wxEVT_COMMAND_MENU_SELECTED, array($this, "quit")); // Add the top level menu to the menubar $menu_bar->Append($top_file_menu, "&File"); } // Help Menu { // Set up the about item $top_help_menu->Append(4, "&About", "About this program"); $this->Connect(4, wxEVT_COMMAND_MENU_SELECTED, array($this, "about")); // Add the top level menu to the menubar $menu_bar->Append($top_help_menu, "&Help"); } $this->SetMenuBar($menu_bar); } } // End of main.php