Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class SacrificerView < ApplicationView
- set_java_class 'Sacrificer'
- #####################################################################
- #Mappings section
- #####################################################################
- TIME_CONSTRAINT_VIEW_TRANSLATION = {
- "On Time" => :on_time,
- "Days Late" => :late_by_days,
- "Weeks Late" => :late_by_weeks,
- "Months Late" => :late_by_months,
- "Years Late" => :late_by_years,
- "Sun Extinguishes First" => :late_by_billions_of_years,
- "Hell Freezes Over" => :late_by_trillions_of_years
- }
- map :view => "time_constraint.selected_item", :model => :time_constraint, :translate_data_using => TIME_CONSTRAINT_VIEW_TRANSLATION, :ignoring => :action
- BUDGET_CONSTRAINT_VIEW_TRANSLATION = {
- "Barely Over Budget (10%)" => :barely_over,
- "\"Time and a half\" (150%)" => :over_time,
- "Order of Mangnitude Greater (1000%)" => :over_board,
- "1 *illion dollars!" => :evil
- }
- map :view => "budget_constraint.selected_item", :model => :budget_constraint, :translate_data_using => BUDGET_CONSTRAINT_VIEW_TRANSLATION, :ignoring => :action
- DOMINION_VIEW_TRANSLATION = {
- "Village" => :village,
- "Town" => :town,
- "City" => :city,
- "Metropolis" => :metropolis,
- "Realm" => :realm,
- "Small Nation" => :small_nation,
- "Empire" => :empire
- }
- map :view => "dominion.selected_item", :model => :dominion, :translate_data_using => DOMINION_VIEW_TRANSLATION
- #####################################################################
- #Signals section
- #####################################################################
- define_signal :display_final_calculation, :display_final_calculation
- define_signal :lock_ui, :lock_ui
- define_signal :unlock_ui, :unlock_ui
- define_signal :update_viewport, :update_viewport
- def display_final_calculation(model, transfer)
- virgins_needed.text = transfer[:virgins].to_s
- virgins_needed_static.visible = true
- end
- def lock_ui(model, transfer)
- calculate.enabled = time_constraint.enabled = budget_constraint.enabled = dominion.enabled = false
- end
- def unlock_ui(model, transfer)
- calculate.enabled = time_constraint.enabled = budget_constraint.enabled = dominion.enabled = true
- end
- def update_viewport(model, transfer)
- percent = transfer[:percent_complete]
- viewport = virgin_scroll.viewport
- y = (percent * virgin_scroll.height - 50) / 100
- #puts y
- #viewport.reshape(0, y, virgin_scroll.width, virgin_scroll.height)
- viewport.view_position = java.awt.Point.new(0, y)
- virgin_scroll.revalidate
- end
- #####################################################################
- #
- #####################################################################
- def load
- virgins_needed.text = ""
- virgins_needed_static.visible = false
- viewport = virgin_scroll.viewport
- viewport.view_position = java.awt.Point.new(0, -50)
- viewport.background = @main_view_component.background
- end
- end
Add Comment
Please, Sign In to add comment