From: Vadim Zeitlin Date: Wed, 27 Mar 2002 18:43:13 +0000 (+0000) Subject: removed a few warnings and CW compilation problems (patch from Dimitri) X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/4ccf704abdadc917862b02480cf10679af32afd6?ds=sidebyside removed a few warnings and CW compilation problems (patch from Dimitri) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/chkconf.h b/include/wx/chkconf.h index 1cd1afe460..1f4d44c86d 100644 --- a/include/wx/chkconf.h +++ b/include/wx/chkconf.h @@ -773,6 +773,16 @@ # endif #endif /* wxUSE_UNICODE_MSLU */ +#if wxUSE_ODBC && wxUSE_UNICODE +# ifdef wxABORT_ON_CONFIG_ERROR + /* (ODBC classes aren't Unicode-compatible yet) */ +# error "wxUSE_ODBC can't be used with wxUSE_UNICODE" +# else +# undef wxUSE_ODBC +# define wxUSE_ODBC 0 +# endif +#endif /* wxUSE_ODBC */ + /* the rest of the tests is for the GUI settings only */ #if wxUSE_GUI diff --git a/include/wx/mac/setup0.h b/include/wx/mac/setup0.h index 162182e9f7..4dabde310e 100644 --- a/include/wx/mac/setup0.h +++ b/include/wx/mac/setup0.h @@ -1017,12 +1017,6 @@ #define wxUSE_DEBUG_NEW_ALWAYS 0 #endif // wxUSE_MFC -// ODBC classes aren't Unicode-compatible yet -#if wxUSE_UNICODE -#undef wxUSE_ODBC -#define wxUSE_ODBC 0 -#endif - // Only WIN32 supports wxStatusBar95 #if !defined(__WIN32__) && wxUSE_NATIVE_STATUSBAR diff --git a/include/wx/msw/cursor.h b/include/wx/msw/cursor.h index 9b98d72390..e3b5d0cc79 100644 --- a/include/wx/msw/cursor.h +++ b/include/wx/msw/cursor.h @@ -12,7 +12,7 @@ #ifndef _WX_CURSOR_H_ #define _WX_CURSOR_H_ -#include +#include "wx/image.h" #ifdef __GNUG__ #pragma interface "cursor.h" diff --git a/include/wx/msw/setup0.h b/include/wx/msw/setup0.h index aa4ea72370..5e46995445 100644 --- a/include/wx/msw/setup0.h +++ b/include/wx/msw/setup0.h @@ -1086,12 +1086,6 @@ #define wxUSE_DEBUG_NEW_ALWAYS 0 #endif // wxUSE_MFC -// ODBC classes aren't Unicode-compatible yet -#if wxUSE_UNICODE -#undef wxUSE_ODBC -#define wxUSE_ODBC 0 -#endif - #if (!defined(WIN32) && !defined(__WIN32__)) || (defined(__GNUWIN32__) && !wxUSE_NORLANDER_HEADERS) // Can't use OLE drag and drop in Windows 3.1 because we don't know how // to implement UUIDs diff --git a/include/wx/msw/setup_microwin.h b/include/wx/msw/setup_microwin.h index 6b6740e300..2e06159d6c 100644 --- a/include/wx/msw/setup_microwin.h +++ b/include/wx/msw/setup_microwin.h @@ -1063,12 +1063,6 @@ #define wxUSE_DEBUG_NEW_ALWAYS 0 #endif // wxUSE_MFC -// ODBC classes aren't Unicode-compatible yet -#if wxUSE_UNICODE -#undef wxUSE_ODBC -#define wxUSE_ODBC 0 -#endif - #if (!defined(WIN32) && !defined(__WIN32__)) || (defined(__GNUWIN32__) && !wxUSE_NORLANDER_HEADERS) // Can't use OLE drag and drop in Windows 3.1 because we don't know how // to implement UUIDs diff --git a/include/wx/msw/winundef.h b/include/wx/msw/winundef.h index 2a63c4864b..af1cc51108 100644 --- a/include/wx/msw/winundef.h +++ b/include/wx/msw/winundef.h @@ -174,6 +174,19 @@ #endif #endif + +/* + When this file is included, sometimes the wxCHECK_W32API_VERSION macro + is undefined. With for example CodeWarrior this gives problems with + the following code: + #if 0 && wxCHECK_W32API_VERSION( 0, 5 ) + Because CodeWarrior does macro expansion before test evaluation. + We define wxCHECK_W32API_VERSION here if it's undefined. +*/ +#if !defined(__GNUG__) && !defined(wxCHECK_W32API_VERSION) + #define wxCHECK_W32API_VERSION(maj, min) (0) +#endif + // StartDoc #ifdef StartDoc diff --git a/samples/ownerdrw/ownerdrw.cpp b/samples/ownerdrw/ownerdrw.cpp index 4488631127..f27293e7ea 100644 --- a/samples/ownerdrw/ownerdrw.cpp +++ b/samples/ownerdrw/ownerdrw.cpp @@ -17,11 +17,11 @@ #include "wx/wxprec.h" #ifdef __BORLANDC__ - #pragma hdrstop + #pragma hdrstop #endif #ifndef WX_PRECOMP - #include "wx/wx.h" + #include "wx/wx.h" #endif #include "wx/ownerdrw.h" @@ -32,50 +32,50 @@ class OwnerDrawnApp: public wxApp { public: - bool OnInit(); + bool OnInit(); }; // Define a new frame type class OwnerDrawnFrame : public wxFrame { public: - // ctor & dtor - OwnerDrawnFrame(wxFrame *frame, char *title, int x, int y, int w, int h); - ~OwnerDrawnFrame(); + // ctor & dtor + OwnerDrawnFrame(wxFrame *frame, char *title, int x, int y, int w, int h); + ~OwnerDrawnFrame(); - // notifications - void OnQuit (wxCommandEvent& event); - void OnAbout (wxCommandEvent& event); - void OnListboxSelect (wxCommandEvent& event); - void OnCheckboxToggle (wxCommandEvent& event); - void OnListboxDblClick (wxCommandEvent& event); - bool OnClose () { return TRUE; } + // notifications + void OnQuit (wxCommandEvent& event); + void OnAbout (wxCommandEvent& event); + void OnListboxSelect (wxCommandEvent& event); + void OnCheckboxToggle (wxCommandEvent& event); + void OnListboxDblClick (wxCommandEvent& event); + bool OnClose () { return TRUE; } - DECLARE_EVENT_TABLE() + DECLARE_EVENT_TABLE() private: - void InitMenu(); + void InitMenu(); - wxCheckListBox *m_pListBox; + wxCheckListBox *m_pListBox; }; enum -{ - Menu_Quit = 1, - Menu_First = 100, - Menu_Test1, Menu_Test2, Menu_Test3, - Menu_Bitmap, Menu_Bitmap2, - Menu_Submenu, Menu_Sub1, Menu_Sub2, Menu_Sub3, - Control_First = 1000, - Control_Listbox, Control_Listbox2, +{ + Menu_Quit = 1, + Menu_First = 100, + Menu_Test1, Menu_Test2, Menu_Test3, + Menu_Bitmap, Menu_Bitmap2, + Menu_Submenu, Menu_Sub1, Menu_Sub2, Menu_Sub3, + Control_First = 1000, + Control_Listbox, Control_Listbox2, }; BEGIN_EVENT_TABLE(OwnerDrawnFrame, wxFrame) - EVT_MENU(Menu_Quit, OwnerDrawnFrame::OnQuit) - EVT_LISTBOX(Control_Listbox, OwnerDrawnFrame::OnListboxSelect) - EVT_CHECKLISTBOX(Control_Listbox, OwnerDrawnFrame::OnCheckboxToggle) - EVT_COMMAND(Control_Listbox, wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, - OwnerDrawnFrame::OnListboxDblClick) + EVT_MENU(Menu_Quit, OwnerDrawnFrame::OnQuit) + EVT_LISTBOX(Control_Listbox, OwnerDrawnFrame::OnListboxSelect) + EVT_CHECKLISTBOX(Control_Listbox, OwnerDrawnFrame::OnCheckboxToggle) + EVT_COMMAND(Control_Listbox, wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, + OwnerDrawnFrame::OnListboxDblClick) END_EVENT_TABLE() IMPLEMENT_APP(OwnerDrawnApp); @@ -83,173 +83,194 @@ IMPLEMENT_APP(OwnerDrawnApp); // init our app: create windows bool OwnerDrawnApp::OnInit(void) { - OwnerDrawnFrame *pFrame = new OwnerDrawnFrame(NULL, "wxWindows Ownerdraw Sample", - 50, 50, 450, 340); - SetTopWindow(pFrame); + OwnerDrawnFrame *pFrame + = new OwnerDrawnFrame(NULL, "wxWindows Ownerdraw Sample", + 50, 50, 450, 340); + + SetTopWindow(pFrame); - return TRUE; + return TRUE; } // create the menu bar for the main frame void OwnerDrawnFrame::InitMenu() { - // Make a menubar - wxMenu *file_menu = new wxMenu, - *sub_menu = new wxMenu; - - // vars used for menu construction - wxMenuItem *pItem; - wxFont fontLarge(18, wxROMAN, wxNORMAL, wxBOLD, FALSE), - fontUlined(12, wxDEFAULT, wxNORMAL, wxNORMAL, TRUE), - fontItalic(12, wxMODERN, wxITALIC, wxBOLD, FALSE), - // should be at least of the size of bitmaps - fontBmp(14, wxDEFAULT, wxNORMAL, wxNORMAL, FALSE); - - // sorry for my artistic skills... - wxBitmap bmpBell("bell"), bmpSound("sound"), bmpNoSound("nosound"); - - // construct submenu - pItem = new wxMenuItem(sub_menu, Menu_Sub1, "Submenu &first", "large", TRUE); - pItem->SetFont(fontLarge); - sub_menu->Append(pItem); - - pItem = new wxMenuItem(sub_menu, Menu_Sub2, "Submenu &second", "italic", TRUE); - pItem->SetFont(fontItalic); - sub_menu->Append(pItem); - - pItem = new wxMenuItem(sub_menu, Menu_Sub3, "Submenu &third", "underlined", TRUE); - pItem->SetFont(fontUlined); - sub_menu->Append(pItem); - - // construct menu - pItem = new wxMenuItem(file_menu, Menu_Test1, "&Uncheckable", "red item"); - pItem->SetFont(*wxITALIC_FONT); - pItem->SetTextColour(wxColor(255, 0, 0)); - pItem->SetMarginWidth(23); - file_menu->Append(pItem); - - pItem = new wxMenuItem(file_menu, Menu_Test2, "&Checkable", "checkable item", TRUE); - pItem->SetFont(*wxSMALL_FONT); - file_menu->Append(pItem); - file_menu->Check(Menu_Test2, TRUE); - - pItem = new wxMenuItem(file_menu, Menu_Test3, "&Disabled", "disabled item"); - pItem->SetFont(*wxNORMAL_FONT); - file_menu->Append(pItem); - file_menu->Enable(Menu_Test3, FALSE); - - file_menu->AppendSeparator(); - - pItem = new wxMenuItem(file_menu, Menu_Bitmap, "&Bell", "check/uncheck me!", TRUE); - pItem->SetFont(fontBmp); - pItem->SetBitmaps(bmpBell); - file_menu->Append(pItem); - - pItem = new wxMenuItem(file_menu, Menu_Bitmap2, "So&und", "icon changes!", TRUE); - pItem->SetFont(fontBmp); - pItem->SetBitmaps(bmpSound, bmpNoSound); - file_menu->Append(pItem); - - file_menu->AppendSeparator(); - - pItem = new wxMenuItem(file_menu, Menu_Submenu, "&Sub menu", "", TRUE, sub_menu); - pItem->SetFont(*wxSWISS_FONT); - file_menu->Append(pItem); - - file_menu->AppendSeparator(); - file_menu->Append(Menu_Quit, "&Quit", "Normal item"); - - wxMenuBar *menu_bar = new wxMenuBar; - - menu_bar->Append(file_menu, "&File"); - SetMenuBar(menu_bar); + // Make a menubar + wxMenu *file_menu = new wxMenu, + *sub_menu = new wxMenu; + + // vars used for menu construction + wxMenuItem *pItem; + wxFont fontLarge(18, wxROMAN, wxNORMAL, wxBOLD, FALSE), + fontUlined(12, wxDEFAULT, wxNORMAL, wxNORMAL, TRUE), + fontItalic(12, wxMODERN, wxITALIC, wxBOLD, FALSE), + // should be at least of the size of bitmaps + fontBmp(14, wxDEFAULT, wxNORMAL, wxNORMAL, FALSE); + + // sorry for my artistic skills... + wxBitmap bmpBell("bell"), bmpSound("sound"), bmpNoSound("nosound"); + + // construct submenu + pItem = new wxMenuItem(sub_menu, Menu_Sub1, "Submenu &first", "large"); + + pItem->SetFont(fontLarge); + sub_menu->Append(pItem); + + pItem = new wxMenuItem(sub_menu, Menu_Sub2, "Submenu &second", "italic", + wxITEM_CHECK); + pItem->SetFont(fontItalic); + sub_menu->Append(pItem); + + pItem = new wxMenuItem(sub_menu, Menu_Sub3, "Submenu &third", "underlined", + wxITEM_CHECK); + pItem->SetFont(fontUlined); + sub_menu->Append(pItem); + + // construct menu + pItem = new wxMenuItem(file_menu, Menu_Test1, "&Uncheckable", "red item"); + pItem->SetFont(*wxITALIC_FONT); + pItem->SetTextColour(wxColor(255, 0, 0)); + pItem->SetMarginWidth(23); + file_menu->Append(pItem); + + pItem = new wxMenuItem(file_menu, Menu_Test2, "&Checkable", + "checkable item", wxITEM_CHECK); + pItem->SetFont(*wxSMALL_FONT); + file_menu->Append(pItem); + file_menu->Check(Menu_Test2, TRUE); + + pItem = new wxMenuItem(file_menu, Menu_Test3, "&Disabled", "disabled item"); + pItem->SetFont(*wxNORMAL_FONT); + file_menu->Append(pItem); + file_menu->Enable(Menu_Test3, FALSE); + + file_menu->AppendSeparator(); + + pItem = new wxMenuItem(file_menu, Menu_Bitmap, "&Bell", + "check/uncheck me!", wxITEM_CHECK); + pItem->SetFont(fontBmp); + pItem->SetBitmaps(bmpBell); + file_menu->Append(pItem); + + pItem = new wxMenuItem(file_menu, Menu_Bitmap2, "So&und", + "icon changes!", wxITEM_CHECK); + pItem->SetFont(fontBmp); + pItem->SetBitmaps(bmpSound, bmpNoSound); + file_menu->Append(pItem); + + file_menu->AppendSeparator(); + + pItem = new wxMenuItem(file_menu, Menu_Submenu, "&Sub menu", "", + wxITEM_CHECK, sub_menu); + pItem->SetFont(*wxSWISS_FONT); + file_menu->Append(pItem); + + file_menu->AppendSeparator(); + file_menu->Append(Menu_Quit, "&Quit", "Normal item"); + + wxMenuBar *menu_bar = new wxMenuBar; + + menu_bar->Append(file_menu, "&File"); + SetMenuBar(menu_bar); } // main frame constructor -OwnerDrawnFrame::OwnerDrawnFrame(wxFrame *frame, char *title, int x, int y, int w, int h) +OwnerDrawnFrame::OwnerDrawnFrame(wxFrame *frame, char *title, + int x, int y, int w, int h) : wxFrame(frame, -1, title, wxPoint(x, y), wxSize(w, h)) { - // set the icon - SetIcon(wxIcon("mondrian")); + // set the icon + SetIcon(wxIcon("mondrian")); - // create the menu - InitMenu(); + // create the menu + InitMenu(); - // create the status line - const int widths[] = { -1, 60 }; - CreateStatusBar(2); - SetStatusWidths(2, widths); - SetStatusText("no selection", 0); + // create the status line + const int widths[] = { -1, 60 }; + CreateStatusBar(2); + SetStatusWidths(2, widths); + SetStatusText("no selection", 0); - // make a panel with some controls - wxPanel *pPanel = new wxPanel(this, -1, wxPoint(0, 0), - wxSize(400, 200), wxTAB_TRAVERSAL); + // make a panel with some controls + wxPanel *pPanel = new wxPanel(this, -1, wxPoint(0, 0), + wxSize(400, 200), wxTAB_TRAVERSAL); - // check list box - static const char* aszChoices[] = { "Hello", "world", "and", + // check list box + static const char* aszChoices[] = { "Hello", "world", "and", "goodbye", "cruel", "world", "-------", "owner-drawn", "listbox" }; - wxString *astrChoices = new wxString[WXSIZEOF(aszChoices)]; - unsigned int ui; - for ( ui = 0; ui < WXSIZEOF(aszChoices); ui++ ) - astrChoices[ui] = aszChoices[ui]; - - m_pListBox = new wxCheckListBox - ( - pPanel, // parent - Control_Listbox, // control id - wxPoint(10, 10), // listbox poistion - wxSize(200, 200), // listbox size - WXSIZEOF(aszChoices), // number of strings - astrChoices // array of strings - ); - - delete [] astrChoices; - - for ( ui = 0; ui < WXSIZEOF(aszChoices); ui += 2 ) { - m_pListBox->GetItem(ui)->SetBackgroundColour(wxColor(200, 200, 200)); - } - - m_pListBox->Check(2); - - // normal (but owner-drawn) listbox - static const char* aszColors[] = { "Red", "Blue", "Pink", - "Green", "Yellow", - "Black", "Violet" }; - struct { unsigned int r, g, b; } aColors[] = { {255,0,0}, {0,0,255}, {255,128,192}, - {0,255,0}, {255,255,128}, - {0,0,0}, {128,0,255} }; - astrChoices = new wxString[WXSIZEOF(aszColors)]; - for ( ui = 0; ui < WXSIZEOF(aszColors); ui++ ) - astrChoices[ui] = aszColors[ui]; - - wxListBox *pListBox = new wxListBox - ( - pPanel, // parent - Control_Listbox2, // control id - wxPoint(220, 10), // listbox poistion - wxDefaultSize, // listbox size - WXSIZEOF(aszColors), // number of strings - astrChoices, // array of strings - wxLB_OWNERDRAW, // owner-drawn - wxDefaultValidator, // - wxListBoxNameStr - ); - - for ( ui = 0; ui < WXSIZEOF(aszColors); ui++ ) { - pListBox->GetItem(ui)->SetTextColour(wxColor(aColors[ui].r, - aColors[ui].g, - aColors[ui].b)); - // yellow on white is horrible... - if ( ui == 4 ) - pListBox->GetItem(ui)->SetBackgroundColour(wxColor(0, 0, 0)); - - } - - delete[] astrChoices; - - Show(TRUE); + wxString *astrChoices = new wxString[WXSIZEOF(aszChoices)]; + unsigned int ui; + for ( ui = 0; ui < WXSIZEOF(aszChoices); ui++ ) + astrChoices[ui] = aszChoices[ui]; + + m_pListBox = new wxCheckListBox + ( + pPanel, // parent + Control_Listbox, // control id + wxPoint(10, 10), // listbox position + wxSize(200, 200), // listbox size + WXSIZEOF(aszChoices), // number of strings + astrChoices // array of strings + ); + + delete [] astrChoices; + + for ( ui = 0; ui < WXSIZEOF(aszChoices); ui += 2 ) + { + m_pListBox->GetItem(ui)->SetBackgroundColour(wxColor(200, 200, 200)); + } + + m_pListBox->Check(2); + + // normal (but owner-drawn) listbox + static const char* aszColors[] = { "Red", "Blue", "Pink", + "Green", "Yellow", + "Black", "Violet" }; + struct { unsigned int r, g, b; } aColors[] = + { + {255,0,0}, {0,0,255}, {255,128,192}, + {0,255,0}, {255,255,128}, + {0,0,0}, {128,0,255} + }; + + astrChoices = new wxString[WXSIZEOF(aszColors)]; + + for ( ui = 0; ui < WXSIZEOF(aszColors); ui++ ) + { + astrChoices[ui] = aszColors[ui]; + } + + wxListBox *pListBox = new wxListBox + ( + pPanel, // parent + Control_Listbox2, // control id + wxPoint(220, 10), // listbox position + wxDefaultSize, // listbox size + WXSIZEOF(aszColors), // number of strings + astrChoices, // array of strings + wxLB_OWNERDRAW, // owner-drawn + wxDefaultValidator, // + wxListBoxNameStr + ); + + for ( ui = 0; ui < WXSIZEOF(aszColors); ui++ ) + { + pListBox->GetItem(ui)->SetTextColour(wxColor(aColors[ui].r, + aColors[ui].g, + aColors[ui].b)); + // yellow on white is horrible... + if ( ui == 4 ) + { + pListBox->GetItem(ui)->SetBackgroundColour(wxColor(0, 0, 0)); + } + + } + + delete[] astrChoices; + + Show(TRUE); } OwnerDrawnFrame::~OwnerDrawnFrame() @@ -258,40 +279,40 @@ OwnerDrawnFrame::~OwnerDrawnFrame() void OwnerDrawnFrame::OnQuit(wxCommandEvent& event) { - Close(TRUE); + Close(TRUE); } void OwnerDrawnFrame::OnAbout(wxCommandEvent& event) { - wxMessageDialog dialog(this, - "Demo of owner-drawn controls\n", - "About wxOwnerDrawn", wxYES_NO | wxCANCEL); - dialog.ShowModal(); + wxMessageDialog dialog(this, + "Demo of owner-drawn controls\n", + "About wxOwnerDrawn", wxYES_NO | wxCANCEL); + dialog.ShowModal(); } void OwnerDrawnFrame::OnListboxSelect(wxCommandEvent& event) { - wxString strSelection; - unsigned int nSel = event.GetSelection(); - strSelection.sprintf(wxT("item %d selected (%schecked)"), nSel, - m_pListBox->IsChecked(nSel) ? wxT("") : wxT("not ")); - SetStatusText(strSelection); + wxString strSelection; + unsigned int nSel = event.GetSelection(); + strSelection.sprintf(wxT("item %d selected (%schecked)"), nSel, + m_pListBox->IsChecked(nSel) ? wxT("") : wxT("not ")); + SetStatusText(strSelection); } void OwnerDrawnFrame::OnListboxDblClick(wxCommandEvent& event) { - wxString strSelection; - strSelection.sprintf(wxT("item %d double clicked"), - m_pListBox->GetSelection()); - wxMessageDialog dialog(this, strSelection); - dialog.ShowModal(); + wxString strSelection; + strSelection.sprintf(wxT("item %d double clicked"), + m_pListBox->GetSelection()); + wxMessageDialog dialog(this, strSelection); + dialog.ShowModal(); } void OwnerDrawnFrame::OnCheckboxToggle(wxCommandEvent& event) { - wxString strSelection; - unsigned int nItem = event.GetInt(); - strSelection.sprintf(wxT("item %d was %schecked"), nItem, - m_pListBox->IsChecked(nItem) ? wxT("") : wxT("un")); - SetStatusText(strSelection); + wxString strSelection; + unsigned int nItem = event.GetInt(); + strSelection.sprintf(wxT("item %d was %schecked"), nItem, + m_pListBox->IsChecked(nItem) ? wxT("") : wxT("un")); + SetStatusText(strSelection); } diff --git a/src/generic/proplist.cpp b/src/generic/proplist.cpp index 03a78cd577..e7e4627915 100644 --- a/src/generic/proplist.cpp +++ b/src/generic/proplist.cpp @@ -416,8 +416,7 @@ bool wxPropertyListView::CreateControls() if (!panel) return FALSE; - wxSystemSettings settings; - wxFont guiFont = settings.GetSystemFont(wxSYS_DEFAULT_GUI_FONT); + wxFont guiFont = wxSystemSettings::GetSystemFont(wxSYS_DEFAULT_GUI_FONT); #ifdef __WXMSW__ wxFont *boringFont = diff --git a/src/msw/dialup.cpp b/src/msw/dialup.cpp index cbdd14594e..e76a06c34b 100644 --- a/src/msw/dialup.cpp +++ b/src/msw/dialup.cpp @@ -956,8 +956,8 @@ bool wxDialUpManagerMSW::IsAlwaysOnline() const if ( pfnInternetGetConnectedState(&flags, 0 /* reserved */) ) { // there is some connection to the net, see of which type - ms_isAlwaysOnline = (flags & INTERNET_CONNECTION_LAN != 0) || - (flags & INTERNET_CONNECTION_PROXY != 0); + ms_isAlwaysOnline = ((flags & INTERNET_CONNECTION_LAN) != 0) + || ((flags & INTERNET_CONNECTION_PROXY) != 0); } else {