1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24 // MARKER(update_precomp.py): autogen include statement, do not remove 25 #include "precompiled_dbaccess.hxx" 26 #ifndef DBAUI_TABLEDESIGNHELPBAR_HXX 27 #include "TableDesignHelpBar.hxx" 28 #endif 29 #ifndef _TOOLS_DEBUG_HXX 30 #include <tools/debug.hxx> 31 #endif 32 #ifndef _SVEDIT_HXX 33 #include <svtools/svmedit.hxx> 34 #endif 35 #ifndef _DBA_DBACCESS_HELPID_HRC_ 36 #include "dbaccess_helpid.hrc" 37 #endif 38 #include <memory> 39 using namespace dbaui; 40 #define STANDARD_MARGIN 6 41 //================================================================== 42 // class OTableDesignHelpBar 43 //================================================================== 44 DBG_NAME(OTableDesignHelpBar) 45 //------------------------------------------------------------------------------ 46 OTableDesignHelpBar::OTableDesignHelpBar( Window* pParent ) : 47 TabPage( pParent, WB_3DLOOK ) 48 { 49 DBG_CTOR(OTableDesignHelpBar,NULL); 50 m_pTextWin = new MultiLineEdit( this, WB_VSCROLL | WB_LEFT | WB_BORDER | WB_NOTABSTOP | WB_READONLY); 51 m_pTextWin->SetHelpId(HID_TABLE_DESIGN_HELP_WINDOW); 52 m_pTextWin->SetReadOnly(); 53 m_pTextWin->SetControlBackground( GetSettings().GetStyleSettings().GetFaceColor() ); 54 m_pTextWin->Show(); 55 } 56 57 //------------------------------------------------------------------------------ 58 OTableDesignHelpBar::~OTableDesignHelpBar() 59 { 60 DBG_DTOR(OTableDesignHelpBar,NULL); 61 ::std::auto_ptr<Window> aTemp(m_pTextWin); 62 m_pTextWin = NULL; 63 } 64 65 //------------------------------------------------------------------------------ 66 void OTableDesignHelpBar::SetHelpText( const String& rText ) 67 { 68 DBG_CHKTHIS(OTableDesignHelpBar,NULL); 69 if(m_pTextWin) 70 m_pTextWin->SetText( rText ); 71 Invalidate(); 72 } 73 74 //------------------------------------------------------------------------------ 75 void OTableDesignHelpBar::Resize() 76 { 77 DBG_CHKTHIS(OTableDesignHelpBar,NULL); 78 ////////////////////////////////////////////////////////////////////// 79 // Abmessungen parent window 80 Size aOutputSize( GetOutputSizePixel() ); 81 82 ////////////////////////////////////////////////////////////////////// 83 // TextWin anpassen 84 if(m_pTextWin) 85 m_pTextWin->SetPosSizePixel( Point(STANDARD_MARGIN+1, STANDARD_MARGIN+1), 86 Size(aOutputSize.Width()-(2*STANDARD_MARGIN)-2, 87 aOutputSize.Height()-(2*STANDARD_MARGIN)-2) ); 88 89 } 90 91 //------------------------------------------------------------------------------ 92 long OTableDesignHelpBar::PreNotify( NotifyEvent& rNEvt ) 93 { 94 if (rNEvt.GetType() == EVENT_LOSEFOCUS) 95 SetHelpText(String()); 96 return TabPage::PreNotify(rNEvt); 97 } 98 // ----------------------------------------------------------------------------- 99 sal_Bool OTableDesignHelpBar::isCopyAllowed() 100 { 101 return m_pTextWin && m_pTextWin->GetSelected().Len(); 102 } 103 // ----------------------------------------------------------------------------- 104 sal_Bool OTableDesignHelpBar::isCutAllowed() 105 { 106 return sal_False; 107 } 108 // ----------------------------------------------------------------------------- 109 sal_Bool OTableDesignHelpBar::isPasteAllowed() 110 { 111 return sal_False; 112 } 113 // ----------------------------------------------------------------------------- 114 void OTableDesignHelpBar::cut() 115 { 116 } 117 // ----------------------------------------------------------------------------- 118 void OTableDesignHelpBar::copy() 119 { 120 if ( m_pTextWin ) 121 m_pTextWin->Copy(); 122 } 123 // ----------------------------------------------------------------------------- 124 void OTableDesignHelpBar::paste() 125 { 126 } 127