/usr/include/codeblocks/infowindow.h is in codeblocks-dev 13.12+dfsg-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | /*
* This file is part of the Code::Blocks IDE and licensed under the GNU Lesser General Public License, version 3
* http://www.gnu.org/licenses/lgpl-3.0.html
*/
/*
* Objects of type InfoWindow are autonomous and must therefore always be instantiated using operator new.
* In addition to this, InfoWindow does not have any non-static public class members.
*
* Since a (technically 100% correct) statement like
* new InfoWindow("foo", "bar");
* is unintuitive, confusing or even objective to some people, this class uses a variation of the "Named Constructor Idiom".
*
* InfoWindow::Display("foo", "bar");
* does the exact same thing as the above statement but looks a lot nicer.
*/
#ifndef INFOWINDOW_H
#define INFOWINDOW_H
#include <wx/event.h>
#include <wx/timer.h>
#include <wx/string.h>
#if wxUSE_POPUPWIN
#include <wx/popupwin.h>
typedef wxPopupWindow wxInfoWindowBase;
#else
#include "scrollingdialog.h"
typedef wxScrollingDialog wxInfoWindowBase;
#endif
#undef new
#include <list>
#include <algorithm>
class InfoWindow : public wxInfoWindowBase
{
InfoWindow(const wxString& title, const wxString& message, unsigned int delay, unsigned int hysteresis);
virtual ~InfoWindow();
void OnTimer(wxTimerEvent& e);
void OnMove(wxMouseEvent& e);
void OnClick(wxMouseEvent& e);
public:
static void Display(const wxString& title, const wxString& message,
unsigned int delay = 5000, unsigned int hysteresis = 1);
private:
wxTimer *m_timer;
int left;
int top;
int hMin;
int pos;
unsigned int status;
unsigned int m_delay;
unsigned int ks;
std::list<wxString>::iterator my_message_iterator;
private:
DECLARE_EVENT_TABLE()
};
#endif
|