Skip to content

Commit 1fa8091

Browse files
Merge pull request #340 from g-maxime/crash
Fix crash on macStore version
2 parents 247bd2f + b9dae2c commit 1fa8091

File tree

2 files changed

+25
-23
lines changed

2 files changed

+25
-23
lines changed

Source/GUI/Qt/GUI_Main_Menu.cpp

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -294,29 +294,28 @@ void GUI_Main::Menu_Create()
294294
Menu_Options->addSeparator();
295295
Menu_Options->addAction(Menu_Options_ResetFieldSizes);
296296

297-
Preferences=new GUI_Preferences(this, C);
298-
Menu_Fields_Menus=new QMenu*[Preferences->Groups_Count_Get()];
299-
Menu_Fields_CheckBoxes=new QAction*[Preferences->Groups_Count_Get()*options::MaxCount];
300-
Menu_Fields_ActionGroups=new QActionGroup*[Preferences->Groups_Count_Get()];
297+
Menu_Fields_Menus=new QMenu*[GUI_Preferences::Groups_Count_Get()];
298+
Menu_Fields_CheckBoxes=new QAction*[GUI_Preferences::Groups_Count_Get()*options::MaxCount];
299+
Menu_Fields_ActionGroups=new QActionGroup*[GUI_Preferences::Groups_Count_Get()];
301300

302-
for (size_t Group=0; Group<Preferences->Groups_Count_Get(); Group++)
301+
for (size_t Group=0; Group<GUI_Preferences::Groups_Count_Get(); Group++)
303302
{
304-
if (Preferences->Group_Options_Count_Get((group)Group, true))
303+
if (GUI_Preferences::Group_Options_Count_Get((group)Group, true))
305304
{
306305
Menu_Fields_ActionGroups[Group]=new QActionGroup(this);
307-
Menu_Fields_Menus[Group]=Menu_Fields_Main->addMenu(QString::fromUtf8(Preferences->Group_Name_Get((group)Group).c_str()));
306+
Menu_Fields_Menus[Group]=Menu_Fields_Main->addMenu(QString::fromUtf8(GUI_Preferences::Group_Name_Get((group)Group).c_str()));
308307
}
309-
for (size_t Option=0; Option<Preferences->Group_Options_Count_Get((group)Group, true); Option++)
308+
for (size_t Option=0; Option<GUI_Preferences::Group_Options_Count_Get((group)Group, true); Option++)
310309
{
311-
switch (Preferences->Group_Option_Type_Get((group)Group, Option))
310+
switch (GUI_Preferences::Group_Option_Type_Get((group)Group, Option))
312311
{
313312
case Type_CheckBox:
314-
Menu_Fields_CheckBoxes[Group*options::MaxCount+Option] = new QAction(QString::fromUtf8(Preferences->Group_Option_Description_Get((group)Group, Option).c_str()), this);
313+
Menu_Fields_CheckBoxes[Group*options::MaxCount+Option] = new QAction(QString::fromUtf8(GUI_Preferences::Group_Option_Description_Get((group)Group, Option).c_str()), this);
315314
Menu_Fields_Menus[Group]->addAction(Menu_Fields_CheckBoxes[Group*options::MaxCount+Option]);
316315
Menu_Fields_CheckBoxes[Group*options::MaxCount+Option]->setCheckable(true);
317316
break;
318317
case Type_RadioButton:
319-
Menu_Fields_RadioButtons[Group*options::MaxCount+Option] = new QAction(QString::fromUtf8(Preferences->Group_Option_Description_Get((group)Group, Option).c_str()), this);
318+
Menu_Fields_RadioButtons[Group*options::MaxCount+Option] = new QAction(QString::fromUtf8(GUI_Preferences::Group_Option_Description_Get((group)Group, Option).c_str()), this);
320319
Menu_Fields_ActionGroups[Group]->addAction(Menu_Fields_RadioButtons[Group*options::MaxCount+Option]);
321320
Menu_Fields_Menus[Group]->addAction(Menu_Fields_RadioButtons[Group*options::MaxCount+Option]);
322321
Menu_Fields_RadioButtons[Group*options::MaxCount+Option]->setCheckable(true);
@@ -325,6 +324,7 @@ void GUI_Main::Menu_Create()
325324
}
326325
}
327326
}
327+
328328
connect(Menu_Fields_CheckBoxes[Group_Rules*options::MaxCount+Option_Rules_Tech3285_Req ], SIGNAL(toggled(bool)), this, SLOT(OnMenu_Rules_Tech3285_Req(bool)));
329329
connect(Menu_Fields_CheckBoxes[Group_Rules*options::MaxCount+Option_Rules_Tech3285_Rec ], SIGNAL(toggled(bool)), this, SLOT(OnMenu_Rules_Tech3285_Rec(bool)));
330330
connect(Menu_Fields_CheckBoxes[Group_Rules*options::MaxCount+Option_Rules_CodingHistory_Rec ], SIGNAL(toggled(bool)), this, SLOT(OnMenu_Rules_CodingHistory_Rec(bool)));
@@ -364,13 +364,15 @@ void GUI_Main::Menu_Create()
364364
connect(Menu_Fields_RadioButtons[Group_Encoding_Fallback*options::MaxCount+Option_Encoding_Fallback_8859_2], SIGNAL(toggled(bool)), this, SLOT(OnMenu_Options_EncodingFallback8859_2(bool)));
365365
connect(Menu_Fields_CheckBoxes[Group_Encoding_Options*options::MaxCount+Option_Ignore_File_Encoding ], SIGNAL(toggled(bool)), this, SLOT(OnMenu_Options_Ignore_File_Encoding(bool)));
366366
connect(Menu_Fields_CheckBoxes[Group_Encoding_Options*options::MaxCount+Option_Write_CodePage ], SIGNAL(toggled(bool)), this, SLOT(OnMenu_Options_Write_CodePage(bool)));
367+
368+
Preferences=new GUI_Preferences(this, C);
367369
for (size_t Group=Group_Tech; Group<=Group_Core; Group++)
368-
for (size_t Option=0; Option<Preferences->Group_Options_Count_Get((group)Group, true); Option++)
370+
for (size_t Option=0; Option<GUI_Preferences::Group_Options_Count_Get((group)Group, true); Option++)
369371
connect(Menu_Fields_CheckBoxes[Group*options::MaxCount+Option], SIGNAL(toggled(bool)), this, SLOT(OnMenu_Options_TechCore(bool)));
370372

