Skip to content

Commit

Permalink
Clean up api
Browse files Browse the repository at this point in the history
  • Loading branch information
AdRiley committed Mar 6, 2025
1 parent 15ba008 commit aeda01b
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 33 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -15,41 +15,15 @@ import project.Internal.Widget_Helpers
from project.Internal.Filter_Condition_Helpers import make_filter_column

type Duplicate_Rows_Method

## TODO
Constant n:Integer

@col Widget_Helpers.make_column_name_selector
Per_Column col

@from Widget_Helpers.make_column_name_selector
@to Widget_Helpers.make_column_name_selector
Integer_Range from:(Integer | Column_Ref) to:(Integer | Column_Ref) step:Integer=1

@from Widget_Helpers.make_column_name_selector
@to Widget_Helpers.make_column_name_selector
Date_Range from to step:(Date_Period | Time_Period)
Date_Range from to step:Integer=1 period:Date_Period

## PRIVATE
Create a widget for operation
default_widget table:Table_Ref display:Display=..Always -> Widget =
with_everything = Widget_Helpers.make_column_ref_by_name_selector table add_text=True add_number=True add_boolean=True add_date=True add_time=True add_date_time=True add_nothing=True
with_number_text = Widget_Helpers.make_column_ref_by_name_selector table add_text=True add_number=True
filter_cond = Widget_Helpers.make_filter_condition_selector table

options = Vector.build builder->
builder.append (Option "copy" "..Copy")
builder.append (Option "add" "..Add" [["rhs", with_number_text]])
builder.append (Option "format" "..Format" [["format", make_format_chooser include_number=True]])
builder.append (Option "if" "..If" [["condition", filter_cond], ["true_value", with_everything], ["false_value", with_everything]])
builder.append (Option "min" "..Min" [["rhs", with_number_text]])
builder.append (Option "max" "..Max" [["rhs", with_number_text]])

## Constants
constants = make_any_selector add_number=True . values
expression = Option "<Expression>" "(expr '["+table.column_names.first+"]')"

integer_input_column = Widget_Helpers.make_column_ref_by_name_selector table add_number=True
integer_range = Option "<Integer Range>" "..Integer_Range" [["from", integer_input_column], ["to", integer_input_column]]
date_range = Option "<Date Range>" "..Date_Range" [["from", integer_input_column], ["to", integer_input_column]]
integer_range = Option "..Integer_Range" "..Integer_Range" [["from", integer_input_column], ["to", integer_input_column]]
date_input_column = Widget_Helpers.make_column_ref_by_name_selector table add_date=True
date_range = Option "..Date_Range" "..Date_Range" [["from", date_input_column], ["to", date_input_column]]
Single_Choice [integer_range, date_range] display=display
6 changes: 3 additions & 3 deletions distribution/lib/Standard/Table/0.0.0-dev/src/Table.enso
Original file line number Diff line number Diff line change
Expand Up @@ -3780,9 +3780,9 @@ type Table
offset self (columns : Vector (Integer | Text | Regex | By_Type) = Missing_Argument.throw "columns") n:Integer=-1 fill_with:Fill_With=..Nothing (group_by : Vector | Text | Integer | Regex = []) (order_by : Vector | Text = []) set_mode:Set_Mode=..Add on_problems:Problem_Behavior=..Report_Warning -> Table =
Offset_Helper.table_offset_impl self columns n fill_with group_by order_by set_mode on_problems

@n Duplicate_Rows_Method.default_widget
generate_rows self n:Duplicate_Rows_Method =
x = case n of
@over Duplicate_Rows_Method.default_widget
generate_rows self over:Duplicate_Rows_Method =
x = case over of
Duplicate_Rows_Method.Integer_Range from to step ->
from_column = case from of
_ : Integer -> self.make_constant_column from
Expand Down

0 comments on commit aeda01b

Please sign in to comment.