textcontrol.cpp
上传用户:chn_coc
上传日期:2007-12-20
资源大小:563k
文件大小:2k
源码类别:

P2P编程

开发平台:

Windows_Unix

  1. /*
  2.  *  textcontrol.cpp
  3.  *  PeerCast
  4.  *
  5.  *  Created by mode7 on Mon Apr 05 2004.
  6.  *  Copyright (c) 2002-2004 peercast.org. All rights reserved.
  7.  *
  8.  */
  9. // ------------------------------------------------
  10. // This program is free software; you can redistribute it and/or modify
  11. // it under the terms of the GNU General Public License as published by
  12. // the Free Software Foundation; either version 2 of the License, or
  13. // (at your option) any later version.
  14. // This program is distributed in the hope that it will be useful,
  15. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  17. // GNU General Public License for more details.
  18. // ------------------------------------------------
  19. #include "textcontrol.h"
  20. const char* const TextControl::skNullString = "";
  21. void TextControl::setText( WindowRef window, const char* text )
  22. {
  23. CFStringRef controlText = CFStringCreateWithFormat( NULL, NULL, CFSTR("%s"), text );
  24. setText( window, controlText );
  25. CFRelease( controlText );
  26. }
  27. void TextControl::setText( WindowRef window, CFStringRef text )
  28. {
  29. ControlRef controlRef = NULL;
  30. OSStatus err = GetControlByID( window, &mID, &controlRef );
  31. err = SetControlData(   controlRef
  32.    ,0
  33.    ,kControlEditTextCFStringTag
  34.    ,sizeof(CFStringRef)
  35.    ,&text );
  36.    
  37. DrawOneControl( controlRef );
  38. }
  39. CFStringRef TextControl::getStringRef( WindowRef window )
  40. {
  41. if( mStringRef == NULL )
  42. {
  43. ControlRef controlRef=NULL;
  44. OSStatus err = GetControlByID( window, &mID, &controlRef );
  45. err = GetControlData( controlRef
  46.  ,0
  47.  ,kControlEditTextCFStringTag
  48.  ,sizeof(CFStringRef)
  49.  ,&mStringRef
  50.  ,NULL );
  51. }
  52. return mStringRef;
  53. }