twig / dcxdll

Dialog Control eXtensions for mIRC
BSD 3-Clause "New" or "Revised" License
23 stars 2 forks source link

ColorCombo - incorrect display of the dropdown menu and add support setting color #45

Open EpicNet opened 2 years ago

EpicNet commented 2 years ago

I am using "mIRC v7.66" + "DCX dll v3.1-git394" in system "Windows 8.1 x64".

In the latest versions of the mIRC client, a choice of 99 color shades is available and now all possible colors do not fit into the drop-down list vertically from top to bottom. Therefore, it is necessary to redo the old design of this control to make the color selection more convenient, in the form of a compact color palette, similar to what it looks like now when you press the "CTRL+K" key combination. Naturally, the ability to change color shades to your own colors in the color palette should remain.

My proposals for what needs to be corrected and added in "ColorCombo", to make it maximally functional and beautiful:

  1. Add customizable border color around the control.
  2. Add customizable background color inside the control.
  3. Add customizable colors for the button that opens the dropdown with items.
  4. Change the dropdown list to the standard palette of 99 colors (with the ability to change color shades to your own).
  5. Add customizable border color around a pop-up window for color palette.
  6. Add customizable background color inside the pop-up window for color palette.

On the left is how it looks now, and on the right is how it could be after the update:

image

Here is a test piece of script to reproduce this the problem. To run the script click on "F5" or enter the command "/colorcombo_test":

alias F5 { colorcombo_test }
alias colorcombo_test {
  if ($dialog(colorcombo_test)) .dialog -x colorcombo_test | else { .dialog -m colorcombo_test colorcombo_test }
}
dialog colorcombo_test {
  title "ColorCombo test"
  icon $mircexe,0
  option pixels
  size -1 -1 300 200
}
on *:DIALOG:colorcombo_test:init:0:{
  .dcx Mark $dname colorcombo_test_work
  .xdialog -b $dname +ty
  .xdialog -g $dname +b $rgb(20,20,27)
  .xdialog -c $dname 1 colorcombo 50 50 70 50
  .xdid -m $dname 1
  .xdid -c $dname 1 5
}
alias colorcombo_test_work {}
OokEek commented 2 years ago

Its unlikely the colorcombo will change to be a grid layout as this would need a complete rewrite of the combo control that its based on. The control as it currently is supports all 99 colours, u just have to scroll down.