package Kephra::Dialog::Color;
our $VERSION = '0.02';
use strict;
use warnings;
sub choose_color {
my $ep = &Kephra::App::EditPanel::_ref;
my $color = $ep->GetSelectedText || '#ffffff';
$color = sprintf ("%02x%02x%02x", ($color =~ /(\d+).(\d+).(\d+)/))
if index $color, ',' or index $color, '.';
$color = sprintf "#%s", $color unless index( $color, '#' ) == 0;
my $color_obj = Wx::Colour->new( $color );
my $data = Wx::ColourData->new;
$data->SetColour( $color_obj );
$data->SetChooseFull( 1 );
my $dialog = Wx::ColourDialog->new( Kephra::App::Window::_ref(), $data );
if( $dialog->ShowModal != &Wx::wxID_CANCEL ) {
my $data = $dialog->GetColourData;
my $ret_color = $data->GetColour;
my $html_color = $ret_color->GetAsString( &Wx::wxC2S_HTML_SYNTAX );
$html_color =~ s/^#//;
$ep->ReplaceSelection( $html_color );
}
}
1;