Commit Graph

193 Commits

Author SHA1 Message Date
David Anderson 28e18f6b8d Manager, client: use WxWidgets functions for number formatting
Turns out WxWidgets has functions for localized number formatting.
This was added in 2.9 so we weren't able to use it last time I checked.

Remove our own number-formatting code.
Don't do localized number formatting in client.
2015-09-22 11:22:07 -07:00
David Anderson 26f92fcaf1 Manager: fix comma-separated display of >32 bit numbers
VS apparently requires "long long" to get 64 bits.

Also: convert various floats to double in the Manager.
BOINC shouldn't use floats anywhere.  Always use doubles.
2015-09-07 01:03:54 -07:00
David Anderson cb5160cb8a Manager: format time intervals as Dd HH:MM:SS
Combine redundant TimeFormat() functions
2015-08-26 23:30:50 -07:00
Rom Walton a88c671310 MGR: In the simple attach scenario, only launch the attach wizard if we are not already attached to the project. 2015-01-06 17:33:37 -05:00
Charlie Fenton 8cc272601a MGR: On MS Windows, adjust sizes of images in Advanced Frame tabs and Computing Preferences tabs for users DPI setting. 2014-08-26 05:34:22 -07:00
Charlie Fenton dd9826c817 MGR: On MS Windows, make DPI setting detection more efficient and DPI adjustments more general. 2014-08-19 02:28:42 -07:00
Charlie Fenton db483f664e MGR: On MS Windows, adjust width of Task Control buttons, Event Log and Log Flags dialog for users DPI setting. 2014-08-18 05:49:31 -07:00
David Anderson 0bbcf28d94 Manager: use same color scheme for statistics as for disk usage 2014-08-10 15:33:07 -07:00
Rom Walton 0533f82d4a MGR: Fix how we pass the ISO language code to the CC.
Using mb_str() can be problematic if you do not reuse the pointer right away, if the wxString is used in any other way between when you extract the pointer to the data and the data itself the reference is freed and the pointer can end up pointing to something else entirely.
2014-02-18 00:36:03 -05:00
David Anderson 30f0f67b3d Manager: change https:// to http:// in notices; the WxWidgets HTML renderer doesn't handle https://
Programming styles notes:
- string utility functions shouldn't be members of MainDocument.cpp
- don't overload features into 1 function; use separate functions
- use descriptive names rather than "clean", "sanitize" etc.
- use void for functions that don't return anything
- if you copy and paste code, fix the comments
2013-07-18 11:30:24 -07:00
Charlie Fenton af10fb6cdd MGR: Limit event log to 2000 messages, deleting oldest if necessary 2013-03-05 16:42:45 +01:00
Charlie Fenton 67e25bacaf Mgr: Don't call get_notices RPC before previous one is processed to prevent multiple display of notices 2013-03-04 17:19:40 +01:00
Rom Walton 3bc326db3e - client: Add plumbing to support passing the remote desktop
connection information to the manager
    - MGR: Add a "Show VM Console" button for those tasks which
        report a remote desktop port number.

    client/
        app.cpp, .h
        app_control.cpp
    clientgui/
        Events.h
        MainDocument.cpp, .h
        ViewWork.cpp, .h
    lib/
        gui_rpc_client.h
        gui_rpc_client_ops.cpp

svn path=/trunk/boinc/; revision=25036
2012-01-12 22:05:25 +00:00
Charlie Fenton 22c1ff5cd9 -MGR: eliminate unnecessary get_host_info RPCs.
svn path=/trunk/boinc/; revision=23772
2011-06-23 09:15:40 +00:00
Charlie Fenton 9b39d53bbb MGR: Rework exit dialog and client shutdown logic for second Manager instance
svn path=/trunk/boinc/; revision=23676
2011-06-08 10:09:36 +00:00
Charlie Fenton 0cd79f9b5f MGR: Fix bug I introduced on 6 Aug 2010 which prevented empty computer name string from beng recognized as localhost
svn path=/trunk/boinc/; revision=23650
2011-06-07 11:06:34 +00:00
David Anderson fc6539a0a7 - manager: don't show resources redundantly on task properties page
svn path=/trunk/boinc/; revision=22669
2010-11-10 05:43:54 +00:00
Rom Walton 79cfbc6fd6 - MGR: Take two of the above.
clientgui/
        DlgEventLog.cpp
        MainDocument.cpp, .h

svn path=/trunk/boinc/; revision=22499
2010-10-13 23:00:02 +00:00
Rom Walton 0ab3ef3cee - MGR: Take another stab at the z-order problem when both the event log
and main window are open.
    - MGR: Don't replace control characters for regular messages.
    
    clientgui/
        BOINCGUIApp.cpp, .h
        DlgEventLog.cpp
        MainDocument.cpp, .h
        NoticeListCtrl.cpp

