AndyObtiva/glimmer-dsl-swt

View on GitHub

Showing 235 of 401 total issues

Method default_height has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring.
Open

        def default_height
          default_height_dependencies = [shapes.empty? && max_height, shapes.size == 1 && shapes.first.max_height? && parent.size.y, shapes.size >= 1 && !shapes.first.max_height? && shapes.map {|s| s.max_height? ? 0 : s.y_end}]
          if default_height_dependencies != @default_height_dependencies
            # Do not repeat calculations
            max_height, parent_size_y, y_ends = @default_height_dependencies = default_height_dependencies
Severity: Minor
Found in lib/glimmer/swt/custom/shape.rb - About 55 mins to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Method dispose has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring.
Open

          def dispose(dispose_images: true, dispose_patterns: true, redraw: true)
            Glimmer::SWT::DisplayProxy.instance.auto_exec do
              # including classes could override to dispose of resources first
              # afterwards, parent removes from its path segments with post_dispose_content
              parent.post_dispose_content(self) if parent.is_a?(Path)
Severity: Minor
Found in lib/glimmer/swt/custom/shape/path_segment.rb - About 55 mins to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Method add_to_swt_path has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring.
Open

          def add_to_swt_path(swt_path)
            the_path_segment_args = path_segment_args.dup
            the_path_segment_args = the_path_segment_args.first if the_path_segment_args.size == 1 && the_path_segment_args.first.is_a?(Array)
            if !is_a?(Point) && self.class != Path
              if !previous_point_connected?
Severity: Minor
Found in lib/glimmer/swt/custom/shape/path_segment.rb - About 55 mins to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Method default_width has a Cognitive Complexity of 9 (exceeds 5 allowed). Consider refactoring.
Open

        def default_width
          default_width_dependencies = [shapes.empty? && max_width, shapes.size == 1 && shapes.first.max_width? && parent.size.x, shapes.size >= 1 && !shapes.first.max_width? && shapes.map {|s| s.max_width? ? 0 : s.x_end}]
          if default_width_dependencies != @default_width_dependencies
            # Do not repeat calculations
            max_width, parent_size_x, x_ends = @default_width_dependencies = default_width_dependencies
