Skip to content

Commit 561b684

Browse files
authored
Merge branch 'winegui:main' into main
2 parents b42400e + ea9c225 commit 561b684

23 files changed

+173
-229
lines changed

.vscode/launch.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,7 @@
1010
"request": "launch",
1111
"program": "${workspaceFolder}/build/bin/winegui",
1212
"args": [],
13-
"stopAtEntry": false,
1413
"cwd": "${workspaceFolder}/build",
15-
"environment": [],
1614
"externalConsole": false,
1715
"MIMode": "gdb",
1816
"setupCommands": [

.vscode/settings.json

Lines changed: 92 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -1,94 +1,94 @@
11
{
2-
"C_Cpp.intelliSenseEngineFallback": "enabled",
3-
"files.associations": {
4-
"list": "cpp",
5-
"*.tcc": "cpp",
6-
"array": "cpp",
7-
"deque": "cpp",
8-
"string": "cpp",
9-
"unordered_map": "cpp",
10-
"vector": "cpp",
11-
"string_view": "cpp",
12-
"initializer_list": "cpp",
13-
"valarray": "cpp",
14-
"atomic": "cpp",
15-
"bit": "cpp",
16-
"cctype": "cpp",
17-
"chrono": "cpp",
18-
"clocale": "cpp",
19-
"cmath": "cpp",
20-
"condition_variable": "cpp",
21-
"cstdarg": "cpp",
22-
"cstddef": "cpp",
23-
"cstdint": "cpp",
24-
"cstdio": "cpp",
25-
"cstdlib": "cpp",
26-
"cstring": "cpp",
27-
"ctime": "cpp",
28-
"cwchar": "cpp",
29-
"cwctype": "cpp",
30-
"map": "cpp",
31-
"set": "cpp",
32-
"exception": "cpp",
33-
"algorithm": "cpp",
34-
"functional": "cpp",
35-
"iterator": "cpp",
36-
"memory": "cpp",
37-
"memory_resource": "cpp",
38-
"numeric": "cpp",
39-
"optional": "cpp",
40-
"random": "cpp",
41-
"ratio": "cpp",
42-
"system_error": "cpp",
43-
"tuple": "cpp",
44-
"type_traits": "cpp",
45-
"utility": "cpp",
46-
"fstream": "cpp",
47-
"iomanip": "cpp",
48-
"iosfwd": "cpp",
49-
"iostream": "cpp",
50-
"istream": "cpp",
51-
"limits": "cpp",
52-
"mutex": "cpp",
53-
"new": "cpp",
54-
"ostream": "cpp",
55-
"sstream": "cpp",
56-
"stdexcept": "cpp",
57-
"streambuf": "cpp",
58-
"thread": "cpp",
59-
"cinttypes": "cpp",
60-
"typeinfo": "cpp",
61-
"queue": "cpp",
62-
"stack": "cpp",
63-
"bitset": "cpp",
64-
"regex": "cpp",
65-
"shared_mutex": "cpp",
66-
"compare": "cpp",
67-
"concepts": "cpp",
68-
"numbers": "cpp",
69-
"semaphore": "cpp",
70-
"stop_token": "cpp",
71-
"variant": "cpp",
72-
"__bit_reference": "cpp",
73-
"__bits": "cpp",
74-
"__config": "cpp",
75-
"__debug": "cpp",
76-
"__hash_table": "cpp",
77-
"__locale": "cpp",
78-
"__node_handle": "cpp",
79-
"__split_buffer": "cpp",
80-
"__threading_support": "cpp",
81-
"__tuple": "cpp",
82-
"__verbose_abort": "cpp",
83-
"ios": "cpp",
84-
"locale": "cpp",
85-
"span": "cpp",
86-
"codecvt": "cpp",
87-
"__errc": "cpp",
88-
"__mutex_base": "cpp",
89-
"__tree": "cpp",
90-
"format": "cpp",
91-
"charconv": "cpp",
92-
"__memory": "cpp"
93-
}
2+
"cmake.generator": "Ninja",
3+
"files.associations": {
4+
"list": "cpp",
5+
"*.tcc": "cpp",
6+
"array": "cpp",
7+
"deque": "cpp",
8+
"string": "cpp",
9+
"unordered_map": "cpp",
10+
"vector": "cpp",
11+
"string_view": "cpp",
12+
"initializer_list": "cpp",
13+
"valarray": "cpp",
14+
"atomic": "cpp",
15+
"bit": "cpp",
16+
"cctype": "cpp",
17+
"chrono": "cpp",
18+
"clocale": "cpp",
19+
"cmath": "cpp",
20+
"condition_variable": "cpp",
21+
"cstdarg": "cpp",
22+
"cstddef": "cpp",
23+
"cstdint": "cpp",
24+
"cstdio": "cpp",
25+
"cstdlib": "cpp",
26+
"cstring": "cpp",
27+
"ctime": "cpp",
28+
"cwchar": "cpp",
29+
"cwctype": "cpp",
30+
"map": "cpp",
31+
"set": "cpp",
32+
"exception": "cpp",
33+
"algorithm": "cpp",
34+
"functional": "cpp",
35+
"iterator": "cpp",
36+
"memory": "cpp",
37+
"memory_resource": "cpp",
38+
"numeric": "cpp",
39+
"optional": "cpp",
40+
"random": "cpp",
41+
"ratio": "cpp",
42+
"system_error": "cpp",
43+
"tuple": "cpp",
44+
"type_traits": "cpp",
45+
"utility": "cpp",
46+
"fstream": "cpp",
47+
"iomanip": "cpp",
48+
"iosfwd": "cpp",
49+
"iostream": "cpp",
50+
"istream": "cpp",
51+
"limits": "cpp",
52+
"mutex": "cpp",
53+
"new": "cpp",
54+
"ostream": "cpp",
55+
"sstream": "cpp",
56+
"stdexcept": "cpp",
57+
"streambuf": "cpp",
58+
"thread": "cpp",
59+
"cinttypes": "cpp",
60+
"typeinfo": "cpp",
61+
"queue": "cpp",
62+
"stack": "cpp",
63+
"bitset": "cpp",
64+
"regex": "cpp",
65+
"shared_mutex": "cpp",
66+
"compare": "cpp",
67+
"concepts": "cpp",
68+
"numbers": "cpp",
69+
"semaphore": "cpp",
70+
"stop_token": "cpp",
71+
"variant": "cpp",
72+
"__bit_reference": "cpp",
73+
"__bits": "cpp",
74+
"__config": "cpp",
75+
"__debug": "cpp",
76+
"__hash_table": "cpp",
77+
"__locale": "cpp",
78+
"__node_handle": "cpp",
79+
"__split_buffer": "cpp",
80+
"__threading_support": "cpp",
81+
"__tuple": "cpp",
82+
"__verbose_abort": "cpp",
83+
"ios": "cpp",
84+
"locale": "cpp",
85+
"span": "cpp",
86+
"codecvt": "cpp",
87+
"__errc": "cpp",
88+
"__mutex_base": "cpp",
89+
"__tree": "cpp",
90+
"format": "cpp",
91+
"charconv": "cpp",
92+
"__memory": "cpp"
93+
}
9494
}

CMakeLists.txt

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 3.20)
1+
cmake_minimum_required(VERSION 3.25)
22

