cui/uiconfig/ui/pastespecial.ui | 1 + include/editeng/editids.hrc | 15 ++++++++++----- include/sfx2/sfxsids.hrc | 4 ++++ include/svx/svxids.hrc | 3 +++ include/vcl/edit.hxx | 3 +++ sfx2/uiconfig/ui/documentinfopage.ui | 2 ++ vcl/source/control/edit.cxx | 21 ++++++++++++++++++++- 7 files changed, 43 insertions(+), 6 deletions(-)
New commits: commit 669ad519902e21e0cb3537fb7e203987f75a4077 Author: Caolán McNamara <caol...@redhat.com> Date: Mon Jun 24 14:40:07 2013 +0100 colliding SID_SVX_START based ids Change-Id: I6eba0b0c2291a71ebe683b23a0af400010d5b5d8 diff --git a/include/editeng/editids.hrc b/include/editeng/editids.hrc index 7dbaae8..e6c67c6 100644 --- a/include/editeng/editids.hrc +++ b/include/editeng/editids.hrc @@ -21,6 +21,12 @@ #include <svl/solar.hrc> +/* + These SID_SVX_START entries came from include/svx/svxids.hrc, avoid + accidentally colliding entries with include/svx/svxids.hrc and + include/sfx2/sfxsids.hrc. Only add new SID_SVX_START entries to + include/svx/svxids.hrc +*/ #define SID_ATTR_BRUSH ( SID_SVX_START + 1 ) #define SID_ATTR_TABSTOP ( SID_SVX_START + 2 ) #define SID_ATTR_TABSTOP_DEFAULTS ( SID_SVX_START + 3 ) @@ -112,17 +118,16 @@ #define SID_ATTR_CHAR_LATIN_LANGUAGE ( SID_SVX_START + 996 ) #define SID_ATTR_CHAR_LATIN_POSTURE ( SID_SVX_START + 997 ) #define SID_ATTR_CHAR_LATIN_WEIGHT ( SID_SVX_START + 998 ) -#define SID_ATTR_PARA_OUTLINE_LEVEL ( SID_SVX_START + 1121 ) -#define SID_ATTR_CHAR_PREVIEW_FONT ( SID_SVX_START + 1122 ) -#define SID_ATTR_CHAR_ENDPREVIEW_FONT ( SID_SVX_START + 1123 ) - -// this ID didn't exist prior to the svx split +// these ID didn't exist prior to the svx split, add new ids here #define SID_ATTR_CHAR_OVERLINE ( SID_EDIT_START + 68 ) #define SID_ATTR_ALIGN_HOR_JUSTIFY_METHOD ( SID_EDIT_START + 69 ) #define SID_ATTR_ALIGN_VER_JUSTIFY_METHOD ( SID_EDIT_START + 70 ) #define SID_ATTR_ALIGN_HOR_JUSTIFY ( SID_EDIT_START + 71 ) #define SID_ATTR_ALIGN_VER_JUSTIFY ( SID_EDIT_START + 72 ) +#define SID_ATTR_PARA_OUTLINE_LEVEL ( SID_EDIT_START + 73 ) +#define SID_ATTR_CHAR_PREVIEW_FONT ( SID_EDIT_START + 74 ) +#define SID_ATTR_CHAR_ENDPREVIEW_FONT ( SID_EDIT_START + 75 ) /* // planned, but not doable: changing value of SIDs will break code that uses them for WhichRanges diff --git a/include/sfx2/sfxsids.hrc b/include/sfx2/sfxsids.hrc index fcfe4dd..d1227e3 100644 --- a/include/sfx2/sfxsids.hrc +++ b/include/sfx2/sfxsids.hrc @@ -583,6 +583,10 @@ #define SID_HELP_STYLESHEET (SID_OPTIONS_START + 99) // slot IDs from SVX (svxids.hrc) --------------------------------------------- +// These SID_SVX_START entries came from include/svx/svxids.hrc, avoid +// accidentally colliding entries with include/svx/svxids.hrc and +// include/editeng/editids.hrc. Only add new SID_SVX_START entries +// to include/svx/svxids.hrc #define SID_ZOOM_TOOLBOX (SID_SVX_START + 96) #define SID_ZOOM_OUT (SID_SVX_START + 97) diff --git a/include/svx/svxids.hrc b/include/svx/svxids.hrc index 7a62e63..8aa8807 100644 --- a/include/svx/svxids.hrc +++ b/include/svx/svxids.hrc @@ -269,6 +269,9 @@ // -------------------------------------------------------------------------- // Svx-Id's +// When adding new entries here, note that other SID_SVX_START entries exist in +// include/editeng/editids.hrc and include/sfx2/sfxsids.hrc so don't use the +// same id for two different attributes // -------------------------------------------------------------------------- #define SID_ATTR_BORDER_INNER ( SID_SVX_START + 23 ) commit 9495e912797f67897a4a658d20137bb94f39e9ab Author: Caolán McNamara <caol...@redhat.com> Date: Mon Jun 24 12:42:39 2013 +0100 Resolves: fdo#66105 set max growth width for labels/edits which take paths Change-Id: I12220821f76550baacdc8ce604f2e612d260c1a1 diff --git a/cui/uiconfig/ui/pastespecial.ui b/cui/uiconfig/ui/pastespecial.ui index fb08b9e..3eb4e7d 100644 --- a/cui/uiconfig/ui/pastespecial.ui +++ b/cui/uiconfig/ui/pastespecial.ui @@ -97,6 +97,7 @@ <property name="visible">True</property> <property name="can_focus">False</property> <property name="wrap">True</property> + <property name="max_width_chars">72</property> </object> <packing> <property name="expand">False</property> diff --git a/include/vcl/edit.hxx b/include/vcl/edit.hxx index 11c1ae8..6df1f7b 100644 --- a/include/vcl/edit.hxx +++ b/include/vcl/edit.hxx @@ -71,6 +71,7 @@ private: sal_uInt16 mnAlign; xub_StrLen mnMaxTextLen; sal_Int32 mnWidthInChars; + sal_Int32 mnMaxWidthChars; AutocompleteAction meAutocompleteAction; sal_Unicode mcEchoChar; sal_Bool mbModified:1, @@ -193,6 +194,8 @@ public: void SetWidthInChars(sal_Int32 nWidthInChars); sal_Int32 GetWidthInChars() const { return mnWidthInChars; } + void setMaxWidthChars(sal_Int32 nWidth); + virtual void SetSelection( const Selection& rSelection ); virtual const Selection& GetSelection() const; diff --git a/sfx2/uiconfig/ui/documentinfopage.ui b/sfx2/uiconfig/ui/documentinfopage.ui index 2809979..7770b76 100644 --- a/sfx2/uiconfig/ui/documentinfopage.ui +++ b/sfx2/uiconfig/ui/documentinfopage.ui @@ -277,6 +277,7 @@ <property name="can_focus">False</property> <property name="xalign">0</property> <property name="selectable">True</property> + <property name="max_width_chars">56</property> </object> <packing> <property name="left_attach">1</property> @@ -338,6 +339,7 @@ <property name="can_focus">False</property> <property name="xalign">0</property> <property name="selectable">True</property> + <property name="max_width_chars">56</property> </object> <packing> <property name="left_attach">1</property> diff --git a/vcl/source/control/edit.cxx b/vcl/source/control/edit.cxx index cfd4d33..70f19f9 100644 --- a/vcl/source/control/edit.cxx +++ b/vcl/source/control/edit.cxx @@ -214,10 +214,22 @@ void Edit::SetWidthInChars(sal_Int32 nWidthInChars) } } +void Edit::setMaxWidthChars(sal_Int32 nWidth) +{ + if (nWidth != mnMaxWidthChars) + { + mnMaxWidthChars = nWidth; + fprintf(stderr, "setMaxWidthChars of %d\n", nWidth); + queue_resize(); + } +} + bool Edit::set_property(const OString &rKey, const OString &rValue) { if (rKey == "width-chars") SetWidthInChars(rValue.toInt32()); + else if (rKey == "max-width-chars") + setMaxWidthChars(rValue.toInt32()); else if (rKey == "max-length") { sal_Int32 nTextLen = rValue.toInt32(); @@ -295,6 +307,7 @@ void Edit::ImplInitEditData() mnAlign = EDIT_ALIGN_LEFT; mnMaxTextLen = EDIT_NOLIMIT; mnWidthInChars = -1; + mnMaxWidthChars = -1; meAutocompleteAction = AUTOCOMPLETE_KEYINPUT; mbModified = sal_False; mbInternModified = sal_False; @@ -2886,8 +2899,14 @@ Size Edit::CalcMinimumSizeForText(const OUString &rString) const } else { + OUString aString; + if (mnMaxWidthChars != -1 && mnMaxWidthChars < rString.getLength()) + aString = rString.copy(0, mnMaxWidthChars); + else + aString = rString; + aSize.Height() = GetTextHeight(); - aSize.Width() = GetTextWidth(rString); + aSize.Width() = GetTextWidth(aString); aSize.Width() += ImplGetExtraOffset() * 2; // do not create edit fields in which one cannot enter anything // a default minimum width should exist for at least 3 characters
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits