* Style update. Don't know what to do about the licence headers though

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32272 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Alexandre Deckner
2009-08-12 11:25:44 +00:00
parent 220c754efe
commit 3cbc1540cc
2 changed files with 70 additions and 60 deletions
+51 -41
View File
@@ -4,36 +4,35 @@
*/ */
#include <PopUpMenu.h>
#include <Bitmap.h> #include <Bitmap.h>
#include <Rect.h> #include <Deskbar.h>
#include <MenuItem.h>
#include <Window.h>
#include <Messenger.h>
#include <Roster.h>
#include <Resources.h>
#include <Entry.h>
#include <Path.h>
#include <NodeMonitor.h>
#include <VolumeRoster.h>
#include <Directory.h> #include <Directory.h>
#include <Entry.h>
#include <FindDirectory.h> #include <FindDirectory.h>
#include <IconUtils.h> #include <IconUtils.h>
#include <Query.h>
#include <SymLink.h>
#include <NodeInfo.h>
#include <kernel/fs_info.h> #include <kernel/fs_info.h>
#include <kernel/fs_index.h> #include <kernel/fs_index.h>
#include <Deskbar.h> #include <MenuItem.h>
#include <Messenger.h>
#include <NodeInfo.h>
#include <NodeMonitor.h>
#include <Path.h>
#include <PopUpMenu.h>
#include <Query.h>
#include <Rect.h>
#include <Resources.h>
#include <Roster.h>
#include <String.h> #include <String.h>
#include <SymLink.h>
#include <VolumeRoster.h>
#include <Window.h>
#include <stdio.h> #include <stdio.h>
#include <malloc.h> #include <malloc.h>
#include <E-mail.h> #include <E-mail.h>
#include <MailSettings.h>
#include <MailDaemon.h> #include <MailDaemon.h>
#include <MailSettings.h>
#include <MDRLanguage.h> #include <MDRLanguage.h>
#include "DeskbarView.h" #include "DeskbarView.h"
@@ -86,6 +85,7 @@ DeskbarView::DeskbarView(BRect frame)
_InitBitmaps(); _InitBitmaps();
} }
DeskbarView::DeskbarView(BMessage *message) DeskbarView::DeskbarView(BMessage *message)
: :
BView(message), BView(message),
@@ -94,6 +94,7 @@ DeskbarView::DeskbarView(BMessage *message)
_InitBitmaps(); _InitBitmaps();
} }
DeskbarView::~DeskbarView() DeskbarView::~DeskbarView()
{ {
for (int i = 0; i < kStatusCount; i++) for (int i = 0; i < kStatusCount; i++)
@@ -103,6 +104,7 @@ DeskbarView::~DeskbarView()
delete ((BQuery *)(fNewMailQueries.ItemAt(i))); delete ((BQuery *)(fNewMailQueries.ItemAt(i)));
} }
void DeskbarView::AttachedToWindow() void DeskbarView::AttachedToWindow()
{ {
BView::AttachedToWindow(); BView::AttachedToWindow();
@@ -114,14 +116,15 @@ void DeskbarView::AttachedToWindow()
SetLowColor(ViewColor()); SetLowColor(ViewColor());
if (be_roster->IsRunning("application/x-vnd.Be-POST")) { if (be_roster->IsRunning("application/x-vnd.Be-POST")) {
RefreshMailQuery(); _RefreshMailQuery();
} else { } else {
BDeskbar deskbar; BDeskbar deskbar;
deskbar.RemoveItem("mail_daemon"); deskbar.RemoveItem("mail_daemon");
} }
} }
void DeskbarView::RefreshMailQuery()
void DeskbarView::_RefreshMailQuery()
{ {
for (int32 i = 0; i < fNewMailQueries.CountItems(); i++) for (int32 i = 0; i < fNewMailQueries.CountItems(); i++)
delete ((BQuery *)(fNewMailQueries.ItemAt(i))); delete ((BQuery *)(fNewMailQueries.ItemAt(i)));
@@ -150,9 +153,10 @@ void DeskbarView::RefreshMailQuery()
newMailQuery->Fetch(); newMailQuery->Fetch();
BEntry entry; BEntry entry;
while (newMailQuery->GetNextEntry(&entry) == B_OK) while (newMailQuery->GetNextEntry(&entry) == B_OK) {
if (entry.InitCheck() == B_OK) if (entry.InitCheck() == B_OK)
fNewMessages++; fNewMessages++;
}
fNewMailQueries.AddItem(newMailQuery); fNewMailQueries.AddItem(newMailQuery);
} }
@@ -161,6 +165,7 @@ void DeskbarView::RefreshMailQuery()
Invalidate(); Invalidate();
} }
DeskbarView* DeskbarView::Instantiate(BMessage *data) DeskbarView* DeskbarView::Instantiate(BMessage *data)
{ {
if (!validate_instantiation(data, "DeskbarView")) if (!validate_instantiation(data, "DeskbarView"))
@@ -169,6 +174,7 @@ DeskbarView* DeskbarView::Instantiate(BMessage *data)
return new DeskbarView(data); return new DeskbarView(data);
} }
status_t DeskbarView::Archive(BMessage *data,bool deep) const status_t DeskbarView::Archive(BMessage *data,bool deep) const
{ {
BView::Archive(data, deep); BView::Archive(data, deep);
@@ -177,6 +183,7 @@ status_t DeskbarView::Archive(BMessage *data,bool deep) const
return B_NO_ERROR; return B_NO_ERROR;
} }
void DeskbarView::Draw(BRect /*updateRect*/) void DeskbarView::Draw(BRect /*updateRect*/)
{ {
if (fBitmaps[fStatus] == NULL) if (fBitmaps[fStatus] == NULL)
@@ -187,6 +194,7 @@ void DeskbarView::Draw(BRect /*updateRect*/)
SetDrawingMode(B_OP_COPY); SetDrawingMode(B_OP_COPY);
} }
status_t OpenFolder(const char* end) status_t OpenFolder(const char* end)
{ {
BPath path; BPath path;
@@ -194,9 +202,11 @@ status_t OpenFolder(const char* end)
path.Append(end); path.Append(end);
entry_ref ref; entry_ref ref;
if (get_ref_for_path(path.Path(),&ref) != B_OK) return B_NAME_NOT_FOUND; if (get_ref_for_path(path.Path(),&ref) != B_OK)
if (!BEntry(&ref).Exists()) return B_NAME_NOT_FOUND; return B_NAME_NOT_FOUND;
if (!BEntry(&ref).Exists())
return B_NAME_NOT_FOUND;
BMessage open_mbox(B_REFS_RECEIVED); BMessage open_mbox(B_REFS_RECEIVED);
open_mbox.AddRef("refs",&ref); open_mbox.AddRef("refs",&ref);
@@ -235,7 +245,7 @@ DeskbarView::MessageReceived(BMessage *message)
break; break;
case MD_REFRESH_QUERY: case MD_REFRESH_QUERY:
RefreshMailQuery(); _RefreshMailQuery();
break; break;
case B_QUERY_UPDATE: case B_QUERY_UPDATE:
@@ -258,7 +268,8 @@ DeskbarView::MessageReceived(BMessage *message)
BMailDaemon::Quit(); BMailDaemon::Quit();
break; break;
case B_REFS_RECEIVED: // open received files in the standard mail application // open received files in the standard mail application
case B_REFS_RECEIVED:
{ {
BMessage argv(B_ARGV_RECEIVED); BMessage argv(B_ARGV_RECEIVED);
argv.AddString("argv", "E-mail"); argv.AddString("argv", "E-mail");
@@ -267,14 +278,13 @@ DeskbarView::MessageReceived(BMessage *message)
BPath path; BPath path;
int i = 0; int i = 0;
while (message->FindRef("refs",i++,&ref) == B_OK && path.SetTo(&ref) == B_OK) while (message->FindRef("refs", i++, &ref) == B_OK
{ && path.SetTo(&ref) == B_OK) {
//fprintf(stderr,"got %s\n", path.Path()); //fprintf(stderr,"got %s\n", path.Path());
argv.AddString("argv", path.Path()); argv.AddString("argv", path.Path());
} }
if (i > 1) if (i > 1) {
{
argv.AddInt32("argc", i); argv.AddInt32("argc", i);
be_roster->Launch("text/x-email", &argv); be_roster->Launch("text/x-email", &argv);
} }
@@ -333,9 +343,9 @@ void
DeskbarView::MouseUp(BPoint pos) DeskbarView::MouseUp(BPoint pos)
{ {
if (fLastButtons & B_PRIMARY_MOUSE_BUTTON) { if (fLastButtons & B_PRIMARY_MOUSE_BUTTON) {
if (OpenFolder("mail/mailbox") != B_OK) if (OpenFolder("mail/mailbox") != B_OK
if (OpenFolder("mail/in") != B_OK) && OpenFolder("mail/in") != B_OK
if (OpenFolder("mail/INBOX") != B_OK) && OpenFolder("mail/INBOX") != B_OK)
OpenFolder("mail"); OpenFolder("mail");
} }
@@ -353,7 +363,7 @@ DeskbarView::MouseDown(BPoint pos)
if (fLastButtons & B_SECONDARY_MOUSE_BUTTON) { if (fLastButtons & B_SECONDARY_MOUSE_BUTTON) {
ConvertToScreen(&pos); ConvertToScreen(&pos);
BPopUpMenu *menu = BuildMenu(); BPopUpMenu* menu = _BuildMenu();
if (menu) { if (menu) {
menu->Go(pos, true, true, BRect(pos.x - 2, pos.y - 2, menu->Go(pos, true, true, BRect(pos.x - 2, pos.y - 2,
pos.x + 2, pos.y + 2), true); pos.x + 2, pos.y + 2), true);
@@ -363,7 +373,7 @@ DeskbarView::MouseDown(BPoint pos)
bool bool
DeskbarView::CreateMenuLinks(BDirectory &directory,BPath &path) DeskbarView::_CreateMenuLinks(BDirectory& directory, BPath& path)
{ {
status_t status = directory.SetTo(path.Path()); status_t status = directory.SetTo(path.Path());
if (status == B_OK) if (status == B_OK)
@@ -406,7 +416,7 @@ DeskbarView::CreateMenuLinks(BDirectory &directory,BPath &path)
void void
DeskbarView::CreateNewMailQuery(BEntry &query) DeskbarView::_CreateNewMailQuery(BEntry& query)
{ {
BFile file(&query, B_READ_WRITE | B_CREATE_FILE); BFile file(&query, B_READ_WRITE | B_CREATE_FILE);
if (file.InitCheck() != B_OK) if (file.InitCheck() != B_OK)
@@ -422,7 +432,7 @@ DeskbarView::CreateNewMailQuery(BEntry &query)
BPopUpMenu* BPopUpMenu*
DeskbarView::BuildMenu() DeskbarView::_BuildMenu()
{ {
BPopUpMenu* menu = new BPopUpMenu(B_EMPTY_STRING, false, false); BPopUpMenu* menu = new BPopUpMenu(B_EMPTY_STRING, false, false);
menu->SetFont(be_plain_font); menu->SetFont(be_plain_font);
@@ -443,7 +453,7 @@ DeskbarView::BuildMenu()
path.Append("Mail/Menu Links"); path.Append("Mail/Menu Links");
BDirectory directory; BDirectory directory;
if (CreateMenuLinks(directory, path)) { if (_CreateMenuLinks(directory, path)) {
int32 count = 0; int32 count = 0;
while (directory.GetNextRef(&ref) == B_OK) { while (directory.GetNextRef(&ref) == B_OK) {
@@ -466,11 +476,12 @@ DeskbarView::BuildMenu()
BNode node(&entry); BNode node(&entry);
BNodeInfo info(&node); BNodeInfo info(&node);
if (info.GetType(mimeString) == B_OK if (info.GetType(mimeString) == B_OK
&& strcmp(mimeString, "application/x-vnd.Be-query") == 0) && strcmp(mimeString, "application/x-vnd.Be-query")
== 0)
useNavMenu = true; useNavMenu = true;
} }
// clobber the existing ref only if the symlink derefernces completely, // clobber the existing ref only if the symlink derefernces
// otherwise we'll stick with what we have // completely, otherwise we'll stick with what we have
entry.GetRef(&ref); entry.GetRef(&ref);
} }
@@ -514,7 +525,7 @@ DeskbarView::BuildMenu()
BEntry query(path.Path()); BEntry query(path.Path());
if (!query.Exists()) if (!query.Exists())
CreateNewMailQuery(query); _CreateNewMailQuery(query);
query.GetRef(&ref); query.GetRef(&ref);
item = new BMenuItem(navMenu = new BNavMenu(string.String(), item = new BMenuItem(navMenu = new BNavMenu(string.String(),
@@ -595,4 +606,3 @@ DeskbarView::BuildMenu()
} }
return menu; return menu;
} }
+4 -4
View File
@@ -48,10 +48,10 @@ class _EXPORT DeskbarView : public BView {
virtual void Pulse(); virtual void Pulse();
private: private:
void RefreshMailQuery(); void _RefreshMailQuery();
bool CreateMenuLinks(BDirectory &,BPath &); bool _CreateMenuLinks(BDirectory&, BPath&);
void CreateNewMailQuery(BEntry &); void _CreateNewMailQuery(BEntry&);
BPopUpMenu *BuildMenu(); BPopUpMenu* _BuildMenu();
void _InitBitmaps(); void _InitBitmaps();
BBitmap* fBitmaps[kStatusCount]; BBitmap* fBitmaps[kStatusCount];