33
set(PROJECT_NAME WineGUI)
44
set(PROJECT_TARGET winegui)
@@ -39,7 +39,8 @@ message(STATUS "Build type: ${CMAKE_BUILD_TYPE}")
3939
message(STATUS "Create packages: ${PACKAGE}")
4040
message(STATUS "Generate documentation: ${DOXYGEN}")
4141

42-
# Cmake settings
42+
# Global CMake settings
43+
set(CMAKE_CXX_STANDARD 23)
4344
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Werror")
4445
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g")
4546
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 -DNDEBUG")
@@ -120,8 +121,8 @@ add_schema("org.melroy.winegui.gschema.xml" GSCHEMA_RING)
120121

121122
add_executable(${PROJECT_TARGET} ${GSCHEMA_RING} ${SOURCES})
122123

123-
# Set C++20
124-
target_compile_features(${PROJECT_TARGET} PUBLIC cxx_std_20)
124+
# Set C++ standard to C++23 and disable C++ extensions
125+
set_target_properties(${PROJECT_TARGET} PROPERTIES CXX_STANDARD 23)
125126
set_target_properties(${PROJECT_TARGET} PROPERTIES CXX_EXTENSIONS OFF)
126127

127128
# Linking Threads and GTKMM

include/helper.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,16 @@ class Helper
5050
static string run_program(const string& prefix_path,
5151
int debug_log_level,
5252
const string& program,
53-
const vector<pair<string, string>>& env_vars,
53+
const string& working_directory = "",
54+
const vector<pair<string, string>>& env_vars = {},
5455
bool give_error = true,
5556
bool stderr_output = true);
5657
static string run_program_under_wine(bool wine_64_bit,
5758
const string& prefix_path,
5859
int debug_log_level,
5960
const string& program,
60-
const vector<pair<string, string>>& env_vars,
61+
const string& working_directory = "",
62+
const vector<pair<string, string>>& env_vars = {},
6163
bool give_error = true,
6264
bool stderr_output = true);
6365
static void write_to_log_file(const string& logging_bottle_prefix, const string& logging);

