summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndras Timar <atimar@suse.com>2013-04-18 12:46:36 -0700
committerAndras Timar <atimar@suse.com>2013-04-18 12:47:23 -0700
commitab7776e1bc0687b6e42ffa6e837435800b4a58af (patch)
treecc07ef94d79f0401bec2d29b86ab7b90688687e8
parentd636dcc64065fa280688dc26aecb2bb78792eaef (diff)
fdo#63503 add 'Delete Last' button to Special Characters dialog
Change-Id: I7f14564f6b28e0b480b503394e0e078ed28f9150
-rw-r--r--cui/source/dialogs/cuicharmap.cxx17
-rw-r--r--cui/source/inc/cuicharmap.hxx2
-rw-r--r--cui/uiconfig/ui/specialcharacters.ui16
3 files changed, 34 insertions, 1 deletions
diff --git a/cui/source/dialogs/cuicharmap.cxx b/cui/source/dialogs/cuicharmap.cxx
index ed42c14c9931..fdc4a25528c2 100644
--- a/cui/source/dialogs/cuicharmap.cxx
+++ b/cui/source/dialogs/cuicharmap.cxx
@@ -54,6 +54,7 @@ SvxCharacterMap::SvxCharacterMap( Window* pParent, sal_Bool bOne_, const SfxItem
get(m_pShowText, "showtext");
get(m_pOKBtn, "ok");
get(m_pDeleteBtn, "delete");
+ get(m_pDeleteLastBtn, "deletelast");
get(m_pFontText, "fontft");
get(m_pFontLB, "fontlb");
m_pFontLB->SetStyle(m_pFontLB->GetStyle() | WB_SORT);
@@ -321,6 +322,7 @@ void SvxCharacterMap::init()
m_pSymbolText->Hide();
m_pShowText->Hide();
m_pDeleteBtn->Hide();
+ m_pDeleteLastBtn->Hide();
}
OUString aDefStr( aFont.GetName() );
@@ -369,6 +371,7 @@ void SvxCharacterMap::init()
m_pShowSet->SetSelectHdl( LINK( this, SvxCharacterMap, CharSelectHdl ) );
m_pShowSet->SetHighlightHdl( LINK( this, SvxCharacterMap, CharHighlightHdl ) );
m_pShowSet->SetPreSelectHdl( LINK( this, SvxCharacterMap, CharPreSelectHdl ) );
+ m_pDeleteLastBtn->SetClickHdl( LINK( this, SvxCharacterMap, DeleteLastHdl ) );
m_pDeleteBtn->SetClickHdl( LINK( this, SvxCharacterMap, DeleteHdl ) );
if( SvxShowCharSet::getSelectedChar() == ' ')
@@ -521,6 +524,7 @@ IMPL_LINK_NOARG(SvxCharacterMap, CharSelectHdl)
}
m_pOKBtn->Enable();
+ m_pDeleteLastBtn->Enable();
return 0;
}
@@ -582,10 +586,23 @@ IMPL_LINK_NOARG(SvxCharacterMap, CharPreSelectHdl)
// -----------------------------------------------------------------------
+IMPL_LINK_NOARG(SvxCharacterMap, DeleteLastHdl)
+{
+ OUString aCurrentText = m_pShowText->GetText();
+ m_pShowText->SetText( aCurrentText.copy( 0, aCurrentText.getLength() - 1 ) );
+ if ( m_pShowText->GetText() == "" )
+ {
+ m_pOKBtn->Disable();
+ m_pDeleteLastBtn->Disable();
+ }
+ return 0;
+}
+
IMPL_LINK_NOARG(SvxCharacterMap, DeleteHdl)
{
m_pShowText->SetText( String() );
m_pOKBtn->Disable();
+ m_pDeleteLastBtn->Disable();
return 0;
}
diff --git a/cui/source/inc/cuicharmap.hxx b/cui/source/inc/cuicharmap.hxx
index 27b0d0f7d50b..410e6aa582ff 100644
--- a/cui/source/inc/cuicharmap.hxx
+++ b/cui/source/inc/cuicharmap.hxx
@@ -71,6 +71,7 @@ private:
SvxShowCharSet* m_pShowSet;
SvxShowText* m_pShowText;
OKButton* m_pOKBtn;
+ PushButton* m_pDeleteLastBtn;
PushButton* m_pDeleteBtn;
FixedText* m_pFontText;
ListBox* m_pFontLB;
@@ -90,6 +91,7 @@ private:
DECL_LINK(CharSelectHdl, void *);
DECL_LINK(CharHighlightHdl, void *);
DECL_LINK(CharPreSelectHdl, void *);
+ DECL_LINK(DeleteLastHdl, void *);
DECL_LINK(DeleteHdl, void *);
void fillAllSubsets(ListBox &rListBox);
diff --git a/cui/uiconfig/ui/specialcharacters.ui b/cui/uiconfig/ui/specialcharacters.ui
index c35b52ae737d..c634b25018d1 100644
--- a/cui/uiconfig/ui/specialcharacters.ui
+++ b/cui/uiconfig/ui/specialcharacters.ui
@@ -60,6 +60,20 @@
</packing>
</child>
<child>
+ <object class="GtkButton" id="deletelast">
+ <property name="label" translatable="yes">Delete _Last</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_underline">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ <child>
<object class="GtkButton" id="delete">
<property name="label">gtk-delete</property>
<property name="visible">True</property>
@@ -71,7 +85,7 @@
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
- <property name="position">3</property>
+ <property name="position">4</property>
</packing>
</child>
</object>