svn path=/trunk/boinc/; revision=22054
2010-07-23 23:42:25 +00:00
Rom Walton 7e8ca91dc5 - MGR: Enable the manager to be able to deal with any size notice.
clientgui/
        DlgEventLog.cpp
        MainDocument.cpp, .h
        NoticeListCtrl.cpp

svn path=/trunk/boinc/; revision=22053
2010-07-23 22:57:54 +00:00
Rom Walton 371c53ec3a - MGR: If the simple GUI received a notification event,
display the messages dialog.
    - MGR: The simple GUI wasn't restoring state properly
        thereby causing the reminder frequency to be set to
        zero and preventing any reminders from being displayed.
    - MGR: Rework the notices code so the document doesn't
        make any assumtions about the UI.
    - MGR: Fix a bug in the Linux notification window code.
        Synchronize event behavior with Windows.

    clientgui/
        AdvancedFrame.cpp, .h
        BOINCBaseFrame.cpp
        BOINCTaskBar.cpp, .h
        MainDocument.cpp, .h
        sg_BoincSimpleGUI.cpp, .h
        sg_DlgMessages.cpp
        sg_ProjectsComponent.cpp, .h
        ViewNotices.cpp
    clientgui/gtk/
        taskbarex.cpp

svn path=/trunk/boinc/; revision=22040
2010-07-22 20:55:39 +00:00
Charlie Fenton ace6f7f468 MGR: Fix SimpleView bug I introduced; better way to prevent a race condition which erroneously shows Attach Wizard when restarting the client
svn path=/trunk/boinc/; revision=21967
2010-07-16 08:26:16 +00:00
Charlie Fenton 6906c46383 MGR: get_messages and get_notices RPCs don't alternate buffers, so remove the unused buffers from CMainDocument class
svn path=/trunk/boinc/; revision=21854
2010-06-30 23:29:09 +00:00
Charlie Fenton 632b64c8ca MGR: logic changes & fixes to Notices display for new NOTICES::complete flag
svn path=/trunk/boinc/; revision=21845
2010-06-30 09:38:43 +00:00
Charlie Fenton b8bbf607ad MGR: Take into account that there may be gaps in the sequence numbers because some notices may have been deleted
svn path=/trunk/boinc/; revision=21777
2010-06-18 22:39:12 +00:00
Charlie Fenton 9230822e94 MGR: save last notice which has been read in persistent storage by saving its arrival time
svn path=/trunk/boinc/; revision=21771
2010-06-18 13:23:22 +00:00
David Anderson 5a28b5672e - client: user-visible text (message body, notice title and description)
are now translatable,
    using the convention that any substring enclosed in _(" ... ")
    should be passed throughh wxGetTranslation() or the equivalent.
- client: when writing messages to stdout, strip out _(...)
- manager: translate strings from client
- scheduler: message tweaks

svn path=/trunk/boinc/; revision=21706
2010-06-08 18:56:53 +00:00
Charlie Fenton fa1cf386b4 MGR: If get_results RPC takes x seconds, do it no more often than once every (x*10) seconds
svn path=/trunk/boinc/; revision=21606
2010-05-24 10:06:07 +00:00
David Anderson 36f5d35dfd - manager: in transfers tab, show reason why transfer is suspended
- manager: WTF?? master URL, not name, identifies projects.
- manager: got rid of a bunch of unused functions

svn path=/trunk/boinc/; revision=21449
2010-05-10 22:34:25 +00:00
David Anderson 06cb521bbe - manager: improve "suspended" messages for tasks and transfers
- manager: code reorg.  ViewTransfers and DlgItemProperties
		both had a long member function to generate a string describing a task.
		One of these was out of date.
		Replaced these with a single non-member function.
	- manager: fixed sizer problem in attach wizard that caused missing word
	- client: minor code reorg

svn path=/trunk/boinc/; revision=21412
2010-05-07 16:14:54 +00:00
Charlie Fenton f811b9bccd MGR: Show # unread notices in Notices tab title, improve notification for unread notices, link to reminder frequency slider
svn path=/trunk/boinc/; revision=21042
2010-04-01 11:09:33 +00:00
Charlie Fenton e82d761e23 MGR: Call get_notices RPC once per minute when Notices tab is not open so we can notify the user when new notices become available
svn path=/trunk/boinc/; revision=21024
2010-03-30 00:06:43 +00:00
David Anderson 86582342a8 - GUI RPC: in the structures used in the C++ interface to GUI RPC,
change various std::string to char[n], to improve performance.

NOTE: std::string should ONLY be used in cases where there is
no a priori limit on string length.
If there's a limit (e.g. because the string originates in
a fixed-size database field) always use char[n].