src/add_app_window.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
/**
2-
* Copyright (c) 2023 WineGUI
2+
* Copyright (c) 2023-2025 WineGUI
33
*
44
* \file add_app_window.cc
55
* \brief Add new application shortcut for app list GTK3 window class
6-
* \author Melroy van den Berg <[email protected]>
6+
* \author Melroy van den Berg <[email protected]>
77
*
88
* This program is free software: you can redistribute it and/or modify
99
* it under the terms of the GNU Affero General Public License as

src/bottle_clone_window.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
/**
2-
* Copyright (c) 2020-2024 WineGUI
2+
* Copyright (c) 2020-2025 WineGUI
33
*
44
* \file bottle_clone_window.cc
55
* \brief Wine bottle clone window
6-
* \author Melroy van den Berg <[email protected]>
6+
* \author Melroy van den Berg <[email protected]>
77
*
88
* This program is free software: you can redistribute it and/or modify
99
* it under the terms of the GNU Affero General Public License as

src/bottle_config_file.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
/**
2-
* Copyright (c) 2022-2024 WineGUI
2+
* Copyright (c) 2022-2025 WineGUI
33
*
44
* \file bottle_config_file.cc
55
* \brief Wine bottle config file helper class
6-
* \author Melroy van den Berg <[email protected]>
6+
* \author Melroy van den Berg <[email protected]>
77
*
88
* This program is free software: you can redistribute it and/or modify
99
* it under the terms of the GNU Affero General Public License as

src/bottle_configure_env_var_window.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
/**
2-
* Copyright (c) 2024 WineGUI
2+
* Copyright (c) 2024-2025 WineGUI
33
*
44
* \file bottle_configure_env_var_window.cc
55
* \brief Configure bottle environment variables GTK3 Window class
6-
* \author Melroy van den Berg <[email protected]>
6+
* \author Melroy van den Berg <[email protected]>
77
*
88
* This program is free software: you can redistribute it and/or modify
99
* it under the terms of the GNU Affero General Public License as

src/bottle_configure_window.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
/**
2-
* Copyright (c) 2020-2023 WineGUI
2+
* Copyright (c) 2020-2025 WineGUI
33
*
44
* \file bottle_configure_window.cc
55
* \brief Wine bottle configure window
6-
* \author Melroy van den Berg <[email protected]>
6+
* \author Melroy van den Berg <[email protected]>
77
*
88
* This program is free software: you can redistribute it and/or modify
99
* it under the terms of the GNU Affero General Public License as

src/bottle_edit_window.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
/**
2-
* Copyright (c) 2020-2022 WineGUI
2+
* Copyright (c) 2020-2025 WineGUI
33
*
44
* \file bottle_edit_window.cc
55
* \brief Wine bottle edit window
6-
* \author Melroy van den Berg <[email protected]>
6+
* \author Melroy van den Berg <[email protected]>
77
*
88
* This program is free software: you can redistribute it and/or modify
99
* it under the terms of the GNU Affero General Public License as

0 commit comments

Comments
 (0)