371-
for (size_t Group=0; Group<Preferences->Groups_Count_Get(); Group++)
372-
for (size_t Option=0; Option<Preferences->Group_Options_Count_Get((group)Group, true); Option++)
373-
switch (Preferences->Group_Option_Type_Get((group)Group, Option))
373+
for (size_t Group=0; Group<GUI_Preferences::Groups_Count_Get(); Group++)
374+
for (size_t Option=0; Option<GUI_Preferences::Group_Options_Count_Get((group)Group, true); Option++)
375+
switch (GUI_Preferences::Group_Option_Type_Get((group)Group, Option))
374376
{
375377
case Type_CheckBox:
376378
Menu_Fields_CheckBoxes[Group*options::MaxCount+Option]->setChecked(Preferences->Group_Option_Checked_Get((group)Group, Option));

Source/GUI/Qt/GUI_Preferences.h

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -182,14 +182,14 @@ class GUI_Preferences : public QDialog
182182
public:
183183
GUI_Preferences (GUI_Main* Parent, Core* C);
184184

185-
size_t Groups_Count_Get();
186-
std::string Group_Name_Get(group Group);
187-
size_t Group_Options_Count_Get(group Group, bool ForTemporaryPrefs=false);
188-
type Group_Option_Type_Get(group Group, size_t Option);
189-
std::string Group_Option_Description_Get(group Group, size_t Option);
190-
bool Group_Option_Checked_Get(group Group, size_t Option);
191-
bool Group_Option_Checked_Set(group Group, size_t Option, bool Value);
192-
std::string Group_Option_Default_Get(group Group, size_t Option, bool& Overwrite);
185+
static size_t Groups_Count_Get();
186+
static std::string Group_Name_Get(group Group);
187+
static size_t Group_Options_Count_Get(group Group, bool ForTemporaryPrefs=false);
188+
static type Group_Option_Type_Get(group Group, size_t Option);
189+
static std::string Group_Option_Description_Get(group Group, size_t Option);
190+
bool Group_Option_Checked_Get(group Group, size_t Option);
191+
bool Group_Option_Checked_Set(group Group, size_t Option, bool Value);
192+
std::string Group_Option_Default_Get(group Group, size_t Option, bool& Overwrite);
193193

194194
private:
195195
//GUI

0 commit comments

Comments
 (0)