KiCad PCB EDA Suite
Loading...
Searching...
No Matches
status_popup.h
Go to the documentation of this file.
1/*
2 * This program source code file is part of KiCad, a free EDA CAD application.
3 *
4 * Copyright (C) 2014-2015 CERN
5 * Copyright The KiCad Developers, see AUTHORS.txt for contributors.
6 * Author: Tomasz Wlostowski <[email protected]>
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License
10 * as published by the Free Software Foundation; either version 2
11 * of the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program. If not, see <https://www.gnu.org/licenses/>.
20 */
21
22#ifndef __STATUS_POPUP_H_
23#define __STATUS_POPUP_H_
24
25
26#include <math/vector2d.h>
27#include <wx/popupwin.h>
28#include <wx/timer.h>
29#include <wx/panel.h>
30#include <wx/stattext.h>
31#include <wx/sizer.h>
32#include <wx/statbmp.h>
33
34class EDA_DRAW_FRAME;
35
40class STATUS_POPUP: public wxPopupWindow
41{
42public:
43 STATUS_POPUP( wxWindow* aParent );
44 virtual ~STATUS_POPUP() { Hide(); }
45
46 virtual void Popup( wxWindow* aFocus = nullptr );
47 virtual void PopupFor( int aMsecs );
48 virtual void Move( const wxPoint& aWhere );
49 virtual void Move( const VECTOR2I& aWhere );
50
56 void Expire( int aMsecs );
57
58 wxWindow* GetPanel() { return m_panel; }
59
60protected:
61 void updateSize();
62
63 void onCharHook( wxKeyEvent& aEvent );
64
66 void onExpire( wxTimerEvent& aEvent );
67
68protected:
69 wxPanel* m_panel;
70 wxBoxSizer* m_topSizer;
72};
73
74
79{
80public:
81 STATUS_TEXT_POPUP( wxWindow* aParent );
82 virtual ~STATUS_TEXT_POPUP() {}
83
89 void SetText( const wxString& aText );
90
96 void SetTextColor( const wxColour& aColor );
97
98protected:
99 wxStaticText* m_statusLine;
100};
101
102
103#endif /* __STATUS_POPUP_H_*/
The base class for create windows for drawing purpose.
void onExpire(wxTimerEvent &aEvent)
Expire timer even handler.
wxWindow * GetPanel()
void Expire(int aMsecs)
Hide the popup after a specified time.
virtual void PopupFor(int aMsecs)
wxBoxSizer * m_topSizer
wxTimer m_expireTimer
STATUS_POPUP(wxWindow *aParent)
Transient mouse following popup window implementation.
wxPanel * m_panel
virtual void Popup(wxWindow *aFocus=nullptr)
virtual void Move(const wxPoint &aWhere)
void onCharHook(wxKeyEvent &aEvent)
virtual ~STATUS_POPUP()
void SetTextColor(const wxColour &aColor)
Change text color.
void SetText(const wxString &aText)
Display a text.
virtual ~STATUS_TEXT_POPUP()
wxStaticText * m_statusLine
STATUS_TEXT_POPUP(wxWindow *aParent)
VECTOR2< int32_t > VECTOR2I
Definition vector2d.h:683