ide: main configuration flags improvement

This commit is contained in:
Mirek Fidler 2025-10-15 07:28:25 +02:00
parent 12216355fa
commit 352b839da9
2 changed files with 12 additions and 2 deletions

View file

@ -24,6 +24,7 @@ struct FlagsDlg : WithConfLayout<TopWindow> {
void Set(ArrayCtrl& a) { a.Set(0, ~flags); a.Set(1, ~name); Flags(); }
FlagsDlg();
~FlagsDlg();
};
void FlagsDlg::Options()
@ -60,11 +61,20 @@ void FlagsDlg::Flags()
accepts.Set(i, CC_SET, flg.Find(~~accepts.Get(i, CC_FLAG)) >= 0);
}
FlagsDlg::~FlagsDlg()
{
StoreToGlobal([&](Stream& s) { SerializePlacement(s); }, "FlagsDlgPlacement");
}
FlagsDlg::FlagsDlg()
{
VectorMap<String, Tuple<String, Index<String>>> code_flags;
CtrlLayoutOKCancel(*this, "Configuration flags");
Sizeable().Zoomable();
LoadFromGlobal([&](Stream& s) { SerializePlacement(s); }, "FlagsDlgPlacement");
PPInfo pp;
pp.SetIncludes(TheIde()->GetCurrentIncludePath() + ";" + GetClangInternalIncludes());
@ -209,7 +219,7 @@ MainConfigDlg::MainConfigDlg(const Workspace& wspc_) : wspc(wspc_) {
remove.SetImage(IdeImg::remove()) << [=] {
int q = list.GetCursor();
if(q >= 0) {
if(q >= 0 && PromptYesNo("Remove configuration?")) {
list.Remove(q);
if(q >= list.GetCount())
q--;

View file

@ -25,7 +25,7 @@ LAYOUT(ConfigLayout, 724, 216)
ITEM(Upp::Button, remove, SetLabel(t_("Remove")).LeftPosZ(300, 68).BottomPosZ(5, 23))
END_LAYOUT
LAYOUT(ConfLayout, 764, 784)
LAYOUT(ConfLayout, 764, 576)
ITEM(Upp::Option, gui, SetLabel(t_("GUI application")).LeftPosZ(8, 112).TopPosZ(8, 16))
ITEM(Upp::Option, debugcode, SetLabel(t_("Allow debuging code in release mode")).LeftPosZ(124, 240).TopPosZ(8, 16))
ITEM(Upp::ArrayCtrl, accepts, AutoHideSb(true).HSizePosZ(8, 8).VSizePosZ(32, 88))