Severity: Minor
Found in lib/glimmer/swt/custom/shape.rb - About 55 mins to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Method countdown_group_button_composite has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
Open

  def countdown_group_button_composite
    composite {
      row_layout {
        margin_width 0
        margin_height 0
Severity: Minor
Found in samples/elaborate/timer.rb - About 45 mins to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Method deregister has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
Open

      def deregister
        return if @swt_widget&.is_disposed || @swt_display&.is_disposed
        if @swt_display
          if @filter
            @swt_display.removeFilter(@event_type, @swt_listener)
Severity: Minor
Found in lib/glimmer/swt/widget_listener_proxy.rb - About 45 mins to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Method get_attribute has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
Open

      def get_attribute(attribute_name)
        widget_custom_attribute = widget_custom_attribute_mapping[attribute_name.to_s]
        swt_widget_operation = false
        result = nil
        auto_exec do
Severity: Minor
Found in lib/glimmer/swt/widget_proxy.rb - About 45 mins to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Method interpret has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
Open

        def interpret(parent, keyword, *args, &block)
          # TODO reconcile this with the actual org.eclipse.swt.widgets.Dialog widget (maybe rename this as dialog_shell)
          if keyword == 'dialog'
            args = [parent] + args unless parent.nil?
            args += [:dialog_trim, :application_modal]
Severity: Minor
Found in lib/glimmer/dsl/swt/dialog_expression.rb - About 45 mins to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Method place_enemy_ships! has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
Open

      def place_enemy_ships!
        ship_collection = @ship_collections[:enemy]
        ship_collection.ships.values.each do |ship|
          until ship.top_left_cell
            random_row_index = (rand * Grid::HEIGHT).to_i
Severity: Minor
Found in samples/elaborate/battleship/model/game.rb - About 45 mins to fix

Cognitive Complexity

Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

A method's cognitive complexity is based on a few simple rules:

  • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
  • Code is considered more complex for each "break in the linear flow of the code"
  • Code is considered more complex when "flow breaking structures are nested"

Further reading

Avoid deeply nested control flow statements.
Open

                negative ? ~bit_value : bit_value
Severity: Major
Found in lib/glimmer/swt/style_constantizable.rb - About 45 mins to fix

    Avoid deeply nested control flow statements.
    Open

                    if printer.start_page
                      printer_gc.drawImage(image, 0, 0)
                      printer.end_page
                    else
                      success = false
    Severity: Major
    Found in lib/glimmer/swt/widget_proxy.rb - About 45 mins to fix

      Method respond_to? has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
      Open

              def respond_to?(method_name, *args, &block)
                dsl_mode = @dsl_mode || args.last.is_a?(Hash) && args.last[:dsl]
                if dsl_mode
                  args = args[0...-1] if args.last.is_a?(Hash) && args.last[:dsl]
                  super(method_name, *args, &block)
      Severity: Minor
      Found in lib/glimmer/swt/custom/code_text.rb - About 45 mins to fix

      Cognitive Complexity

      Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

      A method's cognitive complexity is based on a few simple rules:

      • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
      • Code is considered more complex for each "break in the linear flow of the code"
      • Code is considered more complex when "flow breaking structures are nested"

      Further reading

      Method move_by has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
      Open

              def move_by(x_delta, y_delta)
                if respond_to?(:x) && respond_to?(:y) && respond_to?(:x=) && respond_to?(:y=)
                  if default_x?
                    self.x_delta += x_delta
                  else
      Severity: Minor
      Found in lib/glimmer/swt/custom/shape.rb - About 45 mins to fix

      Cognitive Complexity

      Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

      A method's cognitive complexity is based on a few simple rules:

      • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
      • Code is considered more complex for each "break in the linear flow of the code"
      • Code is considered more complex when "flow breaking structures are nested"

      Further reading

      Method amend_method_name_options_based_on_properties! has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
      Open

              def amend_method_name_options_based_on_properties!
                @original_method_name = @method_name
                return if @name == 'point'
                if (@name != 'text' && @name != 'string' && has_some_background? && !has_some_foreground?) || (@name == 'path' && has_some_background?)
                  @options[:fill] = true
      Severity: Minor
      Found in lib/glimmer/swt/custom/shape.rb - About 45 mins to fix

      Cognitive Complexity

      Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

      A method's cognitive complexity is based on a few simple rules:

      • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
      • Code is considered more complex for each "break in the linear flow of the code"
      • Code is considered more complex when "flow breaking structures are nested"

      Further reading

      Method include? has 6 arguments (exceeds 4 allowed). Consider refactoring.
      Open

                  def include?(x1, y1, x2, y2, x, y)
      Severity: Minor
      Found in lib/glimmer/swt/custom/shape/line.rb - About 45 mins to fix

        Method add_to_geometry has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
        Open

                  def add_to_geometry(geometry)
                    the_path_segment_geometry_args = path_segment_geometry_args.dup
                    if !is_a?(Point) && self.class != Path
                      if !previous_point_connected?
                        if the_path_segment_geometry_args.count == default_path_segment_arg_count
        Severity: Minor
        Found in lib/glimmer/swt/custom/shape/path_segment.rb - About 45 mins to fix

        Cognitive Complexity

        Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

        A method's cognitive complexity is based on a few simple rules:

        • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
        • Code is considered more complex for each "break in the linear flow of the code"
        • Code is considered more complex when "flow breaking structures are nested"

        Further reading

        Method absolute_point_array has a Cognitive Complexity of 8 (exceeds 5 allowed). Consider refactoring.
        Open

                  def absolute_point_array
                    point_array = args.size > 1 ? args : self.point_array
                    if parent.is_a?(Shape)
                      point_array.each_with_index.map do |coordinate, i|
                        if i.even?
        Severity: Minor
        Found in lib/glimmer/swt/custom/shape/polyline.rb - About 45 mins to fix

        Cognitive Complexity

        Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

        A method's cognitive complexity is based on a few simple rules:

        • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
        • Code is considered more complex for each "break in the linear flow of the code"
        • Code is considered more complex when "flow breaking structures are nested"

        Further reading

        Consider simplifying this complex logical expression.
        Open

                  if (@name != 'text' && @name != 'string' && has_some_background? && !has_some_foreground?) || (@name == 'path' && has_some_background?)
                    @options[:fill] = true
                  elsif !has_some_background? && has_some_foreground?
                    @options[:fill] = false
                  elsif @name == 'rectangle' && has_some_background? && has_some_foreground?
        Severity: Major
        Found in lib/glimmer/swt/custom/shape.rb - About 40 mins to fix

          Method stick_figure has 5 arguments (exceeds 4 allowed). Consider refactoring.
          Open

            def stick_figure(x, y, width, height, &block)
          Severity: Minor
          Found in samples/hello/hello_shape.rb - About 35 mins to fix

            Method update_table_item_properties_from_model has 5 arguments (exceeds 4 allowed). Consider refactoring.
            Open

                  def update_table_item_properties_from_model(table_item, row_index, column_index, model, model_attribute)
            Severity: Minor
            Found in lib/glimmer/data_binding/table_items_binding.rb - About 35 mins to fix
              Severity
              Category
              Status
              Source
              Language