2011-01-27 14:36:49 +00:00
|
|
|
// This file is part of BOINC.
|
|
|
|
// http://boinc.berkeley.edu
|
|
|
|
// Copyright (C) 2008 University of California
|
|
|
|
//
|
|
|
|
// BOINC is free software; you can redistribute it and/or modify it
|
|
|
|
// under the terms of the GNU Lesser General Public License
|
|
|
|
// as published by the Free Software Foundation,
|
|
|
|
// either version 3 of the License, or (at your option) any later version.
|
|
|
|
//
|
|
|
|
// BOINC 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 Lesser General Public License for more details.
|
|
|
|
//
|
|
|
|
// You should have received a copy of the GNU Lesser General Public License
|
|
|
|
// along with BOINC. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
|
2017-04-08 06:54:49 +00:00
|
|
|
#ifndef BOINC_SG_PROJECTCOMMANDPOPUP_H
|
|
|
|
#define BOINC_SG_PROJECTCOMMANDPOPUP_H
|
2011-01-27 14:36:49 +00:00
|
|
|
|
2013-02-22 07:43:44 +00:00
|
|
|
#include "sg_CustomControls.h"
|
|
|
|
|
2023-05-05 18:05:20 +00:00
|
|
|
class CSimpleProjectCommandPopupButton : public CTransparentButton
|
2011-01-27 14:36:49 +00:00
|
|
|
{
|
|
|
|
DECLARE_DYNAMIC_CLASS( CSimpleProjectCommandPopupButton )
|
|
|
|
DECLARE_EVENT_TABLE()
|
|
|
|
|
|
|
|
public:
|
|
|
|
CSimpleProjectCommandPopupButton();
|
2023-05-05 18:05:20 +00:00
|
|
|
|
|
|
|
CSimpleProjectCommandPopupButton(wxWindow* parent, wxWindowID id,
|
|
|
|
const wxString& label = wxEmptyString,
|
|
|
|
const wxPoint& pos = wxDefaultPosition,
|
|
|
|
const wxSize& size = wxDefaultSize,
|
|
|
|
long style = 0,
|
|
|
|
const wxValidator& validator = wxDefaultValidator,
|
2011-01-27 14:36:49 +00:00
|
|
|
const wxString& name = wxT("ProjectCommandsPopupMenu"));
|
2023-05-05 18:05:20 +00:00
|
|
|
|
2011-01-27 14:36:49 +00:00
|
|
|
~CSimpleProjectCommandPopupButton();
|
|
|
|
|
|
|
|
private:
|
|
|
|
void AddMenuItems();
|
2014-03-31 12:12:10 +00:00
|
|
|
void OnProjectCommandsMouseDown(wxMouseEvent& event);
|
|
|
|
void OnProjectCommandsKeyboardNav(wxCommandEvent& event);
|
|
|
|
void ShowProjectCommandsMenu(wxPoint pos);
|
2011-01-27 14:36:49 +00:00
|
|
|
void OnProjectUpdate(wxCommandEvent& event);
|
|
|
|
void OnProjectSuspendResume(wxCommandEvent& event);
|
|
|
|
void OnProjectNoNewWork(wxCommandEvent& event);
|
|
|
|
void OnResetProject(wxCommandEvent& event);
|
|
|
|
void OnProjectDetach(wxCommandEvent& event);
|
|
|
|
void OnProjectShowProperties(wxCommandEvent& event);
|
|
|
|
PROJECT* FindProjectIndexFromURL(char *project_url, int *index);
|
|
|
|
|
|
|
|
protected:
|
|
|
|
wxMenu* m_ProjectCommandsPopUpMenu;
|
|
|
|
wxMenuItem* m_UpdateProjectMenuItem;
|
|
|
|
wxMenuItem* m_SuspendResumeMenuItem;
|
|
|
|
wxMenuItem* m_NoNewTasksMenuItem;
|
|
|
|
wxMenuItem* m_ResetProjectMenuItem;
|
|
|
|
wxMenuItem* m_RemoveProjectMenuItem;
|
|
|
|
wxMenuItem* m_ShowPropertiesMenuItem;
|
|
|
|
};
|
|
|
|
|
2017-04-08 06:54:49 +00:00
|
|
|
#endif
|