Skip to content

Commit b6a6d9d

Browse files
Merge branch 'develop' into feature/circle_image_view
2 parents a277daf + 0dfbfb7 commit b6a6d9d

File tree

7 files changed

+160
-22
lines changed

7 files changed

+160
-22
lines changed

.idea/codeStyles/Project.xml

Lines changed: 109 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/gradle.xml

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
// Top-level build file where you can add configuration options common to all sub-projects/modules.
22

33
buildscript {
4-
ext.kotlin_version = '1.3.31'
4+
ext.kotlin_version = '1.3.61'
55
repositories {
66
google()
77
jcenter()
88

99
}
1010
dependencies {
11-
classpath 'com.android.tools.build:gradle:3.4.1'
11+
classpath 'com.android.tools.build:gradle:3.6.0'
1212
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
1313
// NOTE: Do not place your application dependencies here; they belong
1414
// in the individual module build.gradle files
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
#Sat May 18 15:43:59 MSK 2019
1+
#Mon Mar 02 10:05:02 MSK 2020
22
distributionBase=GRADLE_USER_HOME
33
distributionPath=wrapper/dists
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists
6-
distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
6+
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip

omegaviwslibs/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@ android {
3030
dependencies {
3131
implementation fileTree(dir: 'libs', include: ['*.jar'])
3232
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
33-
implementation 'com.github.Omega-R.OmegaTypes:omegatypes:1.0.0'
33+
implementation 'com.github.Omega-R.OmegaTypes:omegatypes:2.0.1'
3434
implementation 'de.hdodenhof:circleimageview:3.0.0'
3535

36-
implementation 'androidx.appcompat:appcompat:1.0.2'
36+
implementation 'androidx.appcompat:appcompat:1.1.0'
3737

3838
testImplementation 'junit:junit:4.12'
3939
androidTestImplementation 'androidx.test:runner:1.2.0'

omegaviwslibs/src/main/java/com/omega_r/libs/views/OmegaTextView.kt

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,12 @@ package com.omega_r.libs.views
33
import android.annotation.SuppressLint
44
import android.content.Context
55
import android.content.res.Resources
6-
import android.content.res.TypedArray
76
import android.graphics.Typeface
8-
import android.os.Build
97
import android.util.AttributeSet
108
import androidx.appcompat.widget.AppCompatTextView
119
import androidx.appcompat.widget.TintTypedArray
12-
import androidx.core.content.res.ResourcesCompat
1310
import com.omega_r.libs.omegatypes.*
1411

15-
1612
/**
1713
* Created by Anton Knyazev on 18.05.2019.
1814
*/
@@ -60,6 +56,7 @@ open class OmegaTextView @JvmOverloads constructor(
6056
}
6157

6258
private val startTextStyle = Style()
59+
private val middleTextStyle = Style()
6360
private val endTextStyle = Style()
6461

6562
private var initData: Boolean = true
@@ -74,7 +71,11 @@ open class OmegaTextView @JvmOverloads constructor(
7471
}
7572

7673
@SuppressLint("RestrictedApi")
77-
private fun initWithAttributes(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = android.R.attr.textViewStyle) {
74+
private fun initWithAttributes(
75+
context: Context,
76+
attrs: AttributeSet? = null,
77+
defStyleAttr: Int = android.R.attr.textViewStyle
78+
) {
7879
val a = TintTypedArray.obtainStyledAttributes(context, attrs, R.styleable.OmegaTextView, defStyleAttr, 0)
7980

8081
for (i in 0 until a.indexCount) {
@@ -88,24 +89,36 @@ open class OmegaTextView @JvmOverloads constructor(
8889
R.styleable.OmegaTextView_startTextSize -> {
8990
startTextStyle.textSize = Size.from(a.getDimension(attr, 0f), Size.Unit.PX)
9091
}
92+
R.styleable.OmegaTextView_middleTextSize -> {
93+
middleTextStyle.textSize = Size.from(a.getDimension(attr, 0f), Size.Unit.PX)
94+
}
9195
R.styleable.OmegaTextView_endTextSize -> {
9296
endTextStyle.textSize = Size.from(a.getDimension(attr, 0f), Size.Unit.PX)
9397
}
9498
R.styleable.OmegaTextView_startTextStyle -> {
9599
startTextStyle.style = a.getInt(attr, STYLE_NONE)
96100
}
101+
R.styleable.OmegaTextView_middleTextStyle -> {
102+
middleTextStyle.style = a.getInt(attr, STYLE_NONE)
103+
}
97104
R.styleable.OmegaTextView_endTextStyle -> {
98105
endTextStyle.style = a.getInt(attr, STYLE_NONE)
99106
}
100107
R.styleable.OmegaTextView_startTextColor -> {
101108
startTextStyle.textColor = a.getColor(attr, startTextStyle.textColor)
102109
}
110+
R.styleable.OmegaTextView_middleTextColor -> {
111+
middleTextStyle.textColor = a.getColor(attr, middleTextStyle.textColor)
112+
}
103113
R.styleable.OmegaTextView_endTextColor -> {
104114
endTextStyle.textColor = a.getColor(attr, endTextStyle.textColor)
105115
}
106116
R.styleable.OmegaTextView_startTextFontFamily -> {
107117
obtainFont(intoStyle = startTextStyle, typedArray = a, attr = attr)
108118
}
119+
R.styleable.OmegaTextView_middleTextFontFamily -> {
120+
obtainFont(intoStyle = middleTextStyle, typedArray = a, attr = attr)
121+
}
109122
R.styleable.OmegaTextView_endTextFontFamily -> {
110123
obtainFont(intoStyle = endTextStyle, typedArray = a, attr = attr)
111124
}
@@ -152,7 +165,11 @@ open class OmegaTextView @JvmOverloads constructor(
152165

153166
private fun updateAllText(force: Boolean = false) {
154167
if (initData || force) {
155-
val allText = (startText + startTextStyle) + startSpaceText + text + endSpaceText + (endText + endTextStyle)
168+
val allText = (startText + startTextStyle) +
169+
startSpaceText +
170+
(text + middleTextStyle) +
171+
endSpaceText +
172+
(endText + endTextStyle)
156173
super.setText(allText?.getCharSequence(context), BufferType.NORMAL)
157174
}
158175
}
@@ -211,7 +228,7 @@ open class OmegaTextView @JvmOverloads constructor(
211228
}
212229

213230
if (textColor != 0) {
214-
result += TextStyle.color(textColor)
231+
result += TextStyle.color(Color.fromInt(textColor))
215232
}
216233

217234
fontTypeface?.let {

omegaviwslibs/src/main/res/values/attrs.xml

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,31 +8,40 @@
88
<declare-styleable name="OmegaTextView">
99
<attr name="startText" format="string" localization="suggested"/>
1010
<attr name="endText" format="string" localization="suggested"/>
11-
<attr name="startTextSize" format="dimension" />
12-
<attr name="endTextSize" format="dimension" />
11+
<attr name="startTextSize" format="dimension"/>
12+
<attr name="middleTextSize" format="dimension"/>
13+
<attr name="endTextSize" format="dimension"/>
1314

14-
<attr name="startTextStyle" format="flags" >
15+
<attr name="startTextStyle" format="flags">
1516
<flag name="bold" value="1"/>
1617
<flag name="italic" value="2"/>
1718
<flag name="underline" value="4"/>
1819
<flag name="strikethrough" value="8"/>
1920
</attr>
2021

21-
<attr name="endTextStyle" format="flags" >
22-
<flag name="none" value="0"/>
22+
<attr name="middleTextStyle" format="flags">
23+
<flag name="bold" value="1"/>
24+
<flag name="italic" value="2"/>
25+
<flag name="underline" value="4"/>
26+
<flag name="strikethrough" value="8"/>
27+
</attr>
28+
29+
<attr name="endTextStyle" format="flags">
2330
<flag name="bold" value="1"/>
2431
<flag name="italic" value="2"/>
2532
<flag name="underline" value="4"/>
2633
<flag name="strikethrough" value="8"/>
2734
</attr>
2835

2936
<attr name="startTextColor" format="color"/>
37+
<attr name="middleTextColor" format="color"/>
3038
<attr name="endTextColor" format="color"/>
31-
<attr name="startTextFontFamily" />
32-
<attr name="endTextFontFamily" />
39+
<attr name="startTextFontFamily" format="string|reference"/>
40+
<attr name="middleTextFontFamily" format="string|reference"/>
41+
<attr name="endTextFontFamily" format="string|reference"/>
3342

34-
<attr name="startDelimiter" format="string" />
35-
<attr name="endDelimiter" format="string" />
43+
<attr name="startDelimiter" format="string"/>
44+
<attr name="endDelimiter" format="string"/>
3645

3746
</declare-styleable>
3847

0 commit comments

Comments
 (0)