svn path=/trunk/boinc/; revision=20877
2010-03-12 17:47:17 +00:00
Charlie Fenton 39b576f7e3 MGR: When Event Log is open, do get_messages RPC once per second but do view-specific periodic RPCs at their normal View refresh rate
svn path=/trunk/boinc/; revision=20116
2010-01-09 08:06:58 +00:00
Charlie Fenton 8b3e60d8e6 MGR: When Event Log is open, do get_messages RPC once per second but do view-specific periodic RPCs at their normal View refresh rate
svn path=/trunk/boinc/; revision=20111
2010-01-09 02:52:48 +00:00
Charlie Fenton f8e7683427 MGR: Separate refresh of Event Log from refresh of tabs; Update Notices tab only when data changed; Clean up some async RPC logic
svn path=/trunk/boinc/; revision=20110
2010-01-09 01:42:46 +00:00
Rom Walton 014569af1f - MGR: Implement Notice RPC infrastructure.
clientgui/
        AsyncRPC.cpp, .h
        MainDocument.cpp, .h

svn path=/trunk/boinc/; revision=20066
2010-01-04 18:09:29 +00:00
Charlie Fenton 0d7eac49f8 MGR: Restore my previous fixes to Event Log for the new orphan dialog implementation to integrate properly with async RPC logic; if Event Log is open, close it in CBOINCBaseFrame::OnExit() so Manager can shut down properly
svn path=/trunk/boinc/; revision=20023
2009-12-23 05:23:48 +00:00
Charlie Fenton 0607e1822a MGR: Make GetCurrentViewPage() indepenedent of tab positons; Always set Periodic RPC timer to 1 second if showing event log; Minor code cleanup from Rom
svn path=/trunk/boinc/; revision=20005
2009-12-22 01:22:11 +00:00
Rom Walton 2b5630c9b7 - MGR: Add a test notification menu item to the taskbar
- MGR: When a notification is clicked open up the GUI
        and switch to the notification tab in the advanced
        view.
    - MGR: Reorder tabs
    - MGR: Review messages tab
    - MGR: cleanup code in various places
    
    clientgui/
        AdvancedFrame.cpp, .h
        BOINCBaseFrame.cpp, .h
        BOINCGUIApp.cpp, .h
        BOINCTaskBar.cpp, .h
        DlgEventLog.cpp, .h (Added)
        Events.h
        MainDocument.cpp, .h
        ViewNews.cpp, .h (Deleted)
        ViewNotifications.cpp, .h (Added)
    win_build/
        boincmgr.vcproj

svn path=/trunk/boinc/; revision=19976
2009-12-18 22:44:10 +00:00
David Anderson 2ff21d2a21 - client/manager: finish "snooze GPU" button
svn path=/trunk/boinc/; revision=19854
2009-12-11 00:08:28 +00:00
Charlie Fenton f989eba75a MGR: Bug fixes for Linux
svn path=/trunk/boinc/; revision=18925
2009-08-27 01:46:20 +00:00
Charlie Fenton b46586d7a9 MGR: Test changes to avoid non-stop RPC Wait dialog when client is heavily loaded
svn path=/trunk/boinc/; revision=18822
2009-08-08 03:32:05 +00:00
Charlie Fenton 1c5cfe55d7 MGR: Implement "Show active tasks / Show all tasks" button
svn path=/trunk/boinc/; revision=18816
2009-08-07 08:33:31 +00:00
Charlie Fenton ddc3d4eb0b MGR: In Async RPC logic, use posix mutexes and condition instead of wxMutex and wxCondition, as this appears to fix an intermittent hang in wxCondition::Wait()
svn path=/trunk/boinc/; revision=18333
2009-06-08 22:44:03 +00:00
Charlie Fenton a402e3f19a MGR: Remove erroneous call of locale in main thread; set locale only on a per-thread basis
svn path=/trunk/boinc/; revision=17661
2009-03-26 01:22:35 +00:00
Charlie Fenton 1a5c93ff19 MGR: Async RPCs: use wxCondition with timeout to block main thread while waiting for Demand RPC to finish; set m_pTaskBarIcon and m_pMacSystemMenu to NULL when deleted.
svn path=/trunk/boinc/; revision=16517
2008-11-18 13:28:26 +00:00
Charlie Fenton c219928655 MGR: Async RPCs: Use wxCondition to block RPC thread when it is idle instead of creating and a new RPC thread for each RPC
svn path=/trunk/boinc/; revision=16497
2008-11-15 13:21:08 +00:00
Charlie Fenton 5a86e7529e MGR: Async RPCs: RPC thread is now a joinable thread which does one RPC and exits. Main thread creates a new RPC thread for each RPC request.
svn path=/trunk/boinc/; revision=16423
2008-11-05 06:03:13 +00:00
Charlie Fenton 98b30841a8 Fixes to Rom's refactoring of Manager code
svn path=/trunk/boinc/; revision=16359
2008-10-30 01:55:11 +00:00