diff options
| author | Crystalwarrior <Varsash@Gmail.com> | 2022-06-03 13:41:31 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-06-03 12:41:31 +0200 |
| commit | c3a5bfb98a50396a75b29bb39c4b3eb25b1353c5 (patch) | |
| tree | 91166116564ae724be563b19a1b3e3e653593a18 /src/courtroom.cpp | |
| parent | a392d31ad218cc0b60064d50cd4b6ad2a108ea63 (diff) | |
Add icons for pos dropdown (#715)
* Add icons for pos dropdown
* Make sure to upscale the icons to actually fit (so tiny 1pix bg images for ex. still show up properly)
* move get_pos_path
* add const to desk mod
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Revert "add const to desk mod"
This reverts commit 7d6007fb1be0781e29985d0b83f2f6da16295e90.
* make set_scene const
* make pos const
* add and to const
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* add braces
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Revert "add and to const"
This reverts commit aa5e5066dcf42ae18c2aeb349d470271226601da.
* make desk const
* fix get pos path for real
Co-authored-by: stonedDiscord <Tukz@gmx.de>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Diffstat (limited to 'src/courtroom.cpp')
| -rw-r--r-- | src/courtroom.cpp | 81 |
1 files changed, 13 insertions, 68 deletions
diff --git a/src/courtroom.cpp b/src/courtroom.cpp index 249f09e4..c525ef14 100644 --- a/src/courtroom.cpp +++ b/src/courtroom.cpp @@ -1443,7 +1443,15 @@ void Courtroom::set_pos_dropdown(QStringList pos_dropdowns) ui_pos_dropdown->blockSignals(true); pos_dropdown_list = pos_dropdowns; ui_pos_dropdown->clear(); - ui_pos_dropdown->addItems(pos_dropdown_list); + for (int n = 0; n < pos_dropdown_list.size(); ++n) { + QString pos = pos_dropdown_list.at(n); + ui_pos_dropdown->addItem(pos); + QPixmap image = QPixmap(ao_app->get_image_suffix(ao_app->get_background_path(ao_app->get_pos_path(pos)))); + if (!image.isNull()) { + image = image.scaledToHeight(ui_pos_dropdown->iconSize().height()); + } + ui_pos_dropdown->setItemIcon(n, image); + } if (current_side != "" && !pos_dropdown_list.contains(current_side)) ui_pos_dropdown->setEditText(current_side); @@ -3754,73 +3762,10 @@ void Courtroom::play_sfx() ao_app->get_sfx_looping(current_char, current_emote) == "1"); } -void Courtroom::set_scene(QString f_desk_mod, QString f_side) +void Courtroom::set_scene(const QString f_desk_mod, const QString f_side) { - // witness is default if pos is invalid - QString f_background; - QString f_desk_image; - if (file_exists(ao_app->get_image_suffix(ao_app->get_background_path("witnessempty")))) { - f_background = "witnessempty"; - f_desk_image = "stand"; - } - else { - f_background = "wit"; - f_desk_image = "wit_overlay"; - } - - if (f_side == "def" && file_exists(ao_app->get_image_suffix( - ao_app->get_background_path("defenseempty")))) { - f_background = "defenseempty"; - f_desk_image = "defensedesk"; - } - else if (f_side == "pro" && - file_exists(ao_app->get_image_suffix( - ao_app->get_background_path("prosecutorempty")))) { - f_background = "prosecutorempty"; - f_desk_image = "prosecutiondesk"; - } - else if (f_side == "jud" && file_exists(ao_app->get_image_suffix( - ao_app->get_background_path("judgestand")))) { - f_background = "judgestand"; - f_desk_image = "judgedesk"; - } - else if (f_side == "hld" && - file_exists(ao_app->get_image_suffix( - ao_app->get_background_path("helperstand")))) { - f_background = "helperstand"; - f_desk_image = "helperdesk"; - } - else if (f_side == "hlp" && - file_exists(ao_app->get_image_suffix( - ao_app->get_background_path("prohelperstand")))) { - f_background = "prohelperstand"; - f_desk_image = "prohelperdesk"; - } - else if (f_side == "jur" && file_exists(ao_app->get_image_suffix( - ao_app->get_background_path("jurystand")))) { - f_background = "jurystand"; - f_desk_image = "jurydesk"; - } - else if (f_side == "sea" && - file_exists(ao_app->get_image_suffix( - ao_app->get_background_path("seancestand")))) { - f_background = "seancestand"; - f_desk_image = "seancedesk"; - } - - if (file_exists(ao_app->get_image_suffix( - ao_app->get_background_path(f_side)))) // Unique pos path - { - f_background = f_side; - f_desk_image = f_side + "_overlay"; - } - - QString desk_override = ao_app->read_design_ini("overlays/" + f_background, ao_app->get_background_path("design.ini")); - if (desk_override != "") - f_desk_image = desk_override; - - ui_vp_background->load_image(f_background); - ui_vp_desk->load_image(f_desk_image); + ui_vp_background->load_image(ao_app->get_pos_path(f_side)); + ui_vp_desk->load_image(ao_app->get_pos_path(f_side, true)); if (f_desk_mod == "0" || (f_desk_mod != "1" && @@ -5194,7 +5139,7 @@ void Courtroom::set_text_color_dropdown() ui_text_color->addItem(color_name); QPixmap pixmap(16, 16); pixmap.fill(color); - ui_text_color->setItemIcon(ui_text_color->count() - 1, QIcon(pixmap)); + ui_text_color->setItemIcon(ui_text_color->count() - 1, pixmap); color_row_to_number.append(c); } for (int c = 0; c < max_colors; ++c) { |
