LibrePCB Developers Documentation
boardsideselectorwidget.h
Go to the documentation of this file.
1
/*
2
* LibrePCB - Professional EDA for everyone!
3
* Copyright (C) 2013 LibrePCB Developers, see AUTHORS.md for contributors.
4
* https://librepcb.org/
5
*
6
* This program is free software: you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation, either version 3 of the License, or
9
* (at your option) any later version.
10
*
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with this program. If not, see <http://www.gnu.org/licenses/>.
18
*/
19
20
#ifndef LIBREPCB_EDITOR_BOARDSIDESELECTORWIDGET_H
21
#define LIBREPCB_EDITOR_BOARDSIDESELECTORWIDGET_H
22
23
/*******************************************************************************
24
* Includes
25
******************************************************************************/
26
#include <
librepcb/core/library/pkg/footprintpad.h
>
27
28
#include <QtCore>
29
#include <QtWidgets>
30
31
/*******************************************************************************
32
* Namespace / Forward Declarations
33
******************************************************************************/
34
namespace
librepcb
{
35
namespace
editor {
36
37
/*******************************************************************************
38
* Class BoardSideSelectorWidget
39
******************************************************************************/
40
44
class
BoardSideSelectorWidget
final :
public
QWidget {
45
Q_OBJECT
46
47
public
:
48
// Constructors / Destructor
49
explicit
BoardSideSelectorWidget
(QWidget* parent =
nullptr
)
noexcept
;
50
BoardSideSelectorWidget
(
const
BoardSideSelectorWidget
& other) =
delete
;
51
~BoardSideSelectorWidget
() noexcept;
52
53
// Getters
54
FootprintPad
::ComponentSide
getCurrentBoardSide
() const noexcept;
55
56
// Setters
57
void
setCurrentBoardSide
(
FootprintPad
::ComponentSide side) noexcept;
58
void
setBoardSideTop
() noexcept {
59
setCurrentBoardSide
(
FootprintPad::ComponentSide::Top
);
60
}
61
void
setBoardSideBottom
() noexcept {
62
setCurrentBoardSide
(
FootprintPad::ComponentSide::Bottom
);
63
}
64
65
// Operator Overloadings
66
BoardSideSelectorWidget
&
operator=
(
const
BoardSideSelectorWidget
& rhs) =
67
delete
;
68
69
signals:
70
void
currentBoardSideChanged
(
FootprintPad::ComponentSide
side);
71
72
private
:
// Methods
73
void
btnTopToggled
(
bool
checked)
noexcept
;
74
void
btnBottomToggled
(
bool
checked)
noexcept
;
75
76
private
:
// Data
77
QToolButton*
mBtnTop
;
78
QToolButton*
mBtnBottom
;
79
};
80
81
/*******************************************************************************
82
* End of File
83
******************************************************************************/
84
85
}
// namespace editor
86
}
// namespace librepcb
87
88
#endif
librepcb::FootprintPad
The FootprintPad class represents a pad of a footprint.
Definition:
footprintpad.h:55
librepcb::FootprintPad::ComponentSide
ComponentSide
Definition:
footprintpad.h:66
librepcb::FootprintPad::ComponentSide::Bottom
@ Bottom
librepcb::FootprintPad::ComponentSide::Top
@ Top
librepcb::editor::BoardSideSelectorWidget
The BoardSideSelectorWidget class.
Definition:
boardsideselectorwidget.h:44
librepcb::editor::BoardSideSelectorWidget::BoardSideSelectorWidget
BoardSideSelectorWidget(const BoardSideSelectorWidget &other)=delete
librepcb::editor::BoardSideSelectorWidget::getCurrentBoardSide
FootprintPad::ComponentSide getCurrentBoardSide() const noexcept
Definition:
boardsideselectorwidget.cpp:72
librepcb::editor::BoardSideSelectorWidget::setBoardSideTop
void setBoardSideTop() noexcept
Definition:
boardsideselectorwidget.h:58
librepcb::editor::BoardSideSelectorWidget::~BoardSideSelectorWidget
~BoardSideSelectorWidget() noexcept
Definition:
boardsideselectorwidget.cpp:65
librepcb::editor::BoardSideSelectorWidget::setBoardSideBottom
void setBoardSideBottom() noexcept
Definition:
boardsideselectorwidget.h:61
librepcb::editor::BoardSideSelectorWidget::BoardSideSelectorWidget
BoardSideSelectorWidget(QWidget *parent=nullptr) noexcept
Definition:
boardsideselectorwidget.cpp:38
librepcb::editor::BoardSideSelectorWidget::operator=
BoardSideSelectorWidget & operator=(const BoardSideSelectorWidget &rhs)=delete
librepcb::editor::BoardSideSelectorWidget::currentBoardSideChanged
void currentBoardSideChanged(FootprintPad::ComponentSide side)
librepcb::editor::BoardSideSelectorWidget::btnBottomToggled
void btnBottomToggled(bool checked) noexcept
Definition:
boardsideselectorwidget.cpp:98
librepcb::editor::BoardSideSelectorWidget::mBtnTop
QToolButton * mBtnTop
Definition:
boardsideselectorwidget.h:77
librepcb::editor::BoardSideSelectorWidget::mBtnBottom
QToolButton * mBtnBottom
Definition:
boardsideselectorwidget.h:78
librepcb::editor::BoardSideSelectorWidget::setCurrentBoardSide
void setCurrentBoardSide(FootprintPad::ComponentSide side) noexcept
Definition:
boardsideselectorwidget.cpp:83
librepcb::editor::BoardSideSelectorWidget::btnTopToggled
void btnTopToggled(bool checked) noexcept
Definition:
boardsideselectorwidget.cpp:93
footprintpad.h
librepcb
Definition:
occmodel.cpp:77
libs
librepcb
editor
library
pkg
boardsideselectorwidget.h
Generated on Tue Nov 19 2024 20:15:50 for LibrePCB Developers Documentation by
1.9.4