mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-05 06:33:57 +02:00
Get rid of Q_OBJECT in macOS MainWindow
This commit is contained in:
parent
1c8d4ee7ab
commit
ffbafcb5fb
2 changed files with 86 additions and 90 deletions
|
@ -17,9 +17,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
||||||
namespace Platform {
|
namespace Platform {
|
||||||
|
|
||||||
class MainWindow : public Window::MainWindow {
|
class MainWindow : public Window::MainWindow {
|
||||||
// The Q_OBJECT meta info is used for qobject_cast!
|
|
||||||
Q_OBJECT
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit MainWindow(not_null<Window::Controller*> controller);
|
explicit MainWindow(not_null<Window::Controller*> controller);
|
||||||
|
|
||||||
|
@ -39,23 +36,6 @@ public:
|
||||||
|
|
||||||
class Private;
|
class Private;
|
||||||
|
|
||||||
public Q_SLOTS:
|
|
||||||
void psMacUndo();
|
|
||||||
void psMacRedo();
|
|
||||||
void psMacCut();
|
|
||||||
void psMacCopy();
|
|
||||||
void psMacPaste();
|
|
||||||
void psMacDelete();
|
|
||||||
void psMacSelectAll();
|
|
||||||
void psMacEmojiAndSymbols();
|
|
||||||
|
|
||||||
void psMacBold();
|
|
||||||
void psMacItalic();
|
|
||||||
void psMacUnderline();
|
|
||||||
void psMacStrikeOut();
|
|
||||||
void psMacMonospace();
|
|
||||||
void psMacClearFormat();
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
bool eventFilter(QObject *obj, QEvent *evt) override;
|
bool eventFilter(QObject *obj, QEvent *evt) override;
|
||||||
|
|
||||||
|
|
|
@ -474,27 +474,99 @@ void MainWindow::createGlobalMenu() {
|
||||||
}
|
}
|
||||||
|
|
||||||
QMenu *edit = psMainMenu.addMenu(tr::lng_mac_menu_edit(tr::now));
|
QMenu *edit = psMainMenu.addMenu(tr::lng_mac_menu_edit(tr::now));
|
||||||
psUndo = edit->addAction(tr::lng_mac_menu_undo(tr::now), this, SLOT(psMacUndo()), QKeySequence::Undo);
|
psUndo = edit->addAction(
|
||||||
psRedo = edit->addAction(tr::lng_mac_menu_redo(tr::now), this, SLOT(psMacRedo()), QKeySequence::Redo);
|
tr::lng_mac_menu_undo(tr::now),
|
||||||
|
this,
|
||||||
|
[] { SendKeySequence(Qt::Key_Z, Qt::ControlModifier); },
|
||||||
|
QKeySequence::Undo);
|
||||||
|
psRedo = edit->addAction(
|
||||||
|
tr::lng_mac_menu_redo(tr::now),
|
||||||
|
this,
|
||||||
|
[] {
|
||||||
|
SendKeySequence(
|
||||||
|
Qt::Key_Z,
|
||||||
|
Qt::ControlModifier | Qt::ShiftModifier);
|
||||||
|
},
|
||||||
|
QKeySequence::Redo);
|
||||||
edit->addSeparator();
|
edit->addSeparator();
|
||||||
psCut = edit->addAction(tr::lng_mac_menu_cut(tr::now), this, SLOT(psMacCut()), QKeySequence::Cut);
|
psCut = edit->addAction(
|
||||||
psCopy = edit->addAction(tr::lng_mac_menu_copy(tr::now), this, SLOT(psMacCopy()), QKeySequence::Copy);
|
tr::lng_mac_menu_cut(tr::now),
|
||||||
psPaste = edit->addAction(tr::lng_mac_menu_paste(tr::now), this, SLOT(psMacPaste()), QKeySequence::Paste);
|
this,
|
||||||
psDelete = edit->addAction(tr::lng_mac_menu_delete(tr::now), this, SLOT(psMacDelete()), QKeySequence(Qt::ControlModifier | Qt::Key_Backspace));
|
[] { SendKeySequence(Qt::Key_X, Qt::ControlModifier); },
|
||||||
|
QKeySequence::Cut);
|
||||||
|
psCopy = edit->addAction(
|
||||||
|
tr::lng_mac_menu_copy(tr::now),
|
||||||
|
this,
|
||||||
|
[] { SendKeySequence(Qt::Key_C, Qt::ControlModifier); },
|
||||||
|
QKeySequence::Copy);
|
||||||
|
psPaste = edit->addAction(
|
||||||
|
tr::lng_mac_menu_paste(tr::now),
|
||||||
|
this,
|
||||||
|
[] { SendKeySequence(Qt::Key_V, Qt::ControlModifier); },
|
||||||
|
QKeySequence::Paste);
|
||||||
|
psDelete = edit->addAction(
|
||||||
|
tr::lng_mac_menu_delete(tr::now),
|
||||||
|
this,
|
||||||
|
[] { SendKeySequence(Qt::Key_Delete); },
|
||||||
|
QKeySequence(Qt::ControlModifier | Qt::Key_Backspace));
|
||||||
|
|
||||||
edit->addSeparator();
|
edit->addSeparator();
|
||||||
psBold = edit->addAction(tr::lng_menu_formatting_bold(tr::now), this, SLOT(psMacBold()), QKeySequence::Bold);
|
psBold = edit->addAction(
|
||||||
psItalic = edit->addAction(tr::lng_menu_formatting_italic(tr::now), this, SLOT(psMacItalic()), QKeySequence::Italic);
|
tr::lng_menu_formatting_bold(tr::now),
|
||||||
psUnderline = edit->addAction(tr::lng_menu_formatting_underline(tr::now), this, SLOT(psMacUnderline()), QKeySequence::Underline);
|
this,
|
||||||
psStrikeOut = edit->addAction(tr::lng_menu_formatting_strike_out(tr::now), this, SLOT(psMacStrikeOut()), Ui::kStrikeOutSequence);
|
[] { SendKeySequence(Qt::Key_B, Qt::ControlModifier); },
|
||||||
psMonospace = edit->addAction(tr::lng_menu_formatting_monospace(tr::now), this, SLOT(psMacMonospace()), Ui::kMonospaceSequence);
|
QKeySequence::Bold);
|
||||||
psClearFormat = edit->addAction(tr::lng_menu_formatting_clear(tr::now), this, SLOT(psMacClearFormat()), Ui::kClearFormatSequence);
|
psItalic = edit->addAction(
|
||||||
|
tr::lng_menu_formatting_italic(tr::now),
|
||||||
|
this,
|
||||||
|
[] { SendKeySequence(Qt::Key_I, Qt::ControlModifier); },
|
||||||
|
QKeySequence::Italic);
|
||||||
|
psUnderline = edit->addAction(
|
||||||
|
tr::lng_menu_formatting_underline(tr::now),
|
||||||
|
this,
|
||||||
|
[] { SendKeySequence(Qt::Key_U, Qt::ControlModifier); },
|
||||||
|
QKeySequence::Underline);
|
||||||
|
psStrikeOut = edit->addAction(
|
||||||
|
tr::lng_menu_formatting_strike_out(tr::now),
|
||||||
|
this,
|
||||||
|
[] {
|
||||||
|
SendKeySequence(
|
||||||
|
Qt::Key_X,
|
||||||
|
Qt::ControlModifier | Qt::ShiftModifier);
|
||||||
|
},
|
||||||
|
Ui::kStrikeOutSequence);
|
||||||
|
psMonospace = edit->addAction(
|
||||||
|
tr::lng_menu_formatting_monospace(tr::now),
|
||||||
|
this,
|
||||||
|
[] {
|
||||||
|
SendKeySequence(
|
||||||
|
Qt::Key_M,
|
||||||
|
Qt::ControlModifier | Qt::ShiftModifier);
|
||||||
|
},
|
||||||
|
Ui::kMonospaceSequence);
|
||||||
|
psClearFormat = edit->addAction(
|
||||||
|
tr::lng_menu_formatting_clear(tr::now),
|
||||||
|
this,
|
||||||
|
[] {
|
||||||
|
SendKeySequence(
|
||||||
|
Qt::Key_N,
|
||||||
|
Qt::ControlModifier | Qt::ShiftModifier);
|
||||||
|
},
|
||||||
|
Ui::kClearFormatSequence);
|
||||||
|
|
||||||
edit->addSeparator();
|
edit->addSeparator();
|
||||||
psSelectAll = edit->addAction(tr::lng_mac_menu_select_all(tr::now), this, SLOT(psMacSelectAll()), QKeySequence::SelectAll);
|
psSelectAll = edit->addAction(
|
||||||
|
tr::lng_mac_menu_select_all(tr::now),
|
||||||
|
this,
|
||||||
|
[] { SendKeySequence(Qt::Key_A, Qt::ControlModifier); },
|
||||||
|
QKeySequence::SelectAll);
|
||||||
|
|
||||||
edit->addSeparator();
|
edit->addSeparator();
|
||||||
edit->addAction(tr::lng_mac_menu_emoji_and_symbols(tr::now).replace('&', "&&"), this, SLOT(psMacEmojiAndSymbols()), QKeySequence(Qt::MetaModifier | Qt::ControlModifier | Qt::Key_Space));
|
edit->addAction(
|
||||||
|
tr::lng_mac_menu_emoji_and_symbols(tr::now).replace('&', "&&"),
|
||||||
|
this,
|
||||||
|
[] { [NSApp orderFrontCharacterPalette:nil]; },
|
||||||
|
QKeySequence(Qt::MetaModifier | Qt::ControlModifier | Qt::Key_Space));
|
||||||
|
|
||||||
QMenu *window = psMainMenu.addMenu(tr::lng_mac_menu_window(tr::now));
|
QMenu *window = psMainMenu.addMenu(tr::lng_mac_menu_window(tr::now));
|
||||||
psContacts = window->addAction(tr::lng_mac_menu_contacts(tr::now));
|
psContacts = window->addAction(tr::lng_mac_menu_contacts(tr::now));
|
||||||
|
@ -550,62 +622,6 @@ void MainWindow::createGlobalMenu() {
|
||||||
updateGlobalMenu();
|
updateGlobalMenu();
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::psMacUndo() {
|
|
||||||
SendKeySequence(Qt::Key_Z, Qt::ControlModifier);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacRedo() {
|
|
||||||
SendKeySequence(Qt::Key_Z, Qt::ControlModifier | Qt::ShiftModifier);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacCut() {
|
|
||||||
SendKeySequence(Qt::Key_X, Qt::ControlModifier);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacCopy() {
|
|
||||||
SendKeySequence(Qt::Key_C, Qt::ControlModifier);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacPaste() {
|
|
||||||
SendKeySequence(Qt::Key_V, Qt::ControlModifier);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacDelete() {
|
|
||||||
SendKeySequence(Qt::Key_Delete);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacSelectAll() {
|
|
||||||
SendKeySequence(Qt::Key_A, Qt::ControlModifier);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacEmojiAndSymbols() {
|
|
||||||
[NSApp orderFrontCharacterPalette:nil];
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacBold() {
|
|
||||||
SendKeySequence(Qt::Key_B, Qt::ControlModifier);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacItalic() {
|
|
||||||
SendKeySequence(Qt::Key_I, Qt::ControlModifier);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacUnderline() {
|
|
||||||
SendKeySequence(Qt::Key_U, Qt::ControlModifier);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacStrikeOut() {
|
|
||||||
SendKeySequence(Qt::Key_X, Qt::ControlModifier | Qt::ShiftModifier);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacMonospace() {
|
|
||||||
SendKeySequence(Qt::Key_M, Qt::ControlModifier | Qt::ShiftModifier);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::psMacClearFormat() {
|
|
||||||
SendKeySequence(Qt::Key_N, Qt::ControlModifier | Qt::ShiftModifier);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::updateGlobalMenuHook() {
|
void MainWindow::updateGlobalMenuHook() {
|
||||||
if (!positionInited()) {
|
if (!positionInited()) {
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Add table
Reference in a new issue