// * This makes emacs happy -*-Mode: C++;-*-
/****************************************************************************
- * Copyright (c) 1998,2000 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2005,2011 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
/****************************************************************************
* Author: Juergen Pfeifer, 1997 *
- * Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en *
****************************************************************************/
-// $Id: cursesapp.h,v 1.8 2002/07/06 15:47:52 juergen Exp $
+// $Id: cursesapp.h,v 1.12 2011/09/17 22:12:10 tom Exp $
#ifndef NCURSES_CURSESAPP_H_incl
#define NCURSES_CURSESAPP_H_incl
// This method is called to initialize the SLKs. Default is nothing.
// You may rewrite this in your derived class
virtual void init_labels(Soft_Label_Key_Set& S) const {
+ (void) S;
}
// Your derived class must implement this method. The return value must
// be the exit value of your application.
virtual int run() = 0;
-
// The constructor is protected, so you may use it in your derived
// class constructor. The argument tells whether or not you want colors.
NCursesApplication(bool wantColors = FALSE);
+ NCursesApplication& operator=(const NCursesApplication& rhs)
+ {
+ if (this != &rhs) {
+ *this = rhs;
+ }
+ return *this;
+ }
+
+ NCursesApplication(const NCursesApplication& rhs)
+ : b_Colors(rhs.b_Colors),
+ Root_Window(rhs.Root_Window)
+ {
+ }
+
public:
virtual ~NCursesApplication();
// Process the commandline arguments. The default implementation simply
// ignores them. Your derived class may rewrite this.
virtual void handleArgs(int argc, char* argv[]) {
+ (void) argc;
+ (void) argv;
}
// Does this application use colors?
// Attributes to use for menu and forms foregrounds
virtual chtype foregrounds() const {
- return b_Colors ? COLOR_PAIR(1) : A_BOLD;
+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(1)) : A_BOLD;
}
// Attributes to use for menu and forms backgrounds
virtual chtype backgrounds() const {
- return b_Colors ? COLOR_PAIR(2) : A_NORMAL;
+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(2)) : A_NORMAL;
}
// Attributes to use for inactive (menu) elements
virtual chtype inactives() const {
- return b_Colors ? (COLOR_PAIR(3)|A_DIM) : A_DIM;
+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(3)|A_DIM) : A_DIM;
}
// Attributes to use for (form) labels and SLKs
virtual chtype labels() const {
- return b_Colors ? COLOR_PAIR(4) : A_NORMAL;
+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(4)) : A_NORMAL;
}
// Attributes to use for form backgrounds
virtual chtype dialog_backgrounds() const {
- return b_Colors ? COLOR_PAIR(4) : A_NORMAL;
+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(4)) : A_NORMAL;
}
// Attributes to use as default for (form) window backgrounds
virtual chtype window_backgrounds() const {
- return b_Colors ? COLOR_PAIR(5) : A_NORMAL;
+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(5)) : A_NORMAL;
}
// Attributes to use for the title window
virtual chtype screen_titles() const {
- return b_Colors ? COLOR_PAIR(6) : A_BOLD;
+ return b_Colors ? static_cast<chtype>(COLOR_PAIR(6)) : A_BOLD;
}
};
-#endif // NCURSES_CURSESAPP_H_incl
+#endif /* NCURSES_CURSESAPP_H_incl */