|
From: <ma...@us...> - 2003-12-22 05:30:04
|
Update of /cvsroot/sharedaemon/ui-wx/src
In directory sc8-pr-cvs1:/tmp/cvs-serv31912
Modified Files:
SBPanel.cpp SBPanel.h ServerWnd.cpp
Log Message:
Sidebar buttons now also have images :)
Index: SBPanel.cpp
===================================================================
RCS file: /cvsroot/sharedaemon/ui-wx/src/SBPanel.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- SBPanel.cpp 21 Dec 2003 05:35:12 -0000 1.8
+++ SBPanel.cpp 22 Dec 2003 05:30:00 -0000 1.9
@@ -42,20 +42,38 @@
* and a "headerbutton" which will then provide us with toggling functionality.
*/
CSBPanel::CSBPanel(
- wxWindow *parent, wxWindowID id, const
- wxString &title, const wxString &name
+ wxWindow *parent, wxWindowID id, const wxString &title,
+ const wxString &name, const wxBitmap &image
) : wxPanel(
parent, id, wxDefaultPosition, wxDefaultSize,
wxTAB_TRAVERSAL, name)
{
+ if (image != wxNullBitmap) {
+ use_image = true;
+ } else {
+ use_image = false;
+ }
+
wxStaticBox *box = new wxStaticBox(this, -1, wxT(""));
mainsizer = new wxStaticBoxSizer(box, wxVERTICAL);
- headerbtn = new wxButton(
- this, -1, title, wxDefaultPosition, wxDefaultSize, 0
- );
- headerbtn->SetFont(wxFont(SB_BTN_FONT_SIZE, wxROMAN, wxNORMAL, wxBOLD));
- mainsizer->Add(headerbtn, 0, wxGROW|wxADJUST_MINSIZE, 5);
+ if (use_image) {
+ headerbmpbtn = new MBitmapButton(
+ this, -1, title, image
+ );
+ headerbmpbtn->SetFont(
+ wxFont(SB_BTN_FONT_SIZE, wxROMAN, wxNORMAL, wxBOLD)
+ );
+ mainsizer->Add(headerbmpbtn, 0, wxGROW|wxADJUST_MINSIZE, 5);
+ } else {
+ headerbtn = new wxButton(
+ this, -1, title, wxDefaultPosition, wxDefaultSize, 0
+ );
+ headerbtn->SetFont(
+ wxFont(SB_BTN_FONT_SIZE, wxROMAN, wxNORMAL, wxBOLD)
+ );
+ mainsizer->Add(headerbtn, 0, wxGROW|wxADJUST_MINSIZE, 5);
+ }
SetAutoLayout(true);
SetSizer(mainsizer);
@@ -83,9 +101,16 @@
* Layout() as neccesery.
*/
void CSBPanel::Toggle(wxCommandEvent &event) {
- if (event.GetId() != headerbtn->GetId()) {
- event.Skip();
- return;
+ if (use_image) {
+ if (event.GetId() != headerbmpbtn->GetId()) {
+ event.Skip();
+ return;
+ }
+ } else {
+ if (event.GetId() != headerbtn->GetId()) {
+ event.Skip();
+ return;
+ }
}
if (shown) {
@@ -129,7 +154,11 @@
*/
if (!tmp) {
wxCommandEvent nullevent;
- nullevent.SetId(headerbtn->GetId());
+ if (use_image) {
+ nullevent.SetId(headerbmpbtn->GetId());
+ } else {
+ nullevent.SetId(headerbtn->GetId());
+ }
Toggle(nullevent);
}
}
Index: SBPanel.h
===================================================================
RCS file: /cvsroot/sharedaemon/ui-wx/src/SBPanel.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- SBPanel.h 21 Dec 2003 05:35:12 -0000 1.4
+++ SBPanel.h 22 Dec 2003 05:30:00 -0000 1.5
@@ -31,6 +31,8 @@
#endif
#include "defines.h"
+#include "MBitmapButton.h"
+#include "Images.h"
#if defined(__WXMSW__) || defined(__GTK2__)
#define SB_BTN_FONT_SIZE 10
@@ -51,7 +53,8 @@
public:
CSBPanel(
wxWindow *parent, wxWindowID id,
- const wxString &title, const wxString &name
+ const wxString &title, const wxString &name,
+ const wxBitmap &image = wxNullBitmap
);
virtual ~CSBPanel();
@@ -63,7 +66,9 @@
wxStaticBoxSizer *mainsizer;
wxSizer *content;
wxButton *headerbtn;
+ MBitmapButton *headerbmpbtn;
bool shown;
+ bool use_image;
};
#endif
Index: ServerWnd.cpp
===================================================================
RCS file: /cvsroot/sharedaemon/ui-wx/src/ServerWnd.cpp,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -d -r1.48 -r1.49
--- ServerWnd.cpp 17 Dec 2003 10:15:21 -0000 1.48
+++ ServerWnd.cpp 22 Dec 2003 05:30:00 -0000 1.49
@@ -186,25 +186,30 @@
/* Sidebar sections */
CSBPanel *addserver = new CSBPanel(
- sidebar, -1, _("Add new server"), wxT("SideBar_AddServer")
+ sidebar, -1, _("Add new server"), wxT("SideBar_AddServer"),
+ img->GetImage(wxT("newserver"))
);
addserver->SetContent(AddServerPanel(addserver, false, false));
sbmain->Add(addserver, 0, wxGROW|wxALL|wxADJUST_MINSIZE, 0);
CSBPanel *serversettings = new CSBPanel(
- sidebar, -1, _("Server settings"), wxT("SideBar_ServerSettings")
+ sidebar, -1, _("Server settings"),
+ wxT("SideBar_ServerSettings"),
+ img->GetImage(wxT("updateservers"))
);
serversettings->SetContent(SettingsPanel(serversettings, false, false));
sbmain->Add(serversettings, 0, wxGROW|wxALL|wxADJUST_MINSIZE, 0);
CSBPanel *portsettings = new CSBPanel(
- sidebar, -1, _("Port settings"), wxT("SideBar_PortSettings")
+ sidebar, -1, _("Port settings"), wxT("SideBar_PortSettings"),
+ img->GetImage(wxT("server"))
);
portsettings->SetContent(PortSettingsPanel(portsettings, false, false));
sbmain->Add(portsettings, 0, wxGROW|wxALL|wxADJUST_MINSIZE, 0);
CSBPanel *logoptions = new CSBPanel(
- sidebar, -1, _("Log options"), wxT("SideBar_LoggingOptions")
+ sidebar, -1, _("Log options"), wxT("SideBar_LoggingOptions"),
+ img->GetImage(wxT("log"))
);
logoptions->SetContent(LogOptionsPanel(logoptions, false, false));
sbmain->Add(logoptions, 0, wxGROW|wxALL|wxADJUST_MINSIZE, 0);
|