/* * This file is part of rasdaman community. * * Rasdaman community is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Rasdaman community is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with rasdaman community. If not, see . * * Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009 Peter Baumann / rasdaman GmbH. * * For more information please see * or contact Peter Baumann via . / /** * PURPOSE: * * rView main application (class rView) and main frame (class rviewMainFrame). * The main application includes the database object which has to be accessed * through rView-member functions. * * COMMENTS: * none */ /** * @file rview.hh * * @ingroup Applications */ #ifndef _RVIEW_H_ #define _RVIEW_H_ #ifdef __GNUG__ #pragma interface #endif // RasDaMan includes #include "rasodmg/ref.hh" #include "rasodmg/marray.hh" #include "rviewApp.hh" #include "rviewUtils.hh" #include "rviewPrefs.hh" /* * rView's main frame */ class rviewMainFrame: public rviewFrame { public: rviewMainFrame(wxFrame *frame, char *title, int x, int y, int w, int h); ~rviewMainFrame(void); void OnMenuCommand(int id); void OnSize(int w, int h); void SetDatabaseInfo(const char *srvName, int srvPort, const char *dbName, const char*usrName); void GetDatabaseInfo(DynamicString &srvName, int& srvPort, DynamicString &dbName, DynamicString &usrName, DynamicString &usrPassword) const; void newDBState(bool newState); bool OnClose(); // Implementations of the rviewFrame virtual functions void label(void); int process(wxObject &obj, wxEvent &evt); int userEvent(const user_event &ue); virtual const char *getFrameName(void) const; virtual rviewFrameType getFrameType(void) const; // constants // Width and height of main window static const int main_width; static const int main_height; // Border around panel in main frame static const int main_border; // Height of server / database text widgets static const int main_theight; // Dimensions of button(s) static const int main_bwidth; static const int main_bheight; protected: rviewText *server; rviewText *port; rviewText *database; rviewText *username; rviewText *userpassword; rviewButton *openBut; wxPanel *panel; wxMenuBar *mBar; bool dbOpen; rviewAbout *aboutWindow; }; /* * rView application specifics */ class rView: public rmanClientApp { public: rView(void); virtual ~rView(void); wxFrame *OnInit(void); void OpenCloseServer(void); void OpenQueryWindow(void); private: rviewMainFrame *mainFrame; static const char labels_filename[]; static const char prefs_filename[]; static const double version; }; #endif