From 10c470638dffd3069b9485823b9523ac36df59b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Thu, 10 Nov 2005 14:41:29 +0000 Subject: [PATCH] Now checks the font list every 3 seconds, and updates it if there were any changes. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14821 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/preferences/fonts/MainWindow.cpp | 18 +++++++++++++++++- src/preferences/fonts/MainWindow.h | 3 +++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/preferences/fonts/MainWindow.cpp b/src/preferences/fonts/MainWindow.cpp index fa866a5655..cd4032b8ef 100644 --- a/src/preferences/fonts/MainWindow.cpp +++ b/src/preferences/fonts/MainWindow.cpp @@ -14,12 +14,14 @@ #include #include +#include #include #include static const uint32 kMsgSetDefaults = 'dflt'; static const uint32 kMsgRevert = 'rvrt'; +static const uint32 kMsgCheckFonts = 'chkf'; MainWindow::MainWindow() @@ -93,6 +95,15 @@ MainWindow::MainWindow() || Frame().top > screen.Frame().bottom - 10) _Center(); } + + fRunner = new BMessageRunner(this, new BMessage(kMsgCheckFonts), 3000000); + // every 3 seconds +} + + +MainWindow::~MainWindow() +{ + delete fRunner; } @@ -124,7 +135,12 @@ MainWindow::MessageReceived(BMessage *message) fRevertButton->SetEnabled(false); break; - default: + case kMsgCheckFonts: + if (update_font_families(true)) + fFontsView->UpdateFonts(); + break; + + default: BWindow::MessageReceived(message); break; } diff --git a/src/preferences/fonts/MainWindow.h b/src/preferences/fonts/MainWindow.h index 5a49332a97..d7f3b295f8 100644 --- a/src/preferences/fonts/MainWindow.h +++ b/src/preferences/fonts/MainWindow.h @@ -16,12 +16,14 @@ #include class BButton; +class BMessageRunner; class FontView; class MainWindow : public BWindow { public: MainWindow(); + virtual ~MainWindow(); virtual bool QuitRequested(); virtual void MessageReceived(BMessage *message); @@ -29,6 +31,7 @@ class MainWindow : public BWindow { private: void _Center(); + BMessageRunner* fRunner; FontView* fFontsView; BButton* fRevertButton;