Platforms to show: All Mac Windows Linux Cross-Platform

/MacClassic/Keychain/Keychain Test


Required plugins for this example: MBS MacClassic Plugin

You find this example project in your Plugins Download as a Xojo project file within the examples folder: /MacClassic/Keychain/Keychain Test

This example is the version from Mon, 7th Apr 2013.

Project "Keychain Test.xojo_binary_project"
Class App Inherits Application
Const kEditClear = "&Delete"
Const kFileQuit = "&Quit"
Const kFileQuitShortcut = ""
End Class
Class Window1 Inherits Window
Control GroupBox1 Inherits GroupBox
ControlInstance GroupBox1 Inherits GroupBox
End Control
Control EditField1 Inherits TextField
ControlInstance EditField1 Inherits TextField
End Control
Control StaticText1 Inherits Label
ControlInstance StaticText1 Inherits Label
End Control
Control StaticText2 Inherits Label
ControlInstance StaticText2 Inherits Label
End Control
Control EditField2 Inherits TextField
ControlInstance EditField2 Inherits TextField
End Control
Control PushButton1 Inherits PushButton
ControlInstance PushButton1 Inherits PushButton
EventHandler Sub Action() dim AccountName as string = EditField1.text dim ServiceName as string = "RBTest" dim Password as string = EditField2.text dim keychain as KeychainMBS = nil // default dim i as KeyChainItemMBS = KeyChainManagerMBS.addGenericPassword(keychain, ServiceName, AccountName, Password) if i<>nil then MsgBox "Password added to current keychain." else MsgBox "Could not add password to keychain. Maybe no Keychain software installed or not enough permissions to create an entry in the keychain (e.g. booted from CD)" end if End EventHandler
End Control
Control GroupBox2 Inherits GroupBox
ControlInstance GroupBox2 Inherits GroupBox
End Control
Control EditField3 Inherits TextField
ControlInstance EditField3 Inherits TextField
End Control
Control StaticText3 Inherits Label
ControlInstance StaticText3 Inherits Label
End Control
Control StaticText4 Inherits Label
ControlInstance StaticText4 Inherits Label
End Control
Control PushButton2 Inherits PushButton
ControlInstance PushButton2 Inherits PushButton
EventHandler Sub Action() dim AccountName as string = EditField3.text dim ServiceName as string = "RBTest" dim keychain as KeychainMBS = nil // default dim password as MemoryBlock dim i as KeychainItemMBS = KeychainManagerMBS.FindGenericPassword(keychain, ServiceName, AccountName, password) if i<>nil then dim s as string = DefineEncoding(Password, encodings.UTF8) StaticText5.text = s else StaticText5.text="Password not found!" end if End EventHandler
End Control
Control StaticText5 Inherits Label
ControlInstance StaticText5 Inherits Label
End Control
Control GroupBox3 Inherits GroupBox
ControlInstance GroupBox3 Inherits GroupBox
End Control
Control PushButton3 Inherits PushButton
ControlInstance PushButton3 Inherits PushButton
EventHandler Sub Action() dim items() as KeychainItemMBS = KeyChainManagerMBS.AllItems(nil, KeyChainManagerMBS.kSecGenericPasswordItemClass) for each item as KeychainItemMBS in items if item.Service = "RBTest" then listbox1.AddRow item.Account end if next End EventHandler
End Control
Control Listbox1 Inherits ListBox
ControlInstance Listbox1 Inherits ListBox
EventHandler Sub DoubleClick() dim AccountName as string = me.cell(me.listindex,0) dim ServiceName as string = "RBTest" dim keychain as KeychainMBS = nil // default dim password as MemoryBlock dim i as KeychainItemMBS = KeychainManagerMBS.FindGenericPassword(keychain, ServiceName, AccountName, password) if i<>nil then dim s as string = DefineEncoding(Password, encodings.UTF8) MsgBox s else MsgBox "Password not found!" end if End EventHandler
End Control
End Class
MenuBar MenuBar1
MenuItem FileMenu = "&File"
MenuItem FileQuit = "#App.kFileQuit"
MenuItem EditMenu = "&Edit"
MenuItem EditUndo = "&Undo"
MenuItem UntitledMenu1 = "-"
MenuItem EditCut = "Cu&t"
MenuItem EditCopy = "&Copy"
MenuItem EditPaste = "&Paste"
MenuItem EditClear = "#App.kEditClear"
MenuItem UntitledMenu0 = "-"
MenuItem EditSelectAll = "Select &All"
End MenuBar
End Project

See also:

The items on this page are in the following plugins: MBS MacClassic Plugin.


The biggest plugin in space...