1cdf0e10cSrcweir<?xml version="1.0" encoding="UTF-8"?> 2cdf0e10cSrcweir<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> 3*3e02b54dSAndrew Rist<!--*********************************************************** 4*3e02b54dSAndrew Rist * 5*3e02b54dSAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 6*3e02b54dSAndrew Rist * or more contributor license agreements. See the NOTICE file 7*3e02b54dSAndrew Rist * distributed with this work for additional information 8*3e02b54dSAndrew Rist * regarding copyright ownership. The ASF licenses this file 9*3e02b54dSAndrew Rist * to you under the Apache License, Version 2.0 (the 10*3e02b54dSAndrew Rist * "License"); you may not use this file except in compliance 11*3e02b54dSAndrew Rist * with the License. You may obtain a copy of the License at 12*3e02b54dSAndrew Rist * 13*3e02b54dSAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 14*3e02b54dSAndrew Rist * 15*3e02b54dSAndrew Rist * Unless required by applicable law or agreed to in writing, 16*3e02b54dSAndrew Rist * software distributed under the License is distributed on an 17*3e02b54dSAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 18*3e02b54dSAndrew Rist * KIND, either express or implied. See the License for the 19*3e02b54dSAndrew Rist * specific language governing permissions and limitations 20*3e02b54dSAndrew Rist * under the License. 21*3e02b54dSAndrew Rist * 22*3e02b54dSAndrew Rist ***********************************************************--> 23cdf0e10cSrcweir<script:module xmlns:script="http://openoffice.org/2000/script" script:name="DlgControl" script:language="StarBasic">Option Explicit 24cdf0e10cSrcweir 25cdf0e10cSrcweirDim CalBitmap As Object 26cdf0e10cSrcweirPublic bSelectByMouseMove as Boolean 27cdf0e10cSrcweirPublic fHeightCorrFactor as Double 28cdf0e10cSrcweirPublic fWidthCorrFactor as Double 29cdf0e10cSrcweir 30cdf0e10cSrcweir 31cdf0e10cSrcweir 32cdf0e10cSrcweirSub Main() 33cdf0e10cSrcweir Call CalAutopilotTable() 34cdf0e10cSrcweirEnd Sub 35cdf0e10cSrcweir 36cdf0e10cSrcweir 37cdf0e10cSrcweirSub CalcmdDeleteSelect() 38cdf0e10cSrcweirDim MsgBoxResult as Integer 39cdf0e10cSrcweirDim bDoEnable as Boolean 40cdf0e10cSrcweirDim iSel as Integer 41cdf0e10cSrcweirDim MaxIndex as Integer 42cdf0e10cSrcweir If Ubound(DlgCalModel.lstOwnData.SelectedItems()) > -1 Then 43cdf0e10cSrcweir MsgBoxResult = MsgBox(cCalSubcmdDeleteSelect_DeleteSelEntry$, 4+32, cCalSubcmdDeleteSelect_DeleteSelEntryTitle$) 44cdf0e10cSrcweir If MsgBoxResult = 6 Then 45cdf0e10cSrcweir iSel = DlgCalModel.lstOwnData.SelectedItems(0) 46cdf0e10cSrcweir DlgCalModel.lstOwnData.StringItemList() = RemoveSelected(DlgCalModel.lstOwnData) 47cdf0e10cSrcweir ' Flag to store the new data 48cdf0e10cSrcweir bCalOwnDataChanged = True 49cdf0e10cSrcweir bDoEnable = Ubound(DlgCalModel.lstOwnData.StringItemList()) > -1 50cdf0e10cSrcweir DlgCalModel.cmdDelete.Enabled = bDoEnable 51cdf0e10cSrcweir If bDoEnable Then 52cdf0e10cSrcweir MaxIndex = Ubound(DlgCalModel.lstOwnData.StringItemList()) 53cdf0e10cSrcweir If iSel > MaxIndex Then 54cdf0e10cSrcweir iSel = MaxIndex 55cdf0e10cSrcweir End If 56cdf0e10cSrcweir DlgCalendar.GetControl("lstOwnData").SelectItemPos(iSel, True) 57cdf0e10cSrcweir CalUpdateNewEventFrame() 58cdf0e10cSrcweir Else 59cdf0e10cSrcweir Call CalClearInputMask() 60cdf0e10cSrcweir End If 61cdf0e10cSrcweir End If 62cdf0e10cSrcweir End If 63cdf0e10cSrcweirEnd Sub 64cdf0e10cSrcweir 65cdf0e10cSrcweir 66cdf0e10cSrcweirSub CalSaveOwnEventControls() 67cdf0e10cSrcweir With DlgCalModel 68cdf0e10cSrcweir .txtOwnEventDay.Tag = .txtOwnEventDay.Value 69cdf0e10cSrcweir .txtOwnEventMonth.Tag = .txtOwnEventMonth.Text 70cdf0e10cSrcweir End With 71cdf0e10cSrcweirEnd Sub 72cdf0e10cSrcweir 73cdf0e10cSrcweir 74cdf0e10cSrcweirSub CalMouseMoved(aEvent as object) 75cdf0e10cSrcweirDim ListIndex as Integer 76cdf0e10cSrcweir Select Case sCurLangLocale 77cdf0e10cSrcweir Case cLANGUAGE_GERMAN 78cdf0e10cSrcweir If bSelectByMouseMove Then 79cdf0e10cSrcweir' oStatusLine.SetText("Position: " & aEvent.X & " ; " & aEvent.Y) 80cdf0e10cSrcweir ListIndex = CalGetGermanLandAtMousePos(CInt(aEvent.X/fWidthCorrFactor), CInt(aEvent.Y/fHeightCorrFactor)) 81cdf0e10cSrcweir DlgCalendar.GetControl("lstHolidays").SelectItemPos(ListIndex, True) 82cdf0e10cSrcweir End If 83cdf0e10cSrcweir End Select 84cdf0e10cSrcweirEnd Sub 85cdf0e10cSrcweir 86cdf0e10cSrcweir 87cdf0e10cSrcweirSub SelectState(aEvent as Object) 88cdf0e10cSrcweirDim ListIndex as Integer 89cdf0e10cSrcweir Select Case sCurLangLocale 90cdf0e10cSrcweir Case cLANGUAGE_GERMAN 91cdf0e10cSrcweir If aEvent.ClickCount >= 1 Then 92cdf0e10cSrcweir ListIndex = CalGetGermanLandAtMousePos(CInt(aEvent.X/fWidthCorrFactor), CInt(aEvent.Y/fHeightCorrFactor)) 93cdf0e10cSrcweir DlgCalendar.GetControl("lstHolidays").SelectItemPos(ListIndex, True) 94cdf0e10cSrcweir bSelectByMouseMove = False 95cdf0e10cSrcweir End If 96cdf0e10cSrcweir End Select 97cdf0e10cSrcweirEnd Sub 98cdf0e10cSrcweir 99cdf0e10cSrcweir 100cdf0e10cSrcweirSub MouseLeavesImage 101cdf0e10cSrcweir bSelectbyMouseMove = True 102cdf0e10cSrcweirEnd Sub 103cdf0e10cSrcweir 104cdf0e10cSrcweir 105cdf0e10cSrcweirSub CalClearInputMask() 106cdf0e10cSrcweirDim NullList() as String 107cdf0e10cSrcweir With DlgCalModel 108cdf0e10cSrcweir .txtEvent.Text = "" 109cdf0e10cSrcweir .txtOwnEventDay.SetPropertyToDefault("Value") 110cdf0e10cSrcweir .cmdInsert.Enabled = False 111cdf0e10cSrcweir End With 112cdf0e10cSrcweir If Ubound(DlgCalModel.lstOwnData.StringItemList()) > -1 Then 113cdf0e10cSrcweir If Ubound(DlgCalModel.lstOwnData.SelectedItems()) = -1 Then 114cdf0e10cSrcweir DlgCalendar.GetControl("lstOwnData").SelectItemPos(0,True) 115cdf0e10cSrcweir CalUpdateNewEventFrame() 116cdf0e10cSrcweir End If 117cdf0e10cSrcweir End If 118cdf0e10cSrcweirEnd Sub 119cdf0e10cSrcweir 120cdf0e10cSrcweir 121cdf0e10cSrcweirSub CalmdSwitchOwnDataOrGeneral() 122cdf0e10cSrcweir If DlgCalModel.Step = 1 Then 123cdf0e10cSrcweir DlgCalModel.Step = 2 124cdf0e10cSrcweir DlgCalModel.cmdOwnData.Label = cCalSubcmdSwitchOwnDataOrGeneral_Back$ 125cdf0e10cSrcweir DlgCalModel.cmdInsert.Enabled = DlgCalModel.txtEvent.Text <> "" 126cdf0e10cSrcweir' ToggleYearBox() 127cdf0e10cSrcweir Else 128cdf0e10cSrcweir dim bla as boolean 129cdf0e10cSrcweir DlgCalModel.Step = 1 130cdf0e10cSrcweir DlgCalendar.GetControl("lblHolidays").Visible = sCurLangLocale = cLANGUAGE_GERMAN 131cdf0e10cSrcweir DlgCalendar.GetControl("lstHolidays").Visible = sCurLangLocale = cLANGUAGE_GERMAN 132cdf0e10cSrcweir DlgCalModel.cmdOwnData.Label = cCalSubcmdSwitchOwnDataOrGeneral_OwnData$ 133cdf0e10cSrcweir End If 134cdf0e10cSrcweirEnd Sub 135cdf0e10cSrcweir 136cdf0e10cSrcweir 137cdf0e10cSrcweirSub ToggleInsertButton() 138cdf0e10cSrcweir DlgCalModel.cmdInsert.Enabled = LTrim(DlgCalModel.txtEvent.Text) <> "" 139cdf0e10cSrcweirEnd Sub 140cdf0e10cSrcweir 141cdf0e10cSrcweir 142cdf0e10cSrcweirSub CalUpdateNewEventFrame() 143cdf0e10cSrcweirDim bDoEnable as Boolean 144cdf0e10cSrcweirDim sSelectedItem 145cdf0e10cSrcweirDim ListIndex as Integer 146cdf0e10cSrcweirDim MaxSelIndex as Integer 147cdf0e10cSrcweirDim CurEvMonth as Integer 148cdf0e10cSrcweirDim CurEvDay as Integer 149cdf0e10cSrcweirDim DateStr as String 150cdf0e10cSrcweir bDoEnable = False 151cdf0e10cSrcweir With DlgCalModel 152cdf0e10cSrcweir MaxSelIndex = Ubound(DlgCalModel.lstOwnData.SelectedItems()) 153cdf0e10cSrcweir If MaxSelIndex > -1 Then 154cdf0e10cSrcweir ListIndex = .lstOwnData.SelectedItems(MaxSelIndex) 155cdf0e10cSrcweir .txtEvent.Text = CalGetNameofEvent(ListIndex) 156cdf0e10cSrcweir If GetSelectedDateUnits(CurEvDay, CurEvMonth, ListIndex) <> SBDATEUNDEFINED Then 157cdf0e10cSrcweir .txtOwnEventDay.Value = CurEvDay 158cdf0e10cSrcweir DlgCalendar.GetControl("lstOwnEventMonth").SelectItemPos(CurEvMonth-1, True) 159cdf0e10cSrcweir .cmdDelete.Enabled = True 160cdf0e10cSrcweir .cmdInsert.Enabled = True 161cdf0e10cSrcweir Else 162cdf0e10cSrcweir Call CalClearInputMask() 163cdf0e10cSrcweir .cmdDelete.Enabled = True 164cdf0e10cSrcweir End If 165cdf0e10cSrcweir End If 166cdf0e10cSrcweir End With 167cdf0e10cSrcweirEnd Sub 168*3e02b54dSAndrew Rist</script:module> 169