From aeda01b3b109cde659b5dab2d2d100080f31aa64 Mon Sep 17 00:00:00 2001 From: Adam Riley Date: Thu, 6 Mar 2025 11:03:05 +0000 Subject: [PATCH] Clean up api --- .../0.0.0-dev/src/Duplicate_Rows_Method.enso | 34 +++---------------- .../Standard/Table/0.0.0-dev/src/Table.enso | 6 ++-- 2 files changed, 7 insertions(+), 33 deletions(-) diff --git a/distribution/lib/Standard/Table/0.0.0-dev/src/Duplicate_Rows_Method.enso b/distribution/lib/Standard/Table/0.0.0-dev/src/Duplicate_Rows_Method.enso index 7dd698cbccfb..ce9e92ccc282 100644 --- a/distribution/lib/Standard/Table/0.0.0-dev/src/Duplicate_Rows_Method.enso +++ b/distribution/lib/Standard/Table/0.0.0-dev/src/Duplicate_Rows_Method.enso @@ -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 "" "(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" [["from", integer_input_column], ["to", integer_input_column]] - date_range = Option "" "..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 diff --git a/distribution/lib/Standard/Table/0.0.0-dev/src/Table.enso b/distribution/lib/Standard/Table/0.0.0-dev/src/Table.enso index 1433ec214b98..36ac69f93c6e 100644 --- a/distribution/lib/Standard/Table/0.0.0-dev/src/Table.enso +++ b/distribution/lib/Standard/Table/0.0.0-dev/src/Table.enso @@ -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