https://kotlinlang.org logo
Join the conversationJoin Slack
Channels
100daysofcode
100daysofkotlin
100daysofkotlin-2021
advent-of-code
aem
ai
alexa
algeria
algolialibraries
amsterdam
android
android-architecture
android-databinding
android-studio
androidgithubprojects
androidthings
androidx
androidx-xprocessing
anime
anko
announcements
apollo-kotlin
appintro
arabic
argentina
arkenv
arksemdevteam
armenia
arrow
arrow-contributors
arrow-meta
ass
atlanta
atm17
atrium
austin
australia
austria
awesome-kotlin
ballast
bangladesh
barcelona
bayarea
bazel
beepiz-libraries
belgium
berlin
big-data
books
boston
brazil
brikk
budapest
build
build-tools
bulgaria
bydgoszcz
cambodia
canada
carrat
carrat-dev
carrat-feed
chicago
chile
china
chucker
cincinnati-user-group
cli
clikt
cloudfoundry
cn
cobalt
code-coverage
codeforces
codemash-precompiler
codereview
codingame
codingconventions
coimbatore
collaborations
colombia
colorado
communities
competitive-programming
competitivecoding
compiler
compose
compose-android
compose-desktop
compose-hiring
compose-ios
compose-mp
compose-ui-showcase
compose-wear
compose-web
connect-audit-events
corda
cork
coroutines
couchbase
coursera
croatia
cryptography
cscenter-course-2016
cucumber-bdd
cyprus
czech
dagger
data2viz
databinding
datascience
dckotlin
debugging
decompose
decouple
denmark
deprecated
detekt
detekt-hint
dev-core
dfw
docs-revamped
dokka
domain-driven-design
doodle
dsl
dublin
dutch
eap
eclipse
ecuador
edinburgh
education
effective-kotlin
effectivekotlin
emacs
embedded-kotlin
estatik
event21-community-content
events
exposed
failgood
fb-internal-demo
feed
firebase
flow
fluid-libraries
forkhandles
forum
fosdem
fp-in-kotlin
framework-elide
freenode
french
fritz2
fuchsia
functional
funktionale
gamedev
ge-kotlin
general-advice
georgia
geospatial
german-lang
getting-started
github-workflows-kt
glance
godot-kotlin
google-io
gradle
graphic
graphkool
graphql
graphql-kotlin
graviton-browser
greece
grpc
gsoc
gui
hackathons
hacktoberfest
hamburg
hamkrest
helios
helsinki
hexagon
hibernate
hikari-cp
hire-me
hiring
hongkong
hoplite
http4k
hungary
hyderabad
image-processing
india
indonesia
inkremental
intellij
intellij-plugins
intellij-tricks
internships
introduce-yourself
io
ios
iran
israel
istanbulcoders
italian
jackson-kotlin
jadx
japanese
jasync-sql
java-to-kotlin-refactoring
javadevelopers
javafx
javalin
javascript
jdbi
jhipster-kotlin
jobsworldwide
jpa
jshdq
juul-libraries
jvm-ir-backend-feedback
jxadapter
k2-early-adopters
kaal
kafka
kakao
kalasim
kapt
karachi
karg
karlsruhe
kash_shell
kaskade
kbuild
kdbc
kgen-doc-tools
kgraphql
kinta
klaxon
klock
kloudformation
kmdc
kmm-español
kmongo
knbt
knote
koalaql
koans
kobalt
kobweb
kodein
kodex
kohesive
koin
koin-dev
komapper
kondor-json
kong
kontent
kontributors
korau
korean
korge
korim
korio
korlibs
korte
kotest
kotest-contributors
kotless
kotlick
kotlin-asia
kotlin-beam
kotlin-by-example
kotlin-csv
kotlin-data-storage
kotlin-foundation
kotlin-fuel
kotlin-in-action
kotlin-inject
kotlin-latam
kotlin-logging
kotlin-multiplatform-contest
kotlin-mumbai
kotlin-native
kotlin-pakistan
kotlin-plugin
kotlin-pune
kotlin-roadmap
kotlin-samples
kotlin-sap
kotlin-serbia
kotlin-spark
kotlin-szeged
kotlin-website
kotlinacademy
kotlinbot
kotlinconf
kotlindl
kotlinforbeginners
kotlingforbeginners
kotlinlondon
kotlinmad
kotlinprogrammers
kotlinsu
kotlintest
kotlintest-devs
kotlintlv
kotlinultimatechallenge
kotlinx-datetime
kotlinx-files
kotlinx-html
kotrix
kotson
kovenant
kprompt
kraph
krawler
kroto-plus
ksp
ktcc
ktfmt
ktlint
ktor
ktp
kubed
kug-leads
kug-torino
kvision
kweb
lambdaworld_cadiz
lanark
language-evolution
language-proposals
latvia
leakcanary
leedskotlinusergroup
lets-have-fun
libgdx
libkgd
library-development
linkeddata
lithuania
london
losangeles
lottie
love
lychee
macedonia
machinelearningbawas
madrid
malaysia
mathematics
meetkotlin
memes
meta
metro-detroit
mexico
miami
micronaut
minnesota
minutest
mirror
mockk
moko
moldova
monsterpuzzle
montreal
moonbean
morocco
motionlayout
mpapt
mu
multiplatform
mumbai
munich
mvikotlin
mvrx
myndocs-oauth2-server
naming
navigation-architecture-component
nepal
new-mexico
new-zealand
newname
nigeria
nodejs
norway
npm-publish
nyc
oceania
ohio-kotlin-users
oldenburg
oolong
opensource
orbit-mvi
osgi
otpisani
package-search
pakistan
panamá
pattern-matching
pbandk
pdx
peru
philippines
phoenix
pinoy
pocketgitclient
polish
popkorn
portugal
practical-functional-programming
proguard
prozis-android-backup
pyhsikal
python
python-contributors
quasar
random
re
react
reaktive
realm
realworldkotlin
reductor
reduks
redux
redux-kotlin
refactoring-to-kotlin
reflect
refreshversions
reports
result
rethink
revolver
rhein-main
rocksdb
romania
room
rpi-pico
rsocket
russian
russian_feed
russian-kotlinasfirst
rx
rxjava
san-diego
science
scotland
scrcast
scrimage
script
scripting
seattle
serialization
server
sg-user-group
singapore
skia-wasm-interop-temp
skrape-it
slovak
snake
sofl-user-group
southafrica
spacemacs
spain
spanish
speaking
spek
spin
splitties
spotify-mobius
spring
spring-security
squarelibraries
stackoverflow
stacks
stayhungrystayfoolish
stdlib
stlouis
strife-discord-lib
strikt
students
stuttgart
sudan
swagger-gradle-codegen
swarm
sweden
swing
swiss-user-group
switzerland
talking-kotlin
tallinn
tampa
teamcity
tegal
tempe
tensorflow
terminal
test
testing
testtestest
texas
tgbotapi
thailand
tornadofx
touchlab-tools
training
tricity-kotlin-user-group
trójmiasto
truth
tunisia
turkey
turkiye
twitter-feed
uae
udacityindia
uk
ukrainian
uniflow
unkonf
uruguay
utah
uuid
vancouver
vankotlin
vertx
videos
vienna
vietnam
vim
vkug
vuejs
web-mpp
webassembly
webrtc
wimix_sentry
wwdc
zircon
Powered by Linen
tornadofx
  • c

    carlw

    02/12/2017, 6:28 PM
    Maybe jack of all trades (master of none)? I'm speaking of English expressions and not tornadofx @hastebrot
    h
    r
    • 3
    • 2
  • n

    nimakro

    03/08/2017, 3:28 PM
    Is there a reason why I have to call the
    addPseudoClass
    methode with a
    String
    instead of
    addPseudoClass(ApplicationStyle.somePseudoClass)
    which works for normal css classes
    addClass(ApplicationStyle.someStyle)
    ? Second question I defined a pseudoClass in my
    ApplicationStyle
    class and add the pseudoclass with
    addPseudoClass
    to a
    treecell
    which should change the background color but nothing happends, this is the code (I shortened it):
    // In the init methode do addClass(view)
    cellFormat {
                            when (it) {
                                 is SomeClass -> {
                                    addPseudoClass("hasItem")
                                    text = it.toString()
                                    }
                                else -> {
                                    removePseudoClass("hasItem")
                                    text = it.toString()
                                }
                            }
                   }
    And that's the css
    view {
                treeCell {
                    backgroundInsets += box(1.5.px, 0.px, 1.5.px, 0.px)
                    fontSize = 12.px
    
                }
                and(hasItem) {
                    backgroundColor += c("#F7F7F7")
                }
            }
    r
    • 2
    • 2
  • n

    nimakro

    03/08/2017, 4:29 PM
    so I figured out what the problem is I have to call
    addPseudoClass("has-item")
    I guess the default behaviour is to separate
    hasItem
    with
    has-item
  • e

    edvin

    03/14/2017, 6:36 PM
    @Ruckus What about you. I think you have a firmer grasp on them than me. Would you like to give it a shot for
    asyncItems
    ? We could discuss and try different approaches if needed.
    r
    • 2
    • 2
  • r

    Ruckus

    03/14/2017, 6:49 PM
    @carlw When you hover over a comment, there's a "Start a thread" option
    c
    • 2
    • 3
  • e

    edvin

    03/15/2017, 6:10 PM
    @dominik.petho I saw your previous comment now, sorry 🙂 Is there any solution for scrolling with pan gesture using DataGrid - I will see if this is something I can debug blindly or maybe I need a Pi and a touch screen to fix this. What kind of screen do you have?
    d
    • 2
    • 1
  • c

    carlw

    03/16/2017, 2:16 AM
    I'm still coming up to speed, so I'll take general Kotlin and TornadoFX comments. There are a few ways to reorganize this -- like pushing the login code into an event hander -- but I think they'll all need a lot of nesting. What I hope to see with coroutines is a code organization closer to the 4-step pseudo code where what is asynchronous and what is on the FX thread isn't noticable. /end
    e
    e
    +2
    • 5
    • 20
  • e

    edvin

    03/16/2017, 3:38 PM
    @dominik.petho I just ordered a Surface Pro to be able to debug the datagrid issue. It will take about a week before I get it though.
    👍 3
    d
    • 2
    • 2
  • b

    borboss

    03/20/2017, 12:47 PM
    @thomasnield Thing that could be better, imho - I’m not a big expert, but maybe making the whole design something more of MVVM would do good. You see - we have bindings, which are used in the view in the domain objects. Like val customerAssignmentsConcat: Binding<Text> by lazy {} They are actually part of representation, not the model itself. Maybe take them out to the viewmodel?
    t
    • 2
    • 2
  • r

    ron

    03/20/2017, 9:26 PM
    if I could get an os that is only a terminal, an IDE and a browser I would be happy
    n
    • 2
    • 1
  • e

    edvin

    03/22/2017, 7:04 AM
    @carlw No problem! I'm working from the hospital today, my wife is having shoulder surgery. Doing TornadoFX programming for our CRM all day 🙂
    t
    • 2
    • 2
  • c

    carlw

    03/25/2017, 12:03 PM
    @edvin @thomasnield don't shortchange the scheduling complexity...i saw a contractor run into trouble underestimating the complexity of university course, instructor, and room scheduling; still on mainframes in many universities in the US and UK (those are just the ones I know personally) because of this
    t
    e
    • 3
    • 9
  • c

    carlw

    03/29/2017, 4:54 PM
    split keyboards are really popular this year. @nimakro there is a DIY one called "Let's Split" that might be less expensive
    👍 1
    n
    • 2
    • 1
  • c

    carlw

    03/29/2017, 6:43 PM
    system76 has a new laptop "galago pro" that looks like a nice form factor...not a lot of details yet
    t
    • 2
    • 1
  • c

    carlw

    03/29/2017, 6:46 PM
    @edvin @thomasnield has a laptop. i have a desktop called the wilddog pro. mine is old already. they've updated it so that you can get a 4.5Ghz i7-7700K w. Liquid Cooling
  • e

    edvin

    03/29/2017, 6:56 PM
    Nice. The Surface was able to record with Bandicam at 60fps / full res.
    t
    • 2
    • 2
  • e

    edvin

    04/03/2017, 8:04 PM
    @thomasnield I finally came around to making some improvements to `TableView.selectOnDrag`: https://github.com/edvin/tornadofx/issues/262 Hopefully we're closer to what you guys need now 🙂
    👍 1
    t
    • 2
    • 2
  • e

    edvin

    04/04/2017, 4:32 PM
    (But we have no support for the actual config file being in json format - yet)
    n
    • 2
    • 2
  • l

    loloof64

    04/06/2017, 1:30 PM
    Just another question : does someone know if there is already a kotlin native channel ?
    e
    • 2
    • 1
  • k

    kevinmost

    04/08/2017, 10:29 AM
    I'm late to this conversation. Pok3rs are just the most popular 60% keyboard. I personally don't have a Pok3r because I wanted a fully programmable board (where you can configure literally EVERYTHING. If you want every key to just be "E", sure, you can do that). If you scroll up to our conversation about SpaceFn, that's something I really like that the Pok3r can't do. There are tons of fully programmable options out there but you generally have to assemble them yourself (they come without switches, and you have to buy the switches and solder them on)
    👍 1
    n
    • 2
    • 5
  • e

    edvin

    04/12/2017, 4:01 PM
    We might need to do a celebratory easter release to mark the return of @thomasnield 🎉 - just need to test the wizard a little better first and create a screencast! I have squashed a couple of bugs as well and I hate having fixes for known bugs unreleased.
    👍 5
    t
    • 2
    • 1
  • e

    edvin

    04/18/2017, 8:42 PM
    @thomasnield You mean turn the data into CSV or HTML?
    t
    • 2
    • 4
  • r

    Ruckus

    04/20/2017, 2:29 PM
    But I'm probably the least qualified here to be giving advice on public speaking 🙂
    c
    • 2
    • 2
  • e

    edvin

    04/20/2017, 3:24 PM
    My company will pay for all expenses, so that's all good.
    👍 1
    t
    • 2
    • 2
  • e

    edvin

    04/24/2017, 6:27 PM
    I did do a short follow up screencast today though:

    https://www.youtube.com/watch?v=aSv5rwHxmrA▾

    d
    • 2
    • 3
  • m

    mikehearn

    04/25/2017, 2:23 PM
    yeah, but intellij+scene builder is Swing with embedded JFX, right
    d
    • 2
    • 2
  • e

    edvin

    04/25/2017, 9:02 PM
    @thomasnield Sorry about that! hehe.. You should have asked! 🙂
    t
    • 2
    • 1
  • c

    carlw

    04/28/2017, 2:43 PM
    @thomasnield Maybe a coroutine would help? Block the Thread while you get the username password with an await?
    t
    • 2
    • 2
  • e

    edvin

    05/01/2017, 9:05 PM
    Thank you @carlw 🙂
    t
    • 2
    • 2
  • e

    edvin

    05/13/2017, 1:49 PM
    @jchildress Cool!
    n
    • 2
    • 2
Powered by Linen
Title
e

edvin

05/13/2017, 1:49 PM
@jchildress Cool!
n

nimakro

05/13/2017, 4:09 PM
edvin: Yeah a lot of times I have a complicated node structure so most of the time I am using the
ListCellFragement
since I can use the builders there, if I want to use a function it would have to be in the
View
class or any other
Component
to be able to use the builders?
e

edvin

05/14/2017, 3:57 PM
@nimakro The function can be anywhere really, but for the root node to be a builder it would have to be in a view or any other class that extends
EventTarget
.
👍 1
View count: 1