Mercurial > dwindows
comparison android/DWindows.kt @ 2489:6c01b0132813
Android: Implement window and clipboard text setter and getters.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Fri, 30 Apr 2021 02:33:21 +0000 |
parents | 666af45f33b5 |
children | 62e124eecd82 |
comparison
equal
deleted
inserted
replaced
2488:666af45f33b5 | 2489:6c01b0132813 |
---|---|
1 package org.dbsoft.dwindows | 1 package org.dbsoft.dwindows |
2 | 2 |
3 import android.content.ClipData | |
4 import android.content.ClipboardManager | |
3 import android.content.DialogInterface | 5 import android.content.DialogInterface |
4 import android.content.pm.ActivityInfo | 6 import android.content.pm.ActivityInfo |
5 import android.os.Bundle | 7 import android.os.Bundle |
6 import android.os.Looper | 8 import android.os.Looper |
7 import android.text.method.PasswordTransformationMethod | 9 import android.text.method.PasswordTransformationMethod |
8 import android.util.Log | 10 import android.util.Log |
9 import android.view.Gravity | 11 import android.view.* |
10 import android.view.LayoutInflater | |
11 import android.view.View | |
12 import android.view.ViewGroup | |
13 import android.widget.* | 12 import android.widget.* |
14 import androidx.appcompat.app.AlertDialog | 13 import androidx.appcompat.app.AlertDialog |
15 import androidx.appcompat.app.AppCompatActivity | 14 import androidx.appcompat.app.AppCompatActivity |
16 import androidx.collection.SimpleArrayMap | 15 import androidx.collection.SimpleArrayMap |
16 import androidx.core.content.res.TypedArrayUtils.getText | |
17 import androidx.fragment.app.Fragment | 17 import androidx.fragment.app.Fragment |
18 import androidx.fragment.app.FragmentActivity | 18 import androidx.fragment.app.FragmentActivity |
19 import androidx.fragment.app.FragmentManager | 19 import androidx.fragment.app.FragmentManager |
20 import androidx.fragment.app.FragmentStatePagerAdapter | 20 import androidx.fragment.app.FragmentStatePagerAdapter |
21 import androidx.recyclerview.widget.RecyclerView | 21 import androidx.recyclerview.widget.RecyclerView |
121 fun windowSetEnabled(window: View, state: Boolean) | 121 fun windowSetEnabled(window: View, state: Boolean) |
122 { | 122 { |
123 window.setEnabled(state) | 123 window.setEnabled(state) |
124 } | 124 } |
125 | 125 |
126 fun windowSetText(window: View, text: String) | |
127 { | |
128 if(window is TextView) | |
129 { | |
130 var textview: TextView = window as TextView | |
131 textview.text = text | |
132 } | |
133 else if(window is Button) | |
134 { | |
135 var button: Button = window as Button | |
136 button.text = text | |
137 } | |
138 else if(window is LinearLayout) | |
139 { | |
140 // TODO: Make sure this is actually the top-level layout, not just a box | |
141 this.title = text | |
142 } | |
143 } | |
144 | |
145 fun windowGetText(window: View): String? | |
146 { | |
147 if(window is TextView) | |
148 { | |
149 var textview: TextView = window as TextView | |
150 return textview.text.toString() | |
151 } | |
152 else if(window is Button) | |
153 { | |
154 var button: Button = window as Button | |
155 return button.text.toString() | |
156 } | |
157 else if(window is LinearLayout) | |
158 { | |
159 // TODO: Make sure this is actually the top-level layout, not just a box | |
160 return this.title.toString() | |
161 } | |
162 return null | |
163 } | |
164 | |
165 fun clipboardGetText(): String | |
166 { | |
167 var cm: ClipboardManager = getSystemService(CLIPBOARD_SERVICE) as ClipboardManager | |
168 var clipdata = cm.primaryClip | |
169 | |
170 if(clipdata != null && clipdata.itemCount > 0) | |
171 { | |
172 return clipdata.getItemAt(0).coerceToText(this).toString() | |
173 } | |
174 return "" | |
175 } | |
176 | |
177 fun clipboardSetText(text: String) | |
178 { | |
179 var cm: ClipboardManager = getSystemService(CLIPBOARD_SERVICE) as ClipboardManager | |
180 var clipdata = ClipData.newPlainText("text", text) | |
181 | |
182 cm.setPrimaryClip(clipdata) | |
183 } | |
184 | |
126 fun boxNew(type: Int, pad: Int): LinearLayout | 185 fun boxNew(type: Int, pad: Int): LinearLayout |
127 { | 186 { |
128 val box = LinearLayout(this) | 187 val box = LinearLayout(this) |
129 var dataArrayMap = SimpleArrayMap<String, Long>() | 188 var dataArrayMap = SimpleArrayMap<String, Long>() |
130 | 189 |