KiCad PCB EDA Suite
wx_aui_utils.cpp
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) 2021 KiCad Developers, see AUTHORS.txt for contributors.
5 *
6 * This program is free software: you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the
8 * Free Software Foundation, either version 3 of the License, or (at your
9 * option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful, but
12 * WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License along
17 * with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19
20#include <wx/aui/aui.h>
22
23
24void SetAuiPaneSize( wxAuiManager& aManager, wxAuiPaneInfo& aPane, int aWidth, int aHeight )
25{
26 wxSize minSize = aPane.min_size;
27
28 // wxAUI hack: force width by setting MinSize() and then Fixed()
29 // thanks to ZenJu http://trac.wxwidgets.org/ticket/13180
30 aPane.MinSize( aWidth, aHeight );
31 aPane.Fixed();
32 aManager.Update();
33
34 // now make it resizable again
35 aPane.Resizable();
36 aManager.Update();
37
38 // Note: DO NOT call m_auimgr.Update() anywhere after this; it will nuke the size
39 // back to minimum.
40 aPane.MinSize( minSize.x, minSize.y );
41}
const int minSize
Push and Shove router track width and via size dialog.
void SetAuiPaneSize(wxAuiManager &aManager, wxAuiPaneInfo &aPane, int aWidth, int aHeight)
Sets the size of an AUI pane, working around http://trac.wxwidgets.org/ticket/13180.