I saw a routine very similar this one. I thought it was a good idea to be able to activate one routine which could open properties of the select objects. However, I am trying to find a way where I can activate the "LabelStyleEdit" command, so when the label is picked, this command would allow me to change the label style.
Hope this makes some sense.
(defun C:E3D (/ SSET C3D$ )
(setq
sset (entsel "\nSelect Civil3D Object to edit: ")
C3D$ (cdr (assoc 0 (entget (car sset))))
)
(cond
;;Pipe Network
((= C3D$ "AECC_PIPE")(command "EditPipeProperties" sset))
((= C3D$ "AECC_PIPE_LABEL")(C:LAB) sset)
((= C3D$ "AECC_STRUCTURE")(command "EditStructureProperties" sset))
((= C3D$ "AECC_STRUCTURE_LABEL")(C:LAB) sset)
((= C3D$ "AECC_STRUCTURE_PROFILE_LABEL")(C:LAB) sset)
((= C3D$ "AECC_PIPE_PROFILE_LABEL")(C:LAB) sset)
;;Surface
((= C3D$ "AECC_TIN_SURFACE")(command "EditSurfaceProperties" sset))
((= C3D$ "AECC_SURFACE_ELEVATION_LABEL")(command "LabelStyleEdit" sset))
;;Profiles
((= C3D$ "AECC_PROFILE_VIEW")(command "EDITGRAPHPROPERTIES" sset))
((= C3D$ "AECC_GRAPH_PROFILE_NETWORK_PART")(command "_AeccEditStructureProps" sset))
;;Alignments
((= C3D$ "AECC_ALIGNMENT")(command "_editalignmentproperties" sset))
;;Parcels
((= C3D$ "AECC_PARCEL")(command "EditParcelProperties" sset))
;;Catchments
((= C3D$ "AECC_CATCHMENT")(command "EditCatchmentAreaProperties" sset))
;;((= C3D$ "AECC_CATCHMENT_LABEL")((alert "this is the label") sset))
;;Pressure Pipes
((= C3D$ "AECC_GRAPH_PROFILE_PRESSURE_PART")(command "EditPressuePartProps" sset))
((= C3D$ "AECC_FITTING")(command "EditFittingProps" sset))
((= C3D$ "AECC_PRESSUREPIPE")(command "EditPressurePipeProps" sset))
((= C3D$ "AECC_APPURTENANCE")(command "EditAppurtenanceProps" sset))
)
(princ))