Kaydet (Commit) 83a597af authored tarafından Caolán McNamara's avatar Caolán McNamara

WaE: -Werror=switch

Change-Id: Ic5b7f1da92ac5a936857fe122cb8db0441b6d291
üst 2dc8ed69
......@@ -52,37 +52,29 @@ namespace svt
bool ComboBoxControl::PreNotify( NotifyEvent& rNEvt )
{
switch (rNEvt.GetType())
if (rNEvt.GetType() == MouseNotifyEvent::KEYINPUT && !IsInDropDown())
{
case MouseNotifyEvent::KEYINPUT:
if (!IsInDropDown())
const KeyEvent *pEvt = rNEvt.GetKeyEvent();
const vcl::KeyCode rKey = pEvt->GetKeyCode();
if ((rKey.GetCode() == KEY_UP || rKey.GetCode() == KEY_DOWN) &&
(!pEvt->GetKeyCode().IsShift() && pEvt->GetKeyCode().IsMod1()))
{
// select next resp. previous entry
sal_Int32 nPos = GetEntryPos(GetText());
int nDir = (rKey.GetCode() == KEY_DOWN ? 1 : -1);
if (!((nPos == 0 && nDir == -1) || (nPos >= GetEntryCount() && nDir == 1)))
{
const KeyEvent *pEvt = rNEvt.GetKeyEvent();
const vcl::KeyCode rKey = pEvt->GetKeyCode();
if ((rKey.GetCode() == KEY_UP || rKey.GetCode() == KEY_DOWN) &&
(!pEvt->GetKeyCode().IsShift() && pEvt->GetKeyCode().IsMod1()))
{
// select next resp. previous entry
sal_Int32 nPos = GetEntryPos(GetText());
int nDir = (rKey.GetCode() == KEY_DOWN ? 1 : -1);
if (!((nPos == 0 && nDir == -1) || (nPos >= GetEntryCount() && nDir == 1)))
{
nPos += nDir;
SetText(GetEntry(nPos));
}
return true;
}
nPos += nDir;
SetText(GetEntry(nPos));
}
break;
return true;
}
}
return ComboBox::PreNotify(rNEvt);
}
//= ComboBoxCellController
ComboBoxCellController::ComboBoxCellController(ComboBoxControl* pWin)
:CellController(pWin)
{
......@@ -133,22 +125,17 @@ namespace svt
return GetComboBox().IsValueChangedFromSaved();
}
void ComboBoxCellController::ClearModified()
{
GetComboBox().SaveValue();
}
void ComboBoxCellController::SetModifyHdl(const Link& rLink)
{
GetComboBox().SetModifyHdl(rLink);
}
//= ListBoxControl
ListBoxControl::ListBoxControl(vcl::Window* pParent, WinBits nWinStyle)
:ListBox(pParent, nWinStyle|WB_DROPDOWN|WB_NOBORDER)
{
......@@ -157,43 +144,34 @@ namespace svt
SetDropDownLineCount(20);
}
bool ListBoxControl::PreNotify( NotifyEvent& rNEvt )
{
switch (rNEvt.GetType())
switch (rNEvt.GetType() == MouseNotifyEvent::KEYINPUT && !IsInDropDown())
{
case MouseNotifyEvent::KEYINPUT:
if (!IsInDropDown())
const KeyEvent *pEvt = rNEvt.GetKeyEvent();
const vcl::KeyCode rKey = pEvt->GetKeyCode();
if ((rKey.GetCode() == KEY_UP || rKey.GetCode() == KEY_DOWN) &&
(!pEvt->GetKeyCode().IsShift() && pEvt->GetKeyCode().IsMod1()))
{
// select next resp. previous entry
sal_Int32 nPos = GetSelectEntryPos();
int nDir = (rKey.GetCode() == KEY_DOWN ? 1 : -1);
if (!((nPos == 0 && nDir == -1) || (nPos >= GetEntryCount() && nDir == 1)))
{
const KeyEvent *pEvt = rNEvt.GetKeyEvent();
const vcl::KeyCode rKey = pEvt->GetKeyCode();
if ((rKey.GetCode() == KEY_UP || rKey.GetCode() == KEY_DOWN) &&
(!pEvt->GetKeyCode().IsShift() && pEvt->GetKeyCode().IsMod1()))
{
// select next resp. previous entry
sal_Int32 nPos = GetSelectEntryPos();
int nDir = (rKey.GetCode() == KEY_DOWN ? 1 : -1);
if (!((nPos == 0 && nDir == -1) || (nPos >= GetEntryCount() && nDir == 1)))
{
nPos += nDir;
SelectEntryPos(nPos);
}
Select(); // for calling Modify
return true;
}
else if (GetParent()->PreNotify(rNEvt))
return true;
nPos += nDir;
SelectEntryPos(nPos);
}
break;
Select(); // for calling Modify
return true;
}
else if (GetParent()->PreNotify(rNEvt))
return true;
}
return ListBox::PreNotify(rNEvt);
}
//= ListBoxCellController
ListBoxCellController::ListBoxCellController(ListBoxControl* pWin)
:CellController(pWin)
{
......@@ -333,6 +311,9 @@ namespace svt
break;
case MouseNotifyEvent::LOSEFOCUS:
HideFocus();
break;
default:
break;
}
return Control::PreNotify(rEvt);
}
......
......@@ -608,126 +608,123 @@ namespace svt
BrowseBox::Dispatch( _nId );
}
bool EditBrowseBox::PreNotify(NotifyEvent& rEvt)
{
switch (rEvt.GetType())
if (rEvt.GetType() == MouseNotifyEvent::KEYINPUT)
{
case MouseNotifyEvent::KEYINPUT:
if ( (IsEditing() && Controller()->GetWindow().HasChildPathFocus())
|| rEvt.GetWindow() == &GetDataWindow()
|| (!IsEditing() && HasChildPathFocus())
)
{
const KeyEvent* pKeyEvent = rEvt.GetKeyEvent();
sal_uInt16 nCode = pKeyEvent->GetKeyCode().GetCode();
bool bShift = pKeyEvent->GetKeyCode().IsShift();
bool bCtrl = pKeyEvent->GetKeyCode().IsMod1();
bool bAlt = pKeyEvent->GetKeyCode().IsMod2();
bool bLocalSelect = false;
bool bNonEditOnly = false;
sal_uInt16 nId = BROWSER_NONE;
if (!bAlt && !bCtrl && !bShift )
switch ( nCode )
{
case KEY_DOWN: nId = BROWSER_CURSORDOWN; break;
case KEY_UP: nId = BROWSER_CURSORUP; break;
case KEY_PAGEDOWN: nId = BROWSER_CURSORPAGEDOWN; break;
case KEY_PAGEUP: nId = BROWSER_CURSORPAGEUP; break;
case KEY_HOME: nId = BROWSER_CURSORHOME; break;
case KEY_END: nId = BROWSER_CURSOREND; break;
case KEY_TAB:
// ask if traveling to the next cell is allowed
if (IsTabAllowed(true))
nId = BROWSER_CURSORRIGHT;
break;
case KEY_RETURN:
// save the cell content (if necessary)
if (IsEditing() && aController->IsModified() && !((EditBrowseBox *) this)->SaveModified())
{
// maybe we're not visible ...
EnableAndShow();
aController->GetWindow().GrabFocus();
return true;
}
// ask if traveling to the next cell is allowed
if (IsTabAllowed(true))
nId = BROWSER_CURSORRIGHT;
break;
case KEY_RIGHT: nId = BROWSER_CURSORRIGHT; break;
case KEY_LEFT: nId = BROWSER_CURSORLEFT; break;
case KEY_SPACE: nId = BROWSER_SELECT; bNonEditOnly = bLocalSelect = true; break;
}
if ( (IsEditing() && Controller()->GetWindow().HasChildPathFocus())
|| rEvt.GetWindow() == &GetDataWindow()
|| (!IsEditing() && HasChildPathFocus())
)
{
const KeyEvent* pKeyEvent = rEvt.GetKeyEvent();
sal_uInt16 nCode = pKeyEvent->GetKeyCode().GetCode();
bool bShift = pKeyEvent->GetKeyCode().IsShift();
bool bCtrl = pKeyEvent->GetKeyCode().IsMod1();
bool bAlt = pKeyEvent->GetKeyCode().IsMod2();
bool bLocalSelect = false;
bool bNonEditOnly = false;
sal_uInt16 nId = BROWSER_NONE;
if (!bAlt && !bCtrl && !bShift )
switch ( nCode )
{
case KEY_DOWN: nId = BROWSER_CURSORDOWN; break;
case KEY_UP: nId = BROWSER_CURSORUP; break;
case KEY_PAGEDOWN: nId = BROWSER_CURSORPAGEDOWN; break;
case KEY_PAGEUP: nId = BROWSER_CURSORPAGEUP; break;
case KEY_HOME: nId = BROWSER_CURSORHOME; break;
case KEY_END: nId = BROWSER_CURSOREND; break;
case KEY_TAB:
// ask if traveling to the next cell is allowed
if (IsTabAllowed(true))
nId = BROWSER_CURSORRIGHT;
break;
case KEY_RETURN:
// save the cell content (if necessary)
if (IsEditing() && aController->IsModified() && !((EditBrowseBox *) this)->SaveModified())
{
// maybe we're not visible ...
EnableAndShow();
aController->GetWindow().GrabFocus();
return true;
}
// ask if traveling to the next cell is allowed
if (IsTabAllowed(true))
nId = BROWSER_CURSORRIGHT;
break;
case KEY_RIGHT: nId = BROWSER_CURSORRIGHT; break;
case KEY_LEFT: nId = BROWSER_CURSORLEFT; break;
case KEY_SPACE: nId = BROWSER_SELECT; bNonEditOnly = bLocalSelect = true; break;
}
if ( !bAlt && !bCtrl && bShift )
switch ( nCode )
{
case KEY_DOWN: nId = BROWSER_SELECTDOWN; bLocalSelect = true; break;
case KEY_UP: nId = BROWSER_SELECTUP; bLocalSelect = true; break;
case KEY_HOME: nId = BROWSER_SELECTHOME; bLocalSelect = true; break;
case KEY_END: nId = BROWSER_SELECTEND; bLocalSelect = true; break;
case KEY_TAB:
if (IsTabAllowed(false))
nId = BROWSER_CURSORLEFT;
break;
}
if ( !bAlt && !bCtrl && bShift )
switch ( nCode )
{
case KEY_DOWN: nId = BROWSER_SELECTDOWN; bLocalSelect = true; break;
case KEY_UP: nId = BROWSER_SELECTUP; bLocalSelect = true; break;
case KEY_HOME: nId = BROWSER_SELECTHOME; bLocalSelect = true; break;
case KEY_END: nId = BROWSER_SELECTEND; bLocalSelect = true; break;
case KEY_TAB:
if (IsTabAllowed(false))
nId = BROWSER_CURSORLEFT;
break;
}
if ( !bAlt && bCtrl && bShift )
switch ( nCode )
{
case KEY_SPACE: nId = BROWSER_SELECTCOLUMN; bLocalSelect = true; break;
}
if ( !bAlt && bCtrl && bShift )
switch ( nCode )
{
case KEY_SPACE: nId = BROWSER_SELECTCOLUMN; bLocalSelect = true; break;
}
if ( !bAlt && bCtrl && !bShift )
switch ( nCode )
{
case KEY_DOWN: nId = BROWSER_SCROLLUP; break;
case KEY_UP: nId = BROWSER_SCROLLDOWN; break;
case KEY_PAGEDOWN: nId = BROWSER_CURSORENDOFFILE; break;
case KEY_PAGEUP: nId = BROWSER_CURSORTOPOFFILE; break;
case KEY_HOME: nId = BROWSER_CURSORTOPOFSCREEN; break;
case KEY_END: nId = BROWSER_CURSORENDOFSCREEN; break;
case KEY_SPACE: nId = BROWSER_ENHANCESELECTION; bLocalSelect = true; break;
}
if ( !bAlt && bCtrl && !bShift )
switch ( nCode )
{
case KEY_DOWN: nId = BROWSER_SCROLLUP; break;
case KEY_UP: nId = BROWSER_SCROLLDOWN; break;
case KEY_PAGEDOWN: nId = BROWSER_CURSORENDOFFILE; break;
case KEY_PAGEUP: nId = BROWSER_CURSORTOPOFFILE; break;
case KEY_HOME: nId = BROWSER_CURSORTOPOFSCREEN; break;
case KEY_END: nId = BROWSER_CURSORENDOFSCREEN; break;
case KEY_SPACE: nId = BROWSER_ENHANCESELECTION; bLocalSelect = true; break;
}
if ( ( nId != BROWSER_NONE )
&& ( !IsEditing()
|| ( !bNonEditOnly
&& aController->MoveAllowed( *pKeyEvent )
)
if ( ( nId != BROWSER_NONE )
&& ( !IsEditing()
|| ( !bNonEditOnly
&& aController->MoveAllowed( *pKeyEvent )
)
)
)
{
if (nId == BROWSER_SELECT || BROWSER_SELECTCOLUMN == nId )
{
if (nId == BROWSER_SELECT || BROWSER_SELECTCOLUMN == nId )
// save the cell content (if necessary)
if (IsEditing() && aController->IsModified() && !((EditBrowseBox *) this)->SaveModified())
{
// save the cell content (if necessary)
if (IsEditing() && aController->IsModified() && !((EditBrowseBox *) this)->SaveModified())
{
// maybe we're not visible ...
EnableAndShow();
aController->GetWindow().GrabFocus();
return true;
}
// maybe we're not visible ...
EnableAndShow();
aController->GetWindow().GrabFocus();
return true;
}
}
Dispatch(nId);
Dispatch(nId);
if (bLocalSelect && (GetSelectRowCount() || GetSelection() != NULL))
DeactivateCell();
return true;
}
if (bLocalSelect && (GetSelectRowCount() || GetSelection() != NULL))
DeactivateCell();
return true;
}
}
}
return BrowseBox::PreNotify(rEvt);
}
bool EditBrowseBox::IsTabAllowed(bool) const
{
return true;
......@@ -745,6 +742,9 @@ namespace svt
case MouseNotifyEvent::LOSEFOCUS:
DetermineFocus( 0 );
break;
default:
break;
}
return BrowseBox::Notify(rEvt);
}
......
......@@ -68,17 +68,18 @@ namespace svt
if ( IsWindowOrChild( _rNEvt.GetWindow() ) )
DisplayURL( GetText() );
break;
default:
break;
}
return SvtURLBox::PreNotify(_rNEvt);
}
bool FileURLBox::Notify( NotifyEvent& _rNEvt )
{
switch ( _rNEvt.GetType() )
switch (_rNEvt.GetType() == MouseNotifyEvent::KEYINPUT)
{
case MouseNotifyEvent::KEYINPUT:
if ( ( GetSubEdit() == _rNEvt.GetWindow() )
&& ( KEY_RETURN == _rNEvt.GetKeyEvent()->GetKeyCode().GetCode() )
&& ( IsInDropDown() )
......@@ -88,13 +89,11 @@ namespace svt
DisplayURL( m_sPreservedText );
return nReturn;
}
break;
}
return SvtURLBox::Notify(_rNEvt);
}
} // namespace svt
......
......@@ -1225,58 +1225,53 @@ void AssignmentPersistentData::Commit()
return 0L;
}
bool AddressBookSourceDialog::PreNotify( NotifyEvent& _rNEvt )
{
switch (_rNEvt.GetType())
switch (_rNEvt.GetType() == MouseNotifyEvent::KEYINPUT)
{
case MouseNotifyEvent::KEYINPUT:
{
const KeyEvent* pKeyEvent = _rNEvt.GetKeyEvent();
sal_uInt16 nCode = pKeyEvent->GetKeyCode().GetCode();
bool bShift = pKeyEvent->GetKeyCode().IsShift();
bool bCtrl = pKeyEvent->GetKeyCode().IsMod1();
bool bAlt = pKeyEvent->GetKeyCode().IsMod2();
if (KEY_TAB == nCode)
{ // somebody pressed the tab key
if (!bAlt && !bCtrl && !bShift)
{ // it's really the only the key (no modifiers)
if (m_pImpl->pFields[m_pImpl->nLastVisibleListIndex]->HasChildPathFocus())
// the last of our visible list boxes has the focus
if (m_pImpl->nFieldScrollPos < m_pFieldScroller->GetRangeMax())
{ // we can still scroll down
sal_Int32 nNextFocusList = m_pImpl->nLastVisibleListIndex + 1 - 2;
// -> scroll down
implScrollFields(m_pImpl->nFieldScrollPos + 1, false, true);
// give the left control in the "next" line the focus
m_pImpl->pFields[nNextFocusList]->GrabFocus();
// return saying "have handled this"
return true;
}
}
else if (!bAlt && !bCtrl && bShift)
{ // it's shift-tab
if (m_pImpl->pFields[0]->HasChildPathFocus())
// our first list box has the focus
if (m_pImpl->nFieldScrollPos > 0)
{ // we can still scroll up
// -> scroll up
implScrollFields(m_pImpl->nFieldScrollPos - 1, false, true);
// give the right control in the "prebious" line the focus
m_pImpl->pFields[0 - 1 + 2]->GrabFocus();
// return saying "have handled this"
return true;
}
}
const KeyEvent* pKeyEvent = _rNEvt.GetKeyEvent();
sal_uInt16 nCode = pKeyEvent->GetKeyCode().GetCode();
bool bShift = pKeyEvent->GetKeyCode().IsShift();
bool bCtrl = pKeyEvent->GetKeyCode().IsMod1();
bool bAlt = pKeyEvent->GetKeyCode().IsMod2();
if (KEY_TAB == nCode)
{ // somebody pressed the tab key
if (!bAlt && !bCtrl && !bShift)
{ // it's really the only the key (no modifiers)
if (m_pImpl->pFields[m_pImpl->nLastVisibleListIndex]->HasChildPathFocus())
// the last of our visible list boxes has the focus
if (m_pImpl->nFieldScrollPos < m_pFieldScroller->GetRangeMax())
{ // we can still scroll down
sal_Int32 nNextFocusList = m_pImpl->nLastVisibleListIndex + 1 - 2;
// -> scroll down
implScrollFields(m_pImpl->nFieldScrollPos + 1, false, true);
// give the left control in the "next" line the focus
m_pImpl->pFields[nNextFocusList]->GrabFocus();
// return saying "have handled this"
return true;
}
}
else if (!bAlt && !bCtrl && bShift)
{ // it's shift-tab
if (m_pImpl->pFields[0]->HasChildPathFocus())
// our first list box has the focus
if (m_pImpl->nFieldScrollPos > 0)
{ // we can still scroll up
// -> scroll up
implScrollFields(m_pImpl->nFieldScrollPos - 1, false, true);
// give the right control in the "prebious" line the focus
m_pImpl->pFields[0 - 1 + 2]->GrabFocus();
// return saying "have handled this"
return true;
}
}
}
break;
}
return ModalDialog::PreNotify(_rNEvt);
}
} // namespace svt
......
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