Когда разрабатываете свой GUI с помощью PyQt для какого-либо софта бывает необходимо позаимствовать цвета из текущего стиля интерфейса. Например, чтобы правильно раскрасить свои виджеты, подогнав их по цвету. Ведь бывает, что ваш GUI используется в разных софтах. Причём некоторые со светлой темой а другие с тёмной.
По умолчанию стили наследуются, но если вы задаёте какую-либо раскраску для части виджета через свой styleSheet, то требуется ссылаться на цвета текущего стиля.
Как это сделать? Как получить нужный цвет из палитры имеющегося стиля? Это достаточно просто, нужно использовать класс QPalette и его роли.
Например, мне нужно достать цвет текста из одного виджета и применить его в другом как цвет фона (не важно зачем именно так, просто захотелось😊).
Получаем палитру виджета и сразу достаём нужный цвет, указав его роль.
from PySide2.QtGui import QPalette
color = main_window.palette().color(QPalette.Text)
теперь можем использовать этот цвет в стилях
my_widget.setStyleSheet(f'background-color: {color.name()};')
Готово, мы динамически переопределили дефолтный стиль используя текущий стиль окна!
На самом деле есть запись покороче, в одну строку и без лишних переменных. Не очень-то по правилам CSS, но Qt это понимает.
my_widget.setStyleSheet('background-color: palette(Text);')
Этот способ не подходит если вам нужно как-то модифицировать цвет перед применением в своих стилях. В этом случае потребуется первый способ.
Зато он прекрасно сработает в файле .qss, то есть не придётся в коде прописывать раскраску отдельных элементов через ссылки на палитру, всё красиво сохранится в отдельном файле .qss!
QListView#my_widget::item:selected {
background: palette(Midlight);
}
Про имеющиеся роли можно почитать здесь🌍
#qt#tricks
📉Quebec considers slashing permanent immigration targets to 25,000
Quebec is considering a significant reduction in its annual permanent immigration targets, potentially as low as 25,000 people.
This marks a sharp decrease from the projected 64,000 for 2025. Immigration Minister Jean-François Roberge outlined three potential scenarios: 25,000, 35,000, or 45,000 immigrants annually. The move is driven by rising unemployment, a worsening housing crisis, and concerns over preserving the French language in Quebec.
Additionally, the province aims to cut the number of temporary immigrants under federal programs from over 400,000 to 200,000.
#Quebec#immigration
🍁Maple Chronicles
Quebec premier says Ottawa should forcibly relocate half of asylum seekers
Premier François Legault has made immigration a major focus of his visit to Paris, demanding that the federal government force asylum seekers in Quebec to move elsewhere, including people who have already settled in the province.
Half of the would-be refugees currently in Quebec should be transferred to other provinces, he told reporters on Wednesday at the offices of the Quebec delegation in Paris.
Legault’s latest remarks follow similar comments on Tuesday, when he said his government has asked Ottawa to create waiting zones for asylum seekers entering the country, similar to a system that has existed for decades in France.
#Quebec#immigration
🍁Maple Chronicles
The flag of Quebec is blue with a white cross and four white fleur-de-lis. It was officially adopted on January 21, 1948. The blue means the sky, the white cross means faith, and the fleur-de-lis are old French symbols.
The flag is a reference to Quebec’s French history and culture. 🇨🇦✝️⚜️
[Read more]
@googlefactss#Quebec#Flag#History#Symbols
📌Glencore приостанавливает инвестиции в медеплавильный завод в Квебеке из-за экологической неопределенности🌍
Во вторник швейцарская сырьевая компания Glencore объявила о временной приостановке планируемых инвестиций на сумму $300 млн в медеплавильный завод Rouyn-Noranda Horne в Квебеке, Канада. Завод является крупнейшим предприятием по производству меди в стране и одним из ведущих медных заводов в Северной Америке.
🔥 Основная причина приостановки — отсутствие гарантий соблюдения экологических нормативов, установленных провинцией Квебек. Glencore планировала инвестировать почти $1 млрд в модернизацию завода и сокращение вредных выбросов мышьяка, но переговоры с властями не увенчались успехом.
📈 Возможные последствия:
🔁 Без инвестиций и модернизации завод Rouyn-Noranda Horne перестанет соответствовать экологическим нормам Квебека с марта 2027 года.
🔁 Угроза закрытия завода создаст неопределенность для местной экономики и тысячи рабочих мест.
🔁 Будущее медного аффинажного завода Glencore в Монреале также ставится под сомнение.
💡 Glencore заявила, что продолжение инвестиций невозможно без твердых гарантий властей провинции о соблюдении экологических стандартов и сохранении нормальной деятельности завода в долгосрочной перспективе.
👏Власти Квебека пока не прокомментировали ситуацию, но компания ожидает скорейшей реакции и диалога с правительством.
🤑Следите за нашими обновлениями, чтобы оставаться в курсе последних изменений в экономике и политике!
#glencore#quebec#environmentalstandards#coppermaking#metalindustry#ecologicalissues