You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

InfoDialog.cxx 2.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. /* Copyright (C) 2002-2005 RealVNC Ltd. All Rights Reserved.
  2. *
  3. * This is free software; you can redistribute it and/or modify
  4. * it under the terms of the GNU General Public License as published by
  5. * the Free Software Foundation; either version 2 of the License, or
  6. * (at your option) any later version.
  7. *
  8. * This software is distributed in the hope that it will be useful,
  9. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. * GNU General Public License for more details.
  12. *
  13. * You should have received a copy of the GNU General Public License
  14. * along with this software; if not, write to the Free Software
  15. * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
  16. * USA.
  17. */
  18. #include <vncviewer/InfoDialog.h>
  19. #include <vncviewer/resource.h>
  20. #include <vncviewer/CConn.h>
  21. #include <rfb/Security.h>
  22. #include <rfb/encodings.h>
  23. #include <rfb/CSecurity.h>
  24. #include <rfb/LogWriter.h>
  25. using namespace rfb;
  26. using namespace rfb::win32;
  27. static LogWriter vlog("Info");
  28. bool InfoDialog::showDialog(CConn* cc) {
  29. conn = cc;
  30. return Dialog::showDialog(MAKEINTRESOURCE(IDD_CONNECTION_INFO));
  31. }
  32. void InfoDialog::initDialog() {
  33. char buf[256];
  34. setItemString(IDC_INFO_NAME, TStr(conn->cp.name()));
  35. setItemString(IDC_INFO_HOST, TCharArray(conn->getSocket()->getPeerAddress()).buf);
  36. sprintf(buf, "%dx%d", conn->cp.width, conn->cp.height);
  37. setItemString(IDC_INFO_SIZE, TStr(buf));
  38. conn->cp.pf().print(buf, 256);
  39. setItemString(IDC_INFO_PF, TStr(buf));
  40. conn->getServerDefaultPF().print(buf, 256);
  41. setItemString(IDC_INFO_DEF_PF, TStr(buf));
  42. setItemString(IDC_REQUESTED_ENCODING, TStr(encodingName(conn->getOptions().preferredEncoding)));
  43. setItemString(IDC_LAST_ENCODING, TStr(encodingName(conn->lastUsedEncoding())));
  44. sprintf(buf, "%d kbits/s", conn->getSocket()->inStream().kbitsPerSecond());
  45. setItemString(IDC_INFO_LINESPEED, TStr(buf));
  46. sprintf(buf, "%d.%d", conn->cp.majorVersion, conn->cp.minorVersion);
  47. setItemString(IDC_INFO_VERSION, TStr(buf));
  48. const CSecurity* cSec = conn->csecurity;
  49. setItemString(IDC_INFO_SECURITY, TStr(secTypeName(cSec->getType())));
  50. setItemString(IDC_INFO_ENCRYPTION, TStr(cSec->description()));
  51. }