Kaydet (Commit) dfc9c72d authored tarafından Szabolcs Dezsi's avatar Szabolcs Dezsi Kaydeden (comit) Tor Lillqvist

Added 'Copy to Clipboard' button to error dialogs

üst ebbef3a9
...@@ -336,6 +336,7 @@ typedef sal_uInt16 StandardButtonType; ...@@ -336,6 +336,7 @@ typedef sal_uInt16 StandardButtonType;
#define BUTTON_ABORT ((StandardButtonType)9) #define BUTTON_ABORT ((StandardButtonType)9)
#define BUTTON_LESS ((StandardButtonType)10) #define BUTTON_LESS ((StandardButtonType)10)
#define BUTTON_COUNT 11 #define BUTTON_COUNT 11
#define BUTTON_COPY 12
// -------------------------------------------- // --------------------------------------------
// - prominent place for ListBox window types - // - prominent place for ListBox window types -
......
...@@ -183,6 +183,7 @@ ...@@ -183,6 +183,7 @@
#define SV_BUTTONTEXT_IGNORE 10108 #define SV_BUTTONTEXT_IGNORE 10108
#define SV_BUTTONTEXT_ABORT 10109 #define SV_BUTTONTEXT_ABORT 10109
#define SV_BUTTONTEXT_LESS 10110 #define SV_BUTTONTEXT_LESS 10110
#define SV_BUTTONTEXT_COPY 10111
#define SV_STDTEXT_FIRST SV_STDTEXT_SERVICENOTAVAILABLE #define SV_STDTEXT_FIRST SV_STDTEXT_SERVICENOTAVAILABLE
#define SV_STDTEXT_SERVICENOTAVAILABLE 10200 #define SV_STDTEXT_SERVICENOTAVAILABLE 10200
......
...@@ -34,6 +34,8 @@ ...@@ -34,6 +34,8 @@
#include <vcl/btndlg.hxx> #include <vcl/btndlg.hxx>
#include <vcl/image.hxx> #include <vcl/image.hxx>
#include <vcl/bitmap.hxx> #include <vcl/bitmap.hxx>
#include <vcl/button.hxx>
class FixedText; class FixedText;
class FixedImage; class FixedImage;
class CheckBox; class CheckBox;
...@@ -104,6 +106,8 @@ public: ...@@ -104,6 +106,8 @@ public:
sal_Bool GetCheckBoxState() const; sal_Bool GetCheckBoxState() const;
virtual Size GetOptimalSize(WindowSizeType eType) const; virtual Size GetOptimalSize(WindowSizeType eType) const;
DECL_LINK( ClickHdl, Button* );
}; };
// ----------- // -----------
......
...@@ -69,6 +69,11 @@ String SV_BUTTONTEXT_LESS ...@@ -69,6 +69,11 @@ String SV_BUTTONTEXT_LESS
Text [ en-US ] = "~Less"; Text [ en-US ] = "~Less";
}; };
String SV_BUTTONTEXT_COPY
{
Text [ en-US ] = "Copy to Clipboard";
};
String SV_BUTTONTEXT_IGNORE String SV_BUTTONTEXT_IGNORE
{ {
Text [ en-US ] = "~Ignore"; Text [ en-US ] = "~Ignore";
......
...@@ -34,6 +34,7 @@ ...@@ -34,6 +34,7 @@
#include <brdwin.hxx> #include <brdwin.hxx>
#include <window.h> #include <window.h>
#include <vcl/edit.hxx>
#include <vcl/metric.hxx> #include <vcl/metric.hxx>
#include <vcl/svapp.hxx> #include <vcl/svapp.hxx>
#include <vcl/wrkwin.hxx> #include <vcl/wrkwin.hxx>
...@@ -399,6 +400,10 @@ void MessBox::ImplPosControls() ...@@ -399,6 +400,10 @@ void MessBox::ImplPosControls()
mpCheckBox->Show(); mpCheckBox->Show();
} }
AddButton( String( ResId( SV_BUTTONTEXT_COPY, *ImplGetResMgr() ) ), BUTTON_COPY, 0 );
Button* pCopyBtn = GetPushButton( BUTTON_COPY );
pCopyBtn->SetClickHdl( LINK( this, MessBox, ClickHdl ) );
mpFixedText = new FixedText( this, nWinStyle ); mpFixedText = new FixedText( this, nWinStyle );
if( mpFixedText->GetStyle() & WB_EXTRAOFFSET ) // TODO: use CalcMinimumSize() instead if( mpFixedText->GetStyle() & WB_EXTRAOFFSET ) // TODO: use CalcMinimumSize() instead
aFixedSize.Width() += 2; aFixedSize.Width() += 2;
...@@ -408,6 +413,15 @@ void MessBox::ImplPosControls() ...@@ -408,6 +413,15 @@ void MessBox::ImplPosControls()
SetPageSizePixel( aPageSize ); SetPageSizePixel( aPageSize );
} }
IMPL_LINK( MessBox, ClickHdl, Button*, pBtn )
{
Edit aCopyHelper( this );
aCopyHelper.SetText( maMessText, Selection( 0, maMessText.Len() ) );
aCopyHelper.Copy();
return 0;
}
// ----------------------------------------------------------------------- // -----------------------------------------------------------------------
void MessBox::StateChanged( StateChangedType nType ) void MessBox::StateChanged( StateChangedType nType )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment